Docsity
Docsity

Prépare tes examens
Prépare tes examens

Étudies grâce aux nombreuses ressources disponibles sur Docsity


Obtiens des points à télécharger
Obtiens des points à télécharger

Gagnz des points en aidant d'autres étudiants ou achete-les avec un plan Premium


Guides et conseils
Guides et conseils


M33 Analyse numérique, Notes de Mathématiques

Ce fascicule est un support au cours d'analyse numérique en deuxième année d'une Licence de Mathématiques. Il aborde : la recherche de racines d'une ...

Typologie: Notes

2021/2022

Téléchargé le 26/04/2022

Caroline_lez
Caroline_lez 🇫🇷

4.3

(109)

1.2K documents

1 / 207

Toggle sidebar

Cette page n'est pas visible dans l'aperçu

Ne manques pas les parties importantes!

bg1
Licence Sciences et Techniques
L2 MATH
M33
Analyse numérique
Recueil d’exercices corrigés et aide-mémoire.
Gloria Faccanoni
ihttp://faccanoni.univ-tln.fr/enseignements.html
Année 2015 2016
Dernière mise-à-jour
Jeudi 27 août 2015
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff
pf12
pf13
pf14
pf15
pf16
pf17
pf18
pf19
pf1a
pf1b
pf1c
pf1d
pf1e
pf1f
pf20
pf21
pf22
pf23
pf24
pf25
pf26
pf27
pf28
pf29
pf2a
pf2b
pf2c
pf2d
pf2e
pf2f
pf30
pf31
pf32
pf33
pf34
pf35
pf36
pf37
pf38
pf39
pf3a
pf3b
pf3c
pf3d
pf3e
pf3f
pf40
pf41
pf42
pf43
pf44
pf45
pf46
pf47
pf48
pf49
pf4a
pf4b
pf4c
pf4d
pf4e
pf4f
pf50
pf51
pf52
pf53
pf54
pf55
pf56
pf57
pf58
pf59
pf5a
pf5b
pf5c
pf5d
pf5e
pf5f
pf60
pf61
pf62
pf63
pf64

Aperçu partiel du texte

Télécharge M33 Analyse numérique et plus Notes au format PDF de Mathématiques sur Docsity uniquement!

Licence Sciences et Techniques

L2 MATH

M

Analyse numérique

Recueil d’exercices corrigés et aide-mémoire.

Gloria Faccanoni

i http://faccanoni.univ-tln.fr/enseignements.html

Année 2015 – 2016

Dernière mise-à-jour

Jeudi 27 août 2015

Ce fascicule est un support au cours d’analyse numérique en deuxième année d’une Licence de Mathématiques. Il aborde : la recherche de racines d’une fonction réelle de variable réelle, l’interpolation polynomiale, l’intégration numé- riques, l’intégration d’équations différentielles et la résolution de systèmes linéaires. Les applications se font avec le lan-

gage Python dont la documentation et les sources peuvent être téléchargées à l’adresse http://www.python.org. Les

notions supposées connues correspondent au programme des cours de Mathématiques (Analyse mathématique des fonc- tions réelles d’une variable réelle et Algèbre Linéaire) et Informatiques (Initiation à l’algorithmique et au langage Python) de la première année de Licence.

L’objet de ce aide-mémoire est de proposer une explication succincte des concepts vu en cours. De nombreux livres, parfois très fournis, existent. Ici on a cherché, compte tenu des contraintes de volume horaire, des acquis des étudiants à la première année et des exigences pour la suite du cursus, à dégager les points clés permettant de structurer le travail personnel de l’étudiant voire de faciliter la lecture d’autres ouvrages. Ce polycopiée ne dispense pas des séances de cours et de TD ni de prendre des notes complémentaires. Il est d’ailleurs important de comprendre et apprendre le cours au fur et à mesure. Ce polycopié est là pour éviter un travail de copie qui empêche parfois de se concentrer sur les explications données oralement mais ce n’est pas un livre auto-suffisant (il est loin d’être exhaustif )! De plus, ne vous étonnez pas si vous découvrez des erreurs (merci de me les communiquer).

On a inclus dans ce texte nombreux exercices corrigés. Ceux-ci, de difficulté variée, répondent à une double nécessitée. Il est important de jongler avec les différents concepts introduits en cours et même de faire certaines erreurs une fois pour bien identifier les pièges. Les exercices permettent d’orienter les raisonnements vers d’autres domaines (physique, économie, etc.), cela afin d’exhiber l’intérêt et l’omniprésence de l’analyse numérique au sens large (modélisation, analyse mathématique, discrétisation, résolution numérique et interprétation des résultats). Cependant, veuillez noter que vous n’obtiendrez pas grande chose si vous vous limitez à choisir un exercice, y réfléchir une minute et aller vite voir le début de la correction en passant tout le temps à essayer de comprendre la correction qui va paraitre incompréhensible. Pour que la méthode d’étude soit vraiment efficace, il faut d’abord vraiment essayer de chercher la solution. En particulier, il faut avoir un papier brouillon à coté de soi et un crayon. La première étape consiste alors à traduire l’énoncé (pas le recopier), en particulier s’il est constitué de beaucoup de jargon mathématique. Ensuite il faut essayer de rapprocher les hypothèses de la conclusion souhaitée, et pour cela faire quelques calculs ou transformer les hypothèses pour appliquer un théorème dont on aura vérifier que les hypothèses sont bien satisfaites. C’est ici que l’intuition joue un grand rôle et il ne faut pas hésiter à remplir des pages pour s’apercevoir que l’idée qu’on a eu n’est pas la bonne. Elle pourra toujours resservir dans une autre situation. Quand finalement on pense tenir le bon bout, il faut rédiger soigneusement en s’interrogeant à chaque pas sur la validité (logique, mathématique) de ce qu’on a écrit. Si l’étape précédente ne donne rien, il faut chercher de l’aide (voir le début de la correction, en parler à un autre étudiant, etc.).

