Системы нелинейных уравнений численные методы. Решение нелинейных уравнений

Задание:

1) Используя метод итераций, решить систему

2) Используя метод Ньютона, решить систему

нелинейных уравнений с точностью до 0,001.

Задание №1Используя метод итераций, решить систему нелинейных уравнений с точностью до 0,001.

Теоретическая часть.

Метод итераций э то способ численного решения математических задач. Его суть – нахождение алгоритма поиска по известному приближению (приближенному значению) искомой величины следующего, более точного приближения. Применяется в случае, когда последовательность приближений по указанному алгоритму сходится.

Данный метод называют также методом последовательных приближений, методом повторных подстановок, методом простых итераций и т.п.

Метод Ньютона , алгоритм Ньютона (также известный как метод касательных) - это итерационный численный метод нахождения корня (нуля) заданной функции. Метод был впервые предложен английским физиком, математиком и астрономом Исааком Ньютоном (1643-1727). Поиск решения осуществляется путём построения последовательных приближений и основан на принципах простой итерации. Метод обладает квадратичной сходимостью. Улучшением метода является метод хорд и касательных. Также метод Ньютона может быть использован для решения задач оптимизации, в которых требуется определить нуль первой производной либо градиента в случае многомерного пространства. Обоснование

Чтобы численно решить уравнение методом простой итерации, его необходимо привести к следующей форме: , где - сжимающее отображение.

Для наилучшей сходимости метода в точке очередного приближения должно выполняться условие . Решение данного уравнения ищут в виде , тогда:

В предположении, что точка приближения «достаточно близка» к корню , и что заданная функция непрерывна , окончательная формула для такова:

С учётом этого функция определяется выражением:

Эта функция в окрестности корня осуществляет сжимающее отображение, и алгоритм нахождения численного решения уравнения сводится к итерационной процедуре вычисления:

.

Варианты заданий

№1. 1)
2)

№2. 1)
2)

№3. 1)
2)

№4. 1)
2)

№5. 1)
2)

№6. 1)
2)

№7. 1)
2)

№8. 1)
2)

№9. 1)
2)

№10.1)
2)

№11.1)
2)

№12.1)
2)

№13.1)
2)

№14.1)
2)

№15.1)
2)

№16.1)
2)

№17.1)
2)

№18.1)
2)

№19.1)
2)

№20.1)
2)

№21. 1)
2)

№22. 1)
2)

№23. 1)
2)

№24. 1)
2)

№25. 1)
2)

№26. 1)
2)

№27. 1)
2)

№28. 1)
2)

№29. 1)
2)

№30. 1)
2)

Образец выполнения задания

№1. 1)
2)

Пример решения системы нелинейных уравнений методом итераций



Перепишем данную систему в виде:

Отделение корней производим графически (рис.1). Из графика видим, что система имеет одно решение, заключенное в области D: 0<х <0,3;-2,2<y <-1,8.

Убедимся в том, что метод итераций применим для уто­чнения решения системы, для чего запишем ее в следующем виде:

Так как ,то имеем в области D

+ = ;

+ =

Таким образом, условия сходимости выполняются.

Таблица №2

п
0,15 -2 -0,45 -0,4350 -0,4161 -0,1384
0,1616 -2,035 -0,4384 -0,4245 -0,4477 -0,1492
0,1508 -2.0245 -0,4492 -0,4342 -0,4382 -0,1461
0.1539 -2,0342. -0,4461 -0.4313 -0,4470 -0,1490
0.1510 -2,0313 -0,4490 -0,4341 -0,4444 -0.1481
0,1519 -2,0341 -0,4481 -0,4333 -0,4469 -0,1490
0,1510 -2.0333 -0.449 -0,4341 -0.4462 -0,1487
0.1513 -2.0341 -0,4487 -0,4340 -0,4469 -0.1490
0.1510 -2,0340

За начальные приближения принимаем х о =0,15, у 0 = -2.

(таб.№2). Тогда ответ запишется:

Пример решения системы нелинейных уравнений методом Ньютона

Отделение корней производим графически (рис.2). Для построения графиков функций составим таблицу значений функций и , входящих в первое и второе уравнения (табл. I).

