( ) = = 0 ( ) = 0,15. 3, 4 1, 2., 0,1

Documents pareils
Résolution d équations non linéaires

Équations non linéaires

Continuité et dérivabilité d une fonction

Optimisation non linéaire Irène Charon, Olivier Hudry École nationale supérieure des télécommunications

3 Approximation de solutions d équations

EXERCICE 4 (7 points ) (Commun à tous les candidats)

Chp. 4. Minimisation d une fonction d une variable

Baccalauréat S Antilles-Guyane 11 septembre 2014 Corrigé

Chapitre 6. Fonction réelle d une variable réelle

C f tracée ci- contre est la représentation graphique d une

Image d un intervalle par une fonction continue

Commun à tous les candidats

Polynômes à plusieurs variables. Résultant

Développements limités. Notion de développement limité

Optimisation des fonctions de plusieurs variables

Cours d Analyse. Fonctions de plusieurs variables

Fonctions de plusieurs variables

FONCTIONS DE PLUSIEURS VARIABLES (Outils Mathématiques 4)

Chapitre 2 Le problème de l unicité des solutions

Développements limités, équivalents et calculs de limites

CCP PSI Mathématiques 1 : un corrigé

Nombre dérivé et tangente

IV- Equations, inéquations dans R, Systèmes d équations

Baccalauréat ES Polynésie (spécialité) 10 septembre 2014 Corrigé

La fonction exponentielle

Théorème du point fixe - Théorème de l inversion locale

Baccalauréat ES Pondichéry 7 avril 2014 Corrigé

1 Recherche en table par balayage

ALGORITHMIQUE II NOTION DE COMPLEXITE. SMI AlgoII

Comparaison de fonctions Développements limités. Chapitre 10

8.1 Généralités sur les fonctions de plusieurs variables réelles. f : R 2 R (x, y) 1 x 2 y 2

Fonctions de plusieurs variables et applications pour l ingénieur

I. Ensemble de définition d'une fonction

Programmation linéaire

Bac Blanc Terminale ES - Février 2011 Épreuve de Mathématiques (durée 3 heures)

Baccalauréat ES/L Métropole La Réunion 13 septembre 2013 Corrigé

Résolution de systèmes linéaires par des méthodes directes

Chapitre 7 : Intégration sur un intervalle quelconque

Cours d analyse numérique SMI-S4

I. Polynômes de Tchebychev

Correction du baccalauréat S Liban juin 2007

Notes du cours MTH1101N Calcul I Partie II: fonctions de plusieurs variables

Baccalauréat ES/L Amérique du Sud 21 novembre 2013

Exercice autour de densité, fonction de répatition, espérance et variance de variables quelconques.

Corrigé des TD 1 à 5

Continuité d une fonction de plusieurs variables

L exclusion mutuelle distribuée

O, i, ) ln x. (ln x)2

BACCALAURÉAT GÉNÉRAL SESSION 2012 OBLIGATOIRE MATHÉMATIQUES. Série S. Durée de l épreuve : 4 heures Coefficient : 7 ENSEIGNEMENT OBLIGATOIRE

Notes du cours MTH1101 Calcul I Partie II: fonctions de plusieurs variables

Exercices - Fonctions de plusieurs variables : corrigé. Pour commencer

Amphi 3: Espaces complets - Applications linéaires continues

Méthodes de quadrature. Polytech Paris-UPMC. - p. 1/48

Correction du baccalauréat ES/L Métropole 20 juin 2014

Problème 1 : applications du plan affine

Corrigé du baccalauréat S Asie 21 juin 2010

Rappels sur les suites - Algorithme

Université Paris-Dauphine DUMI2E 1ère année, Applications

Continuité en un point

Exercices types Algorithmique et simulation numérique Oral Mathématiques et algorithmique Banque PT

aux différences est appelé équation aux différences d ordre n en forme normale.

Chapitre 3. Quelques fonctions usuelles. 1 Fonctions logarithme et exponentielle. 1.1 La fonction logarithme

LES MÉTHODES DE POINT INTÉRIEUR 1

Chapitre 3. Mesures stationnaires. et théorèmes de convergence