Gloria FACCANONI

IMATH Bâtiment M-117 T 0033 (0)4 83 16 66 72

Université de Toulon

Avenue de l’université B [email protected]

83957 LA GARDE - FRANCE i http://faccanoni.univ-tln.fr

  • Notations
  • Introduction au calcul scientifique
    1. Résolution d’équations non linéaires
    • 1.1. Étape ¨ : localisation des zéros
    • 1.2. Étape ≠ : construction d’une suite convergente
      • 1.2.1. Méthodes de dichotomie (ou bissection), de LAGRANGE (ou Regula falsi )
      • 1.2.2. Méthode de la sécante
      • 1.2.3. Méthodes de point fixe
    1. Interpolation
    • 2.1. Interpolation polynomiale
      • 2.1.1. Méthode directe (ou “naïve”)
      • 2.1.2. Méthode de LAGRANGE
      • 2.1.3. Stabilité de l’interpolation polynomiale
      • 2.1.4. Méthode de NEWTON
    • 2.2. Polynôme d’HERMITE ou polynôme osculateur
    • 2.3. Splines : interpolation par morceaux
      • 2.3.1. Interpolation linéaire composite
    1. Quadrature
    • 3.1. Principes généraux
    • 3.2. Exemples de formules de quadrature interpolatoires
    • 3.3. Approximation de dérivées
    1. Équations différentielles ordinaires
    • 4.1. Généralités
      • 4.1.1. Position du problème
      • 4.1.2. Condition initiale
      • 4.1.3. Représentation graphique
      • 4.1.4. Théorème d’existence et unicité, intervalle de vie et solution maximale
    • 4.2. Schémas numériques
      • 4.2.1. Schémas numériques classiques
      • 4.2.2. Schémas numériques d’ADAMS
      • 4.2.3. Schémas multi-pas de type predictor-corrector
    • 4.3. Conditionnement
    • 4.4. Stabilité
      • 4.4.1. A-Stabilité
    1. Systèmes linéaires
    • 5.1. Systèmes mal conditionnés
    • 5.2. Méthode (directe) d’élimination de GAUSS et factorisation LU
    • 5.3. Méthodes itératives
  • A. Python : guide de survie pour les TP
    • A.1. Obtenir Python et son éditeur IDLE
      • A.1.1. Utilisation de base d’IDLE
    • A.2. Notions de base de Python - Indentation - Commentaires - Variables et affectation - Chaîne de caractères (Strings) - Listes
  • Table des matières Jeudi 27 août - Matrices - Fonction range - Instruction print - Opérations arithmétiques - Opérateurs de comparaison et connecteurs logiques
    • A.3. Fonctions et Modules
      • A.3.1. Fonctions
      • A.3.2. Modules
        • Le module math
        • Le module matplotlib pour le tracé de données
    • A.4. Structure conditionnelle - Structure conditionnelle
    • A.5. Boucles - Boucle while : répétition conditionnelle - Boucle for : répétition inconditionnelle - Interrompre une boucle - List-comprehensions

Notations

Ensembles usuels en mathématiques

On désigne généralement les ensemble les plus usuels par une lettre à double barre :

N l’ensemble des entiers naturels

N∗^ l’ensemble des entiers strictement positifs

Z l’ensemble des entiers relatifs (positifs, négatifs ou nuls)

Z∗^ l’ensemble des entiers 6 = 0

Q l’ensemble des nombres rationnels