Значения для x можно брать исходя из следующих условий: из первого уравнения 1≤1,2х+0,4≤1 , т.е. 1,16≤х≤0,5 ; из второго уравнения , т.е. . Таким образом, .

Система имеет два решения. Уточним одно из них, принадлежащее области D: 0,4<x <0,5;

0,76<y <0,73. За начальное приближение примем Имеем:


Таблица №3

x -1,1 -1 -0,8 -0,6 -0,2 -0,4 0,2 0,4 0,5
х 2 1.21 0,64 0,36 0,04 0,16 0,04 0.16 0,25
0,8 х 2 0,97 0,8 0,51 0,29 0,032 0,13 0,032 0,13 0,2
1 -0,8 х 2 0,03 0,2 0,49 0,71 0,97 0,87 0,97 0.87 0,8
0,02 0,13 0,33 0,47 0,65 0,58 0,67 0,65 0,58 0.53
±0,14 ±0,36 ±0,57 ±0,69 ±0,81 ±0,76 ±0,82 ±0.81 ±0,76 ±0.73
1,2x -1,32 -1,2 -0,9б" -0,72 -0,24 -0,48 0,24 0,48 0,6
0,4+1,2x -0,92 -0,8 -0,56 -0,32 0,16 -0,08 0,4 0,64 0.88
2x-y -1.17 -0,93 -0,59 -0,33 0,16 -0,08 0,41 0,69 2.06 1,08 1,57
-1,03 -1,07 -1,01 -0,87 -0,56 -0,72 -0,41 -0,29 -1,26 -1,28 -0.57

Уточнение корней проводим методом Ньютона:



где ; ;


;
;


Все вычисления производим по таблице 3

Таблица 3 0,10 0,017 -0,0060 0,0247 -0,0027 -0,0256 0,0001 0,0004
0,2701 0,0440 -0,0193 0,0794 -0,0080 -0,0764 -0,0003 0,0013
2,6197 3,2199 2,9827 3,1673
-0,0208 -2,25 0,1615 -2,199 0,1251 -2,1249 0,1452 -2,2017
-1,1584 0,64 -1,523 0,8 -1,4502 0,7904 -1,4904 0,7861
0,1198 -0,0282 -0,0131 0,059 -0,0007 -0,0523 -0,0002 0,0010
0,9988 0,0208 0,9869 -0,1615 0,9921 -0,1251 -0,9894 -0,1452
0,55 0,733 1,6963 1,7165
0,128 0,8438 0,2 0,8059 0,1952 0,7525 0,1931 0,8079
0,4 0,75 0,50 -0,733 0,4940 -0,7083 0,4913 -0,7339 0,4912 -0,7335 Ответ: x ≈0,491 y ≈ 0,734
n

Контрольные вопросы

1) Представьте на графике возможные случаи решения системы двух нелинейных уравнений.

2) Сформулируйте постановку задачи о решении системы n-линейных уравнений.

3) Приведите итерационные формулы метода простой итерации в случае системы двух нелинейных уравнений.

4) Сформулируйте теорему о локальной сходимости метода Ньютона.

5) Перечислите трудности, возникающие при использовании метода Ньютона на практике.

6) Объяснить каким образом можно модифицировать метод Ньютона.

7) Изобразите в виде блок-схем алгоритм решения систем двух нелинейных уравнений методами простой итерации и Ньютона.


Лабораторная работа №3

Решение нелинейных уравнений

Пусть требуется решить уравнение

Где
– нелинейная непрерывная функция.

Методы решения уравнений делятся на прямые и итерационные. Прямые методы – это методы, позволяющие вычислить решение по формуле (например, нахождение корней квадратного уравнения). Итерационные методы – это методы, в которых задается некоторое начальное приближение и строится сходящаяся последовательность приближений к точному решению, причем каждое последующее приближение вычисляется с использованием предыдущих

Полное решение поставленной задачи можно разделить на 3 этапа:

    Установить количество, характер и расположение корней уравнения (1).

    Найти приближенные значения корней, т.е. указать промежутки, в которых наудится корни (отделить корни).

    Найти значение корней с требуемой точностью (уточнить корни).

