ИТЕРАЦИОННЫЕ МЕТОДЫ РЕШЕНИЯ СИСТЕМ НЕЛИНЕЙНЫХ УРАВНЕНИЙ
ЛАБОРАТОРНАЯ РАБОТА №3-4.
Вариант №5.
Выполнил: Студент группы 24275 Кожевников Е.И. | Проверил: Доцент Горбунов Д.В. |
Цель работы: научиться решать системы нелинейных уравнений (СНУ) методом простых итераций (МПИ) и методом Ньютона с помощью ЭВМ.
Содержание работы:
1. Изучить МПИ и метод Ньютона для решения систем нелинейных уравнений.
2. На конкретном примере усвоить порядок решения систем нелинейных уравнений МПИ и методом Ньютона с помощью ЭВМ.
3. Составить программу и с ее помощью решить систему уравнений с точностью .
ПРИМЕР ВЫПОЛНЕНИЯ РАБОТЫ
Задание.
1. Аналитически решить СНУ:
2. Построить рабочие формулы МПИ и метода Ньютона для численного решения системы при начальном приближении: .
3. Составить программу на любом языке программирования, реализующую построенный итерационный процесс.
Решение.
Аналитический метод.
Аналитическим решением СНУ являются точки и .
Метод простых итераций (МПИ).
Для построения рабочих формул МПИ для численного решения системы необходимо вначале привести ее к виду:
Для этого умножим первое уравнение системы на неизвестную постоянную , второе - на , затем сложим их и добавим в обе части уравнения . Получим первое уравнение преобразуемой системы:
где . Далее, умножим первое уравнение системы на неизвестную постоянную , второе - на , затем сложим их и добавим в обе части уравнения . Тогда второе уравнение преобразуемой системы будет иметь вид:
где .
Неизвестные постоянные определим из достаточных условий сходимости итерационного процесса:
и .
Запишем эти условия более подробно:
Полагая равными нулю выражения под знаком модуля, получим систему линейных алгебраических уравнений (СЛАУ) 4 порядка с 4 неизвестными :
Для решения системы необходимо вычислить частные производные :
.
Тогда СЛАУ запишется так:
Заметим, что если частные производные мало изменяются в окрестности начального приближения, то:
.
Тогда СЛАУ запишется так:
Решением этой системы являются точки , , , . Тогда рабочие формулы МПИ для решения СНУ примут вид:
Для реализации на ЭВМ рабочие формулы можно переписать так:
Итерационный процесс можно начать, задав начальное приближение x0=-2, y0=-4. Процесс заканчивается при одновременном выполнении двух условий: и . В этом случае значения и являются приближенным значением одного из решений СНУ.
Метод Ньютона.
Для построения рабочих формул метода Ньютона в виде
где , необходимо:
1. Найти матрицу частных производных:
2. Найти определитель этой матрицы:
3. Определить обратную матрицу:
Проведя преобразования:
Получаем рабочую формулу метода Ньютона для реализации на ЭВМ:
Блок-схема МПИ и метода Ньютона для решения СНУ приведена на рисунке 1.
Рис.1 Схемы МПИ и метода Ньютона.
Тексты программ:
1) МПИ:
Program P3_4; {Iterations}
uses Crt;
var n: integer;
x0,x,xn,y0,y,yn,eps,zx,zy:real;
begin
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) ');
repeat
xn:=x-(x-y+2)+(1/2)*(x*y-3);
zx:=x;
yn:=y+(2/3)*(x-y+2)+(1/6)*(x*y-3);
zy:=y;
writeln (n:3, x:9:5, xn:9:5, (xn-x):9:5, y:9:5, yn:9:5, (yn-y):9:5);
x:=xn;
y:=yn;
n:=n+1;
until (abs(x-zx)<=eps) and (abs(y-zy)<=eps);
readln;
end.
2) Метод Ньютона:
Program P3_4; {Nyuton}
uses Crt;
var n: integer;
x0,x,xn,y0,y,yn,eps,zx,zy:real;
begin
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) ');
repeat
xn:=x-(1/(x+y))*(x*x-x*y+2*x+x-y+2);
zx:=x;
yn:=y-(1/(x+y))*(x*y*(-y)-3*(-y)+x*y-3);
zy:=y;
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);
x:=xn;
y:=yn;
n:=n+1;
until (abs(x-zx)<=eps) and (abs(y-zy)<=eps);
readln;
end.
Результаты отработки программы:
· Рис.2 – программы, работающей по методу простых итераций;
· Рис.3 – программы, работающей по методу Ньютона.
Рис.2 Ответ: х(16)≈-3.00023, у(16)≈-1.00001
Рис.3 Ответ: х(8)≈-3.00000, у(8)≈-1.00000