( (^) p q ,^ p^ ∈^ Z,^ q^ ∈^ Z

R l’ensemble des réels

R∗^ l’ensemble des réels autres que 0

C l’ensemble des nombres complexes

R n [ x ] l’espace vectoriel des polynômes en x de degré inférieur ou égal à n

Intervalles

Inégalité Notation ensembliste Représentations graphique

axb [ a , b ] a b a^ b

a < x < b ] a , b [ a^ b^

a b

ax < b [ a , b [ a^ b^

a b

a < xb ] a , b ] a^ b^

a b

xa [ a , +∞[ a a

x > a ] a , +∞[ a^

a

xb ] − ∞, b ] b^

b

x < b ] − ∞, b [ b b

| x | ≤ a avec a ≥ 0 [− a , a ] − a^ a^

a a

| x | < a avec a ≥ 0 ] − a , a [ − a^ a^

a a

| x | ≥ a avec a ≥ 0 ] − ∞, − a ] ∪ [ a , +∞[ − a^ a^

a a

| x | > a avec a ≥ 0 ] − ∞, − a [∪] a , +∞[ − a^ a^

a a

x ∈ R ] − ∞, +∞[ x 6 = a ] − ∞, a [∪] a , +∞[= R \ { a } a^ a

Symboles utilisés dans le document

définition théorème, corollaire, proposition propriété(s) astuce attention remarque

Introduction au calcul scientifique

On peut définir le CALCUL SCIENTIFIQUE comme la discipline qui permet de reproduire sur un ordinateur un phénomène ou un processus décrit par un modèle mathématique.

PHÉNOMÈNE PHYSIQUE, ÉCO- NOMIQUE, BIOLOGIQUE... Observation expérimentale Modèle conceptuel

MODÈLE MATHÉMATIQUE Mise en équations : équations différentielles, inté- grales, stochastiques...

ANALYSE MATHÉMATIQUE Bien posé Bien conditionné Propriétés de la solution (stabi- lité,.. .) Solutions analytiques

ANALYSE NUMÉRIQUE Méthodes de discrétisation Analyse des algorithmes (rapi- dité, précision, souplesse) Estimation des erreurs

PROGRAMMATION Langage de programmation (C, C++, Fortran, Java, Python, Mat- lab, Scilab, Octave.. .) Structure des données Implémentation de l’algorithme Optimisation

CALCULS

POSTPROCESSING Visualisation Analyse des résultats

CALCUL SCIENTIFIQUE

L’ordinateur est aujourd’hui un outil incontournable pour simuler et modéliser des systèmes complexes, mais il faut encore savoir exprimer nos problèmes (physiques, économiques, biologiques.. .) en langage formalisé des mathématiques pures sous la forme d’équations mathématiques (différentielles, intégrales.. .). Nous sommes habitués à résoudre les pro- blèmes de façon analytique, alors que l’ordinateur ne travaille que sur des suites de nombres. On verra qu’il existe souvent plusieurs approches pour résoudre un même problème, ce qui conduit à des algorithmes différents. Un des objectifs de ce cours est de fournir des bases rigoureuses pour développer quelques algorithmes utiles dans la résolution de problèmes en mathématique, économie, physique... Un algorithme, pour être utile, doit satisfaire un certain nombre de conditions. Il doit être :

rapide : le nombre d’opérations de calcul pour arriver au résultat escompté doit être aussi réduit que possible ;

précis : l’algorithme doit savoir contenir les effets des erreurs qui sont inhérentes à tout calcul numérique (ces erreurs

peuvent être dues à la modélisation, aux données, à la représentation sur ordinateur ou encore à la troncature) ;

souple : l’algorithme doit être facilement transposable à des problèmes différents.

Le choix et l’optimisation des algorithmes numériques mis en pratique sont absolument cruciaux tant pour les calculs de type industriel souvent très répétitifs et devant donc pouvoir être exécutés en un temps très court, que pour les cal- culs de référence pour lesquels la seule limite est la patience de celui qui les fait. Par exemple, en fluidodynamique, en laissant tourner une station de travail pendant quelques jours, les numériciens résolvent des systèmes frisant le milliard d’inconnues. L’expérience montre qu’entre une approche numérique standard et une approche soigneusement réfléchie

Introduction au calcul scientifique Jeudi 27 août 2015

et optimisée un gain de temps de calcul d’un facteur 100, voire davantage, est souvent observé. Il est clair qu’on peut pas- ser ainsi, grâce à cet effort, d’un calcul totalement déraisonnable à un calcul parfaitement banal : tout l’enjeu de l’analyse numériques est là! C’est dire l’importance pour tous scientifique de bien connaître ces méthodes, leurs avantages et leurs limites.

Exemple Calcul de

p A Sur ordinateur, l’addition de deux entiers peut se faire de façon exacte mais non le calcul d’une racine carrée. On procède alors par approximations successives jusqu’à converger vers la solution souhaitée. Il existe pour cela divers algorithmes. Le suivant est connu depuis l’antiquité (mais ce n’est pas celui que les ordinateurs utilisent). Soit A un nombre réel positif dont on cherche la racine carrée. Désignons par x 0 la première estimation de cette racine (généralement le plus grand entier dont le carré est inférieur à A ; par exemple, si A = 178, alors x 0 = 13 car 13^2 = 169 < 178 et 14^2 = 196 > 178) et par ε 0 l’erreur associée : (^) p A = x 0 + ε 0. Cherchons une approximation de ε 0. On a A = ( x 0 + ε 0 )^2 = x^20 + 2 x 0 ε 0 + ε^20. Supposons que l’erreur soit petite face à x 0 , ce qui permet de négliger le terme en ε^20 :

A ' x^20 + 2 x 0 ε 0.

Remplaçons l’erreur ε 0 par un ε ′ 0 , qui en est une approximation, de telle sorte que

A = x^20 + 2 x 0 ε ′ 0.

On en déduit que ε ′ 0 =

Ax 02 2 x 0 donc la quantité x 1 ≡ x 0 + ε ′ 0 = 1 2

( A x 0

  • x 0

)

constitue une meilleure approximation de la racine que x 0 (sous réserve que le développement soit convergent). De plus, rien ne nous empêche de recommencer les calculs avec x 1 , puis x 2 , etc., jusqu’à ce que la précision de la machine ne permette plus de distinguer le résultat final de la véritable solution. On peut donc définir une suite, qui à partir d’une estimation initiale x 0 devrait en principe converger vers la solution recherchée. Cette suite est

xk + 1 = 1 2

( A xk

  • xk

) , x 0 > 0.

L’algorithme du calcul de la racine carrée devient donc

  1. Démarrer avec une première approximation x 0 > 0 de

p A.

  1. À chaque itération k , calculer la nouvelle approximation xk + 1 = (^12)

( A xk +^ xk

) .

  1. Calculer l’erreur associée εk + 1 = Ax k^2 + 1 2 xk + 1.
  2. Tant que l’erreur est supérieure à un seuil fixé, recommencer au point 2 Le tableau ci-dessous illustre quelques itérations de cet algorithme pour le cas où A = 5 :

k xk εk 0 2.0000000000 0. 1 2.2500000000 0. 2 2.2361111111 0. 3 2.2360679779 0. 4 2.2360679775 0.

On voit que l’algorithme converge très rapidement et permet donc d’estimer la racine carrée d’un nombre moyennant un nombre li- mité d’opérations élémentaires (additions, soustractions, divisions, multiplications). Il reste encore à savoir si cet algorithme converge toujours et à déterminer la rapidité de sa convergence. L’analyse numérique est une discipline proche des mathématiques appliquées, qui a pour objectif de répondre à ces questions de façon rigoureuse.

Les erreurs

Le simple fait d’utiliser un ordinateur pour représenter des nombres réels induit des erreurs. Par conséquent, plutôt que de tenter d’éliminer les erreurs, il vaut mieux chercher à contrôler leur effet. Généralement, on peut identifier plusieurs niveaux d’erreur dans l’approximation et la résolution d’un problème physique.

8 © G. Faccanoni

1. Résolution d’équations non linéaires

Recherche des solutions de l’équation non linéaire f ( x ) = 0 où f est une fonction donnée

Un des problèmes classiques en mathématiques appliquées est celui de la recherche des valeurs pour lesquelles une fonction donnée s’annule. Dans certains cas bien particuliers, comme pour les fonctions x 7 → x + 1, x 7 → cos(2 x ) ou encore x 7 → x^2 − 2 x + 1, le problème est simple car il existe pour ces fonctions des formules qui donnent les zéros explicitement. Toutefois, pour la plupart des fonctions f : R → R il n’est pas possible de résoudre l’équation f ( x ) = 0 explicitement et il faut recourir à des méthodes numériques. Ainsi par exemple une brève étude de la fonction f ( x ) = cos( x ) − x montre qu’elle possède un zéro à proximité de 0.7 mais ce zéro ne s’exprime pas au moyen de fonctions usuelles et pour en obtenir une valeur approchée il faut recourir à des méthodes numériques. Plusieurs méthodes existent et elles différent pas leur vitesse de convergence et par leur robustesse. Lorsqu’il s’agit de calculer les zéros d’une seule fonction, la vitesse de la méthode utilisée n’est souvent pas cruciale. Cependant, dans certains applications il est nécessaire de calculer les zéros de plusieurs milliers de fonctions et la vitesse devient alors un élément stratégique. Par exemple, si on veut représenter graphiquement l’ensemble de points ( x , y ) du plan pour lequel x^2 sin( y ) + ex + y^ − 7 = 0, on peut procéder comme suit : pour une valeur donnée de x , on cherche l’ensemble des valeurs de y pour lesquelles x^2 sin( y )+ ex + y^ − 7 = 0, i.e. l’ensemble des zéros de la fonction f ( y ) = x^2 sin( y )+ ex + y^ − 7 = 0, et on représente tous les couples obtenus. On choisit une nouvelle valeur pour x et on répète l’opération. Pour obtenir une courbe suffisamment précise, il faut procéder à la recherche des zéros d’un très grand nombre de fonction et il est alors préférable de disposer d’une méthode rapide.

Soit f : R → R une fonction continue donnée dont on veut évaluer numériquement un ou plusieurs zéros x ̂, c’est-à-dire qu’on cherche tous les x ̂ tels que f ( x ̂) = 0. Les méthodes numériques pour approcher x ̂ consistent à :

¨ localiser grossièrement le (ou les) zéro(s) de f en procédant à l’étude du graphe de f et/ou à des évaluations qui sont

souvent de type graphique ; on note x 0 cette solution grossière ;

≠ construire, à partir de x 0 , une suite x 1 , x 2 , x 3 ,... telle que lim k →∞ xk = x ̂ où f ( x ̂) = 0. On dit alors que la méthode est

convergente.

Définition Méthode itérative à deux niveaux On appelle méthode itérative à deux niveaux un procédé de calcul de la forme

xk + 1 = G ( xk ), k = 0, 1, 2,...

dans lequel on part d’une valeur donnée x 0 pour calculer x 1 , puis à l’aide de x 1 on calcul x 2 etc. La formule même est dite formule de récurrence. Le procédé est appelé convergent si xk tend vers un nombre fini lorsque k tend vers +∞. Il est bien évident qu’une méthode itérative n’est utile que s’il y a convergence vers les valeurs cherchées.

On peut parfaitement envisager des méthodes itératives multi-niveaux, comme par exemples les schémas à trois niveaux dans lesquels on part de deux valeurs données x 0 et x 1 pour calculer x 2 , puis à l’aide de x 1 et x 2 on calcule x 3 etc.

Définition Ordre de convergence Soit p un entier positif. On dit qu’une méthode (à deux niveaux) convergente est d’ordre p s’il existe une constante C telle que | x ̂ − xk + 1 | ≤ C | x ̂ − xk | p^. ou encore lim k →∞

xk + 1 − x ̂ ( xkx ̂) p^

= C.

Si p = 1 (et C < 1) on parle de convergence linéaire, si p = 2 on parle de convergence quadratique.

Jeudi 27 août 2015 1. Résolution d’équations non linéaires

[ ak ; bk ] en [ ak ; ck ] et [ ck ; bk ] où ck est ck = ak + bk 2

? Dans la méthode de LAGRANGE, plutôt que de diviser l’intervalle [ ak ; bk ] en deux intervalles de même longueur, on découpe [ ak ; bk ] en [ ak ; ck ] et [ ck ; bk ] où ck est l’abscisse du point d’intersection de la droite passant par ( ak , f ( ak )) et ( bk , f ( bk )) et l’axe des abscisses, autrement dit ck est solution de l’équation

f ( bk ) − f ( ak ) bkak

( cbk ) + f ( bk ) = 0

qui est ck = bk

bkak f ( bk ) − f ( ak ) f ( bk ) =

ak f ( bk ) − bk f ( ak ) f ( bk ) − f ( ak )

Dans les deux cas, pour l’itération suivante, on pose soit [ ak + 1 ; bk + 1 ] = [ ak ; ck ] soit [ ak + 1 ; bk + 1 ] = [ ck ; bk ] de sorte à ce que f ( ak + 1 )· f ( bk + 1 ) < 0. La suite ( ck ) k ∈N converge vers x ̂ puisque la longueur de ces intervalles tend vers 0 quand k tend vers +∞. Soit ε l’erreur maximale qu’on peut commettre, les algorithmes s’écrivent alors comme suit :

DICHOTOMIE : Require: a , b > a , ε , f : [ a , b ] → R k ← 0 aka bkb xk

ak + bk 2 while bkak > ε or | f ( xk )| > ε do if f ( ak ) f ( xk ) < 0 then ak + 1 ← ak bk + 1 ← xk else ak + 1 ← xk bk + 1 ← bk end if xk + 1 ←

ak + 1 + bk + 1 2 kk + 1 end while

LAGRANGE :

Require: a , b > a , ε , f : [ a , b ] → R k ← 0 aka bkb xkak

bkak f ( bk ) − f ( ak )

f ( ak ) while bkak > ε or | f ( xk )| > ε do if f ( ak ) f ( xk ) < 0 then ak + 1 ← ak bk + 1 ← xk else ak + 1 ← xk bk + 1 ← bk end if xk + 1 ← ak + 1 − bk + 1 − ak + 1 f ( bk + 1 ) − f ( ak + 1 )

f ( ak + 1 ) kk + 1 end while

On n’est pas obligé de stoker tous les intervalles et les itérées, on peut gagner de la mémoire en les écrasant à chaque étape :

DICHOTOMIE : Require: a , b > a , ε , f : [ a , b ] → R x

a + b 2 while ba > ε or | f ( x )| > ε do if f ( a ) f ( x ) < 0 then bx else ax end if x

a + b 2 end while

LAGRANGE :

Require: a , b > a , ε , f : [ a , b ] → R xa

ba f ( b ) − f ( a )

f ( a ) while ba > ε or | f ( x )| > ε do if f ( a ) f ( x ) < 0 then bx else ax end if xa

ba f ( b ) − f ( a )

f ( a ) end while

Remarque Avec la méthode de la dichotomie, les itérations s’achèvent à la m -ème étape quand | xm − ̂ x | ≤ | Im | < ε , où ε est une tolérance fixée et | Im | désigne la longueur de l’intervalle Im. Clairement Ik = b 2 − ka , donc pour avoir une erreur | xmx ̂| < ε ,

© G. Faccanoni 13

  1. Résolution d’équations non linéaires Jeudi 27 août 2015

on doit prendre le plus petit m qui vérifie

m ≥ log 2

ba ε

ln( ba ) − ln(2) ln(2)

Notons que cette inégalité est générale : elle ne dépend pas du choix de la fonction f.

Exemple Fond d’investissement Un compte d’épargne donne un taux T ∈ [0; 1] d’intérêt par an avec un virement annuel des intérêts sur le compte. Cela signifie que si le premier janvier 2014 on met v euros sur ce compte, à la fin de la n -ème année ( i.e. au 31 décembre 2014 + n ) on en retire v (1 + T ) n euros. On décide alors d’ajouter au début de chaque année encore v euros. Cela signifie que si on verse ces v euros le premier janvier 2014 + m avec 0 < m < n , au 31 décembre 2014 + n ajoutent v (1 + T ) nm^ euros. Si à la fin de la n -ème année on en retire un capital de M > v euros, quel est le taux d’intérêt annuel de cet investissement? À la fin de la n -ème année, le capital versé au premier janvier 2014 est devenu v (1 + T %) n^ , celui versé au premier janvier 2015 est devenu v (1 + T %) n −^1... par conséquente, le capital final M est relié au taux d’intérêt annuel T par la relation

M = v

∑^ n k = 1

(1 + T ) k^ = v (1 + T ) n^ − 1 (1 + T ) − 1 = v 1 + T T

( (1 + T ) n^ − 1

) .

On en déduit que T est racine de l’équation algébrique non linéaire f ( T ) = 0 où

f ( T ) = v 1 + T T

( (1 + T ) n^ − 1

) − M.

Étudions la fonction f : ? f ( T ) > 0 pour tout T > 0, ? lim T → 0 + f ( T ) = nvM < ( n − 1) v , lim T →+∞ f ( T ) = +∞, ? f ′( T ) = (^) Tv 2

( 1 + (1 + T ) n^ ( T n − 1)

)

0 pour tout T > 0 (comparer le graphe de −1/(1 + T ) n^ et de nT − 1) En étudiant la fonction f on voit que, comme nv < M dès que n > 1, elle admet un unique zéro dans l’intervalle ]0, +∞[ (on peut même prouver qu’elle admet un unique zéro dans l’intervalle ]0, M [). Supposons que v = 1000 ¤ et qu’après 5 ans M est égal à 6000 ¤. En étudiant la fonction f on voit qu’elle admet un unique zéro dans l’intervalle ]0.01, 0.1[. Si on applique la méthode de la dichotomie avec ε = 10 −^12 , après 37 itérations de la méthode de dichotomie, la méthode converge vers 0.061402411536. On conclut ainsi que le taux d’intérêt T est approximativement égal à 6.14%. Ce résultat a été obtenu en faisant appel à la fonction dichotomie définie à la page 24 comme suit :

2 a = 0.01 # T=1% 3 b = 0.1 # T=10% 4 tol = 1.0e- 5 maxITER = 50 6 def f(x): 7 return 1000.(1+x)/x((1+x)**5-1.)-6000. 8 print dichotomie(f,a,b,tol,maxITER)

Exemple Soit f ( x ) = − 39 − 43 x + 39 x^2 − 5 x^3. On cherche a estimer x ∈ [1; 5] tel que f ( x ) = 0. DICHOTOMIE

f ( x ) = − 39 + (− 43 + (39 − 5 x ) x ) x

x

y

1

f (1) = − 1

5

f (5) = 2

3

f (3) = 1

2 f (2) = −0.1875 2.

f (2.5) = 0.

I 0 = [1; 5] I 1 = [1; 3] I 2 = [2; 3] I 3 = [2; 2.5]

14 © G. Faccanoni

  1. Résolution d’équations non linéaires Jeudi 27 août 2015

x 1 = cos( x 0 ) = 0.540302305868, x 2 = cos( x 1 ) = 0.857553215846, x 3 = cos( x 2 ) = 0.654289790498, .. . x 55 = 0.739085133171, .. . x 100 = 0.

qui tend vers la valeur 0.73908513.... En effet, on a par construction xk + 1 = cos( xk ) pour k = 0, 1,... (avec x 0 = 1). Si cette suite converge, sa limite _ satisfait l’équation cos( _ ) = _. Pour cette raison, _ est appelé point fixe de la fonction cosinus.

Définition Point fixe Soit ϕ : R → R une fonction. Si ̂ x ∈ R est tel que ϕx ) = x ̂, on dit que x ̂ est un point fixe de ϕ (l’image de x ̂ par ϕ est lui-même).

On peut se demander comment exploiter cette procédure pour calculer les zéros d’une fonction donnée. Remarquons qu’on peut voir ` comme un point fixe du cosinus, ou encore comme un zéro de la fonction f ( x ) = x − cos( x ). La méthode proposée fournit donc un moyen de calculer les zéros de f. Précisons ce principe : soit f : [ a , b ] → R la fonction dont on cherche le zéro. Il est toujours possible de transformer le problème

(Pb-1) “chercher x tel que f ( x ) = 0”

en un problème équivalent ( i.e. admettant les mêmes solutions)

(Pb-2) “chercher x tel que xϕ ( x ) = 0”.

Pour que les deux problèmes soient équivalent, la fonction auxiliaire ϕ : [ a , b ] → R doit être choisie de manière à ce que ϕ ( x ̂) = ̂ x si et seulement si f ( ̂ x ) = 0 dans [ a ; b ] (on dit alors que le problème (Pb-2) est consistant avec le problème (Pb-1) ). Clairement, il existe une infinité de manières pour opérer cette transformation. Par exemple, on peut poser ϕ ( x ) = xf ( x ) ou plus généralement ϕ ( x ) = x + γ f ( x ) avec γ ∈ R∗^ quelconque. On peut même remplacer γ par une fonction de x pour autant qu’elle ne s’annule pas.

Définition Méthode de point fixe Supposons que ̂ x ∈ R soit un point fixe de ϕ. La méthode de point fixe consiste en la construction d’une suite ( xk ) k ∈N définie par récurrence comme suit : (^) { x 0 donné, xk + 1 = ϕ ( xk ) ∀ k ∈ N.

Naturellement une telle suite n’est pas forcement convergente. Par contre, si elle converge, c’est-à-dire si la suite xk a une limite que nous notons ` , et si ϕ est continue, alors cette limite est nécessairement un point fixe de ϕ puisque

` = lim k →∞ xk + 1 = lim k →∞ ϕ ( xk ) = ϕ

lim k →∞ xk

= ϕ ( ` ).