Существуют различные графические и аналитические методы решения первых двух задач.

Наиболее наглядный метод отделения корней уравнения (1) состоит в определении координат точек пересечения графика функции
с осью абсцисс. Абсциссы точек пересечения графика
с осью
являются корнями уравнения (1)

Промежутки изоляции корней уравнения (1) можно получить аналитически, опираясь на теоремы о свойствах функций, непрерывных на отрезке.

Если, например, функция
непрерывна на отрезке
и
, то согласно теореме Больцано – Коши, на отрезке
существует хотя бы один корень уравнения (1)(нечетное количество корней).

Если функция
удовлетворяет условиям теоремы Больцано-Коши и монотонна на этом отрезке, то на
существует только один корень уравнения (1).Таким образом, уравнение (1) имеет на
единственный корень, если выполняются условия:


Если функция на заданном интервале непрерывно дифференцируема, то можно воспользоваться следствием из теоремы Ролля, по которому между парой корней всегда находится по крайней мере одна стационарная точка. Алгоритм решения задачи в данном случае будет следующий:


Полезным средством для отделения корней является также использование теоремы Штурма.

Решение третьей задачи осуществляется различными итерационными (численными) методами: методом дихотомии, методом простой итерации, методом Ньютона, методом хорд и т.д.

Пример Решим уравнение
методом простой итерации . Зададим
. Построим график функции.

На графике видно, что корень нашего уравнения принадлежит отрезку
, т.е.
– отрезок изоляции корня нашего уравнения. Проверим это аналитически, т.е. выполнение условий (2):


Напомним, что исходное уравнение (1) в методе простой итерации преобразуется к виду
и итерации осуществляются по формуле:

(3)

Выполнение расчетов по формуле (3) называется одной итерацией. Итерации прекращаются, когда выполняется условие
, где - абсолютная погрешность нахождения корня, или
, где -относительная погрешность.

Метод простой итерации сходится, если выполняется условие
для
. Выбором функции
в формуле (3) для итераций можно влиять на сходимость метода. В простейшем случае
со знаком плюс или минус.

На практике часто выражают
непосредственно из уравнения (1). Если не выполняется условие сходимости, преобразуют его к виду (3) и подбирают. Представим наше уравнение в виде
(выразим x из уравнения). Проверим условие сходимости метода:

для
. Обратите внимание, что условие сходимости выполняется не
, поэтому мы и берем отрезок изоляции корня
. Попутно заметим, что при представлении нашего уравнения в виде
, не выполняется условие сходимости метода:
на отрезке
. На графике видно, что
возрастает быстрее, чем функция
­­ (|tg| угла наклона касательной к
на отрезке
)

Выберем
. Организуем итерации по формуле:



Программно организуем процесс итераций с заданной точностью:

> fv:=proc(f1,x0,eps)

> k:=0:

x:=x1+1:

while abs(x1-x)> eps do

x1:=f1(x):

print(evalf(x1,8)):

print(abs(x1-x)):

:printf("Кол. итер.=%d ",k):

end :

На 19 итерации мы получили корень нашего уравнения

c абсолютной погрешностью

Решим наше уравнение методом Ньютона . Итерации в методе Ньютона осуществляются по формуле:

Метод Ньютона можно рассматривать как метод простой итерации с функцией, тогда условие сходимости метода Ньютона запишется в виде:

.

В нашем обозначении
и условие сходимости выполняется на отрезке
, что видно на графике:

Напомним, что метод Ньютона сходится с квадратичной скоростью и начальное приближение должно быть выбрано достаточно близко к корню. Произведем вычисления:
, начальное приближение, . Организуем итерации по формуле:



Программно организуем процесс итераций с заданной точностью. На 4 итерации получим корень уравнения

с
Мы рассмотрели методы решения нелинейных уравнений на примере кубических уравнений, естественно, этими методами решаются различные виды нелинейных уравнений. Например, решая уравнение

методом Ньютона с
, находим корень уравнения на [-1,5;-1]:

Задание : Решить нелинейные уравнения с точностью

0.


    деления отрезка пополам (дихотомии)

    простой итерации.

    Ньютона (касательных)

    секущих – хорд.

