0% ont trouvé ce document utile (0 vote)
177 vues5 pages

Algorithme de Dichotomie en Mathématiques

Ce document décrit plusieurs méthodes pour résoudre des équations non linéaires, notamment la dichotomie, la méthode du point fixe, et les méthodes de Newton et de la sécante. Des algorithmes et des conditions de convergence sont présentés pour chaque méthode.

Transféré par

Rija Rakotonirainy
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats TXT, PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
177 vues5 pages

Algorithme de Dichotomie en Mathématiques

Ce document décrit plusieurs méthodes pour résoudre des équations non linéaires, notamment la dichotomie, la méthode du point fixe, et les méthodes de Newton et de la sécante. Des algorithmes et des conditions de convergence sont présentés pour chaque méthode.

Transféré par

Rija Rakotonirainy
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats TXT, PDF, TXT ou lisez en ligne sur Scribd

Systèmes d'équations non linéaires 2

1. Dichotomie 2
2. Point #xe 3
3. Méthodes de Newton et et de la sécante 5
1
Systèmes d'équations non linéaires
On considère un intervalle I ⊂ R (borné ou non) et une fonction f : I → R.
On cherche à résoudre
x ∈ I, f (x) = 0
1. Dichotomie
1.1. Description. Soit f : [a, b] → R une fonction continue telle que
f (a) f (b) < 0
Alors en vertu du théorème des valeurs intermédiaire, il existe x0 ∈ [a, b] tel que
f (x0) = 0. Soit c =
a+b
2
, alors si f (c) = 0, c est solution, sinon f (a) f (c) < 0
ou bien f (c) f (b) < 0 dans le premier cas, on pose b = c dans le deuxième cas, on
pose a = c. Dans les deux cas on obtient à nouveau f (a) f (b) < 0. On peut alors
réitérer le processus, jusqu'à ce que l'une des conditions suivantes soit
réalisée :
(1) |b − a| < #
(2) |f (c)| < δ
Si l'un des deux tests d'arret est positif, on estime que l'on a convergé vers une
solution approchée de l'équation f (x) = 0.
1.2. Algorithme. L'algorithme s'écrit (il s'agit ici un code scilab):
Algorithm 1.1. [k,E]=Dichotomie(f, a,b,#,K)
//Résolution de f (z) = 0 par dichotomie
//entrée a < b intervalle initial
// # pour le test d'arret |f (c)| < #
// K pour limiter le nombre d'itérations.
//Sortie : k, nombre d'itérations
// X=(ci, 0 ≤ i ≤ k), les itérés
// E=(|f (ci)| , 0 ≤ i ≤ k)
if f(a)*f(b)>0 then return end
c=(a+b)*0.5;fc=f(c);
C=c;E=abs(fc);
k=1;
while abs(fc)>eps# & k<K do
k=k+1;
if f(a)*fc<0 then
b=c;
else
a=c;
end
c=(a+b)*0.5;fc=f(c);
E=[E,abs(fc)]
end
return k,C,E;
2
2. POINT FIXE 3
endfunction
1.3. Convergence.
Theorem. Soient [a0, b0] , [a1, b1] , ..., [an, bn] , ... les intervalles engendrés
par l'algorithme de dichotomie, alors les suites an et bn
sont adjacente et leur limite commune est un zéro de f. Soit
r = limn→∞ cn avec cn =
an+bn
2
, alors
|r − cn| ≤ 2
−(n+1) |b0 − a0|
Example 1.2. Si [a, b] = [0, 1], pour obtenir une précision |x
∗ − xn| < 10−6
, il
faut 19 itérations, quelle que soit la fonction f.
2. Point #xe
L'équation f (x) = 0 est supposée mise sous la forme F (x) = x
2.1. Description.
Definition 2.1. On dit que x est un point #xe de F si et seulement si F (x) = x
la méthode de point #xe consiste à considérer la suite
x0 ∈ R
xn+1 = F (xn)
Dans quelles conditions la suite est-elle convergente ? C'est ce à quoi nous allons
essayer de répondre dans le paragraphe sur la convergence. Auparavent :
2.2. L'algorithme. Voici le code scilab de l'algorithme de point #xe pour
la résolution de F (x) = x:
function [k,x,E]=PointFixe(F,x,eps,K)
//resolution de F(x)=x par la méthode du point fixe
//x valeur initiale puis solution
//eps réel positif : la precision on arete lorsque |F(x)-x|<eps
// K entier : nombre max d'itérations
//E vecteur réel : historique de l'erreur |F(x)-x|
//k entier : nombre d'itérations
k=1;y=F(x);dx=abs(y-x);E=dx;
while dx>eps & k<K do
x=y;
y=f(x);
dx=abs(y-x);
E=[E,dx]
k=k+1
end
return k,x,E
endfunction
2. POINT FIXE 4
2.3. Conditions de convergence.
Theorem 2.2. Soit I un intervalle fermé, borné de R et F : I → R
véri#ant
(1) F (I) ⊂ I
(2) F continue sur I
(3) F monotone sur I
alors F admet un point #xe x
∗ ∈ I
Definition 2.3. Soit I = [a, b] 6= ∅ et f : I → R. L'application f
est dite contractante sur I si :
il existe un réel λ ∈ [0, 1[ tel que pour tout x, y ∈ I :
|F (x) − F (y)| 6 λ |x − y|
Proposition 2.4. Soit I = [a, b] 6= ∅ et soit F une application de
classe C
1
sur I véri#ant
sup
I
|F
0
| < 1
Alors F est contractante sur I.
Le théorème suivant donne des conditions su#santes pour que F admette un
point #xe x

et pour que la suite xn converge vers x

.
Theorem 2.5. Soit I un intervalle fermé de R et F : I → R une
application contractante sur I, telle que F (I) ⊂ I
alors
(1) F admet un unique point #xe x
∗ ∈ I et
(2) pour tout x0 ∈ I, la suite xn+1 = F (xn) converge vers
x

.
Proposition 2.6. Soit I = [a, b], soit F une application de classe
C
1
sur I admettant un point #xe x
∗ ∈ I, et véri#ant |F
0
(x

)| < 1.
Alors on peut trouver un intervalle Iδ = [x
∗ − δ, x∗ + δ] tel que
F (I) ⊂ I et F est contractante sur Iδ.
Corollary 2.7. Si F admet un point #xe x

, si F est de classe C
1 au voisinage
de x

, si |F
0
(x

)| < 1, alors il existe un voisinage V de x

tel que pour tout x0 ∈ V ,
la suite xn+1 = F (xn) converge vers x

.
2.4. Ordre de convergence d'une suite réelle.
Definition 2.8. soit (un) une suite réelle convergent vers u. Si
l'erreur en = u − un véri#e
|en+1| = O (|en|
α
)
on dit que l'ordre de convergence de la suite est (au moins) α.
Si α = 1 la convergence est linéaire,
si 1 < α < 2 la convergence est dite super-linéaire,
si α = 2 la convergence est dite quadratique,
Proposition 2.9. Pour que l'ordre de convergence soit α il su#t
que limn→∞
|en+1|
|en|
α existe et soit #nie.
3. MÉTHODES DE NEWTON ET ET DE LA SÉCANTE 5
Figure 1. Méthode de point #xe, di#érents cas de #gure
Proposition 2.10. Pour F assez régulière, si la suite xn+1 =
F (xn) converge vers x

, alors son ordre de convergence est q, le
plus petit entier tel que F
(q)
(x

) 6= 0
3. Méthodes de Newton et et de la sécante
3.1. Description. La méthode de Newton pour résoudre les équations non
linéaires
f (x) = 0
est un cas particulier de la méthode de point #xe.
On considère l'équation et on suppose donc f de classe C
2 au voisinage de la
solution x

. Si l'on dispose d'une approximation xn pas trop éloignée de x

, alors
on peut écrire en posant x
∗ = xn + h (h est l'erreur) et en utilisant la formule de
Taylor :
0 = f (x

) = f (xn) + hf0
(xn) + O

h
2
#
(1)
' f (xn) + hf0
(xn)
Ce faisant, on a linéarisé le problème au voisinage de xn.
Linéariser la fonction f au voisinage du point x consiste à remplacer
la fonction h 7→ f (x + h) par sa partie linéaire : h 7→ f (x) +
hf0
(x).
On a donc approximativement h ' −
f(xn)
f
0(xn)
, à condition que f
0
(xn) 6= 0. On
peut donc corriger l'approximation courante en écrivant x
∗ ' xn+1 avec
xn+1 = xn −
f (xn)
f
0 (xn)
On réitère le processus, et on obtient la méthode de Newton
3. MÉTHODES DE NEWTON ET ET DE LA SÉCANTE 6
Figure 2. Algorithmes de Newton et de la sécante (ou Quasi-Newton)
(a) Newton
(b) quasi-Newton (sécante)
Si l'on ne dispose pas de la dérivée ou si celle-ci coûte trop cher à calculer, on
peut l'approcher par
f
0
(xn) '
f (xn) − f (xn−1)
xn − xn−1
on obtient alors la méthode de la sécante, qui est une méthode de quasi-Newton.
xn+1 = xn − f (xn)
(xn − xn−1)
f (xn) − f (xn−1)
3.2. Algorithmes (codes scilab).
Algorithm 3.1. [k,X,E]=Newton(f,df,x0,#,K)
#Méthode de Newton pour la résolution de f(x)=0
#Entree : f, df la fonction et sa dérivée.
# x0 ∈ R approximation initiale
# # > 0 le test d'arret est |f (x)| < #
# K nombre max d'iterations
#Sortie : k nombre d'iterations,
# X∈ Rk, la suite des itérés xn
# E∈ Rk, la suite des f (xn)
x=x0;k=1;fx=f(x);dfx=df(x);
X=x0;E=abs(fx);
while abs(fx)>eps & k<K do

Vous aimerez peut-être aussi