Résolution numérique des équations non linéaires 1 Calcul d`une

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.
2 M´ethode de point fixe
On r´esoud ici l’´equation g(x) = x.
1. Donner l’interpr´etation g´eom´etrique de l’algorithme suivant :
x0donn´e
xn+1 =g(xn).
2. Ecrire la fonction MatLab correspondante.
3. Appliquer la m´ethode de point fixe `a la r´esolution de
x+ ln(x) = 0 sur [0,1]
ex
x= 0 sur [0,1]
1
2+e
1
2xx= 0 sur [0,2].
3 M´ethode de Newton
On r´esoud de nouveau f(x) = 0.
Une it´eration de l’algorithme de Newton s’´ecrit
x0donn´e
xn+1 =xn
f(xn)
f0(xn).
1. Expliquer pourquoi cette m´ethode s’appelle ´egalement la m´ethode de la tangente.
2. Ecrire la fonction MatLab correspondante.
3. L’appliquer aux ´equations des questions pr´ec´edentes et `a la recherche des racines de
x36x+ 2 = 0.
1 / 2 100%