Варианты заданий рассчитываются следующим образом: номер по списку делится на 5 (
), целая часть соответствует номеру уравнения, остаток – номеру метода.

Расчетная формула метода Ньютона имеет вид:

где n=0,1,2,..

Геометрически метод Ньютона означает, что следующее приближение к корню есть точка пересечения с осью ОХ. касательной, проведенной к графику функцииy=f(x) в точке .

Теорема о сходимости метода Ньютона.

Пусть - простой корень уравнения, в некоторой окрестности которого функция дважды непрерывно дифференцируема.

Тогда найдется такая малая - окрестность корня, что при произвольном выборе начального приближенияиз этой окрестности итерационная последовательность метода Ньютона не выходит за пределы окрестности и справедлива оценка

Метода Ньютона (1) чувствителен к выбору начального приближения x 0 .

На практике для монотонной сходимости метода необходимо :

    1-ая производная f(x)

    2-ая производная f(x) должна быть знакопостоянна на интервале локализации [ a , b ] изолированного корня;

    за начальное приближение x 0 выбирается та граница интервала локализации, на которой произведение функции на ее 2-ю производную больше нуля (f(c)f ’’ (c) > 0 , где с – одна из границ интервала) .

. При заданной точности >

Как указано в теореме, метод Ньютона обладает локальной сходимостью, то есть областью его сходимости является малая окрестность корня .

Неудачный выбор может дать расходящуюся итерационную последовательность.

      Метод простой итерации (метод последовательных повторений).

Для применения метода простой итерации следует исходное уравнение преобразовать к виду, удобному для итерации .

Это преобразование можно выполнить различными способами.

Функция называется итерационной функцией.

Расчетная формула метода простой итерации имеет вид:

где n=0,1,2,..

Теорема о сходимости метода простой итерации.

Пусть в некоторой - окрестности корняфункциянепрерывно дифференцируема и удовлетворяет неравенству

где 0 < q < 1 - постоянная.

Тогда независимо от выбора начального приближения из указанной - окрестности итерационная последовательность не выходит из этой окрестности, метод сходится

со скоростью геометрической последовательности и справедлива оценка погрешности:

Критерий окончания итерационного процесса .

При заданной точности >0 вычисления следует вести до тех пор пока не окажется выполненным неравенство

Если величина , то можно использовать более простой критерий окончания итераций:

Если в неравенстве (5) q > 1 , то итерационный метод (4) расходится.

Если в неравенстве (5) q = 1 , то итерационный метод (4) может как сходится так и расходится.

В том случае, если q > = 1 , то итерационный метод (4) расходится и

применяется метод простой итерации с итерационным параметром .

Ключевой момент в применении состоит в эквивалентном преобразовании уравнения :

αf(x) = 0

x = x +αf(x) , (9)

где α – итерационный параметр (вещественная константа).

Расчетная формула метода простой итерации с итерационным параметром имеет вид:

x (n+1) = x (n) + αf(x (n) ) , (10)

где n=0,1,2,..

Итерационный процесс, построенный по форме (10) сходится , если:

    1-ая производная функции f(x) знакопостоянна и ограничена на интервале локализации изолированного корня ;

    знак итерационного параметра α противоположен знаку 1-ой производной функции f(x) на интервале локализации изолированного корня ;

    модуль значения итерационного параметра α оценивается из неравенства

| α | < 2/M , (11)

где М – максимум модуля 1-ой производной функции f(x)

Тогда при таком выборе итерационного параметра  метод (10) сходится при любом значении начального приближения, принадлежащем интервалу , со скоростью геометрической прогрессии со знаменателем q равным

где m – минимум модуля 1-ой производной функции f(x) на интервале локализации изолированного корня .

Метод простой итерации, называемый также методом последовательного приближения, - это математический алгоритм нахождения значения неизвестной величины путем постепенного ее уточнения. Суть этого метода в том, что, как видно из названия, постепенно выражая из начального приближения последующие, получают все более уточненные результаты. Этот метод используется для поиска значения переменной в заданной функции, а также при решении систем уравнений, как линейных, так и нелинейных.

