Académique Documents
Professionnel Documents
Culture Documents
Pr Hamid El Ouardi
Email : h.elouardi@ensem.ac.ma
2
Table des matières
2 Interpolation Polynômiale 13
2.1 Exemples et motivations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
2.2 Interpolation polynômiale . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
2.2.1 Interpolation polynômiale : existence et unicité . . . . . . . . . . . . . . . . 14
2.2.2 Erreur d’interpolation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
2.2.3 Représentation des interpolations de type Lagrange . . . . . . . . . . . . . 16
2.2.4 Représentation des interpolations de type Newton . . . . . . . . . . . . . 18
2.3 Travaux Dirigés (correction en classe) . . . . . . . . . . . . . . . . . . . . . . . . . 21
3 Intégration Numérique 23
3.1 Exemples et motivations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
3.2 Quelques méthodes d’intégrations numériques . . . . . . . . . . . . . . . . . . . . 24
3.2.1 Méthode des rectangles et Analyse de l’erreur . . . . . . . . . . . . . . . . 25
3.2.2 Méthode des trapèzes et Analyse de l’erreur . . . . . . . . . . . . . . . . . 26
3.2.3 Méthode de Simpson et Analyse de l’erreur . . . . . . . . . . . . . . . . . . 28
3.3 Travaux Dirigés (correction en classe) . . . . . . . . . . . . . . . . . . . . . . . . . 30
3
4 TABLE DES MATIÈRES
4 Equations différentielles 33
4.1 Exemples et motivations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
4.2 Position du problème . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
4.3 Problème d’existence et d’unicité . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
4.3.1 Existence de la solution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
4.3.2 Généralisations aux systèmes du 1er ordre . . . . . . . . . . . . . . . . . . 36
4.4 Méthodes numériques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
4.4.1 Méthode d’Euler - Cauchy. . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
4.4.2 Erreur de la méthode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
4.4.3 Algorithme (Euler) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
4.5 Les schémas à un pas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
4.5.1 Notion d’ordre d’une méthode . . . . . . . . . . . . . . . . . . . . . . . . . 39
4.5.2 Construction d’un schéma d’ordre p . . . . . . . . . . . . . . . . . . . . . . 40
4.5.3 Schémas de Runge - Kutta . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
4.5.4 Algorithme (RK2) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
4.5.5 Algorithme (RK4) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
4.5.6 Cas des systèmes différentielles d’ordre 1 . . . . . . . . . . . . . . . . . . . 43
4.6 Travaux Dirigés (correction en classe) . . . . . . . . . . . . . . . . . . . . . . . . . 45
I Méthodes Directes 49
5.1 Exemple de motivation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
5.2 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
5.3 Méthode de Gauss . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
5.3.1 Définitions et premiers exemples . . . . . . . . . . . . . . . . . . . . . . . . 53
5.3.2 Première phase (élimination) . . . . . . . . . . . . . . . . . . . . . . . . . . 55
5.3.3 Deuxième phase (remontée) . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
5.3.4 Algorithme de Gauss . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
5.3.5 Le coût (nombres d’opérations) . . . . . . . . . . . . . . . . . . . . . . . . . 56
5.3.6 Systèmes à structure particulière . . . . . . . . . . . . . . . . . . . . . . . . 57
5.4 Méthode de Choleski . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
II Méthodes Indirectes 61
5.5 Principe des méthodes indirectes . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
5.6 Les techniques itératives classiques . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
5.6.1 Méthode de Jacobi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
5.6.2 Méthode de Gauss-Seidel . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
5.6.3 Les techniques de sur-relaxation et de sous relaxation . . . . . . . . . . . . 65
5.7 Travaux Dirigés (correction en classe) . . . . . . . . . . . . . . . . . . . . . . . . . 69
Chapitre 1
Contents
1.1 Exemples et motivations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.1.1 Exemple 1 : Equation d’état d’un gaz . . . . . . . . . . . . . . . . . . . . 5
1.1.2 Exemple 2 : problème financier . . . . . . . . . . . . . . . . . . . . . . . . 6
1.1.3 Position du problème . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
1.2 L’algorithme de dichotomie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
1.2.1 Convergence de l’algorithme de dichotomie . . . . . . . . . . . . . . . . 7
1.3 Méthodes des approximations successives . . . . . . . . . . . . . . . . . . . . . 7
1.3.1 Définiton et hypothèses . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
1.3.2 Convergence de la méthode des approximations successives . . . . . . . 7
1.3.3 Critère d’arrêt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
1.4 Méthode de la sécante . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
1.4.1 Convergence de l’algorithme . . . . . . . . . . . . . . . . . . . . . . . . . 8
1.5 Méthode de Newton - Raphson . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
1.5.1 Convergence de l’algorithme . . . . . . . . . . . . . . . . . . . . . . . . . 9
1.6 Comparaison des algorithmes . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
1.7 Sytèmes Non Linéaires . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
1.8 Travaux Dirigés (correction en classe) . . . . . . . . . . . . . . . . . . . . . . . . 10
5
6 CHAPITRE 1. EQUATIONS NON LINÉAIRES
7
1+t h i 1+t h i
A = a ∑ ( 1 + t )i = a (1 + t)7 − 1 : f (t) = A − a (1 + t)7 − 1 = 0,
i =1
t t
c’est une équation non linéaire, dont on est incapable de trouver une solution exacte.
| xn+1 − l | ≤ k | xn − l | ,
f ( x) − f ( y) − f 0 ( y)( x − y) ≤ | x − y| 1
(∗)
2λ
f ( xn )
Nous montrons par récurrence que si x1 , ........, xn sont défnies par xn+1 = xn − f 0 ( xn )
et appar-
tiennent à [ x0 − c, x0 + c] , alors xn+1 ∈ [ x0 − c, x0 + c] et
c
| xn − xn−1 | ≤ (**)
2n
Cette relation est vraie pour n = 1
c f (x ) c
f ( x0 ) ≤ 2λ et | x1 − x0 | = f 0 ( x0 ) ≤ 2λ λ = 2c .
0
Supposons les relations vraies à l’ordre (n − 1), on a :
f ( xn−1 ) = −( xn − xn−1 ) f 0 ( xn−1 ), d’où f ( xn ) = f ( xn ) − f ( xn−1 ) − ( xn − xn−1 ) f 0 ( xn−1 ) et en
utilisant (∗), il vient : | f ( xn )| ≤ 2λ 1
| x − x | ≤ λ2nc+1 .
n n−1
f ( xn )
D’autre part, on a : | xn+1 − xn | = f 0 ( x ) ≤ λ2cλ c
n+1 = 2n+1 . Nous pouvons en déduire que :
n
| xn+1 − x0 | ≤ | xn+1 − xn | + | xn − xn−1 | + ...... | x1 − x0 | ≤ c( 12 + 212 + ............ + 2n1+1 ) ≤ c. Donc
xn+1 ∈ [ x0 − c, x0 + c] .
De (∗∗), on déduit que la série de terme général xn − xn−1 est absolument convergente donc
la suite xn tend vers une limite α ∈ [ x0 − c, x0 + c] quand n → +∞. D’aprés la relation
| f ( xn )| ≤ λ2nc+1 et de la continuité de f , on en déduit que f (α ) = 0. On applique la formule
des accroissements finis à f ( xn ).
f 00 (θ )
f (α ) = f ( xn ) + (α − xn ) f 0 ( xn ) + (α − xn )2 2 n , θn ∈ [α, xn ] 00
f (θ )
f ( xn ) = ( xn − xn−1 ) f 0 ( xn ), ce qui implique : | xn+1 − α | ≤ | xn − α |2 2 f 0 ( xn ) ≤ | xn − α |2 8c
1
.
n
c c
Comme | x0 − c| ≤ 2 , nous avons | xn − α | ≤ 82n .
10 CHAPITRE 1. EQUATIONS NON LINÉAIRES
Remarque : Il est clair qu’il faut se placer dans une zone où f 0 ( x) ne risque pas de s’annuler.
Enfin, la méthode converge lentement dans le cas des racines multiples.
Si α est racine avec p l’ordre de multiplicité, on considère alors la méthode de Newton modi-
fiée :
Choisir x0 et déterminer la suite ( xn ) par la relation
f (x )
xn+1 = xn − p f 0 ( xn ) , n = 0, 1.....
n
[ DF ( xk )] ( xk+1 − xk ) = − F ( xk ), k = 0, 1, 2.....
Interpolation Polynômiale
Objectifs Pédagogiques
13
14 CHAPITRE 2. INTERPOLATION POLYNÔMIALE
xi 0 6 12 18
yi 5 10 19 18
Nous voulons représenter le phénomène observé par une fonction P polynômiale. Ce poly-
nôme doit vérifier : P( xi ) = yi , i = 0, 1, 2, 3.
[Masse volumique d’un matériau]
Les masses volumiques du matériau pour différentes températures sont données par le ta-
bleau ci- dessous :
Températures Ti en ◦ C Masse volumique R( Ti ) :(en kg/m3)
94 929
205 902
371 860
En utilisant les polynômes d’interpolation qui permettent d’interpoler les différents points de
données précédentes. On souhaite trouver les masses volumiques du sodium pour T = 251
◦ ◦ ◦
C, T = 305 C et T = 800 C.
Pn ( xi ) = yi , i = 0, ..., n
Preuve :
n
Soit Pn ( x) = ∑ αi xi le polynôme cherché. Pour chaque xi on doit avoir :
i =0
Pn ( xi ) = yi ⇔ α0 + α1 xi + α2 ( xi )2 + ... + αn ( xi )n = yi .
Ceci fournit un système linéaire de (n + 1) inconnues α0 , α1 , ..., αn .
Le déterminant est celui de Vandermonde :
1 x0 x2 . . xn
0 0
1 x1 x2 . . xn
1 1
1 x2 x2 . . xn
. .
2
. . . .
2 =
∏ ( xi − x j ) 6 = 0
ii=>0,nj
. . . . .
1 xn x2 . . xn j=0,n
n n
Le système linéaire est un système de Cramer qui détermine de façon unique Pn .
2.2. INTERPOLATION POLYNÔMIALE 15
Soit f une fonction numérique continue sur [ a, b]. Pour un entier n ≥ 1, f est (n + 1) fois
dérivable sur ] a, b[, de plus f ( p) , 1 ≤ p ≤ n possède un prolongement continue sur ] a, b[ .
Pour a = x0 < x1 < ... < xn = b, il existe un polynôme unique Pn de degré n tel que
Pn ( xi ) = yi , i = 0, ..., n. De plus, ∀ x ∈ [ a, b], ∃c ∈ ] a, b[ :
α0 + α1 xi + α2 ( xi )2 + ... + αn ( xi )n = f ( xi ),
(t − a)(t − x1 )...(t − b)
φ ( t ) = f ( t ) − Pn ( t ) − Q( x).
(n + 1)!
Par construction
φ( xi ) = 0, i = 0, ..., n
φ( x) = 0
C’est - à - dire φ s’annule en (n + 2) points distincts si x 6= xi . La fonction Q possède les
mêmes propriétés que f . Le théorème 1.3.2 de Rolle s’applique (n + 1) fois à φ entre deux de
ses zéros consécutifs. Il existe alors (n + 1) zéros distincts de φ0 dans ] a, b[. Le théorème de
Rolle 1.3.2 s’applique n fois à φ0 pour fournir n zéros de φ00 et ainsi de suite, enfin il existe un
nombre c ∈ ] a, b[ tel que φ(n+1) (c) = 0.
Or
φ(n+1) ( c ) = f (n+1) ( c ) − Q ( x ) ,
d’où
Q ( x ) = f (n+1) ( c ) .
1) n = 1, x0 = a, x1 = b ; on cherche P1 tel que P1 ( a) = f ( a),
P1 ( b ) = f ( b ) .
Il vient facilement que
f (b) − f ( a)
P1 ( x ) = f ( a) + ( x − a)
b−a
( x − a)( x − b) 00
et f ( x) = P1 ( x ) + f (c).
2
16 CHAPITRE 2. INTERPOLATION POLYNÔMIALE
P2 ( x ) = f ( a ) + ( x − a )Q1 ( x ) ,
avec
2 a+b
Q1 ( x ) = f( ) − f ( a) +
b−a 2
h i
a+b
a+b 2 f ( b ) − f ( 2 ) − f ( a )
2( x − ) .
2 b−a
Soient a = x0 < x1 < ... < xn = b, (n + 1) points distincts d’une subdivision de [ a, b]. Soient
Li , i = 0, n, les (n + 1) polynômes de Lagrange : Li ∈ Pn tel que Li ( xi )=δi j , j = 0, ..., n , sont
linéairement indépendants et forment une base de Pn .
Preuve :
n
Soient (λi ) tels que ∑ λi Li = 0 dans Pn , ce qui implique :
i =0
n n
∑ λ i Li ( x i ) = 0 = ∑ λ i δ i j = λ j = 0
i =0 i =0
n
∀ x ∈ [ a, b] , Pn ( x) = ∑ Pn ( xi )Li ( x), ∀Pn ∈ Pn .
i =0
Le polynôme Pn ∈ Pn associé par le théorème 2.2.3 à la fonction f et la subdivision a = x0 <
x1 < ... < xn = b est dit polynôme d’interpolation de Lagrange de f .
Résultat : Le polynôme d’interpolation de Lagrange de f aux points xi , i = 0, ..., n distincts de
n
[ a, b] s’écrit Pn ( x) = ∑ f ( xi )Li ( x)
i =0
où (Li )i=0,...,n est la base de Lagrange dans Pn .
Algorithme 2.1 :
Données :
x : vecteur/tableau de Rn+1 , x(i ) = xi−1 pour i ∈ {0, ..., n + 1} et x(i ) 6= x( j) pour i 6= j
y : vecteur/tableau de Rn+1 , y(i ) = yi−1 pour i ∈ {0, ..., n + 1}
t : un réel.
Résultat : P : le réel y = P(t)
Fonction y ←− Lagrange(t, x, y)
P ←− 0
Pour i ←− 1 à (n + 1) f aire
L ←− 1
Pour j ←− 1 à (n + 1) f aire
Si i 6= j alors
L ←− L × (t − x( j))/( x(i ) − x( j))
Fin
Fin
P ←− P + L × y(i )
Fin
return P
Fin
xi 0 5 10 15
yi = f ( xi ) 72, 8 74, 2 75, 2 76, 4
On en déduit que :
Pn ( x 0 ) = f ( x 0 ) = α 0
f ( x0 )− f ( x1 )
Pn ( x1 ) = f ( x1 ) = f ( x0 ) + α1 ( x1 − x0 ) ⇐⇒ α1 = x0 − x1
Pour expliciter αk , k ≥ 2, posons :
∀ y0 , y1 , ..., yk ∈ R, ∀n ∈ N∗ ,
f ( yi )
si k = i,
f [ yi , . . . , y k ] = f [ yi +1 , . . . , y ] − f [ yi , . . . , y ]
k k−1
si k ≥ i.
y k − yi
On en déduit que :
αk = f [ x0 , . . . , xn ], 0 ≤ k ≤ n
Le polynôme d’interpolation de f s’écrit, dans la base de Newton,
n
Pn ( x ) = ∑ f [ x0 , . . . , xk ]ek ( x).
k=0
2.2. INTERPOLATION POLYNÔMIALE 19
f [ x0 , . . . , xk ] sont appelées les différences divisées de Newton, on peut les calculer et les repré-
senter par un tableau, dans lequel le terme (i, j) est calculé à partir des éléments (i − 1, j − 1)
et (i, j − 1) :
x0 f [ x0 ]
x1 f [ x1 ] f [ x0 , x1 ]
x2 f [ x2 ] f [ x1 , x2 ] f [ x0 , x1 , x2 ]
.. .. .. .. ..
. . . . .
xn f [ xn ] f [ xn−1 , xn ] f [ xn−2 , xn−1 , xn ] ... f [ x0 , x1 , . . . , xn−1 , xn ]
En factorisant la forme de
Newton, il vient :
Pn ( x ) = f [ x 0 ] + ( x − x 0 ) f [ x 0 , x 1 ] + ( x − x 1 ) . . . f [ x 0 , . . . , x n − 1 ] + ( x − x n − 1 ) f [ x 0 , . . . , x n ] .
L’algorithme de Hôrner s’écrit :
Algorithme 2.2 :
Initialisation
Pn ← f [ x 0 , . . . , x n ]
Pour k décroissant de n − 1 à 0 faire
Pn ← f [ x 0 , . . . , x k ] + ( x − x k ) Pn .
f (n) (c )
2) On démontre aussi que : f [ x0 , x2 , x3 , ..., xn ] = (n)!
, avec
c ∈ I = (min( xi ), max( xi ))
i i
On sait que En ( x) = f ( x) − Pn ( x) et donc En ( xi ) = 0 pour i = 0, ..., n.
On peut appliquer n fois le théorème de Rolle 1.3.2 et on en déduit que :
x → E0n ( x) admet n racines distinctes dans I ;
00
x → En ( x) admet (n − 1) racines distinctes dans I ;
..
(n)
x → En ( x) admet 1 racine c dans I.
Or
(n) (n)
En (c) = f (n) (c) − Pn (c) = f (n) (c) − n! f [ x0 , x2 , x3 , ..., xn ],
d’où
f (n) ( c )
f [ x0 , x2 , x3 , ..., xn ] = .
(n)!
Soit Pn le polynôme d’interpolation de Newton aux pointsa = x0 < x1 < ... < xn = b.
Si f ∈ C n+1 [ a, b] alors : ∀ x ∈ [ a, b] , ∃c ∈ [ a, b] tel que :
f (n+1) (c ) n
En ( x ) = f ( x ) − Pn ( x ) = (n+1)! ∏
( x − xi ) .
i =0
Preuve :
Si x = xi , 0 ≤ i ≤ n, on a : f ( xi ) = Pn ( xi ) et la formule est vraie.
Démontrons cette formule pour tout t ∈ [ a, b] et t 6= xi
Soit Qn le polynôme de degré (n + 1) passant par ( xi , f ( xi )) (t, f (t)).
Le polynôme de Newton associée à cette fonction
n
Qn ( x) = Pn ( x) + f [ x0 , ..., xn , t] ∏ ( x − xi ).
i =0
f (n+1) (c )
D’après la remarque précédente, f [ x0 , ..., xn , t] = (n+1)!
, on en déduit que :
f (n+1) (c ) n
Qn ( x ) = Pn ( x ) + (n+1)! ∏
( x − xi )
i =0
x 0 2 3 5
f ( x) -1 2 9 87
Intégration Numérique
Objectifs Pédagogiques
23
24 CHAPITRE 3. INTÉGRATION NUMÉRIQUE
F ( b ) − F ( a ).
Souvent, les intégrales qui interviennent dans les problèmemes physiques sont des
fonctions intégrales trop compliquées pour être calculées directement, par exemple :
R1 x R 1 − x2
√e dx, 01 cos( x2 )dx,
R
0 1+ x2 0 e dx, ...
Pour résoudre cette difficulté, on utilise des résultats d’interpolation linéaire et princi-
palement la relation suivante :
f ( x ) = Pn ( x ) + En ( x )
[Énergie émise]
On veut calculer l’énergie émise dans le spectre (infrarouge) compris entre les longueurs
d’ondes de 3µm et 14µm par un corps noir, objet capable d’émettre dans tout le spectre,
à la température ambiante. La résolution de ce problème est obtenue en calculant :
Z 0,0014
1
E( T ) = 2, 39.10−11 dx,
0,0003 x5 (−1 + e(1,432/(Tx)) )
Rb n−1 R
xi +1
a f ( x)dx = ∑ xi f ( x)dx,
i =0
Rb
on peut obtenir une valeur approchée de I = a f ( x)dx.
3.2. QUELQUES MÉTHODES D’INTÉGRATIONS NUMÉRIQUES 25
Posons
Z b b − a n−1
= f ( x)dx − f ( x )
n i∑
ERec i
a =0
n−1 Rb
b− a
• Soit f continue sur [ a, b] , alors n ∑ f ( xi ) converge vers a f ( x)dx.
i =0
2
• Si f est de classe C 1 sur [ a, b] , alors ERec ≤ M1 (b−
2n
a)
où
M1 = sup | f 0 ( x)|
a≤ x≤b
Preuve :
• f est uniformément continue sur [ a, b] , donc ∀ > 0, ∃η > 0 :
∀ x, y ∈ [ xi , xi+1 ] tel que | x − y| < η → | f ( x) − f ( y)| ≤ b− a.
b− a b− a b− a
Soit n0 > η , alors ∀n > n0 : h = n ≤ n0 < η.
Alors ∀m ∈ [ xi , xi+1 ] et ∀ x ∈ [ xi , xi+1 ] :
on a : | x − m| ≤ h < η → | f ( x) − f (m)| ≤ b− a.
D’où :
R b n−1 n−1
f ( x)dx − ∑ R xi+1 f (m)dx ≤ ∑ R xi+1 | f ( x) − f (m)|
a xi xi
i =0 i =0
n−1 R
xi +1
≤ ∑ xi b− a = ,
i =0
donc
n−1 Rb
b− a
lim ∑ f ( xi ) = a f ( x)dx.
n→+∞ n i =0
• Si f est de classe C 1 sur [ a, b] , on pose M1 = sup | f 0 ( x)| .
a≤ x≤b
Le théorème 1.3.3 des accroissements finis appliquée à la fonction f sur [ xi , x] où x ∈ [ xi , xi+1 ] :
∃ci ∈ ] xi , x[ tels que
f ( x ) − f ( xi ) = ( x − xi ) f 0 ( ci ) .
Ce qui implique
Z b b − a n − 1 xi +1
Z
≤ M1 f ( x)dx − ( x − xi )dx
ERec
a ∑
n i = 0 xi
M1 (b − a)2
= .
2 n
26 CHAPITRE 3. INTÉGRATION NUMÉRIQUE
xi + xi +1
On pourrait remplacer f ( x) par f ( xi+1 ) ou f ( 2 ).
Algorithme 3.1 :
h ← (b − a)/n
IRec = 0
pour i ← 0 à n − 1 f aire
IRec = IRec + h ∗ f ( a + i ∗ h)
f in
afficher( IRec )
R √
On désire donner une valeur approchée de I = 02 1 + x2 dx.
On choisit n = 4, donc h = 12 et xi = ih pour i ∈ {0, 1, 2, 3}
f ( x) = Pn ( x ) + En ( x ) .
| {z } | {z }
polynôme d’interpolation Erreur associée
On sait qu’on peut remplacer f ( x) par le polynôme de degré 1 passant par les points
( xi , f ( xi )) et ( xi+1 , f ( xi+1 ))
f ( xi +1 ) − f ( xi ) ( x − xi )( x − xi+1 ) 00
f ( x ) = f ( xi ) + ( x − xi ) + f (c).
xi +1 − xi 2 {z
| {z } | }
P1 ( x ) Erreur
Rx Rx
Par approximation de i +1 f ( x)dx, on retiendra i +1 P1 ( x)dx, c’est à dire
xi xi
Z x
i +1 xi +1 − xi
P1 ( x)dx = ( f ( xi+1 ) + f ( xi )).
xi 2
3.2. QUELQUES MÉTHODES D’INTÉGRATIONS NUMÉRIQUES 27
Comme
Z b n − 1 Z xi +1
I= f ( x)dx = ∑ f ( x)dx.
a i =0 xi
Il vient " #
n−1 n−1
h h
I ' ∑ ( f ( xi+1 ) + f ( xi )) = f ( x 0 ) + 2 ∑ f ( xi ) + f ( x n ) .
i =0
2 2 i =1
n−1
R b
Si on pose : ETrap = a f ( x)dx − 2h f ( x0 ) + 2 ∑ f ( xi ) + f ( xn ) .
i =1
L’erreur globale est majorée par :
(b − a) h2
ETrap ≤ M2 .
12
Algorithme 3.2 :
h ← (b − a)/n
ITrap = 0
pour i ← 1 à n − 1 faire
ITrap = ITrap + 2h ∗ ( f ( a) + f ( a + i ∗ h))
a=a+h
f in
afficher(ITrap )
R √
On désire donner une valeur approchée de I = 02 1 + x2 dx.
On choisit n = 4, donc h = 21 et xi = ih pour i ∈ {0, 1, 2, 3}
xi 0,0 0,5 1,0 1,5 2,0
f ( xi ) 1,000000 1,118034 1,414214 1,802776 2,236068
Appliquons la méthode des trapèzes, une valeur approchée de I est
h
2 ( f ( x0 ) + f ( x4 ) + 2 ( f ( x√
1 ) + f ( x2 ) + f ( x3 )) = 2, 976529
La fonction x → f ( x) = 1 + x2 est de classe C ∞ sur [0, 2] et
1 3
f 0 ( x) = x(1 + x2 )− 2 , f (2) ( x) = (1 + x2 )− 2 , donc
M2 = sup f (2) ( x) = 1
0≤ x≤2
On conclut que :
M2
ETrap ≤ (b − a)h2 = 0, 042
12
28 CHAPITRE 3. INTÉGRATION NUMÉRIQUE
La méthode des trapèzes a consisté à remplacer f localement par des fonctions affines.
L’erreur sera sans doute plus faible si on remplace f par des polynômes de degrés plus
élevées : c’est l’objet d’une autre méthode approchée très efficace : la méthode de Simp-
son.
P2 ( x) = f ( x0 ) + f [ x0 , x1 ] ( x − x0 ) + f [ x0 , x1 , x2 ] ( x − x0 )( x − x1 ).
Il vient ensuite
Z x2 Z x2
h
f (t)dt ' P2 (t)dt = [ f ( x0 ) + 4 f ( x1 ) + f ( x2 )] .
x0 x0 3
Donc
h
I' [ f ( x0 ) + 4 f ( x1 ) + 2 f ( x2 ) + ... + f ( x2n )] .
3
On sait que :
( x − x0 )( x − x1 )( x − x2 ) 4
f ( x ) = P2 ( x ) + f (c), f (4) (c) ≤ M4 .
4!
Pour estimer, l’erreur, posons
Z b
h
E Simp = f ( x)dx − [ f ( x0 ) + 4 f ( x1 ) + 2 f ( x2 ) + ... + f ( x2n )]
a 3
h 5
Soit f est de classe C 4 sur [ a, b] , alors E Simp ≤ M4 90 .
Où
M4 = sup f (4) ( x)
a≤ x≤b
Preuve :
On sait que :
( x− x0 )( x− x1 )( x− x2 ) (3)
f ( x ) = P2 ( x ) + 3! f (ξ1 ), avec ξ1 ∈ ] x0 , x2 [ et pour tout t ∈ [ x0 , x2 ]
3.2. QUELQUES MÉTHODES D’INTÉGRATIONS NUMÉRIQUES 29
( x− x0 )( x− x1 )( x− x2 )( x−t) (4)
f ( x ) = P3 ( x ) + 4! f (ξ2 ), avec ξ2 ∈ ] x0 , x2 [ .
Or : Z x2
( x − x0 )( x − x1 )( x − x2 )dx = 0,
x0
il s’ensuit de la formule
f ( t ) − P2 ( x )
P3 ( x ) = P2 ( x ) + ( x − x0 )( x − x1 )( x − x2 ),
(t − x0 )(t − x1 )(t − x2 )
que
Rb Rb
a P3 ( x)dx = a P2 ( x)dx.
On déduit que
Z x Z x Z x2
2 2
x E3 ( x)dx = x f ( x)dx − x P3 ( x)
0 0 0
M4 x2
Z
≤ ( x − x0 )( x − x1 )( x − x2 )( x − t)dx .
4! x0
x +x
Choisissons t = i 2 i+1 et par un simple calcul, on obtient en faisant le changement de
variable : x − x0 = zh
Z x2
x0 + x2
( x − x0 )( x − x1 )( x − x2 )( x − )dx
x0 2
Z 2
1 4
= (h5 )( z − 1)( z − 2)( z − )dz = − h5 .
0 2 15
D’où
5
Z x
≤ M4 4h = M4 h5 .
2
E 3 ( x ) dx
x
0
4! 15 90
On conclut que :
n−1 R x
= ∑ x2i E3 ( x)dx ≤ n M 4 5 M4 4
+
90 h =
2i 1
E Simp 180 h .
i =0
Algorithme 3.3 :
h ← (b − a)/n
s1 = 0
s2 = 0
ISimp = 0
pour i ← 1 à n − 1 f aire
s1 = s1 + f ( a + i ∗ h)
f in
pour i ← 1 à n f aire
s2 = s2 + ( f ( a + (2 − 1) ∗ 2h )
f in
ISimp = ( 6h ) ∗ ( f ( a) + 2 ∗ s1 + 4 ∗ s2 + f (b))
afficher ( ISimp)
R √
On désire donner une valeur approchée de I = 02 1 + x2 dx.
30 CHAPITRE 3. INTÉGRATION NUMÉRIQUE
1
On choisit n = 4, donc h = 2 et xi = ih pour i ∈ {0, 1, 2, 3}
h
( f ( x0 ) + f ( x4 ) + 4( f ( x1 ) + f ( x3 ) + 2 f ( x2 )) = 2, 957956
3
√
La fonction x → f ( x) = 1 + x2 est de classe C ∞ sur [0, 2]
1 7
et f 0 ( x) = x(1 + x2 )− 2 , ..., f (4) ( x) = −3(4x2 − 1)(1 + x2 )− 2 , donc
M4 = sup f (4) ( x) = 3.
0≤ x≤2
On conclut que :
M4 4
E Simp ≤ h = 0, 002083
180
R π
2
On pose I = 0 f ( x)dx, sur la base du tableau suivant qui donne les valeurs de la fonc-
tion f :
π π
xi 0 8 4 3 π8 π
2
f ( xi ) 0 0,382683 0,707107 0,923880 1
On lance une fusée verticalement du sol et l’on mesure pendant les premières 80 se-
condes l’accélération γ :
t 0 10 20 30 40 50 60 70 80
γ 30 31, 63 33, 44 35, 47 37, 75 40, 33 43, 29 46, 70 50, 67
Calculer la vitesse V de la fusée à l’instant t = 80s, par la méthode des rectangles, des
Trapèzes puis par celle de Simpson.
On choisit les pas h = π5 puis h = 10π
.
Calculer à l’aide de la méthode des rectangles, des Trapèzes et de Simpson, l’intégrale
Z π
I= sin( x2 )dx
0
3.3. TRAVAUX DIRIGÉS (CORRECTION EN CLASSE) 31
2) Montrer que
M2
max a2 , 1 − a2 ,
a) max |E( x)| ≤ 2
−1≤ x≤1
R 1/2 1/2
4a2
b) 1
−1 (E( x))2 dx ≤ M2
2
2
5 − 3 + 2a4 ,
3
R1 M2 2 8a
c) −1 |E( x)| dx ≤ 2 3 − 2a2 + 3 .
3) Dans chacun de ces trois cas déterminer a tel que le majorant de l’erreur soit mini-
mal. Préciser le majorant.
où M est une constante que l’on déterminera. (On pourra montrer que
1 3 2h 1 3 2h
( f (s) − f (0) − f ( ) = [ f (s) − f (0)] + f (s) − f ( ) ).
4 4 3 4 4 3
32 CHAPITRE 3. INTÉGRATION NUMÉRIQUE
Chapitre 4
Equations différentielles
Objectifs Pédagogiques
33
34 CHAPITRE 4. EQUATIONS DIFFÉRENTIELLES
Une équation différentielle peut avoir plusieurs solutions. Pour préciser, on introduit
des conditions particulières. Il est évident que pour une équation d’ordre p, p condi-
tions sont nécessaires pour fixer la solution.
4.3. PROBLÈME D’EXISTENCE ET D’UNICITÉ 35
y( a) = η0
y0 ( a) = η
1
.
( p−1)
y ( a ) = η p−1
y0 (t) = f (t, y)
y( a) = η (η constante donnée),
car on peut montrer que les équations d’ordre supérieur se ramènent à un système
d’équations différentielles d’ordre 1 en posant :
z1 (t) = y0 (t), z2 (t) = z01 (t) = y00 ( x)..., etc.
y(t0 ) = y0
Pour formuler le problème de façon précise, nous allons faire des hypothèses sur f (t, y).
Hypothèse 1 : La fonction f (t, y) est à valeurs réelles et elle est continue sur un do-
maine D du plan (t, y) défini par
t0 − α < t < t0 + α, y0 − β < y < y0 + β où α et β sont positifs.
Cette hypothèse montre que f (t, y) est continue sur D donc f (t, y) est borné dansD,
β
c’est - à - dire : ∃ M ∈ R tel que sup | f (t, y| = M. On peut poser h = min α, M .
(t,y)∈ D
Hypothèse 2 : f (t, y) satisfait à la condition de Lipschitz relativement à y dans D c’est -
à - dire ∃ L ∈ R+ telle que : | f (t, y1 ) − f (t, y2 )| ≤ L | y1 − y2 | , ∀(t, y1 ) et (t, y2 ) ∈ D.
On va définir une suite yn (t) qui converge uniformément vers la solution y(t) sur |t − t0 | ≤
h, soit la suite définie de la façon suivante sur |t − t0 | ≤ h :
y0 (t) = y0 , y1 (t) = y0 + tt0 f ( x, y0 ( x))dx, ...,
R
[Piano]
La suite { yn (t)} converge uniformément sur le segment |t − t0 | ≤ h vers y(t) vérifiant :
y(t0 ) = y0
36 CHAPITRE 4. EQUATIONS DIFFÉRENTIELLES
Soit à résoudre
y0 (t) = f (t, y(t)),
t∈ [ a, b]
y(t0 ) = y0
y0 = y(t0 ) = y( a)
y0 = t0 = a
n = nombre de pas
h = b− a
n
Pour k de 1 à n Faire
yk = y k − 1 + h ∗ f ( t k − 1 , y k − 1 )
tk = t k − 1 + h
Fin Pour
2 6 1 9 −3t
yexacte (t) = − cos(t) + sin(t) + e−t + e .
5 5 2 10
38 CHAPITRE 4. EQUATIONS DIFFÉRENTIELLES
Nous dirons que la méthode (4) est consistante avec l’équation différentielle si :
max |[ y(tn+1 ) − y(tn )] − Φ(tn , y(tn ), h)| → 0, quand h → 0 ,
n = 0, ..., N − 1, pour toute solution continue sur [ a, b] de l’équation différentielle. Donc on
voit que la méthode approche la solution dans un certain sens, la définition suivante concerne
la propriété de continuité uniforme en h de l’application qui aux données fait correspondre la
solution du schéma.
Soient { yn } et { zn } les solutions respectives des systèmes suivants :
yn+1 = yn + hΦ(tn , yn , h)
y0 fixé quelconque dans R
zn+1 = zn + h [ Φ ( tn , yn , h ) + εn ]
z0 fixé quelconque dans R
Nous dirons que la méthode (4) est stable s’il existe deux constantes M1 et M2 indépendantes
de h telles que
max | yn − zn | ≤ M1 | y0 − z0 | + M2 max |εn | .
n=0,...,N n=0,...,N
Cette notion de stabilité signifie qu’une petite perturbation sur les données n’entraîne qu’une
petite perturbation sur la solution du schéma et ceci indépendamment de h.
4.5. LES SCHÉMAS À UN PAS 39
Remarquons que la stabilité est une propriété intrinsèque du schéma de résolution numérique.
Si Φ(t, y, h) vérifie
• Φ(t, y, 0) = f (t, y) ∀t ∈ [ a, b]
• |Φ(t, y, h) − Φ( x, y∗ , h)| ≤ L | y − y∗ |
Alors la méthode est convergente.
y(t + h) − y(t) h
= y0 (t) + y00 + o(h2 ) = 4(t, y(t), h).
h 2
Mais
∂y0
y0 = f (t, y), y00 = = f x0 + f y0 f ,
∂t
h h
4(t, y, h) = f (t, y) + f t0 + f y0 f + o(h2 ).
2 2
On aura donc un schéma d’ordre 2 et en choisissant comme fonction d’accroissement :
h 0 h
Φ(t, y, h) = f (t, y) + f t (t, y) + f y0 (t, y) f (t, y),
2 2
on peut montrer que ce schéma est stable et consistant. La complexité des expressions analy-
tiques des dérivées augmentent, cette méthode est donc en général à éviter sauf dans des cas
simples (équations linéaires). On est donc amenée à rechercher un schéma d’ordre p qui ne
nécessite pas le calcul des dérivées de f .
D’autre part :
h 0 h
4(t, y, h) = f (t, y) + f t (t, y) + f y0 (t, y) f (t, y) + o(h2 ),
2 2
pour
que le schéma soit d’ordre 2, il faut que :
a1 + a2 = 1
a2 p1 = 21
a2 = α,
a1 = 1 − α,
1
d’où p1 = 2α ,
1
p = 2α ,
2
a2 p2 = 21 .
On a donc le schéma général de Runge - Kutta d’ordre 2
h h
yn+1 = yn + h (1 − α ) f ( xn , yn ) + α f ( xn + , yn + f ( xn , yn ) .
2α 2α
Cette méthode est consistante et stable. Elle est actuellement universellement utilisée et donne
d’excellents résultats.
Cas particuliers
4.5. LES SCHÉMAS À UN PAS 41
La méthode d’Euler n’est qu’un exemple de méthodes plus générales de résolution, les mé-
thodes dites de Runge - Kutta. Elles consistent à écrire une solution approchée y où inter-
viennent uniquement des évaluations de la fonction f (et pas de ses dérivées !) de manière à
ce que ce que cette solution algébrique conduise à une erreur du même ordre que celle du dé-
veloppement en série de Taylor.
Chaque méthode de Runge - Kutta consiste à écrire y(t + 1), solution approchée du problème
de Cauchy, sous la forme d’une combinaison linéaire de y(t) et de valeurs de la fonction f
de telle manière que le développement en série de Taylor de cette combinaison linéaire algé-
brique soit égal au développement de Taylor de y(t + 1) jusqu’à un ordre fixé.
Algorithme 4.2 :
y0 = y(t0 ) = y( a)
y0 = t0 = a
n = nombre de pas
h = b− a
n
Pour k de 1 à n Faire
k1 = f ( tk−1 , yk−1 )
k2 = f (tk−1 + 12 h, yk−1 + 2h k1 )
yk = yk−1 + 2h (k1 + k2 )
tk = tk−1 + h
Fin Pour
y(0) = 1.
2 6 1 9 −3t
yexacte (t) = − cos(t) + sin(t) + e−t + e .
5 5 2 10
y0 = y(t0 ) = y( a)
y0 = t0 = a
n = nombre de pas
h = b− a
n
Pour k de 1 à Faire
k1 = f ( tk−1 , yk−1 )
k2 = f (tk−1 + 12 h, yk−1 + 2h k1 )
k3 = f (tk−1 + 12 h, yk−1 + 2h k2 )
k4 = f (tk−1 + h, yk−1 + hk1 )
yk = yk−1 + 6h (k1 + 2k2 + 2k3 + k4 )
tk = tk−1 + h
Fin Pour
4.5. LES SCHÉMAS À UN PAS 43
y(0) = 1.
C’est une équation différentielle d’ordre 1, sa solution exacte est
2 6 1 9 −3t
yexacte (t) = − cos(t) + sin(t) + e−t + e .
5 5 2 10
Choisissons h = 0, 1 et déterminons les valeurs approchées yi par la méthode de Runge Kutta
d’ordre 4 et l’erreur associée ei
y0 = 1
yi+1 = yi + 6h (k1 + 2k2 + 2k3 + k4 ), 0 ≤ i ≤ n − 1
avec
k = f ( t , y ),
1 i i
k2 = f (ti + 2h , yi + 2h k1 ),
k3 = f (ti + 2h , yi + 2h k2 )
et
k4 = f (ti + h, yi + hk3 )
Les définitions de consistance, stabilité, convergence et ordre de la méthode sont encore va-
lables ici, à condition de remplacer la valeur absolue par une norme de Rn .
Par analogie, au cas d’une seule équation, nous avons la méthode de Runge - Kutta d’ordre 4 :
−
→ − 1 h−
→ −
→ −→ − →i
Φ (t, →
y , h) = k 1 + 2 k2 + 2 k3 + k4
6
avec
−
→ −
→ →
k1 = F (t, −
y ),
−
→ −
→ h → h− →
k2 = F (t + , − y + k1 ),
2 2
−
→ −
→ h → h− →
k3 = F (t + , − y + k2 ),
2 2
−
→ −
→ −→
et k4 = F (t + h, − →
y + h k3 ).
4.6. TRAVAUX DIRIGÉS (CORRECTION EN CLASSE) 45
1) Écrire cette équation différentielle sous forme d’un système différentiel de deux
équations différentielles d’ordre 1.
2) Appliquer la méthode de Runge - Kutta d’ordre 2 à ce système.
Chapitre 5
Objectifs Pédagogiques
+ Appliquer les concepts fondamentaux à des situations diverses liées à des systèmes
linéaires ;
+ Savoir programmer les méthodes numériques et savoir les comparer, avec le logiciel
Matlab.
47
48 CHAPITRE 5. RÉSOLUTION NUMÉRIQUE DES SYSTÈMES LINÉAIRES
Première partie
Méthodes Directes
49
5.1. EXEMPLE DE MOTIVATION 51
Une entreprise dispose d’un stock de matières qu’elle veut utiliser pour une compagne pu-
blicitaire promotionnelle.
Elle prépare pour cela divers lots promotionnels Mi , (i = 1, ..., 5). Voici en milliers d’exem-
plaires, le stock
Matières M1 M2 M3 M4 M5
Nombre en milliers 12 20 32 45 36
Les colis sont de cinq sortes et contiendront en plus des cadeaux optionnels
M1 M2 M3 M4 M5
Colis n◦ 1 2 1 0 1 2
Colis n◦ 2 1 1 1 1 0
Colis n◦ 3 0 2 1 1 0
Colis n◦ 4 3 1 3 1 3
Colis n◦ 5 1 0 1 1 4
Cette entreprise désire déterminer le nombre de lots de chaque sorte pour absorber l’en-
semble du stock.
Désignons par xi le nombre de milliers de lots n◦ i, (i = 1, ..., 5).
Il faut alors résoudre le système linéaire Ax = b :
2x1 + x2 + 3x4 + x5 = 12
x1 + x2 + 2x3 + x4 = 20
x2 + x3 + 3x4 + x5 = 32
x1 + x2 + x3 + x4 + x5 = 45
2x1 + 3x4 + 4x5 = 36
2 1 0 1 2 x1 12
x2 20
1 1 1 1 0
x3 = 32
0 2 1 1 0
3 1 3 1 3 x4 45
1 0 1 1 4 x5 36
u( xi + h) − 2u( xi ) + u( xi − h) 00 h2 (4)
= u ( x i ) + u (ζ ).
h2 24
On pose αi = 2
+ ci , i = 1, ..., N, β = −1 et
h2 h2
α1 β 0 . . . 0
β α2 β . . . 0
f 1 + Kh21
u1
.
0 β . . . . .
.
Uh =
. , Bh =
et Ah = . . . . . . .
.
. . . . . . .
uN f N + Kh22
. . . . β α β
0 . . . 0 β αN
Ah Uh = Bh .
5.2 Introduction
Contrairement à ce qu’une analyse sommaire pourrait laisser supposer, la solution d’un sys-
tème linéaire Ax = b ne s’obtient pas en calculant A−1 . Il ne faut pas utiliser cette méthode
car le temps et les erreurs de calcul augmentent. La résolution des systèmes linéaires se par-
tagent en deux grandes familles : les méthodes directes et les méthodes indirectes. Les mé-
thodes directes, d’inspiration algébrique, ont pour objectifs de fournir au bout d’un nombre
5.3. MÉTHODE DE GAUSS 53
a x = b1
11 1
a22 x2 = b2
(D)
..
ann xn = bn
a x + a12 x2 + ...+ a1n xn = b1
11 1
a22 x2 + ...+ a2n xn = b2
(T )
...
ann xn = bn
(La matrice T est inversible si et seulement si les éléments de la diagonale sont non nuls.)
La nième équation dépend uniquement de l’inconnu xn , on a donc :
bn
ann xn = bn , soit xn = .
ann
La (n − 1)ième équation
an−1n−1 xn−1 + an−1n xn = bn−1
dépend uniquement de xn et xn−1 , or, xn est connu, d’où
1
xn−1 = (bn−1 − an−1n xn ).
an−1n−1
xn , xn−1 , · · · , xk+1
1) Tous les coefficients akk sont supposés non nuls, sinon la matric A n’est pas inversible et le
système linéaire Ax = b n’as pas une solution unique.
2) Les matrices triangulaires sont essentielles pour la résolution des systèmes linéaires.
5.3. MÉTHODE DE GAUSS 55
ou Ax = b
au système équivalent (même solution) de forme triangulaire simple à résoudre :
c x + c12 x2 + .... + c1n xn = d1
11 1
c22 x2 + ... + c2n xn = d2
(2)
...
cnn xn = dn
ou Cx = d
La seconde phase consiste alors à résoudre le système (2) obtenu. Nous décrirons l’algorithme
complet avec un langage proche de celui de la programmation. Ainsi nous n’utiliserons qu’un
” tableau ” A éléments ai j ) et un vecteur b éléments bi ) qui seront initialisés avec la matrice
et le second membre du système (1). Ils seront ensuite transformés au cours des différentes
étapes de la première phase. A la fin de cette phase les valeurs ci j et di de (2) apparaîtront en
position ai j ( j ≥ i ) et bi .
L’élément a11 s’appelle le pivot. Si a11 = 0, on cherche un coefficient non nul ai1 , i = 2, · · · , n,
(un tel coefficient existe, sinon la matrice est non inversible) et on permute la ligne i avec la
première ligne pour que le nouveau pivot qui est le coefficient à la position 1, 1 soit non nul.
56
L’étape k de la résolution consiste à éliminer l’inconnu xk de toutes les équations sauf les k-
(k)
premières. De la même manière que la première étape, si le pivot akk 6= 0, on fait les mêmes
transformations et au bout de (n − 1) étapes, on obtient un système triangulaire.
est naturellement résolu par remontée : on tire xn de l’équation n . D’où l’on déduit xn−1 de
l’équation (n − 1) et de manière générale xk est calculée à partir de l’équation k en utilisant les
valeurs déjà obtenues pour xk+1 , xk+2 , ..., xn .
1) Le symbole i = 1 à m signifie qu’il faut effectuer l’ensemble des instructions sous le signe
[ pour i = 1, 2, ...jusqu’ à i = m. Le symbole i = m à 1 s’interprète de la même manière mais
avec un pas de −1.
Si à l’étape k akk est nul l’algorithme ne peut être poursuivi de la même façon. Dans une telle
situation on cherche une ligne (parmi celles de numéro k + 1, ..., n) dont le coefficient aik soit
acceptable. La ligne choisie servira alors de ligne pivot pour l’élimination de xk .
5.3. MÉTHODE DE GAUSS 57
Pratiquement cela revient à changer la ligne choisie et la ligne k. Ensuite l’algorithme peut être
poursuivi comme prévu. Le choix de pivot doit être introduit en début de boucle k dans le
programme (4). La ligne choisie peut résulter de critères divers ; un exemple de choix est ce-
lui du pivot maximal (on choisit la ligne i qui a un coefficient | aik | le plus grand). Sans préciser
le critère de choix le programme (4) est complété comme suit :
l = (ligne choisie)
j = k à n : t = ak j ak j = al j al j = t
t = bk bk = bl bl = t
k = 1 à n−1
i = k+1àn
.
comme en (4)
.
Matrice symétrique
Lorsque A est symétrique (ai j = a ji ) alors à chaque étape k la matrice d’ordre n − k + 1 est sy-
métrique ; la démonstration se fait par récurrence et on utilise la formule (5). Le coût est réduit
3
de moitié, il est équivalent pour n assez grand à n6 .
58
Si la matrice A est de plus définie positive (x 6= 0 ⇒t xAx > 0) on peut montrer que tous les
pivots seront strictement positifs.
Une condition nécessaire et suffisante pour qu’une matrice réelle A soit symétrique et définie
positive est qu’il existe une matrice régulière triangulaire L vérifiant A = L ×t L.
Preuve :
a) condition suffisante :
t t
existe L : A = L × L2 ⇒ A = A et
Il
( Ax, x) = k Lxk > 0∀ x 6= 0
( Ax, x) = 0 ⇒ k Lxk = 0 ⇒ x = 0.
b) Condition nécessaire : on procède par récurrence. La propriété étant vraie pour n = 1 (ma-
trice scalaire) supposons la propreté vraie pour les matrices d’ordre (n − 1). Soit donc une
matrice A symétrique et définie positive de dimension n. Cette matrice peut se mettre sous
la forme
B l
A= tl λ
! 12
j−1
ljj = ajj − ∑ l 2jk
k=1
j−1
" #
1
li j = a − ∑ lik l jk j>1
lii i j k=1
5.4. MÉTHODE DE CHOLESKI 59
Lz = b
z1 = lb1
11
" #
j−1
1
zj = ljj b j − ∑ l jk zk 2≤ j≤n
k=1
zn
xn = lnn et
" #
n
1
xj = ljj z j − ∑ l jk xk 1 ≤ j ≤ n − 1.
j+1
2 −1 0
Soit la matrice A définie par : A = −1 2 − 1 ˙
0 −1 2
Montrons que cette matrice est symétrique et définie strictement positive.
On a : t A = A, donc A es symétrique. pour u tel que u ∈ R
De plus,
3
2 −1 0 x
t uAu = ( x, y, z ) −1 2 −1 y =
0 −1 2 z
2x2 − 2xy + 2y2 − 2yz + 2z2 = x2 + ( x − y)2 + ( y − z)2 + z2 .
Méthodes Indirectes
61
5.5. PRINCIPE DES MÉTHODES INDIRECTES 63
X (k+1) = BX k + C
X 0 arbitraire
Ax = b ⇐⇒ ( M − N ) = b
⇐⇒ Mx = Nx + b
−1 −1
⇐⇒ x = |M{z N} x + |M{z b}.
B C
alors x = Bx + C
On notera que :
I − B = I − M−1 N = I − M−1 ( M − A) = M−1 A est inversible.
Ax = b ⇐⇒ Dx = ( E + F ) x + b
⇐⇒ x = D−1 ( E + F ) x + D−1 b
64
xk+1 = D −1 ( E + F ) xk + D −1 b
Soit
ai j k b
xik+1 = − ∑ x j + i , ∀i = 1, ..., n
a
j6=i ii
aii
5.6. LES TECHNIQUES ITÉRATIVES CLASSIQUES 65
Test d’arrêt :
Il faut arrêter l’algorithme dés que :
k+1 k
xk+1 − xk
xi − xi < 1 ou k+1 < 2
i i
xi
pour i = 1, ..., n et k = 1, ..., kmax.
La méthode de Jacobi utilise (n2 + 3n) pour nombres de place mémoire.
Ax = b ⇐⇒ ( D − E) x = Fx + b
⇐⇒ x = ( D − E)−1 F x + ( D − E)−1 b
| {z } | {z }
B C
d’où :
xk+1 = ( D − E)−1 Fxk + ( D − E)−1 b,
en explicitant , on obtient :
i −1 n
1 1 bi
xik+1 = − ∑ ai j xkj +1 − a ∑ ai j xkj + ,1 ≤ i ≤ n
aii j=1 ii j =i + 1
aii
Ax = b ⇐⇒ ( D − E − F ) x = b
⇐⇒ ( M − N ) x = b
où :
1
M= ( D − ωE)
ω
et
1
N= ( D − ωE) − D + E + F
ω
1
= [(1 − ω) D + ωF ]
ω
66
x = M−1 Nx + M−1 b ⇐⇒
x = ( D − ωE)−1 (1 − ω) D + ωF ) x + ω( D − ωE)−1 b
⇐⇒ x = Lω x + c
Alors
xk+1 = ( D − ωE)−1 (1 − ω) D + ωF ) xk + ω( D − ωE)−1 b
i −1 n
1 1 bi
xeik+1 = − ∑ ai j xkj +1 − ∑ ai j xkj + ,1 ≤ i ≤ n
aii j=1 aii j=i +1 aii
2 −1 0 x 6
avec A = −1 2 −1 , X = y et b = −10 .
0 −1 2 z 10
2
On peut montrer que la solution exacte est X = −1 .
4
Appliquons la méthode de Jacobi, de Gauss-Seidel et de relaxation pour dix itérations.
— Méthode de Jacobi
5.6. LES TECHNIQUES ITÉRATIVES CLASSIQUES 67
On a
:
2 −1 0
A = −1 2 −1 = D − E − F,
0 −1 2
2 0 0 0 1 0 0 0 0
avec D = 0 2 0 , E = 1 0 0 , et F = 0 0 1 ;
0 0 2 0 1 0 0 0 0
De même
:
4, 5 0 3, 25
x2 = −6 , x3 = 0, 5 x4 = −4 ,
6, 5 2 4, 75
1 2, 125
x5 = −1 , ..., et x10 = −2, 25 .
3 4, 125
— Méthode de Gauss-Seidel
On résout ( D − E) xk+1 = Fxk+ b,
6
d’où, en choisissant x0 = b = −10
10
Ce qui
donne :
−2 2, 5 2, 002
x1 = −1 , x2 = −1, 5 , ... et x10 = −1, 998 .
4, 5 4, 25 4, 001
et
10x1 + 7x2 + 8x3 + 7x4 = 4
7x1 + 5x2 + 6x3 + 5x4 = 3
( S2 )
8x 1 + 6x2 + 10x3 + 9x4 = 3
7x1 + 5x2 + 9x3 + 10x4 = 1
xi −1 − 12 1
2 1
3
yi 2 − 32 0 0
a) Résoudre par la méthode de Choleski, la solution du système linéaire Au = b.
b) Vérifier que la solution obtenue correspond bien à un minimum.