3.1 Fonctions à une
variable, exposé des méthodes
3.1.1 Méthode de Dichotomie (Bisection)
3.1.2 Méthode de Regula Falsi (fausse position)
3.1.3 Méthode de la sécante
3.1.4 Méthode de Newton
3.1.5 Récapitulatif
3.2
Systèmes d'équations non linéaires
3.3
Zéros de polynômes
L'objectif de ce chapitre est de comparer différentes
méthodes de résolution d'équations non linéaires du type :
|
(3.1) |
dans le cas où une solution analytique ne peut pas être obtenue. Après
l'exposé des méthodes applicables aux fonctions à une variable, nous aborderons
le cas des systèmes d'équations non linéaires puis le cas particulier des
racines d'un polynôme. La particularité de ces méthodes est qu'elles ne
permettent de déterminer qu'une seule racine. Il faut alors rechercher les
autres racines possibles par itération.
Cette méthode repose sur le constat que si le produit f(a).f(b)
< 0 est négatif, alors la fonction f s'annule au moins une fois sur
l'intervalle [a,b]. Les différentes étapes de la méthode peuvent
être résumées comme suit :
Après k itérations, la précision sur la racine s,
vaut :
|
(3.2) |
Il est donc possible d'estimer à l'avance le nombre d'itérations nécessaires pour approcher s avec une précision donnée. Si on désire une tolérance t sur la racine, alors l'inégalité précédente donne le nombre d'itération minimal n qui doit vérifier
|
(3.3) |
On en déduit le minorant de n
|
(3.4) |
Si on choisit le logarithme de base 2 (bits de précision)
l'inégalité précédente se simplifie
|
(3.5) |
Il faut donc une itération supplémentaire par bit de
précision. On remarquera que l'ordre de
convergence vaut p = 1 et qu'il est indépendant de la fonction.
Figure 3.1: Méthode de dichotomie
Exemple 32 Les points successifs pour les premiers
pas d'itération apparaissent sur la figure 3.1 pour la
fonction
|
avec a = -2
et b = 2.
La première étape de la méthode est identique à celle de la
précédente. Au lieu d'utiliser le point médian, on utilise le point
d'intersection avec l'axe des abscisses de la
droite (x(0) = a,y(0) = f(a)),(x(1)
= b,y(1) = f(b)). Ce point est donné par
l'équation suivante qui se vérifie très simplement :
|
(3.6) |
Les étapes 3 et 4 sont alors identiques à celles de la méthode de dichotomie
Figure 3.2: Méthode de Régula-Falsi
La figure 3.2 montre l'évolution des
points au cours des itérations. On démontre que si f¢(s) et f¢¢(s) sont différents de 0,
l'ordre de convergence de cette méthode vaut aussi 1.
Cette méthode est une variante de la méthode de Regula
Falsi. La condition de l'étape 1 n'a plus à être satisfaite : la racine n'est
pas nécessairement dans l'intervalle [x(k),x(k+1)].
Comme il ne subsiste aucune indication sur le choix initial de l'intervalle [x(0),x(1)],
on effectue un choix arbitraire de cet intervalle et on surveille alors la
décroissance de la norme de y(k) = f(x(k)).
|
(3.7) |
L'ordre de convergence vaut p = [(1+Ö5)/2] = 1.618.
Figure 3.3: Méthode de la sécante
La figure 3.3 montre l'évolution des points
en prenant comme intervalle initial, l'intervalle [-1,1] qui ne contient pas la racine. On pourra vérifier que la
méthode diverge si on choisit par exemple l'intervalle [1,2].
Dans ce cas, on suppose que la fonction est
continûment dérivable et que sa dérivée peut être calculée facilement. La
méthode consiste alors à approcher la fonction au point de coordonnées (x(k),y(k))
par sa tangente :
|
(3.8) |
On obtient alors x(k+1), point d'intersection avec l'axe des abscisses :
|
(3.9) |
|
|
La figure 3.4 montre l'évolution des
points au cours des itérations si on prend comme point de départ le point x0
= -2.
Remarque 33 Bien que plus rapide, la méthode de Newton échoue dans plusieurs cas. Quelques exemples sont rassemblés sur la figure ci-dessous
Figure 3.5: Cas où la méthode de Newton échoue
|
méthode |
Rapidité |
nombre de
points |
f(a)f(b) < 0 |
f Î C2 |
|
dichotomie |
non |
2 |
oui |
non |
|
Newton |
oui |
1 |
non |
oui |
|
Sécante |
moyen |
2 |
non |
non |
La méthode de
newton peut être généralisée à la résolution des systèmes d'équations
non-linéaires de la forme :
|
(3.10) |
A titre d'exemple, considérons le système d'équations à deux
inconnues suivant
|
(3.11) |
On définit le Jacobien du système par la matrice aux dérivées partielles :
|
(3.12) |
En posant u = [x,y]T, la suite des points u(k) est obtenue par généralisation de l'équation de Newton pour une fonction à une variable. Elle prend la forme :
avec FT = [f,g].
La forme explicite de l'équation 3.13 dans ce cas simple est
|
Dans le cas général de l'équation 3.10, l'équation 3.13 reste vraie en
définissant :
|
La méthode de Newton est aussi bien adaptée au problème de
résolution d'équations de type polynomial.
Nous nous restreindrons au cas de polynômes à coefficients réels mais la
méthode est encore valable dans le cas complexe.
Comme nous l'avons vu, la méthode de newton nécessite, à chaque itération, le calcul de la fonction et de la dérivée au point x(k). Le calcul peut être réalisé de la manière suivante avec un coût en temps de calcul réduit. Considérons pour cela le polynôme de degré n dont on veut la valeur de la dérivée au point p = x(k). Le polynôme de départ étant donné par
|
(3.16) |
La division euclidienne de P(x) par (x-p) donne comme quotient le polynôme Pn-1(x) de degré (n-1) et le reste constant R0
|
(3.17) |
avec
|
(3.18) |
On vérifie que le calcul des bk et de R0
peut se faire simplement par l'algorithme suivant
|
D'autre part la dérivation de Pn(x)
donne
|
(3.22) |
On en déduit donc que
|
(3.23) |
Pour avoir la valeur de la dérivée de Pn(x)
au point p, il suffit donc de calculer la valeur de Pn-1(x) au point p. Pour
cela il suffit de considérer la division euclidienne de Pn-1(x) par (x-p) qui donne le quotient Pn-2(x) et le reste R1
D'après l'équation 3.24, on remarque
que
|
(3.25) |
Il suffit donc de calculer R1 pour avoir
la dérivée de Pn. Le calcul de R1 se fait
par le calcul des ck en utilisant le même algorithme que pour
les bk
|
Il suffira donc maintenant d'inclure cet algorithme de calcul de la dérivée dans l'algorithme de Newton.
Commentaires sur ce polycopié smam@iup.univ-evry.fr
Lundi 22 Novembre 1999