On utilise alors l’algorithme itératif suivant pour construire la suite (comme l’ordinateur ne peux pas construire une infinité de termes, on calcul les premiers termes de la suite et on s’arrête dès que la différence entre deux éléments de la suite est inférieure à une tolérance ε > 0 donnée) :

Require: x 0 , ε , ϕ : [ a , b ] → R k ← 0 x 1 ← x 0 + 2 ε while | xk + 1 − xk | > ε do xk + 1 ← ϕ ( xk ) kk + 1 end while

On va maintenant s’intéresser à la convergence de la suite construite par une méthode de point fixe. Théorème Convergence (globale) des itérations de point fixe Considérons une fonction ϕ : [ a ; b ] → R. On se donne x 0 ∈ [ a ; b ] et on considère la suite xk + 1 = ϕ ( xk ) pour k ≥ 0. Si les deux conditions suivantes sont satisfaites :

1. condition de stabilité : ϕ ( x ) ∈ [ a , b ] pour tout x ∈ [ a , b ]

16 © G. Faccanoni

Jeudi 27 août 2015 1. Résolution d’équations non linéaires

f

y

x a a

b

x (^0) b

x 1

x 1

x 2

x 2

x 3

x 3

x 4

x 4

x 5

x 5

x 6

ϕ ([ a ; b ]) ⊂ [ a ; b ] 0 ≤ ϕ ′( x ) < 1 convergence

