suivant: La méthode de Newton
monter: Solution de f (x)
précédent: Solution de f (x)
Table des matières
Index
Soit f deux fois dérivable ayant un zéro et un seul r dans l'intervalle
[a ; b]. Supposons de plus que f' et f'' ont un signe constant sur
[a ; b]. La méthode de Newton consiste à approcher r par l'abscisse
x1 du point commun à Ox et à la tangente en un point M0
du graphe de f. Si M0 a pour coordonées
(x0, f (x0))
(
x0
[a ; b]) , la tangente en M0 a pour équation :
y = f (x0) + f'(x0)*(x - x0) et donc on a :
x1 =
x0 -
On peut alors réitérer le processus, et on obtient une suite xn qui
converge vers r soit par valeurs supérieures, si f'*f''>0 sur
[a ; b] (i.e. si f'(r) > 0 et si f est convexe (f''>0 sur
[a ; b])
ou si f'(r) < 0 et si f est concave (f''<0 sur
[a ; b])) soit par
valeurs inférieures, si f'*f''<0 sur
[a ; b] (i.e. si f'(r) < 0 et si
f est convexe (f''>0 sur [a ; b]) ou si f'(r) > 0 et si f est
concave (f''<0 sur
[a ; b])).
On fait le dessin en tapant :
f:=sq-2;
x0:=5/2;
G:=plotfunc(f(x));
T0:=tangent(G,x0);
Ox:=droite(0,1);
M1:=inter(T0,Ox)[0];
x1:=affixe(M1)
segment(point(x1,0),point(x1,f(x1)));
T1:=tangent(G,x1);
M2:=inter(T1,droite(0,1))[0]
x2:=affixe(M2):
segment(point(x2,0),point(x2,f(x2)));
Puis, on écrit la fonction newton_rac qui renvoie la valeur
approchée à eps près de la racine de
f (x) = 0 on commençant l'itération avec x0.
On remarquera que le paramètre f est une fonction et donc, que sa
dérivée est la fonction g:=function_diff(f).
On cherche une valeur approchée donc il faut écrire :
x0:=evalf(x0-f(x0)/g(x0))
car si on ne met pas evalf, les calculs de l'itération se feront
excactement et seront vite compliqués.
newton_rac(f,x0,eps):={
local x1,h,g;
g:=function\_diff(f)
x0:=evalf(x0-f(x0)/g(x0));
x1:=x0-f(x0)/g(x0);
if (x1>x0) {h:=eps;} else {h:=-eps;}
while (f(x1)*f(x1+h)>0){
x1:=x1-f(x1)/g(x1);
}
return x1;
}
suivant: La méthode de Newton
monter: Solution de f (x)
précédent: Solution de f (x)
Table des matières
Index
Documentation de giac écrite par Renée De Graeve