Analyse numérique : Fiche résumé de cours
Transcription
Analyse numérique : Fiche résumé de cours
Université de Versailles Saint-Quentin-en-Yvelines Préparation à l’Agrégation interne de Mathématiques Année Universitaire 2014-2015 P. Gabriel Analyse numérique : Fiche résumé de cours 1 Approximation d’un nombre par une suite On cherche à approcher un réel l par une suite (un ). Il est naturel de chercher une suite qui converge le plus rapidement possible vers a. Il s’agit alors de savoir ce que signifie "converger rapidement". 1.1 Quelques définitions Définition. Soit (un ) une suite convergeant vers a avec un 6= a pour tout n. On suppose que la suite |un+1 − a| |un − a| converge vers λ. 1. Si λ = 1, on dit que la convergence est lente. 2. Si 0 < λ < 1, on dit que la convergence est géométrique de rapport λ. 3. Si λ = 0, on dit que la convergence est rapide. λ est alors appelé coefficient de convergence de la suite (un ). Remarque. On peut trouver dans certains livres la définition suivante : Autre définition, non équivalente ! Soit (un ) une suite convergeant vers a. On dit que la convergence vers a de la suite (un ) est (au moins) géométrique si la suite (|un − a|) est dominée par une suite géométrique (k n ) avec 0 < k < 1. Attention, elles ne sont pas équivalentes : si les hypothèses de la définition 1 sont vérifiées, alors celles de la définition 2 le sont aussi (C’est le théorème de D’Alembert), mais la réciproque est fausse. Prendre 1 1 1 par exemple la suite définie par u2n = 22n et u2n+1 = 42n+1 . La suite est géométrique (majorée par 2n ), un+1 mais un n’a pas de limite. Quelques fois, on se contente de : "on dit que la convergence vers a de la suite (un ) est (au moins) géométrique si la suite (|un − a|) vérifie ∀n, |un+1 − a| 6 k|un − a|, 0 < k < 1." Définition. Soit (un ) une suite convergeant vers a avec un 6= a pour tout n. On dit que la convergence vers a de la suite (un ) est d’ordre r si le rapport |un+1 − a| |un − a|r tend vers k, 0 < k 6 1. 1 1.2 Méthodes d’accéleration de convergence Définition. Soit (vn )est une autre suite convergeant vers a avec vn 6= a pour tout n ∈ N ; on dit que la convergence de cette suite vers a est plus rapide que celle de (un ) si lim uvnn−a −a est 0. Accélérer la convergence d’une suite consiste à construire à partir de cette dernière une autre suite qui converge plus vite vers la même limite. Théorème (Méthode de Richardson-Romberg). Soit (un ) une suite convergeant géométriquement vers −a a avec uun+1 tendant vers λ, 0 < |λ| < 1. Alors la suite (vn ) définie par n −a vn = un+1 − λun 1−λ converge plus vite vers a que (un ). Il faut alors connaître le réel λ. Théorème. Soit une suite (un ) admettant un développement asymptotique de la forme un = a + bλn + o(λn ), où b est un réel non nul et 0 < |λ| < 1. Alors la suite (un ) converge vers a avec une convergence géométrique de rapport λ. Théorème. Soit une suite (un ) admettant un développement asymptotique de la forme un = a + bλn + cµn + o(µn ), où b et c sont des réels non nuls et 0 < |µ| < |λ| < 1. Alors la suite (vn ) définie par vn = un développement asymptotique de la forme un+1 −λun admet 1−λ vn = a + c0 µn + o(µn ), où c0 est un réel non nul. La convergence de la suite (vn ) vers a est géométrique de rapport µ. Remarque. On peut itérer la méthode de Richardson si on a un = a + bλn + cµn + dγ n + o(γ n ) (voir par exemple le Dantzer). Lorsque λ est inconnu, on peut approcher ce réel par une suite (λn ) : Théorème (Méthode d’Aitken). Soit (un ) une suite convergeant vers a avec un 6= a et un 6= un+1 pour tout n. On pose un+1 − un λn = . un − un−1 — La suite (λn ) converge vers λ. — Il existe un rang n0 tel que pour tout n > n0 , λn 6= 1. — La suite (vn ) définie à partir du rang n0 par vn = un+1 − λn un 1 − λn converge plus vite vers a que (un ). 2 2 Approximation d’une solution d’une équation f (x) = 0 Introduction Soit un intervalle [a, b] ⊂ R. Soit f : [a, b] → R une fonction continue admettant un unique zéro dans (a, b), que l’on note x̄. Nous nous intéressons ici à la mise en œuvre de méthodes itératives de recherche de zéro, basées sur la construction d’une suite xn qui converge vers l’élément x̄. Plus l’ordre de convergence est élevé, plus la méthode converge rapidement vers la solution cherchée. En pratique, on ne peut évidemment pas construire la suite jusquà n = ∞, il faut donc se fixer un ou plusieurs critères d’arrêt pour la méthode. 2.1 Méthode de la dichotomie Pour une fonction continue, la propriété f (a)f (b) < 0 caractérise l’existence d’un zéro dans l’intervalle [a, b]. La méthode de dichotomie vise à localiser le zéro de la fonction en gardant cette propriété sur des intervalles de plus en plus petits, de manière à encadrer le zéro de plus en plus précisémment. A l’itération n, on rétrécit l’intervalle de recherche [an , bn ] en le divisant par deux et en choisissant le sous-intervalle qui contient le zéro. En langage algorithmique abstrait, l’algorithme est défini comme suit : Initialisation a0 = a ; b0 = b ; x0 = (a0 + b0 )/2 Tant que critère d’arrêt non atteint, c = (an + bn )/2 si f (an )f (c) < 0 alors an+1 = an et bn+1 = c sinon bn+1 = bn et an+1 = c xn+1 = (an+1 + bn+1 )/2 répéter l’itération La méthode de dichotomie est convergente, d’ordre 1. F(a(0))=F(a(1)) F(a(2)) a(0)=a(1) (2) a _ x (1) (2) b =b (0) b F(b(1))=F(b(2)) F(b(0)) Illustration graphique de la méthode de dichotomie 2.2 Méthode des approximations successives (ou du point fixe) Il s’agit tout simplement de résoudre une équation f (x) = 0 en posant g(x) = f (x) + x. On considère la suite (un ) définie par récurrence u0 = x0 , un+1 = g(un ). Si la suite converge, alors sa limite a vérifiera g(a) = a c’est-à-dire f (a) = 0. On approche alors a par un terme an avec n assez grand. Voici un exemple de résultat. Théorème. Soit f une fonction définie sur un intervalle I. On pose g(x) = f (x) + x. On suppose que g(I) ⊂ I. On considère alors la suite (un ) définie par récurrence par u0 = x0 ∈ I, un+1 = g(un ). On 3 suppose que (un ) converge vers a ∈ I avec un 6= a à partir d’un certain rang. Enfin, on suppose que g est dérivable en a avec |g 0 (a)| < 1. — Si g 0 (a) 6= 0, alors (un ) converge géométriquement de rapport |g 0 (a)|. — Si g 0 (a) = 0, la vitesse de convergence de (un ) est rapide. De plus, si g est p−fois dérivable en a (p > 2), avec ∀k ∈ {1, 2, · · · , (p − 1)}; , g (k) (a) = 0 et g (p) (a) 6= 0, alors la vitesse de convergence de (un ) est d’ordre p. 2.3 Méthode de la sécante Ici, on approche le zéro de la fonction f en construisant une suite d’intersection de droites avec l’axe y = 0. Plus précisément, à l’itération n + 2, la solution xn+2 est calculée comme l’intersection de l’axe y = 0 et de la droite (D) joignant (xn , f (xn )) à (xn+1 , f (xn+1 )). Cette droite a pour équation (D) : y= f (xn+1 ) − f (xn ) (x − xn ) + f (xn ), xn+1 − xn L’algorithme est le suivant Initialisation x0 et x1 sont choisis dans [a, b] Tant que critère d’arrêt non atteint, xn+1 − xn xn+2 = xn − f (xn ) f (xn+1 ) − f (xn ) répéter l’itération √ La méthode de la sécante est localement convergente, d’ordre γ = (1 + 5)/2. Le terme localement indique que la méthode peut converger ou non suivant l’initialisation. Ceci est un désavantage par rapport à la méthode de dichotomie, mais la méthode de la sécante est plus rapide (lorsqu’elle converge). F(x0) F(x ) 2 F(x3) x0 x 2 x 3 _ x x 1 F(x1) Illustration graphique de la méthode de la sécante. 2.4 Méthode de Newton Voici maintenant la célèbre méthode de Newton, qui bien que datant de près de trois siècles reste encore un outil fondamental pour la recherche de zéros. On fait ici deux hypothèses supplémentaires sur la fonction f : f est de classe C 1 au voisinage de x̄, et f 0 (x̄) 6= 0. L’interprétation graphique de la méthode repose sur l’équation de la droite (D) tangente au graphe de f en xn , i.e. (D) : y = f 0 (xn ) (x − xn ) + f (xn ). L’intersection de cette droite avec l’axe y = 0 définit xn+1 . Voici l’algorithme 4 Initialisation x0 est choisi dans (a, b) Tant que critère d’arrêt non atteint, répéter l’itération f (xn ) xn+1 = xn − 0 f (xn ) La méthode de Newton est localement convergente, d’ordre 2 (on parle de convergence quadratique). Cette méthode peut donc converger en très peu d’itérations si l’initialisation est bien choisie. F(x0) F(x1) F(x2) x x 2 1 x0 Illustration graphique de la méthode de Newton. 3 3.1 Intégration numérique Généralités Soit f une fonction continue sur [a, b] à valeurs réelles, on cherche à calculer de manière approchée l’intégrale Z b f (x)dx. a Applications innombrables dans tous les domaines (de la physique à la finance) dès qu’on ne connaît pas de primitives pour f (ce qui arrive souvent pour les calculs de probabilités avec des lois à densité) ! 1. Méthodes probabilistes : exemple de la méthode de Monte-Carlo (allusion aux jeux de hasard pratiqués à Monte-Carlo, Nicholas Metropolis, Stanislas Ulam (1947-49)). 2. Méthodes déterministes (Newton, Cotes (1711), Simpson (1743), Euler ( 1770), Gauss ( 1810) pour des calculs en physique et en astronomie d’intégrales de fonction dont on ne connait pas d’expression analytique de primitives) 3.2 Méthodes probabilistes : exemple de la méthode de Monte-Carlo Méthode : Soit (Xn )n>1 une suite de v.a. i.i.d de loi uniforme sur [a, b] et soit f : [a, b] −→ R une fonction intégrable sur [a, b]. Alors la loi forte des grands nombres appliquée à la suite de v.a.r. i.i.d (f (Xi ))i>1 entraîne la convergence presque-sûre suivante : Z 1 1 (f (X1 ) + ... + f (Xn )) −→n→+∞ E[f (X1 )] = f (x)dx n b − a [a,b] Convergence : Si la variance de f (X1 ) existe le TCL assure la convergence en √1n Remarque : méthode relativement lente en dimension 1 par rapport aux méthodes déterministes (voir section 2.3), mais relativement efficace en dimension élevée. De plus, la méthode demande très peu de régularité sur f . 5 3.3 Méthode déterministe Subdivision de [a, b] : a = x0 < x1 < ... < xN −1 < xN = b, Z b f (x)dx = N −1 Z xj+1 X a f (x)dx (relation de Chasles). xj j=0 Changement de variable sur chaque [xj , xj+1 ] : x = xj + thj , hj = xj+1 − xj : Z xj+1 Z xj 0 b Z 1 f (xj + thj )dt f (x)dx = hj f (x)dx = d’où a N −1 X Z j=0 1 f (xj + thj )dt. hj 0 Conséquence : on s’est ramené par changement de variable aux calculs des intégrales sur R 1 [0, 1] : f (x + th )dt . Il suffit ainsi de chercher des formules pour le calcul d’intégrales du type j j 0 0 g(t)dt (g jouera le rôle de chaque t 7→ f (xj + thj )). R1 3.4 Formules de quadrature Exemples de formules "intuitives" : 1. avec un seul noeud : Z 1 g(t)dt ∼ (1 − 0)g(ξ) = g(ξ). 0 Choix pour ξ : ξ = 0 (méthode des rectangles à gauche, obtenue en approchant g par le polynôme de degré 0 (une fonction constante..) dont la courbe passe par (0, g(0)), ξ = 21 (point milieu), ξ = 1 (rectangles à droite)... rectangles à gauche pour Rb a f, points milieux pour Rb a f 2. avec deux noeuds (trapèze) Z 1 g(t)dt ∼ 0 1 (g(0) + g(1)) 2 obtenue en approchant g par le polynôme de degré 1 (une fonction affine..) dont la courbe passe par (0, g(0)) et (1, g(1)), méthode des trapèzes pour 6 Rb a f 3. de Simpson à trois noeuds, obtenue en approchant g par le polynôme de degré 2 dont la courbe passe par les points (0, g(0)), ( 12 , g( 12 )), (1, g(1)) : Z 1 1 1 g(t)dt ∼ (g(0) + 4g( ) + g(1)). 6 2 0 méthode de Simpson pour Rb a f 4. de Newton-Cotes à s noeuds obtenue en approchant g par le polynôme de degré s − 1 dont i i la courbe passe par les points ( s−1 , g( s−1 )) (il s’agit du polynôme interpolateur de Lagrange de degré s − 1 passant par ces points). De manière générale, Définition. Une formule de quadrature à s étages (ou noeuds) est déterminée par la donnée de s couples (ξi , bi )i=1,...,s et la quantité s X bi g(ξi ). (1) i=1 Les ξi sont les noeuds et les bi sont les poids de la formule. La formule de quadrature utile uniquement si : Z 1 s X g(x)dx ∼ bi g(ξi ). 0 i=1 But : trouver une formule de quadrature (c’est-à-dire trouver les poids et les noeuds) afin que l’erreur (en valeur absolue) commise entre la valeur exacte et la valeur approchée de l’intégrale soit la plus petite possible. Pour cela, on utilise la notion d’ordre. Définition. On dit que l’ordre de la formule de quadrature (1) est p lorsque la formule est exacte pour tous les polynômes de degrés 6 p, c’est-à-dire Z 1 s X g(t)dt = bi g(ξi ) pour deg(g) 6 p 0 i=1 et qu’il existe au moins un polynôme de degré p + 1 pour lequel la formule n’est pas exacte. Remarque. 1. Par définition des méthodes, méthode des trapèzes : ordre > 1, méthode de Simpson : ordre > 2, méthode de Newton-Cotes : ordre > s − 1. 2. Il existe une méthode pour avoir l’ordre le plus élevé possible : il s’agit de la formule de quadrature de Gauss, dont on ne parlera pas ici. 4 4.1 Séries Valeur approchée de la somme d’une série convergente Soit Σk>0 uk une série convergente. On cherche à calculer une valeur approchée de sa somme n S = Σ+∞ k=0 uk . On approche naturellement et facilement S par Sn = Σk=0 uk . L’erreur est donnée par l’évaluation du reste Rn = Σ+∞ k=n+1 uk . Ainsi pour avoir une valeur approchée de S par Sn à près, il suffit de trouver n tel que |Rn | < . Cas particuliers : 7 1. Séries vérifiant les hypothèses du théorème des suites alternées : on a Rn 6 un+1 . On connaît même le signe de Rn (qui est celui de un+1 ). | 2. Série dont la convergence peut se montrer avec la règle de d’Alembert : |u|un+1 → λ < 1 donc à n| partir d’un certain rang N , |un+1 | < (λ + )|un | avec 0 < λ + < 1. Ainsi pour n > N , |Rn | 6 (λ + )n−N +1 |uN |. 1 − (λ + ) 1 Exemple : donner une approximation à 10−3 près de S = Σ+∞ n=0 2n +1 . 3. Série dont la convergence peut se montrer par une comparaison à une série de Riemann : pour n > N , |un | 6 nKα , α > 1. Ainsi pour n > N , |Rn | 6 K +∞ X k=n+1 Z +∞ +∞ Z k X dt 1 dt K 6 K = K = . α α kα t t (α − 1)nα−1 n k−1 k=n+1 Exemple : donner une approximation à 10−3 près de S = 4.2 P+∞ 1 n=0 n2 +1 . Evaluation asymptotique du reste d’une série convergente Il n’y a pas de résultat particulier. On peut utiliser les théorèmes sur les comparaisons de séries et intégrales (pour un = f (n), f décroissante positive sur [0, +∞[), ou entre les séries (pour un > 0)... 5 Résolution de systèmes linéraires Pour résoudre un système linéaire qui s’écrit Ax = b avec A inversible, on ne calcul pas l’inverse de la matrice A ! Le coût d’une telle opération est trop élevé. En effet cela reviendrait à résoudre n systèmes linéaires pour obtenir A−1 puis à multiplier cette matrice par b. Nous présentons ici des méthodes de résolution bien plus efficaces. 5.1 Élimination de Gauss L’idée est de se ramener à la résolution d’un système triangulaire. La méthode de l’élimination de Gauss comporte trois étapes : — élimination : calcul d’une matrice M inversible telle que M A = T soit triangulaire supérieure, — mise à jour du second membre : calcul simultané de M b, — substituion : résolution du système triangulaire T x = M b par simple remontée. Remarque (Quelques aspects pratiques de la méthode de Gauss). 1. On ne calcul jamais M ! On calcule directement M A et M b. 2. Si la matrice A n’est pas inversible, on va trouver un coefficient diagonal de T = M A nul et on ne va pas pouvoir résoudre T x = M b. En revanche l’élimination, elle, est toujours possible. 3. À l’étape k, on ne modifie que la partie des lignes k + 1 à n comprise entre les colonnes k + 1 à n. 4. Comme sous-produit de l’élimination de Gauss, on peut calculer le déterminant de la matrice A. En effet on a det A = ± det T. 8 5.2 Factorisation LU La méthode LU consiste à factoriser la matrice A en un produit de deux matrices triangulaires A = LU, où L est triangulaire inférieure et U triangulaire supérieure. Il s’agit en fait du même algorithme que celui de l’élimination de Gauss dans le cas pariculier où on ne "pivote" jamais. Une fois établie la factorisation LU de A, la résolution du système linéaire Ax = b est équivalente à la simple résolution de deux systèmes triangulaires Ly = b puis U x = y. Théorème. Soit A = (aij )16i,j6n une matrice carrée d’ordre n telle que les n sous-matrices diagonales a11 · · · a1,k .. , ∆k = ... 16k6n . ak1 · · · akk soient inversibles. Alors il existe un unique couple (L, U ) de matrices, avec L triangulaire inférieure avec des 1 sur la diagonale, et U triangulaire supérieure, tel que A = LU. Remarque. Le nombre d’opérations élémentaires nécessaires pour résoudre un système linéaire par la méthode de Gauss ou la factorisation LU est d’environ n3 /3. 5.3 Méthode de Cholesky Les matrices symétriques définies positives vérifient les conditions d’application de la factorisation LU. En fait il existe même une factorisation analogue mais plus simple car elle ne fait intervenir qu’une seule matrice. Théorème. Soit A une matrice symétrique réelle définie positive. Il existe une unique matrice réelle B triangulaire inférieure dont tous les éléments diagonaux sont positifs et qui vérifie A = BB T . Remarque. Le nombre d’opérations élémentaires nécessaires pour résoudre un système linéaire par la méthode de Cholesky est d’environ n3 /6. La méthode de Cholesky est donc deux fois plus rapide que la décomposition LU. 9