2`
eme ann´
ee Ing´
enieur Septembre 2012
R´esolution num´erique des ´equations non lin´eaires
1 Calcul d’une racine par l’algorithme de dichotomie
(ou bissection)
On consid`ere la fonction
f(h) = π−2 arccos(h
2) + hr1−(h
2)−A= 0.
Pour une valeur de Adonn´ee. L’´equation pr´ec´edente admet une et une seule solution.
Pour trouver cette solution, on peut utiliser l’algorithme de dichotomie : On commence
avec l’intrevalle [a, b] o`u hpeut varier dans notre cas [0,2]. Noter qu’`a une extrimit´e de
l’intervalle la fonction f(h) est positive, tandis qu’`a l’autre extrˆemit´e de l’intervalle la
fonction f(h) est n´egative. Comme la fonction est continue, il doit y avoir un z´ero dans
l’intervalle. Pour le trouver, on calcule le point milieu mde l’intervalle et on regarde la
valeur de f(h) en ce point. Selon le signe, on peut d´ecider dans quel sous-intervalle [a, m]
ou [m, b] se trouve le z´ero. Ensuite on r´eit`ere le proc´ed´e dans le sous-intervalle qui corres-
pondant.
Noter que l’on utilise un astuce num´erique pour le crit`ere d’arrˆet. D’un point de vue
math´ematique, le point milieu m=(a+c)
2se trouve toujours entre aet b, mais num´eriquement,
il y a seulement un ensemble discret de nombres machines, donc en certains points il n’y
a plus de nombre machine dans l’intrevalle [a, b] et donc mest ´egal `a aou b. Ainsi, l’al-
gorithme pr´ec´edent donne un r´esultat aussi pr´ecis que possible sur un ordinateur donn´e.
Exercice 1
Impl´ementer l’algorithme de dichotomie en Matlab.
Pour cela on ajoutera un param`etre de sortie le dernier sous-intervalle [a, b] (car on en
aura besoin dans la suite). On rajoutera un test a>bet on am´eliorera l’algorithme en
faisant une seule ´evaluation de f`a chaque it´eration.
Exercice 2
Utiliser l’algorithme de dichotomie pour cr´eer un tableau repr´esentant les valeurs de hen
fonction de celles de A(h) :
A(h) = π−2 arccos(h
2) + hr1−(h
2)
A(h) 0 0.1π0.2π . . . π
h0 ? ? . . . 2.