Метод Ньютона
(метод касательных)
Геометрический смысл метода состоит в последовательном построении касательных к графику функции y=f(x) и нахождении точек пересечения этих касательных с осью OX.
При этом не обязательно задавать отрезок [a,b], содержащий корень уравнения (2), а достаточно найти начальное приближение корня x=x0 .
y B Уравнение касательной
f(x0) P0 к кривой
Y=F(x) P1 y =f(x) в т. P0 (x0; f(x0)):
y – f(x0) = f¢(x0)(x-x0);
P2 y = f(x0)+f¢(x0)(x-x0); (5)
a b X Следующее приближение
0 корня x1 ( y =o; x=x1 )
A x2 x1 x0 определим, как:
0 0=f(x0)+f¢(x0)(x1-x0);
x1=x0- f(x0)/ f¢(x0);
x2=x1- f(x1)/ f¢(x1); и т. д .
Формула для последовательных прближений к корню x* имеет вид:
xn= xn-1 - f(xn-1)/ f¢(xn-1); где f¢(xn -1) 0 (6)
Для окончания итерационного процесса может быть использовано условие êf(xn -1)ê<e, либо условие близости двух последовательных приближений : êxn-xn-1ê<e .
а) Отрезок [a,b] содержал единственный корень уравнения f(x)=0;
б) функция f(x) имела на [a,b] непрерывные производные
f¢(x) и f¢¢(x);
в) производные f¢(x) и f¢¢(x) не обращались в нуль на [a,b];
г) начальное приближение x0 выбиралось так, чтобы выполнилось неравенство: f(x0)· f¢¢(x0) > 0 (7)
Оценка погрешности этого метода имеет вид:
где M = max ê f¢(x) ê; m = min ê f¢(x) ê;
xÎ [a,b]; xÎ [a,b];
Сходимость улучшается при уменьшении величины:
[] < 1
Трудность метода – в выборе начального приближения.
Поэтому, целесообразно использовать смешенный алгоритм: Сначала применить сходящийся метод (например, метод деления отрезка пополам ), а после некоторого числа итераций – быстро сходящийся метод Ньютона.
Пример решения методом Ньютона.
Дано: Уравнение 3x-4Ln (x) –5 = 0.
[ 0 ; 3,6 ]-отрезок,содержащий корень.
Погрешность e= 10 –3. Найти корень.
Проверяем условие сходимости : f(x)*f¢¢(x) > 0 .
Из условия сходимости выбираем значение x0 .
Рассчетная формула : xn= xn-1 - ;
f(x) = 3x-4Ln (x) –5 ; f¢(x) =3-4/x ;
f¢¢(x) = - (-4/x2) = 4/x2 ;
f(3) =9-4*1,1-5=-0,4 < 0;
f¢¢(3) =4/9 > 0;
f(3,6) = 10,8 - 4*1,3 - 5 = 0,6 > 0 ;
f¢¢(3 ,6) = 4/(3,6)2 = 4/12,96 = 0,31 > 0;
f(3.6)*f ¢¢(3.6) > 0 Þx0= 3,6 .
Программа метода Ньютона
Program Kasat(input,output);
Uses Crt;
Var a , d , x , x1 : real ; n : integer;
Const eps = 0,001;
Function power ( U : real ): real ;
begin
power := 3*U – 4* LN ( U ) – 5 ;
end ; { power }
Function power 1 ( t : real ): real ;
begin
power1 := 3 – 4 / t;
end ; { power 1}
BEGIN
Clrscr;
x : = 3.6 ; n : =0;
Repeat
n: = n + 1;
x1: = x – power ( x ) / power 1 ( x );
a: = x1 –x;
d: = power( x1 );
Writeln ( ` n = `, n );
x: =x1;
Until ABS ( a ) < = eps;
Repeat Until Keypressed ;
END.
1
Начало
2
e = 10-3
3
n = 0; x = 3,6
4
n = n + 1
5
f(x)
6
f ¢(x)
7
x1=x-f(x)/f ¢(x)
8
a = x1 - x
9
d = f(x1)
10
x, d, n
11
x = x1
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.