f

y

x a a

b

x (^0) b

x 1

x 1

x 2

x 2

x 3

x 3

x 4

x 4

x 5

x 5

x 6

x 6

x 7

ϕ ([ a ; b ]) ⊂ [ a ; b ] − 1 < ϕ ′( x ) ≤ 0 convergence

FIGURE 1.1.: Interprétation géométrique du théorème de point fixe

2. condition de contraction stricte : il existe K ∈ [0; 1[ tel que | ϕ ( x ) − ϕ ( y )| ≤ K | x − y | pour tout x , y ∈ [ a , b ]

alors ? ϕ est continue, ? ϕ a un et un seul point fixe ̂ x dans [ a , b ], ? la suite xk + 1 = ϕ ( xk ) converge vers ̂ x pour tout choix de x 0 dans [ a , b ].

Démonstration.

Continuité La condition de contraction stricte implique que ϕ est continue puisque, si on prend une suite ( yk ) k ∈N ∈ [ a , b ]

qui converge vers un élément x de [ a , b ], alors nous avons | ϕ ( x )− ϕ ( yn )| ≤ K | xyn | et par suite lim k →∞ ϕ ( yk ) = ϕ ( x ).

Existence Commençons par prouver l’existence d’un point fixe de ϕ. La fonction g ( x ) = ϕ ( x ) − x est continue dans [ a , b ]

et, grâce à la condition de stabilité, on a g ( a ) = ϕ ( a ) − a ≥ 0 et g ( b ) = ϕ ( b ) − b ≤ 0. En appliquant le théorème des valeurs intermédiaires, on en déduit que g a au moins un zéro dans [ a , b ], i.e. ϕ a au moins un point fixe dans [ a , b ].

Unicité L’unicité du point fixe découle de la condition de contraction stricte. En effet, si on avait deux points fixes distincts

x ̂ 1 et ̂ x 2 , alors | x ̂ 1 − ̂ x 2 | = | ϕ ( x ̂ 1 ) − ϕ ( x ̂ 2 )| ≤ K | ̂ x 1 − x ̂ 2 | < | ̂ x 1 − x ̂ 2 | ce qui est impossible.

Convergence Prouvons à présent que la suite xk converge vers l’unique point fixe x ̂ quand k tend vers +∞ pour toute

donnée initiale x 0 ∈ [ a ; b ]. On a 0 ≤ | xk + 1 − x ̂| = | ϕ ( xk ) − ϕ ( x ̂)| ≤ K | xkx ̂| où K < 1 est la constante de contraction. En itérant k + 1 fois cette relation on obtient

| xk + 1 − x ̂| ≤ K k +^1 | x 0 − x ̂|,

i.e. , pour tout k ≥ 0 | xk + 1 − ̂ x | | x 0 − x ̂|

K k +^1.

En passant à la limite quand k tend vers +∞ on obtient | xk + 1 − x ̂| tend vers zéro.

Il est important de disposer d’un critère pratique assurant qu’une fonction ϕ est contractante stricte. Pour cela, rappelons quelques définitions.

Théorème Si ϕ : [ a ; b ] → [ a ; b ] est de classe C 1 ([ a , b ]) et si | ϕ ′( x )| < 1 pour tout x ∈ [ a , b ], alors la condition de contraction stricte est satisfaite avec K = max [ a ; b ]

| ϕ ′( x )|.

© G. Faccanoni 17

Jeudi 27 août 2015 1. Résolution d’équations non linéaires

Démonstration. Écrivons le développement de TAYLOR avec le reste de LAGRANGE de ϕ en x = x ̂ :

ϕ ( x ) = ϕx ) +

∑^ p i = 1

ϕ ( i^ )(̂ x ) i!

( x − ̂ x ) i^ +

ϕ ( p +1)( ξ ) ( p + 1)!

( x − ̂ x ) p +^1

ξ est entre x et x ̂. Comme ϕ ( x ̂) = x ̂ et ϕ ( i^ )(̂ x ) = 0 pour 1 ≤ ip , cela se simplifie et on a

ϕ ( x ) = ̂ x +

ϕ ( p +1)( ξ ) ( p + 1)! ( xx ̂) p +^1.

En évaluant l’expression ainsi trouvée en xk et sachant que ϕ ( xk ) = xk + 1 , on a alors

xk + 1 − ̂ x =

ϕ ( p +1)( ξ ) ( p + 1)!

( xk − ̂ x ) p +^1.

Lorsque k → +∞, xk tend vers ̂ x et donc ξ , qui se trouve entre xk et ̂ x , tend vers ̂ x aussi. Alors

lim k →+∞

xk + 1 − x ̂ ( xkx ̂) p +^1

= lim k →+∞

ϕ ( p +1)( ξ ) ( p + 1)!

ϕ ( p +1)( x ̂) ( p + 1)!

Pour un ordre p fixé, la convergence de la suite vers x ̂ est d’autant plus rapide que ϕ

( p +1)( ̂ x ) ( p +1)! est petit.

Méthodes de point fixe particulièrement connues Soit f : [ a , b ] → R une fonction continue (continûment dérivable pour la méthode de la corde 2 et la méthode de NEW- TON) et soit x ̂ un zéro de f. Supposons que l’on connaisse une valeur x 0 proche de x ̂. Approcher les zéros de f se ramène au problème de la détermination des points fixes de la fonction ϕ , ce qui se fait en construisant la suite récurrente { x 0 donné, xk + 1 = ϕ ( xk ).

Pour choisir la fonction ϕ il est nécessaire de prendre en compte les informations données par les valeurs de f et, éven- tuellement, par sa dérivée f ′^ ou par une approximation convenable de celle-ci (si f est différentiable). Écrivons pour cela le développement de TAYLOR de f en x ̂ au premier ordre : f ( x ̂) = f ( x )+( x ̂ − x ) f ′( ξ ) où ξ est entre x ̂ et x. Le problème “chercher x ̂ tel que f ( ̂ x ) = 0” devient alors “chercher x ̂ tel que f ( x ) + ( ̂ xx ) f ′( ξ ) = 0”. Cette équation conduit à la méthode itérative suivante : “pour tout k ≥ 0, étant donné xk , déterminer xk + 1 en résolvant l’équation f ( xk )+( xk + 1 − xk ) qk = 0, où qk est égal à f ′( ξk ) (ou en est une approximation) avec ξk un point entre xk et xk + 1 .” La méthode qu’on vient de décrire revient à chercher l’intersection entre l’axe des x et la droite de pente qk passant par le point ( xk , f ( xk )), ce qui s’écrit sous la forme d’une méthode de point fixe avec

xk + 1 = ϕ ( xk ) ≡ xk

f ( xk ) qk

, k ≥ 0.

Considérons maintenant quatre choix particuliers de qk et donc de ϕ qui définissent des méthodes célèbres :

Méthode de la Corde 1 : qk =

ba f ( b ) − f ( a ) =⇒ ϕ ( x ) = x

ba f ( b ) − f ( a ) f ( x )

Méthode de la Corde 2 : qk = f ′( x 0 ) =⇒ ϕ ( x ) = x

f ( x ) f ′( x 0 )

Méthode de NEWTON : qk = f ′( xk ) =⇒ ϕ ( x ) = x

f ( x ) f ′( x )

Proposition Si la méthode de la corde converge, elle converge à l’ordre 1 ; si la méthode de NEWTON converge, elle converge à l’ordre 2 si la racine est simple, à l’ordre 1 sinon.

© G. Faccanoni 19

  1. Résolution d’équations non linéaires Jeudi 27 août 2015

Démonstration.

Méthodes de la Corde qk = f^ ( b b )−−^ fa^ ( a )(méthode 1) ou qk = f ′( x 0 ) (méthode 2). Si f ′( ̂ x ) = 0 alors ϕ ′( x ̂) = 1 et on ne peut pas

assurer la convergence de la méthode. Autrement, la condition | ϕ ′( x ̂)| < 1 revient à demander que 0 < f ′(̂ x )/ qk < 2. Ainsi la pente de la corde doit avoir le même signe que f ′(̂ x ) et, pour la méthode 1, l’intervalle de recherche [ a ; b ] doit être tel quel ba < 2

f ( b ) − f ( a ) f ′( x ̂)

La méthode de la corde converge en une itération si f est affine, autrement elle converge linéairement, sauf dans le cas (exceptionnel) où f ′(̂ x ) = f^ ( b b )−−^ fa^ ( a )(méthode 1) ou f ′( ̂ x ) = f ′( x 0 ) (méthode 2), i.e. ϕ ′(̂ x ) = 0 (la convergence est alors au moins quadratique).

Méthode de Newton Soit la méthode de NEWTON pour le calcul de x ̂ zéro de f :

ϕ ( x ) = x

f ( x ) f ′( x )

? Si f ′(̂ x ) 6 = 0 ( i.e. si x ̂ est racine simple), on trouve

ϕ ′( x ) = 1 −

( f ′( x ))^2 − f ( x ) f ′′( x ) ( f ′( x ))^2

f ( x ) f ′′( x ) ( f ′( x ))^2

, ϕ ′( x ̂) = 0,

ϕ ′′( x ) =

f ′′( x ) f ′( x )

f ( x ) f ′′′( x ) ( f ′( x ))^2

f ( x )( f ′′( x ))^2 ( f ′( x ))^3

, ϕ ′′( x ̂) =

f ′′( x ̂) f ′( x ̂)

La méthode de NEWTON est donc d’ordre 2. ? Si la racine x ̂ est de multiplicité m > 1, alors la méthode n’est plus du second ordre. En effet, f ( x ) = ( xx ̂) m^ h ( x ) où h est une fonction telle que h ( x ̂) 6 = 0. On a alors

ϕ ( x ) = 1 −

f ( x ) f ′( x )

( x − ̂ x ) h ( x ) mh ( x ) + ( xx ̂) h ′( x )

ϕ ′( x ) =

h ( x )

m ( m − 1) h ( x ) + 2( xx ̂) h ′( x ) + ( xx ̂)^2 h ′′( x )

mh ( x ) + ( xx ̂) h ′( x )

) 2 ,^ ϕ ′(̂^ x )^ =^1 −^

m

Si la valeur de m est connue a priori , on peut retrouver la convergence quadratique en modifiant la méthode de NEWTON comme suit : ϕ ( x ) = xm f ( x ) f ′( x )

Attention À noter que même si la méthode de NEWTON permet en général d’obtenir une convergence quadratique, un mauvais choix de la valeur initiale peut provoquer la divergence de cette méthode (notamment si la courbe représentative de f présente au point d’abscisse x 0 un tangente à peu près horizontale). D’où l’importance d’une étude préalable soignée de la fonction f (cette étude est d’ailleurs nécessaire pour toute méthode de point fixe).

Remarque Interprétation géométrique de la méthode de NEWTON et des méthodes de la corde Soit f : R → R une fonction continûment dérivable et soit x ̂ un zéro simple de f , c’est-à-dire f ( ̂ x ) = 0 et f ′(̂ x ) 6 = 0. Suppo- sons que l’on connaisse une valeur xk proche de x ̂. Pour calculer xk + 1 on prend l’intersection de l’axe des abscisses avec la droite tangente au graphe de f passant par le point ( xk , f ( xk )), i.e. on cherche x solution du système linéaire

{ y = f ′( xk )( xxk ) + f ( xk ), y = 0.

On obtient

x = xkf ( xk ) f ′( xk )

ce qui correspond à la méthode de NEWTON.

20 © G. Faccanoni