Septembre 2012 2ème année Ingénieur Résolution numérique des équations non linéaires 1 Calcul d’une racine par l’algorithme de dichotomie (ou bissection) On considère la fonction r h h f (h) = π − 2 arccos( ) + h 1 − ( ) − A = 0. 2 2 Pour une valeur de A donnée. L’équation précédente 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ù h peut varier dans notre cas [0, 2]. Noter qu’à une extrimité de l’intervalle la fonction f (h) est positive, tandis qu’à l’autre extrêmité de l’intervalle la fonction f (h) est négative. Comme la fonction est continue, il doit y avoir un zéro dans l’intervalle. Pour le trouver, on calcule le point milieu m de l’intervalle et on regarde la valeur de f (h) en ce point. Selon le signe, on peut décider dans quel sous-intervalle [a, m] ou [m, b] se trouve le zéro. Ensuite on réitère le procédé dans le sous-intervalle qui correspondant. Noter que l’on utilise un astuce numérique pour le critère d’arrêt. D’un point de vue se trouve toujours entre a et b, mais numériquement, mathématique, le point milieu m = (a+c) 2 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 m est égal à a ou b. Ainsi, l’algorithme précédent donne un résultat aussi précis que possible sur un ordinateur donné. Exercice 1 Implémenter l’algorithme de dichotomie en Matlab. Pour cela on ajoutera un paramètre de sortie le dernier sous-intervalle [a, b] (car on en aura besoin dans la suite). On rajoutera un test a > b et on améliorera l’algorithme en faisant une seule évaluation de f à chaque itération. Exercice 2 Utiliser l’algorithme de dichotomie pour créer un tableau représentant les valeurs de h en fonction de celles de A(h) : r h h A(h) = π − 2 arccos( ) + h 1 − ( ) 2 2 A(h) 0 0.1π 0.2π . . . π h 0 ? ? . . . 2. 2 Méthode de point fixe On résoud ici l’équation g(x) = x. 1. Donner l’interprétation géométrique de l’algorithme suivant : x0 donné xn+1 = g(xn ). 2. Ecrire la fonction MatLab correspondante. 3. Appliquer la méthode de point fixe à la résolution de x + ln(x) = 0 sur [0, 1] e−x − x = 0 sur [0, 1] −1 1 + e 2x − x = 0 sur [0, 2]. 2 3 Méthode de Newton On résoud de nouveau f (x) = 0. Une itération de l’algorithme de Newton s’écrit x0 donné f (xn ) . xn+1 = xn − 0 f (xn ) 1. Expliquer pourquoi cette méthode s’appelle également la méthode de la tangente. 2. Ecrire la fonction MatLab correspondante. 3. L’appliquer aux équations des questions précédentes et à la recherche des racines de x3 − 6x + 2 = 0.