Vous êtes sur la page 1sur 4

TP Méthode numérique et optimisation Ahmouda Taha / Maamri Chouaib Option : MC

TP N° 02 Prof : allag.M 2018/2019

Méthode de Newton-Raphson

Rappel sur la méthode de Newton-Raphson :


On entend par système d'équations non linéaires avec n équations et n inconnues (ou plus
simplement système non linéaire) :
𝒇𝟏(𝒙𝟏, … . . , 𝒙𝒏) = 𝟎
{𝒇𝟐(𝒙𝟏, … . . , 𝒙𝒏) = 𝟎
𝒇𝒏(𝒙𝟏, … . . , 𝒙𝒏) = 𝟎
Avec fi : Rn  R, i = 1,…, n , étant des fonctions continues. Sous forme matricielle on a
F(x) = 0 ;
F : Rn  Rn étant une fonction continue. Pour une équation f(x) = 0 ,ou un système d'équations
F(x) = 0 , on cherche à déterminer une ou plusieurs solutions (appelés encore zéros ou racines) ;
c'est-à-dire un ou plusieurs réels x qui satisfont f(x) = 0 (resp. F(x) = 0).

La méthode de Newton-Raphson se généralise aisément au cas de plusieurs équations non linéaires


l'itération se base alors sur :
Xk+1 = Xk – F’(Xk)-1F(Xk)
Avec F’(Xk)-1 la matrice Jacobienne.

−𝑿(𝟐) × 𝒔𝒊𝒏(𝑿(𝟏) × 𝑿(𝟐)) −𝑿(𝟏) × 𝒔𝒊𝒏(𝑿(𝟏) × 𝑿(𝟐))


( )
𝟐 × 𝑿(𝟏) 𝒆−𝑿(𝟐)

La méthode de Newton Raphson pour un système d'équation non linéaire

 Le programme Matlab :
La tolérance = 10^(-6) ; les valeurs initiales X0 = (10
10
) Le script est :

clc
clear all
x1=10;x2=10;
X=[x1;x2]
deltax=0.1
iter=1
while abs(deltax)>10^(-6)
F=[cos(X(1)*X(2))-1/2;X(1)^2-exp(-X(2))-3]
J=[-X(2)*sin(X(1)*X(2)),-X(1)*sin(X(1)*X(2));2*X(1),exp(-X(2))]
deltax=-inv(J)*F
X=X+deltax
TP Méthode numérique et optimisation Ahmouda Taha / Maamri Chouaib Option : MC
TP N° 02 Prof : allag.M 2018/2019

iter=iter+1
end
racinx1=X(1)
racinx2=X(2)

 Le résultat :

X= F=
10 1.0e-03 *
10 -0.1647
deltax = 0.0000
0.1000 J=
iter = 27.7537 1.5002
1 3.4641 0.0000
F= deltax =
0.3623 1.0e-03 *
97.0000 -0.0000
J= 0.1098
5.0637 5.0637 X=
20.0000 0.0000 1.7321
deltax = 32.0438
-4.8500 iter =
4.7785 8
X= racinx1 =
5.1500 1.7321
14.7785 racinx2 =
……………… 32.0438

Après l’exécution du programme on peut voir que les racines sont : x1=1.7321
et x2 =32.0438 avec un nombre d’itération iter=8.

 Travail à domicile :

La tolérance = 10^ (-6) ; les valeurs initiales X0 = (5, 5,5)’


Le script est :
TP Méthode numérique et optimisation Ahmouda Taha / Maamri Chouaib Option : MC
TP N° 02 Prof : allag.M 2018/2019

clc 0.1000
clear all
iter =
format short
x1=5,x2=5,x3=5;
1
X=[x1;x2;x3] F=
deltx=0.1 1.0e+03 *
iter=1
0.0150
while abs(deltx)>10^-6
F=[3*X(1)+cos(X(2)*X(3))-
-2.0825
1;X(1)^2- 0.1090
81*(X(2)+0.1)^2+sin(X(3))+1/4;exp J=
(-X(1)*X(2))+20*X(3)+9]
3.0000 0.6618 0.6618
J=[3,-X(3)*sin(X(2)*X(3)),-
X(2)*sin(X(2)*X(3));2*X(1),-
10.0000 -826.2000 0.2837
162*(X(2)+0.1),cos(X(3));- -0.0000 -0.0000 20.0000
X(2)*exp(-X(1)*X(2)),-X(1)*exp(- deltx =
X(1)*X(2)),20]%???????? ????
-3.2298
?????
deltx=-inv(J)*F -2.5616
X=X+deltx -5.4500
iter=iter+1 X=
end
1.7702
racinx1=X(1)
racinx2=X(2) 2.4384
racinx3=X(3) -0.4500
Le résultat : ………………..

X= F=
5
-0.0032
5
-2.0939
5
deltx = 0.0002
TP Méthode numérique et optimisation Ahmouda Taha / Maamri Chouaib Option : MC
TP N° 02 Prof : allag.M 2018/2019

J= -0.5000

3.0000 -0.0129 0.0013 iter =

-0.0019 -24.5785 0.8776 7

-0.0517 0.0010 20.0000 racinx1 =

deltx = -2.5568e-04

0.0007 racinx2 =

-0.0852 -0.0335

-0.0000 racinx3 =

X= -0.5000

-0.0003

-0.0335

Après l’exécution du programme on peut voir que les racines sont : x1= -
2.5568e-04, x2 = -0.0335 et x3 = -0.5000 avec un nombre d’itération iter=7