Logique. Plan du chapitre

Quantification Scalaire et Prédictive

Les algorithmes de base du graphisme

Leçon 01 Exercices d'entraînement

Calcul différentiel. Chapitre Différentiabilité

Limites finies en un point

Licence Sciences et Technologies Examen janvier 2010

Programmes des classes préparatoires aux Grandes Ecoles

Correction du Baccalauréat S Amérique du Nord mai 2007

RO04/TI07 - Optimisation non-linéaire

CONCOURS D ENTREE A L ECOLE DE 2007 CONCOURS EXTERNE. Cinquième épreuve d admissibilité STATISTIQUE. (durée : cinq heures)

Baccalauréat L spécialité, Métropole et Réunion, 19 juin 2009 Corrigé.

Mathématique et Automatique : de la boucle ouverte à la boucle fermée. Maïtine bergounioux Laboratoire MAPMO - UMR 6628 Université d'orléans

Chapitre 4: Dérivée d'une fonction et règles de calcul

Introduction à la théorie des graphes. Solutions des exercices

Programmation Linéaire - Cours 1

Fonctions de plusieurs variables, intégrales multiples, et intégrales dépendant d un paramètre

* très facile ** facile *** difficulté moyenne **** difficile ***** très difficile I : Incontournable T : pour travailler et mémoriser le cours

Bien lire l énoncé 2 fois avant de continuer - Méthodes et/ou Explications Réponses. Antécédents d un nombre par une fonction

Pourquoi l apprentissage?

Équations non linéaires

Complexité. Licence Informatique - Semestre 2 - Algorithmique et Programmation

Capes Première épreuve

BACCALAUREAT GENERAL MATHÉMATIQUES

MIS 102 Initiation à l Informatique

Correction de l examen de la première session

Mathématiques I Section Architecture, EPFL

OM 1 Outils mathématiques : fonction de plusieurs variables

Les travaux doivent être remis sous forme papier.

Suites numériques 3. 1 Convergence et limite d une suite

Théorie et codage de l information

De même, le périmètre P d un cercle de rayon 1 vaut P = 2π (par définition de π). Mais, on peut démontrer (difficilement!) que

Complément d information concernant la fiche de concordance

Items étudiés dans le CHAPITRE N5. 7 et 9 p 129 D14 Déterminer par le calcul l'antécédent d'un nombre par une fonction linéaire

TSTI 2D CH X : Exemples de lois à densité 1

Algorithmes récursifs

Transcription:

Ingénierie Numérique & Simulation Cours 3 : Résolution approchée de l équation f(x) = 0 Problème stationnaire à 1 dimension Méthode par Dichotomie & Méthode de Newton A la fin de ce cours, vous devez être capable de déterminer la valeur approchée d une solution d une équation algébrique f(x) = 0 par une méthode numérique adaptée. 1 Introduction et généralités sur la résolution de f(x) = 0 L objectif de ce cours est de traiter des problèmes stationnaires (c est-à-dire invariant au cours du temps) à 1 dimension (une seule variable) conduisant à la résolution approchée d une équation algébrique du type f(x) = 0, avec f(x) linéaire ou non. On se limite dans ce cours à la résolution de problème à 1 dimension c est-à-dire d une seule variable x telle que f(x) = 0. Les méthodes présentées se généralisent pour la résolution de problèmes à n dimensions. Cas où f(x) est linéaire Dans le cas où f(x) est linéaire, par exemple si f(x) = a.x+b, alors la résolution est immédiate et La résolution ne nécessite pas de méthode particulière. x = b a. Cas où f(x) est non linéaire Pour les cas où f(x) est non linéaire, la résolution de f(x) = 0 est souvent plus délicate. Parfois la résolution analytique est possible (cas des trinômes du second ordre par exemple), parfois elle est impossible. On doit alors utiliser une approche numérique pour obtenir une approximation de la solution. C est l objet de ce cours qui présente en détail deux méthodes : la méthode par Dichotomie et la méthode de Newton. Dans la suite du cours, nous illustrerons les résultats de ces méthodes sur l étude du problème suivant. On considère un profil d aile d avion dont la demi-épaisseur e(x) est approchée par l équation : 4 ( ) [ ] e( x) = 0,15. 3,7. x 3, 4. x 0,3. x, x 0,1, Rechercher la valeur de x pour laquelle le profil e(x) est le plus épais, revient à résoudre l équation : de( x) 3,7 f x f x x x dx 2 x ] ] 3 ( ) = = 0 ( ) = 0,15. 3, 4 1, 2., 0,1 Il s agit donc de trouver la solution x à l équation algébrique f(x) = 0, avec f non linéaire.. Critère de convergence Numériquement, il est impossible de trouver la solution exacte de l équation. Ainsi, sur un intervalle [a, b], il est impossible de trouver exactement c tel que f(c) = 0 du fait de la précision du codage des nombres et des erreurs d arrondis liées aux calculs. Il sera donc nécessaire de définir un critère de convergence, c est à dire une valeur ε telle que f (c ) < ε. On pourra par exemple prendre ε de l ordre de 10-8 ce qui constituera une bonne approximation pour la valeur de c. Lycée Vauvenargues PTSI 1