Рассмотрим, как данный метод реализуется при решении СЛАУ. Метод простой итерации имеет следующий алгоритм:

1. Проверка выполнения условия сходимости в исходной матрице. Теорема о сходимости: если исходная матрица системы имеет диагональное преобладание (т.е, в каждой строке элементы главной диагонали должны быть больше по модулю, чем сумма элементов побочных диагоналей по модулю), то метод простых итераций - сходящийся.

2. Матрица исходной системы не всегда имеет диагональное преобладание. В таких случаях систему можно преобразовать. Уравнения, удовлетворяющие условию сходимости, оставляют нетронутыми, а с неудовлетворяющими составляют линейные комбинации, т.е. умножают, вычитают, складывают уравнения между собой до получения нужного результата.

Если в полученной системе на главной диагонали находятся неудобные коэффициенты, то к обеим частям такого уравнения прибавляют слагаемые вида с i *x i, знаки которых должны совпадать со знаками диагональных элементов.

3. Преобразование полученной системы к нормальному виду:

x - =β - +α*x -

Это можно сделать множеством способов, например, так: из первого уравнения выразить х 1 через другие неизвестные, из второго- х 2 , из третьего- х 3 и т.д. При этом используем формулы:

α ij = -(a ij / a ii)

i = b i /a ii
Следует снова убедиться, что полученная система нормального вида соответствует условию сходимости:

∑ (j=1) |α ij |≤ 1, при этом i= 1,2,...n

4. Начинаем применять, собственно, сам метод последовательных приближений.

x (0) - начальное приближение, выразим через него х (1) , далее через х (1) выразим х (2) . Общая формула а матричном виде выглядит так:

x (n) = β - +α*x (n-1)

Вычисляем, пока не достигнем требуемой точности:

max |x i (k)-x i (k+1) ≤ ε

Итак, давайте разберем на практике метод простой итерации. Пример:
Решить СЛАУ:

4,5x1-1.7x2+3.5x3=2
3.1x1+2.3x2-1.1x3=1
1.8x1+2.5x2+4.7x3=4 с точностью ε=10 -3

Посмотрим, преобладают ли по модулю диагональные элементы.

Мы видим что условию сходимости удовлетворяет лишь третье уравнение. Первое и второе преобразуем, к первому уравнению прибавим второе:

7,6x1+0.6x2+2.4x3=3

Из третьего вычтем первое:

2,7x1+4.2x2+1.2x3=2

Мы преобразовали исходную систему в равноценную:

7,6x1+0.6x2+2.4x3=3
-2,7x1+4.2x2+1.2x3=2
1.8x1+2.5x2+4.7x3=4

Теперь приведем систему к нормальному виду:

x1=0.3947-0.0789x2-0.3158x3
x2=0.4762+0.6429x1-0.2857x3
x3= 0.8511-0.383x1-0.5319x2

Проверяем сходимость итерационного процесса:

0.0789+0.3158=0,3947 ≤ 1
0.6429+0.2857=0.9286 ≤ 1
0.383+ 0.5319= 0.9149 ≤ 1 , т.е. условие выполняется.

0,3947
Начальное приближение х (0) = 0,4762
0,8511

Подставляем данные значения в уравнение нормального вида, получаем следующие значения:

0,08835
x (1) = 0,486793
0,446639

Подставляем новые значения, получаем:

0,215243
x (2) = 0,405396
0,558336

Продолжаем вычисления до того момента, пока не приблизимся к значениям, удовлетворяющим заданному условию.

x (7) = 0,441091

Проверим правильность полученных результатов:

4,5*0,1880 -1.7*0,441+3.5*0,544=2,0003
3.1*0,1880+2.3*0,441-1.1x*0,544=0,9987
1.8*0,1880+2.5*0,441+4.7*0,544=3,9977

Результаты, полученные при подстановке найденных значений в исходные уравнения, полностью удовлетворяют условиям уравнения.

Как мы видим, метод простой итерации дает довольно точные результаты, однако для решения этого уравнения нам пришлось потратить много времени и проделать громоздкие вычисления.

ЛАБОРАТОРНАЯ РАБОТА №3-4.

Вариант №5.

