restart;with(plots):secu:=50:secu est un nombre maximal d'it\351rations, \351vitant les boucles trop longuesExercice 3Questions a) et b)impact:=(f,a)->a-f(a)/D(f)(a);
Newton:=proc(f,a,epsilon)
local aa,bb,compteur,milieu,suite_m;
aa:=a;bb:=impact(f,aa);compteur:=1;
while is(abs(bb-aa)>epsilon) and is(compteur<secu) do
compteur:=compteur+1;aa:=bb;bb:=impact(f,bb);
od;
[compteur,aa];
end:Question c)Premier exemplef:=x->x^3-4*x+1;a:=-2;epsilon:=10^(-9);sol:=evalf(Newton(f,a,epsilon)); solution propos\351 par la proc\351dure Newton'f'(sol[2])=evalf(f(sol[2])); valeur de f en ce pointDeuxi\350me exemplef:=x->x^3-4*x+1;a:=0;epsilon:=10^(-9);sol:=evalf(Newton(f,a,epsilon)); solution propos\351 par la proc\351dure Newton'f'(sol[2])=evalf(f(sol[2])); valeur de f en ce pointTroisi\350me exemplef:=x->x^3-4*x+1;a:=2;epsilon:=10^(-9);sol:=evalf(Newton(f,a,epsilon)); solution propos\351 par la proc\351dure Newton'f'(sol[2])=evalf(f(sol[2])); valeur de f en ce pointIllustration Graphiquef:=x->exp(-x*x/2)-1/2;a:=0.3;epsilon:=10^(-2);SNewton:=proc(f,a,epsilon)
local aa,bb,compteur,milieu,suite_m;
suite_m:=NULL;
aa:=a;bb:=impact(f,aa);compteur:=1;suite_m:=suite_m,aa;
while is(abs(bb-aa)>epsilon) and compteur<secu do
compteur:=compteur+1;aa:=bb;bb:=(impact(f,bb));suite_m:=suite_m,aa;
od;
[compteur,suite_m];
end:
Graphique:=proc(f,a,b,N,s)
local i,segments,courbe,points,st;
st:=op(s[1..N]),s[N];
segments:=NULL;points:=NULL;
for i from 1 to N do
segments:=segments,plot([[s[i],0],[s[i],f(s[i])]],color=blue,thickness=2),plot([[st[i],f(st[i])],[st[i+1],0]],color=green,thickness=1);
points:=points,plot([[s[i],0],[s[i],0]],color=black,thickness=2,style=point);
od;
courbe:=plot(f,a..b,color=red,thickness=3);
display(courbe,points,segments);
end:sol:=SNewton(f,a,epsilon):N:=sol[1]:s:=sol[2..N+1]:Graphique(f,0,2,N,s);sur l'axe des abbscissdes apparaissent les points de la suite x(n+1)=impact(xn,f)
la courbe est cell de fpoints:=seq([i,s[i]],i=1..N):plot([points],color=black,thickness=2,style=point);Les points trac\351s sont ceux de coordonn\351es (n,xn)Un ph\351nom\350ne cycliquef:=x->x*(x^2-16)/20;a:=4/sqrt(5);epsilon:=1:sol:=SNewton(f,a,epsilon):N:=sol[1]:s:=sol[2..N+1]:Graphique(f,-2,2,N,s);Quelques explications.
Que ce soit dans la m\351thode de Cauchy-Picard ou celle de Newton-Raphson, il s'agit d'approcher les solutions par une suite du type u(n+1)=g(un)Comme on l'a vu dans le cas du point fixe de Cauchy-Picard, une petite valeur de la constant k, permet d'assurer le caract\350re contractant de g:x->x-kf(x) (au moins localement) en particulier si |f'| est petit la m\351thode de Cauchy-Picard semble adapt\351. En revanche des grandes valeurs de f' peuvent faire craindre la perte du caract\350re contractant
Dans le cas Newton-Raphson, la constante k devient varaible (et s'adapte d'autant mieux au choix de f, qu'il s'agit de f') g:x->x-f(x)/f'(x)... Ici c'est lorsque |f'| est grand (courbe tr\350s pentue) que la m\351thode est d'autant plus efficace. En revanche plus la d\351riv\351e est petite (pente quasi-horizontale) plus le point d'impact s'eloigne dangeruesement de la solution.