Séparation des racines La plupart des méthodes de recherche de racines d une fonction, se comportent bien si une seule racine (valeur pour laquelle la fonction s annule) est présente dans l intervalle d étude. Séparer la racine r i (i ème annulation de la fonction sur l intervalle de départ) revient à trouver un intervalle ] a i, a i+1 [ où cette racine est unique. f( x) = x + x.sin( 2π. x) Exemple de fonction à multiples racines Zoom sur l intervalle [5,7] Il convient alors de faire un test aux bornes de l intervalle d étude pour éliminer les cas sans racines sur l intervalle. Il est possible d élaborer une procédure permettant de déterminer la parité du nombre de racines sur l intervalle ] a i, a i+1 [ : si f (a i ). f (a i+1 ) < 0, il existe 2.n + 1 racines dans ] a i, a i+1 [, n N, si f (a i ). f (a i+1 ) > 0, il existe 2.n racines dans ] a i, a i+1 [, n N, n peut éventuellement être nul! si f (a i ). f (a i+1 ) = 0, alors a i ou a i+1 est racine (voire les deux!). Malheureusement, cet algorithme ne donne pas la valeur de n. Nous verrons par la suite que cette procédure est à la base de la recherche de la racine avec la méthode par Dichotomie ou avec la méthode de la corde. Représentations graphiques Les représentations graphiques de f(x) sont également utiles pour avoir une idée du nombre et de la valeur des racines. Cela permet d obtenir «à l œil» un premier intervalle ou un premier candidat pour démarrer une méthode numérique de recherche de racine. Cependant, il convient de faire attention aux représentations graphiques : selon la discrétisation de la courbe affichée, il est possible que des intersections entre la courbe et l axe des abscisses n apparaissent pas alors que mathématiquement ces intersections existent! Mise en évidence des dangers de la représentation graphique 3 1 2 f( x) = 3. x +.ln ( x) 29 Exemple pour ( π ) 4 π Les deux courbes de la figure ci-contre représentent la fonction sur l intervalle [-14,15] avec deux discrétisations de précision différente. Dans le cas où seuls 4 points ont été retenus, on ne constate pas d intersection avec l axe des abscisses. Avec le zoom sur l intervalle [3,1 ; 3,2], il semble encore qu il n y ait qu une racine sur l intervalle. Or lim f( x) =. x π Par continuité sur les intervalles [3,14 ; π[ et ]π ; 3,15], la fonction f admet donc 3 racines dans l intervalle [3,1 ; 3,2]. Lycée Vauvenargues PTSI 2

2 Résolution par la méthode par Dichotomie Principe de la méthode par Dichotomie Le principe est de diviser l intervalle [a,b] en deux parts égales [a,c] et [c,b] avec c milieu de [a,b], de conserver l intervalle [a,c] ou [c,b] contenant la racine et d y reproduire l opération jusqu à ce que le critère de convergence soit satisfait. L algorithme de la méthode par Dichotomie en pseudo-code s écrit alors : Entrées : f, a, b, ε, itemax Méthode par Sorties : la racine approchée c Dichotomie ai,bi,ci a,b,(a+b)/2 fa,fb,fc f(ai),f(bi),f(ci) ite 0 tant que bi-ai > 2 ε et que fc > ε et que ite < itemax faire # voir ci-dessous ite ite + 1 # pour l intérêt de ci (ai+bi)/2 # ces tests fc f(ci) si fa.fc 0 alors # la racine est dans [ai,ci] bi ci # on actualise l intervalle de recherche fb fc sinon # la racine est dans [ci,bi] ai ci # on actualise l intervalle de recherche fa fc Retourner ci Rem : La méthode par Dichotomie est déjà implémentée dans le module Scipy de Python : >>> import scipy.optimize >>> x=scipy.optimize.bisect(f,a,b,ε,itemax) Voir l'aide pour plus de détails Convergence de la méthode Si la fonction f est définie et continue sur l intervalle [a, b], et si la fonction n admet qu une seule racine sur l intervalle [a, b], alors la méthode par Dichotomie converge. La vitesse de convergence est lente mais la méthode est robuste : sa convergence est assurée. Rem : pour test d arrêt, à l itération n, il est intéressant de prendre l un des deux tests suivants «tant que b n a n > 2 ε» ou «tant que fc > ε» selon le gradient faible ou fort de la fonction près de la racine c. Courbe à fort gradient aux alentours de la racine, le test «tant que fc > ε» sera plus précis. Courbe à faible gradient aux alentours de la racine, le test «tant que b n a n > 2 ε» sera plus précis. Vérifier les deux tests rend la recherche plus lente mais également plus précise quelle que soit le gradient de la fonction. Le test «tant que ite < itemax» sur le nombre d itérations ite assure l arrêt de la méthode même sans convergence. Lycée Vauvenargues PTSI 3

Complexité de l algorithme b a La boucle «tant que» s exécute jusqu à ce que 2. ε n < pour le test d arrêt «tant que bn a n > 2 ε». En conséquence, la boucle 2 réalisera n itérations, telles que : b a ln b a b a n 2. ε < 2. ε < 2 n >, on remarque que la grandeur b-a conditionne le nombre d itérations. n 2 2. ε ln( 2) La complexité de cet algorithme est donc de type logarithmique en o(ln(b-a)). La complexité de l algorithme est également de type logarithmique pour le test d arrêt «tant que fc > ε». 3 Résolution par la méthode de Lagrange (ou méthode de la corde) Hors programme Principe de la méthode de Lagrange Le principe est de diviser l intervalle [a,b] en deux, de conserver l intervalle contenant la racine et d y reproduire l opération jusqu à ce que le critère de convergence soit satisfait. Mais au lieu de diviser en 2 parts égales comme précédemment, on cherche le point c point diviseur de l intervalle tel que ce point corresponde à l intersection de l axe des abscisses et de la droite passant par les points A(a,f(a)) et B(b,f(b)). c 2 c 1 = f( b) f( a) L équation de la corde est donnée par : y =.( x a ) + f ( a ), si bien que c est tel que : b a f( b) f( a) a. f( b) b. f( a) 0 =.( c a) + f( a) c =. b a f( b) f( a) L algorithme de la méthode de Lagrange en pseudo-code s écrit alors : Entrées : f, a, b, ε, itemax Méthode de Sorties : la racine approchée c Lagrange ite 0 ai,bi,ci a,b, (a.f(b)-b.f(a))/(f(b)-f(a)) fa,fb,fc f(ai),f(bi),f(ci) tant que bi-ai > 2 ε et que fc > ε et que ite < itemax faire ite ite + 1 ci (ai.f(bi)-bi.f(ai))/(f(bi)-f(ai)) fc f(ci) si fa.fc 0 alors # la racine est dans [ai,ci] bi ci # on actualise l intervalle de recherche fb fc sinon # la racine est dans [ci,bi] ai ci # on actualise l intervalle de recherche fa fc Retourner ci Rem : une méthode basée sur le principe de la méthode de Lagrange est déjà implémentée dans le module Scipy de Python : >>> import scipy.optimize >>>x=scipy.optimize.ridder(f,a,b,ε,itemax) Voir l'aide pour plus de détails Convergence de la méthode Elle n est pas assurée pour cette méthode. Elle permet cependant dans bien des cas une résolution plus rapide que la méthode par Dichotomie. Lycée Vauvenargues PTSI 4

4 Résolution par la méthode de Newton Principe de la méthode de Newton Cette méthode utilise le développement de Taylor à l ordre 1. Si la fonction est de classe C 1 sur l intervalle [a,b], alors le développement de Taylor d ordre 1 donne : f( b) = f( a) + f'( a).( b a) + o( b a). A partir d un point choisi x 0, la méthode consiste à rechercher le point suivant x 1 en le supposant racine de la fonction f et en négligeant le terme o(x 1 -x 0 ) dans le développement de Taylor. Si bien que : f( x0) 0 = f( x1) = f( x0) + f'( x0).( x1 x0) x1 = x0. f'( x ) Si f(x 1 ) ne vérifie pas le critère de convergence f(x 1 ) < ε, alors un nouveau candidat x 2 est calculé à partir de x 1 et ainsi de suite jusqu à convergence. 0 L algorithme de la méthode de Newton en pseudo-code s écrit alors : Entrées : f, f, x0, ε, itemax Sorties : la racine approchée xi ite 0 xi x0 fx f(xi) tant que fx > ε et que ite < itemax faire ite ite + 1 fpx f (xi) si fpx = 0 alors break sinon xi xi fx / fpx fx f(xi) Retourner xi Convergence de la méthode # on sort de la boucle si la dérivée # est nulle en ce point # on actualise le candidat Méthode de Newton Il n est pas aisé de démontrer la terminaison de l algorithme de Newton. Cela s explique notamment par le fait que si la dérivée s annule en un point, la méthode plante! Par ailleurs, suivant le gradient de la courbe, la méthode sera plus ou moins efficace. De plus, il est nécessaire d initialiser la résolution du problème. En fonction du choix du premier candidat, valeur de x 0, la méthode sera plus ou moins efficace! La méthode de Newton lorsqu elle converge est souvent plus rapide que les méthodes précédentes. Rem : La méthode de Newton est déjà implémentée dans le module Scipy de Python : >>> import scipy.optimize >>>x=scipy.optimize.newton(f,x0,f,ε,itemax) Voir l'aide pour plus de détails Influence du choix de l initialisation valeur de x 0 Lycée Vauvenargues PTSI 5

Calcul de la dérivée numérique f (x i ) L algorithme de Newton fait apparaître le besoin de calculer la dérivée de la fonction en un point. Pour cela, deux cas de figures peuvent se présenter : il est possible de calculer la dérivée de la fonction f(x) analytiquement. Dans ce cas, il est préférable d utiliser cette expression pour évaluer la valeur de la dérivée de la fonction au point considéré, ce calcul de dérivée n est pas possible (f est une liste de valeurs). Dans ce cas on doit réaliser une dérivation numérique. Il existe comme nous l avons vu dans le cours précédent plusieurs méthodes pour approcher la valeur de la dérivée numérique d une fonction en un point. Par rapport au cours précédent, la fonction à dériver f(x) est complétement connue. Dans ce cas, c est la méthode dite «à deux pas» qui est préférable aux méthodes d Euler explicite ou implicite (dites méthode «à un pas»). Rappel : Méthodes «à un pas» (à éviter) Méthode d Euler explicite (différence avant) Dans ce cas, l estimation de la dérivée au point P i (x i,y i ) utilise le point précédent, donc le point P i-1 (x i-1,y i-1 ), avec : f( xi) f( xi 1) f'( xi) c est-à-dire Δ - sur la figure ci-contre. x x i i 1 Méthode d Euler implicite (différence après) Dans ce cas, l estimation de la dérivée au point P i (x i,y i ) utilise le point suivant, donc le point P i+1 (x i+1,y i+1 ), avec : f( xi+ 1) f( xi) f'( xi) c est-à-dire Δ + sur la figure ci-contre. x x i+ 1 i Méthode à 2 pas (recommandée pour la méthode de Newton) Dans ce cas, l estimation de la dérivée au point P i utilise les points P i-1 et P i+1, avec : f( xi+ 1) f( xi 1) f'( xi) c est-à-dire Δ sur la figure ci-contre. x x i+ 1 i 1 5 Résolution par la méthode du point fixe Principe de la méthode du point fixe Le principe de cette méthode consiste à transformer l'équation f(x) = 0 en une équation équivalente g(x) = x où g est une fonction auxiliaire «bien» choisie. Le point c tel que f(c) = 0 est alors le point fixe de g, tel que g(c) = c. Approcher les zéros de f revient à approcher les points fixes de g. Le choix de la fonction g est motivé par les exigences du théorème du point fixe. En effet, g doit être contractante dans un voisinage I de c, c est-à-dire que : g'( x) < 1, x I, I voisinage de c, Illustration graphique de la méthode du point fixe Point fixe de g, cas où g est contractante pour que la méthode du point fixe converge. Dans ce cas, on construit une suite ( xn ), telle que : n N x0 dans le voisinage de I de c n 0, xn+ 1 = g( xn) et limx n = c. n Rem : pour cet exemple, on parle de convergence «en colimaçon» Lycée Vauvenargues PTSI 6

Autre illustrations graphiques de la méthode du point fixe. g(x) g(x) c c La fonction g(x) est contractante. La convergence est dite «en escalier». La fonction g(x) n est pas contractante au voisinage de c. La méthode diverge. L algorithme du point fixe en pseudo-code s écrit alors pour résoudre f(x) = 0 ou encore g(x) = x : Entrées : g, x0, ε, itemax Méthode du Sorties : la racine approchée xi point fixe ite 0 g(x) = x xi x0 gx g(xi) tant que gx - xi > ε et que ite < itemax faire ite ite + 1 xi gx gx g(xi) Retourner xi Rem : La méthode du point fixe est déjà implémentée dans le module Scipy de Python : >>> import scipy.optimize >>>x=scipy.optimize.fixed_point(g,x0, ε,itemax) Voir l'aide pour plus de détails Convergence de la méthode La convergence est assurée si g(x) est contractante. Encore faut-il pouvoir mettre le problème initial, «résoudre f(x) = 0» sous la forme «résoudre g(x) = x», avec g contractante au voisinage de la racine. Si c est le cas, cette méthode du point fixe et simple et rapide. Rem : pour l exemple de la recherche du maximum de l épaisseur du profil, 3, 7 f ( x) = 0,15. 3, 4 1, 2.x3, x ]0,1] 2 x Le problème «rechercher x tel que f(x) = 0» peut se mettre sous la forme «rechercher x tel que g(x) = x», avec g(x) définie par : g ( x) = f ( x) + x, x ]0,1]. g(x) = f(x) + x L étude montre que g(x) est contractante au voisinage de la solution. x0 = 0,8 La méthode du point fixe peut donc être utilisée. Lycée Vauvenargues PTSI 7

6 Dilemme robustesse / rapidité Différentes méthodes de résolution de f(x) = 0 ont été abordées dans ce cours. Laquelle choisir? La méthode la plus naïve est la méthode par Dichotomie. A partir d une fonction continue sur un intervalle [a, b], avec f (a). f (b) 0, la recherche de x tel que f (x) = 0 est simple et robuste mais lente, Si on cherche une valeur plus rapidement, une convergence plus rapide sera préférée (méthode de Newton ou du point fixe). A ce moment-là, il convient d avoir une idée approximative de la solution pour proposer un premier candidat au voisinage de cette solution de sorte que la fonction y présente de bonnes propriétés (dérivée non nulle, contractante ). Dans le cas où l on cherche rapidité et stabilité, on peut utiliser la méthode par Dichotomie dans un premier temps pour localiser le zéro de la fonction, puis appliquer un algorithme de Newton une fois proche de la solution. En cas d instabilité de l algorithme de Newton, il est toujours possible de réutiliser une méthode par Dichotomie. Enfin, mentionnons qu il existe aussi d autres algorithmes de recherche avec leurs avantages et inconvénients Lycée Vauvenargues PTSI 8