Цель работы: научиться решать системы нелинейных уравнений (СНУ) методом простых итераций (МПИ) и методом Ньютона с помощью ЭВМ.

1. Изучить МПИ и метод Ньютона для решения систем нелинейных уравнений.

2. На конкретном примере усвоить порядок решения систем нелинейных уравнений МПИ и методом Ньютона с помощью ЭВМ.

3. Составить программу и с ее помощью решить систему уравнений с точностью .

ПРИМЕР ВЫПОЛНЕНИЯ РАБОТЫ

Задание.

1. Аналитически решить СНУ:

2. Построить рабочие формулы МПИ и метода Ньютона для численного решения системы при начальном приближении: .

3. Составить программу на любом языке программирования, реализующую построенный итерационный процесс.

Решение.

Аналитический метод.

Аналитическим решением СНУ являются точки и .

Метод простых итераций (МПИ).

Для построения рабочих формул МПИ для численного решения системы необходимо вначале привести ее к виду:

Для этого умножим первое уравнение системы на неизвестную постоянную , второе - на , затем сложим их и добавим в обе части уравнения . Получим первое уравнение преобразуемой системы:

Неизвестные постоянные определим из достаточных условий сходимости итерационного процесса:

Запишем эти условия более подробно:

Полагая равными нулю выражения под знаком модуля, получим систему линейных алгебраических уравнений (СЛАУ) 4 порядка с 4 неизвестными :

Для решения системы необходимо вычислить частные производные :

Тогда СЛАУ запишется так:

Заметим, что если частные производные мало изменяются в окрестности начального приближения, то:

Тогда СЛАУ запишется так:

Решением этой системы являются точки , , , . Тогда рабочие формулы МПИ для решения СНУ примут вид:

Для реализации на ЭВМ рабочие формулы можно переписать так:

Итерационный процесс можно начать, задав начальное приближение x 0 =-2, y 0 =-4. Процесс заканчивается при одновременном выполнении двух условий: и . В этом случае значения и являются приближенным значением одного из решений СНУ.

Метод Ньютона.

Для построения рабочих формул метода Ньютона в виде


где , необходимо:

1. Найти матрицу частных производных:

2. Найти определитель этой матрицы:

3. Определить обратную матрицу:

Проведя преобразования:

Получаем рабочую формулу метода Ньютона для реализации на ЭВМ:


Блок-схема МПИ и метода Ньютона для решения СНУ приведена на рисунке 1.

Рис.1 Схемы МПИ и метода Ньютона.


Тексты программ:

Program P3_4; {Iterations}

uses Crt;

var n: integer;

clrscr;

xn:=x-(x-y+2)+(1/2)*(x*y-3);

yn:=y+(2/3)*(x-y+2)+(1/6)*(x*y-3);

writeln (n:3, x:9:5, xn:9:5, (xn-x):9:5, y:9:5, yn:9:5, (yn-y):9:5);

n:=n+1;

until (abs(x-zx)<=eps) and (abs(y-zy)<=eps);

readln;

2) Метод Ньютона:

Program P3_4; {Nyuton}

uses Crt;

var n: integer;

x0,x,xn,y0,y,yn,eps,zx,zy:real;

clrscr;

n:=0; x0:=-2; x:=x0; y0:=-4; y:=y0; eps:=0.001;

writeln (" n x(i) x(i+1) x(i+1)-x(i) y(i) y(i+1) y(i+1)-y(i) ");

xn:=x-(1/(x+y))*(x*x-x*y+2*x+x-y+2);

yn:=y-(1/(x+y))*(x*y*(-y)-3*(-y)+x*y-3);

writeln (n:3, x:9:5, xn:9:5, abs(xn-x):9:5, y:9:5, yn:9:5, abs(yn-y):9:5);

n:=n+1;

until (abs(x-zx)<=eps) and (abs(y-zy)<=eps);

Результаты отработки программы:

· Рис.2 – программы, работающей по методу простых итераций;

· Рис.3 – программы, работающей по методу Ньютона.

Рис.2 Ответ: х(16)≈-3.00023, у(16)≈-1.00001

Рис.3 Ответ: х(8)≈-3.00000, у(8)≈-1.00000