Vous êtes sur la page 1sur 36

Cours de Licence

Méthodes numériques

> Cours par Han Zhao >


mis sous LATEX par

> Loı̈c Andolfatto & Luc Laurent >

version du 2 décembre 2006


Avertissement

Ce document n’est certainement pas encore parfait, et comporte sans aucun


doute quelques erreurs. Si vous en découvrez, nous vous remercions de bien vouloir
nous en faire part par e-mail :
– andolfatto@crans.org
– luclaurent@crans.org
Bonne lecture et bonnes révisions.

Loı̈c & Luc

i
Table des matières

1 Résolution de systèmes d’équations linéaires 1

1.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1

1.1.1 Problème de structure en statique . . . . . . . . . . . . . . . . . . . . . 1

1.1.2 Equilibre au noeud . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1

1.2 Méthodes directes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2

1.2.1 Formule de Cramer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2

1.2.2 Elimination (ou pivot) de Gauss . . . . . . . . . . . . . . . . . . . . . . 2

1.3 Décomposition LU ou Cholesky . . . . . . . . . . . . . . . . . . . . . . . . . . . 3

1.3.1 Principe de la décomposition LU . . . . . . . . . . . . . . . . . . . . . . 3

1.3.2 Principe de la décomposition ”Cholesky” . . . . . . . . . . . . . . . . . . 4

1.3.3 Conditionnement d’une matrice . . . . . . . . . . . . . . . . . . . . . . . 5

1.4 Méthodes itératives . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5

1.4.1 Définition d’un schéma itératif . . . . . . . . . . . . . . . . . . . . . . . 5

1.4.2 Motivations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5

1.4.3 Construire un schéma itératif . . . . . . . . . . . . . . . . . . . . . . . . 6

1.4.4 Convergence . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7

2 Calcul des valeurs propres et des vecteurs propres 10

2.1 Motivations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10

2.2 Méthode des puissances . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11

2.2.1 Méthode de puissance simple . . . . . . . . . . . . . . . . . . . . . . . . 11

2.2.2 Méthode de puissance inverse . . . . . . . . . . . . . . . . . . . . . . . . 12

2.2.3 Méthode de puissance inverse avec décalage . . . . . . . . . . . . . . . . 12

ii
TABLE DES MATIÈRES iii

2.3 Méthodes par transformations orthogonales . . . . . . . . . . . . . . . . . . . . 13

2.3.1 Définition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13

2.3.2 Méthode Jacobi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13

2.3.3 Méthode QR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16

2.4 Remarque sur les schémas itératifs . . . . . . . . . . . . . . . . . . . . . . . . . 17

3 Discrétisation 18

3.1 Préambule . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18

3.1.1 Equation de la Mécanique des Milieux Continus . . . . . . . . . . . . . 18

3.1.2 Principe des puissances virtuelles . . . . . . . . . . . . . . . . . . . . . . 18

3.1.3 Transformation d’un problème continu en problème discret . . . . . . . 19

3.2 Interpolation de Lagrange . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20

3.2.1 Polynôme d’interpolation . . . . . . . . . . . . . . . . . . . . . . . . . . 20

3.2.2 Erreur d’interpolation . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20

3.3 Interpolation de Hermite . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21

3.3.1 Motivation d’une telle interpolation . . . . . . . . . . . . . . . . . . . . 21

3.3.2 Expression du polynôme d’interpolation d’Hermite . . . . . . . . . . . . 21

3.4 Approximation diffuse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22

3.4.1 Motivations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22

3.5 Intégration numérique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22

3.5.1 Formule issue de l’interpolation de Lagrange . . . . . . . . . . . . . . . 22

3.5.2 Formule de Newton-Cotes . . . . . . . . . . . . . . . . . . . . . . . . . . 23

3.5.3 Formule de Gauss . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24

4 Résolution d’équations différentielles ordinaires 26

4.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26

4.2 Définition du problème d’évolution de Cauchy . . . . . . . . . . . . . . . . . . . 26

4.3 Méthodes de résolution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27

4.3.1 Méthode de base . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27

4.3.2 Méthode à pas multiple : formule de dérivée à 3 points . . . . . . . . . . 28


TABLE DES MATIÈRES iv

4.3.3 Schéma d’ordre supérieur, Runge - Kutta . . . . . . . . . . . . . . . . . 29

4.3.4 Stabilité du schéma itératif . . . . . . . . . . . . . . . . . . . . . . . . . 30

4.3.5 Convergence . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
Chapitre 1

Résolution de systèmes d’équations


linéaires

1.1 Introduction
1.1.1 Problème de structure en statique
Le problème considéré est un pont en construction métalique (treillis plan). On travaille
pour une barre quelconque kl :

(ul − uk ) · ekl
σkl = E · kl = E ·
lkl
Nkl = σkl · Skl
Avec :
– Nkl = la tension dans la barre
– Skl = la surface de la barre

1.1.2 Equilibre au noeud


On écrit l’équilibre du noeud k :
nk
X
Nkl · ekl + Fk = 0
l=1

1
1.2 Méthodes directes 2

Soit en fait :
nk
X (ul − uk ) · ekl
[E · Skl · ] · ekl + Fk = 0
lkl
l=1

Ceci se traduit par une équation matricielle de la forme :


    
? ? ? ? ? ? u1x 0
  u1y  −F 
? ? ? ? ? ?    

? ? ? ? ? ? u2x   0 
   
 =  ⇐⇒ K · u = F
 

? ? ? ? ? ?  u..   0 
    
? ? ? ? ? ?  u..   0 
? ? ? ? ? ? uny 0

Remarque : Cette méthode est systématique :


– Elle ne nécessite que l’inversion d’une matrice ( généralement de très grande taille).
– Le changement de chargement ne nécessite pas de recalculer tout le problème, il suffit
simplement de faire le produit matriciel K −1 · F = u

1.2 Méthodes directes


1.2.1 Formule de Cramer
Le système A · x = b peut se résoudre par les formules de Cramer :

Det(b, A2 , ..., An )


 x1 =


 Det(A)
...
Det(A1 , ...An−1 , b)


 xn =


Det(A)
Nombre de calculs effectués :
– Det(A) → n! opérations
– résolution du système de Cramer → (n + 1) · n! = (n + 1)! opérations

1.2.2 Elimination (ou pivot) de Gauss


1. Transformer l’équation A · x = b en A
e · x = eb avec A triangulaire
2. Résoudre le système triangulaire
Opérations à effectuer :

 (2) (1)
 aij = aij , j ∈ {1, ..., n}

(1)
(2) (1) (1) ai1 2
 aij = aij − a1j · (1) , (i, j) ∈ {2, ..., n}

a11
1.3 Décomposition LU ou Cholesky 3

 (2) (1)
 b1 = b1

(1)
(2) (1) (1) ai1
 bi = bi − b1 ·

(1)
a11
Nombre de calculs effectués :(n − 1)[3 + 2 · (n − 1)] = (2n + 1)(n − 1)

Et ainsi de suite :

(k+1) (k)


 aij = aij , i ≤ k, j ∈ {1, ..., n}
 (k)
 a(k+1) = a(k) − a(k) · aik , i ≥ k + 1, j ≥ k + 1



ij ij kj (k)
akk
(k)

(k) aik


 (k+1) (k)
 bi


 = bi − bk · (k) , i ≥ k + 1
akk

Nombre de calculs total effectués lors du pivot :


n
X 2 1 7 2
(n − k)[3 + 2 · (n − k)] = n3 + n2 − →∼n→∞ n3
3 2 6 3
k=1

e · x = eb
On obtient alors le système triangulaire : A
C’est à dire :

0 0 0
 a11 x1 + ... + a1n xn = b1

...
 a0 x = b0

nn n n

D’où finallement :

b0n


 xn =
a0nn



 n
X
 b0i − a0ij xj

 j=i+1
 xi =


a0ii
Cela donne n2 opérations, donc peu de chose devant 32 n3 lorsque n est grand.

1.3 Décomposition LU ou Cholesky


1.3.1 Principe de la décomposition LU
On décompose la matrice A de la manière suivante :

A=L·U

Avec :
1.3 Décomposition LU ou Cholesky 4

 
l11 0 ... 0 0
l
 12 ? 0 ... 0 

– L =  ... ... ? 0 0 
 
 
 ... ... ... ? 0 
l1n ... ... ... lnn
 
u11 ... ... ... u1n
 0 ? ... ... u2n 
 
– U= 0 0 ? ... 
 
 
 0 ... ... ? ... 
0 0 ... 0 unn
On obtient alors les équivalences suivantes :
(
Ly = b
A x = b ⇐⇒ L U x = b ⇐⇒
Ux=y

Remarque : Le changement de chargement n’impose pas de refaire la factorisation, on gagne


beaucoup de temps par rapport au pivot de Gauss.

Remarque : 1. A = L · U n’admet pas qu’une solution


2. Pour résoudre les deux équations ci-dessus, on utilise la même méthode qu’avec le pivot
de Gauss (parfois appelée algorithme de remontée)

1.3.2 Principe de la décomposition ”Cholesky”


On décompose la matrice A de la manière suivante :

A = L · LT

Pour que la matrice L existe, il faut que A soit :

1. une matrice symétrique (on s’arrange pour que se soit le cas lors de la mise en équation)
2. une matrice définie positive
On a alors les relations suivantes :
 v


u
u i−1
X

l = ta − 2
lik
 ii ii


k=1
i−1

 X 1
l = a − ( lik ljk ) ·

 ji ji


lii
k=1

Le calcul des termes de L se fait colonne par colonne, de haut en bas. Le nombre d’opérations
3 2
est de n3 + n2 + n6 soit environ la moitié du nombre d’operations à effectuer par la méthode
de Gauss.
1.4 Méthodes itératives 5

1.3.3 Conditionnement d’une matrice


Pour exemple, voir le TD n˚2 qui traite de ce sujet.

Définition 1.3.1 Norme d’une matrice :

1. ∀A ∈ Mn (R), kAk ≥ 0

2. ∀A ∈ Mn (R), kAk = 0 ⇒ A = 0

3. ∀A ∈ Mn (R), kλAk = |λ|kAk

4. ∀(A, B) ∈ (Mn (R))2 , kA + Bk ≤ kAk + kBk

Définition 1.3.2 On définit le conditionnement d’une matrice A comme :

Cond∞ (A) = kAk · kA−1 k

1.4 Méthodes itératives


1.4.1 Définition d’un schéma itératif
(
x0
A·x=b
x(n+1) = B · x(n) + β

Sur ce principe, on espère : lim x(n+1) = A−1 · b


n→∞

Exemple :
3x = 5
Arbitrairement, on utilise l’équation : 2x = −x + 5 ⇒ x(n+1) = − 12 x(n) + 5
2
Par cette méthode on trouve :
– x(0) = 0
– x(1) = 52
– x(2) = 54
– etc...
– x(4) = 25
16 cette méthode converge bien...

1.4.2 Motivations
1. économie de mémoire : on ne remplit pas une matrice initialement creuse comme dans
une méthode directe.
2. vitesse de calcul importante : x(n+1) = (..) · x(n) + β. Soit une itération représente environ
2n2 opérations. Si n = 106 , il suffit que le nombre d’itérations effectuées soit ≤ 105 pour
gagner du temps, car avec la méthode directe, il faut 23 n3 calculs.
1.4 Méthodes itératives 6

1.4.3 Construire un schéma itératif


On décompose le problème : A · x = b → (M − N ) · x = b Ce qui revient finalement à :

M ·x=N ·x+b

On utilise ensuite le schéma itératif suivant, qui fonctionne généralement bien :

x(n+1) = M −1 · N · x(n) + M −1 · b

Exemple : Méthode de Jacobi

..
 
. −U
 
A= D  → M = D et N = L + U
 
..
−L .

x(n+1) = D−1 · (L + U ) · x(n) + D−1 · b


Soit finalement :
(n+1) 1 X (n)
xi = (bi − aij · xj )
aii
j6=i

Exemple : Méthode de Gauss-Seidel

M =D−L

N =U
(D − L) · x(n+1) = U · x(n) + b
i−1 n
(n+1) 1 X (n+1)
X (n)
xi = (bi − aij · xj − aij · xj )
aii
j=1 j=i+1

La résolution de ce système est triangulaire.

Exemple : Méthode de relaxation


Cette méthode est en fait la généralisation de la méthode de Gauss-Seidel
D
M= −L
ω
1−ω
N =U+ D
ω
i−1 n
(n+1) ω X (n+1)
X (n) (n)
xi = (bi − aij · xj − aij · xj ) + (1 − ω)xi
aii
j=1 j=i+1
1.4 Méthodes itératives 7

1.4.4 Convergence
(
x(n+1) = B · x(n) + β
lim xn = x∗
n→∞

On a x∗
qui désigne la solution du problème. On obtient le critère de convergence suivant :
lim x − x∗ = 0.
(n)
n→∞
Ceci implique que :
x∗ = B · x∗ + β

x(n) − x∗ = B n · (x(0) − x∗ )
D’où, pour assurer la convergence :

lim B n = 0
n→∞

Théorème 1.4.1 Théorème de convergence

lim B n = 0 ⇐⇒ ρ(B) < 1


n→∞

Avec ρ(B) = sup|λk |, λk désignant les valeurs propres de B.

Remarque : D’après ce théorème, on peut détérminer une condition nécessaire et une condi-
tion suffisante à la convergence :
– kBk < 1 ⇒ ρ(B) ≤ kBk
B · xk = λxk avec xk vecteur propre de B. C’est une condition suffisante de convergence
du schéma.
– ρ(B) < 1 ⇒ |det(B)| < 1
C’est une condition nécessaire de convergence.

Remarque : 1. ρ(B) ≤ ||B||


B · xk = λk xk si xk est vecteur propre.
d’où
||B · xk || = ||λk xk ||

or,
|λk | · ||xk || = ||B · xk || ≤ ||B|| · ||xk ||

Ce qui donne finallement, |λk | ≤ ||B|| (soit sup |λk | ≤ ||B||)


k
(||B|| ≤ 1 est une condition suffisante de convergence du schéma x(n+1) = Bx(n) + β)
1.4 Méthodes itératives 8

2. ρ(B) < 1 implique |det(B)| < 1


n
Y n
Y
En effet, det(B) = λk d’où |det(B)| = | λk |
k=1 k=1
enfin, si sup |λk | < 1 alors |det(B)| < 1
k

(|det(B)| < 1 est une condition nécessaire de convergence du schéma x(n+1) = Bx(n) +β)

3. Si ρ(B1 ) < ρ(B2 ) alors le schéma x(n+1) = Bx(n) + β converge plus vite que le schéma
x(n+1) = Bx(n) + β
De plus, on peut montrer que ρ(BGS ) = ρ(BJacobi )2 (GS=Gauss-Seidel).

Exemple : Matrice à diagonale dominante


B Jacobi = D−1 (L + U )
   
1/a11 0 0 0 0 0 0 −a12 −a13 · · −a1n
 0
 1/a22 0 0 0 0   −a21
  0 −a23 · · 0  
 0 0 1/a33 0 0 0   −a31 −a32
  · · · · 
B Jacobi =  ·
 
· 0 · · · · · · 

 0 0 0 0  
   
 0 0 0 0 · 0   · · · · · · 
0 0 0 0 0 1/ann −an1 · · · · 0
 −a12 −a13 −a1n 
0 · ·
 a11 a11 a11 
 −a21 −a23 

 a22 0 · · 0 
 −a a33 
 31 −a32

d’où B Jacobi =  · · · · 
 a33 a33


 · · · · · · 
 
 · · · · · · 
 
 −a 
n1
· · · · 0
ann
On calcule la norme infinie de B :
n P
i6=j |aij |
X
||B||∞ = max |aij | = sup <1
1≤i≤n i |aii |
j=1

Exemple : condition nécessaire de convergence pour la méthode de relaxation

On a Mω = ω1 D − L et Nω = 1−ω
ω D + U d’où Bω = Mω −1 Nω
Si le schéma converge alors
n
Y 1−ω
| aii |
|det(Nω )| ω
−1 i=1
|det(Bω )| = |det(Mω Nω )| = = n
|det(Mω )| Y 1
| aii |
ω
i=1
Qn
| 1−ω n
ω | | aii |
Soit |det(Bω )| = 1 n Qni=1 = (1 − ω)n
| ω | | i=1 aii |
1.4 Méthodes itératives 9

En particulier (1 − ω)2 < 1 d’où |1 − ω| < 1 ce qui donne la condition de cenvergence :


0<ω<2

1.4.4.1 Exercice 1 : la méthode Jacobi converge

Voir le cours manuscrit

1.4.4.2 Exercice 2 : condition nécessaire à la convergence

Voir le cours manuscrit


Chapitre 2

Calcul des valeurs propres et des


vecteurs propres

2.1 Motivations
Les valeurs propres sont liées par exemple aux modes vibratoires d’une structure comme
les problèmes de résonnance des ponts.

Système de trellis dynamique :

Grâce à l’application du principe fondamental de la statique, on trouve :


nk
X (ul − uk ) · ekl
− [E · Skl · ] · ekl + Fk = mk u¨k
lkl
l=1

avec ul = ul (t) et uk = uk (t)

En mode vibratoire, on peut écrire : uk (t) = uk (ω)eiωt et en particulier : uk (t) = ukω eiωt
(Il en va de même pour ul (t))

On obtient alors :
nk
X (ulω − ukω ) · ekl
− [E · Skl · ] · ekl · eiωt = −ω 2 mk ukω eiωt
lkl
l=1

En effet, comme on recherche les modes propres, Fk = 0

10
2.2 Méthode des puissances 11

Enfin, on a sous forme matricielle :


     
m1 0 0 0 0 0 u1ωx u1ωx
 0 m1 0 0 0 0 
 u1ωy 
  u1ωy 
  
 0 0 m2 0 0 0  u2ωx 
   u 
2  2ωx 
−ω  ·  +K ·  =0
 0 0 0 m2 0 0  u2ωy  u2ωy 
     
 0 0 0 0 m3 0  u3ωx  u3ωx 
0 0 0 0 0 m3 u3ωy u3ωy
| {z } | {z } | {z }
M uω uω

où K est la matrice de rigidité.

On a alors les cas suivants :


– le cas statique :
Ku = F
– le cas de vibration stabilisée :

[−ω 2 M + K] · uω = 0

soit
(M −1 K − ω 2 Id ) · uω = 0
ce qui peut se mettre sous la forme connue :

(A − λId ) · xk = 0

où λ et xk sont les valeur et vecteur propres associés à l’endomorphisme de matrice M .

Pour résoudre ce problème, il y a deux méthodes connues :

1. det(A − λId ) = 0, résolution d’équations non linéaires d’ordre n.


2. méthode de diagonalisation

A(1) = P A(2) P −1
Les matrices A(1) et A(2) sont semblables, elles ont donc memes valeurs propres.

2.2 Méthode des puissances


2.2.1 Méthode de puissance simple
Soit A · xk = λk xk
où λk et xk sont les valeur et vecteur propres de A.

Prenons xk = α1 x1 + α2 x2 + α3 x3 + ... + αn xn
ce qui donne
A · xk = α1 λ1 x1 + α2 λ2 x2 + α3 λ3 x3 + ... + αn λn xn
2.2 Méthode des puissances 12

d’où,
A2 · xk = α1 λ21 x1 + α2 λ22 x2 + α3 λ23 x3 + ... + αn λ2n xn

de même,
Ak · xk = α1 λk1 x1 + α2 λk2 x2 + α3 λk3 x3 + ... + αn λkn xn

enfin,
λk2 λk3 λkn
Ak · xk = λk1 (α1 x1 + α2 x2 + α3 x3 + ... + αn xn )
λk1 λk1 λk1
λi (k)
Si |λ1 | > |λ2 | > |λ3 | > ... > |λk | alors lim ( ) = 0 pour i 6= 1
k→−∞ λ1
on a alors, lim A · xk = α1 λ1 x1
k→−∞

On définit une récurrence de la manière suivante :


– on choisit x0 arbitrairement.
– on a la relation de récurrence suivante : x(k) = A · x(k−1)
xk
On réalise une mise en mémoire : xk = .
||xk ||
(xk )T · A · xk
On trouve alors λk =
(xk )T · xk

Et si ∃ε, ||λk − λk−1 || < ε alors λk est la plus grande valeur propre.

2.2.2 Méthode de puissance inverse


De la même manière que précédemment, on part de la récurrence : x0 choisi arbitrairement
et A · xk = xk−1

(xk )T · A · xk
On a λk =
(xk )T · xk
La méthode de puissance inverse se traduit en fait par :
1 1 1 1
lim λk = Sup( ; ; ....; ) =
k→+∞ λ1 λ 2 λn λn

2.2.3 Méthode de puissance inverse avec décalage


On utilise cette fois le schéma :
(
x0 choisi arbitrairement
(A − uId )xk = xk−1
Et en appliquant la même méthode que ci-dessus, on trouve :
1 1 1
lim λk = Sup( ; ; ....; )
k→+∞ λ1 − u λ 2 − u λn − u
2.3 Méthodes par transformations orthogonales 13

2.3 Méthodes par transformations orthogonales


2.3.1 Définition
On part de la matrice A(1)
On calcule les A(k) succéssifs de la manière suivante :

A(2) = Q(1) A(1) (Q(1) )−1

A(k) = Q(k−1) A(k−1) (Q(k−1) )−1

   
λ1 0 0 0 0 λ1 X X X X
0 λ 0 0 0  0 λ X X X
 2   2 
En ésperant que lim A(k) =0 0 · 0 0  ou  0 0 · X X 
   
k→+∞    
0 0 0 · 0  0 0 0 · X
0 0 0 0 λn 0 0 0 0 λn

Remarque : 1. Si Q est orthogonale alors

QQT = QT Q = Id

2. Si Q1 et Q2 sont orthogonales alors

(Q1 Q2 )T Q1 Q2 = Id

La matrice Q1 Q2 est également ortogonale.

2.3.2 Méthode Jacobi


Quelque soit la matrice symétrique A, il existe une matrice Q orthogonale telle que
 
λ1 0 0 0 0
0 λ 0 0 0
 2 
A = Q 0 0 · 0 0  QT
 
 
0 0 0 · 0
0 0 0 0 λn
.
Il suffit de trouver des matrices Qk telles que lim Q1 Q2 ....Qk = Q
k→+∞
2.3 Méthodes par transformations orthogonales 14

2.3.2.1 Matrice de rotation Given


 
1 0 0 0 0 0 0 0 0 0
0 1 0 0 0 0 0 0 0 0
 
 
0 0
 · 0 0 0 0 0 0 0
0 0 0 cos(Θ) 0 0 sin(Θ) 0 0 0
 
0 0 0 0 1 0 0 0 0 0
Qk = 
 

0 0 0 0 0 1 0 0 0 0
 
0 0
 0 −sin(Θ) 0 0 cos(Θ) 0 0 0
0 0
 0 0 0 0 0 · 0 0
0 0 0 0 0 0 0 0 1 0
 
0 0 0 0 0 0 0 0 0 1

On introduit le schéma itératif : A(1) = A et A(k+1) = (Q(k) )T A(k) Q(k)

On obtient alors
(k) (k+1) (k+1) (k)
 
a11 · · a1p · · a1q · · a1n
 · · · · · · · · · · 
 
 · · · · · · · · · · 
 
(k+1) (k+1)
 
 · · · app · · apq · · · 
 
 · · · · · · · · · · 
 
A(k+1) = 
 · · · · · · · · · · 
 (k+1) (k+1)

 · · · aqp · · aqq · · · 
 
 · · · · · · · · · · 
 
 
 · · · · · · · · · · 
· · · · · · · · · ·

et les relations suivantes :

(k+1) (k)
– aij = aij si (i, j) 6= (p, q)
(k+1) (k) (k)
– apj = apj · c − aqj · s
(k+1) (k) (k)
– aqj = apj · s + aqj · c

(k+1) (k) (k)


– app = app · c2 − aqq · s2
(k+1) (k) (k)
– aqq = app · s2 + aqq · c2
(k+1) (k) (k) (k)
– apq = s · c · (app − aqq ) + (c2 − s2 )apq
– avec c = cos(θ) et s = sin(θ)
2.3 Méthodes par transformations orthogonales 15

Méthode Jacobi :

Au pas k, trouver p et q tels que :


(k) (k−1)
|apq | = sup|aij |

(k−1) (k−1)
aqq − app (k)
cotan(2θk ) = (k−1)
⇒ apq =0
2apq

2.3.2.2 Convergence de Jacobi

A(k) = D(k) + B (k)

Si lim B (k) = 0 ou lim ||B (k) || = 0, alors c’est terminé et c’est gagné !
k→+∞ k→+∞

sX s
(k) (k−1) 2 (k)
X X
||B (k) ||2 = (aij )2 = (aij ) +2 (aij )2
i6=j i6=j6={p,q} i={p,q}6=j

s
(k−1) 2 (k) (k)
X X
(k)
||B ||2 = (aij ) +2 [(apj )2 + (aqj )2 + 2(apq
(k) 2
) ]
i6=j6={p,q} i6=j

(k)
or, apq = 0, d’où,
s X
(k−1) 2 (k−1) (k−1) (k−1) (k−1)
X
||B (k) ||2 = (aij ) +2 [(apj · c − aqj · s)2 + (apj · s + aqj · c)2 ]
i6=j6={p,q} j6={p,q}

or c2 + s2 = 1, d’où,
s
(k−1) 2 (k−1) 2 (k−1) 2
X X
(k)
||B ||2 = (aij ) +2 [(apj ) + (aqj ) ]
i6=j6={p,q} i6=j

sX
(k) (k−1) 2 (k−1)
||B ||2 = (aij ) − 2(apq )
i6=j

Et finallement, on obtient :

||B (k) ||22 = ||B (k−1) ||22 − 2(a(k−1)


pp )2

Remarque : En fait, prendre le terme |apq | le plus grand possible permet d’itérer plus vite.
2.3 Méthodes par transformations orthogonales 16

2.3.3 Méthode QR
2.3.3.1 Principe

Quelque soit la matrice A réelle inversible, il existe une unique décomposition A = QR.
Avec
– Q orthogonale.
– R triangulaire supérieure.

A(1) = Q(1) R(1)

A(1) = R(1) Q(1) = Q(2) R(2)

A(k) = R(k−1) Q(k−1) = Q(k) R(k)

A(k+1) = R(k) Q(k) = (Q(k) )T A(k) Q(k)

Ce procédé conserve les valeurs propres, car on multiplie par des matrices orthogonales.
 
λ1 X X X X
 0 λ X X X
 2 
lim =  0 0 · X X 
 
k→+∞  
 0 0 0 · X
0 0 0 0 λn

Cette méthode fonctionne, mais il n’y a pas de preuve générale de la convergence.

2.3.3.2 Factorisation QR

On utilise une matrice de rotation Householder H = Id −2uuT (où u est un vecteur unitaire)
– H est symétrique.
– H est orthogonale.
HT H = H2
H T H = Id 2 − 4uuT + 4uuT uuT

H T H = Id 2 = Id

d’où,  
X X X X
 0 X X X
A(2) = H 1 A(1) =
 

 0 0 X X
0 0 0 X
2.4 Remarque sur les schémas itératifs 17

2.4 Remarque sur les schémas itératifs


Soit une fonction contractante :
Rn −→ Rn
x 7−→ f (x)
Alors l’équation f (x) = x admet une solution unique.
– Unicité : soit (x1 , x2 ) un couple de solution à l’équation. Les propositions suivantes sont
équivalentes :
(
x1 = f (x1 )
1.
x2 = f (x2 )
2. |f (x1 ) − f (x2 )| ≤ k · |x1 − x2 |
3. |x1 − x2 | ≤ k · |x1 − x2 |
4. x1 = x2 car k < 1
– Existence :

x(n) = f (x(n−1) ) d’où :

|x(n) − x(n−1) | = |f (x(n−1) ) − f (x(n−2) )| ≤ k · |x(n−1) − x(n−2) |


Soit finalement : |x(n) − x(n−1) | ≤ k n · |x(1) − x(0) |
Ce qui équivaut à :

 lim |x(n) − x(n−1) | = 0
n→+∞
 lim f (x(n) ) = x(n)
n→+∞
Chapitre 3

Discrétisation

3.1 Préambule

3.1.1 Equation de la Mécanique des Milieux Continus


– σij,j + fi = 0 sur tout le domaine Ω
– σij · nj = Fi sur tout le domaine ∂Ωf
– σij = f (kl )
– kl = 21 (ukl + ulk )
– ui = udi sur tout le domaine ∂Ωd

3.1.2 Principe des puissances virtuelles


R R R
∀v ∈ Uadmissible , u solution du problème⇒ Ω σ(u) · (v) dΩ = Ω f · v dΩ + ∂Ωf F · v dS
On cherche une solution approchée dans Uadmissible ∗ :
n
X
v= vk · ωk
k=1

– on choisit les vecteurs de base ωk ce qui constitue le travail de modélisation. L’ensemble


des vecteurs de base constitue la ”fonction des formes”
– on calcul les coefficients pour que l’équation ci-dessus soit vérifiée

18
3.1 Préambule 19

Exemple : Méthode de Ritz


 
n ω1 (x)
·  ... 
X  
v(x) = vi · ω(x) = v1 ... vn
 
i=0
ω1 (x)

Ainsi, l’équation de base devient :


Z
σ(u) · (v) dΩ =

   
Z (ω1 (x)) u1
. .
   
v1 ... vn ·( 
 ..  · σ(ω1 (x)) ... σ(ωn (x)) · dΩ) ·  ..  =
 

(ω1 (x)) un
R R 
Ω f · ω1 (x) dΩ + ∂Ωf F · ω1 (x) dS
..
 
v1 ... vn · 
 
. 
R R
Ω f · ωn (x) dΩ + ∂Ωf F · ωn (x) dS
Ceci revient en fait à écrire : K · u = F

3.1.3 Transformation d’un problème continu en problème discret


– il faut trouver des fonctions de formes qui modélisent bien le problème
– calculer les intégrales qui arrivent dans la résolution (généralement, le calcul sera numé-
rique)
– inverser la matrice K pour finir de résoudre le problème
S
On décompose ensuite le domaine : Ω = i Ωi et ainsi on peut utiliser des fonctions de
forme locales qui répondent au problème :
Z XZ
(...) dΩ = (...) dΩi
Ω i Ωi

En limitant les domaines d’intégration, on peut se permettre de faire des interpolations poly-
nomiales à faible degré. On utilise des fonctions de forme locales.
3.2 Interpolation de Lagrange 20

3.2 Interpolation de Lagrange


3.2.1 Polynôme d’interpolation
 
l0 (x)
·  ... 
 
On cherche : u
fn (x) = u0 ... un
 

ln (x)
avec u
fn (x) = ui si x = xi

{lk }k∈{0,...,n} est une famille de polynôme de degré n, qui vérifie :


(
O si x = xj
lk (x) =
1 si x = xk

Les xi sont les noeuds du domaine. On y impose les valeurs de u


e (car elle est partagée par
plusieurs domaines). Pour exprimer les lk (x), on a la formule :
n
Y
(X − xi )
i=0,i6=k
lk (X) = n
Y
(xk − xi )
i=0,i6=k

Remarque : La famille de polynômes {lk }k∈{0,...,n} forme une base de Rn [X]. Ceci implique
que le polynôme d’interpolation obtenu est unique.

Démonstration : La famille {lk }k∈{0,...,n} comporte n+1 vecteurs, qui sont tous linéairement
indépendants. De plus, la dimension de Rn [X] est également n + 1. Donc la famille est bien
une base de Rn [X]. La décomposition d’un polynôme dans une base est unique, ce qui revient
à dire que le polynôme d’interpolation formé est unique.

3.2.2 Erreur d’interpolation


Pour une fonction u(x), on a :

∀i ∈ {0, ..., n}, u


fn (xi ) = u(xi )

n
Y
(x − xi )
^ i=0 dn+1 u(ξ)
e(x) = u(x) − u n (x) = · , ξ ∈ [a, b]
(n + 1)! dxn+1

lim e(x) 6= 0
n→∞

Il est donc inutile de travailler avec n très très grand.


3.3 Interpolation de Hermite 21

1
Contre exemple : Runge : f (x) = 1+x2

3.3 Interpolation de Hermite


3.3.1 Motivation d’une telle interpolation
 
l0 (x)
·  ...  donne une solution continue. Mais pour modéliser cor-
 
u
fn (x) = u0 ... un
 

ln (x)
rectement la déformation d’une poutre, il faut imposer u(x) et u0 (x) continues. Un polynôme
de degré 2n + 1 satisfait à cette condition :
(
u
fn (xi ) = ui
f0 (xi ) = u0
u n i

3.3.2 Expression du polynôme d’interpolation d’Hermite

n
X
u
fn (x) = (u0i · ki (x) + ui · hi (x))
i=0
(
ki (x) = li (x)2 · (x − xi )
ki0 (x) = 2li (x) · li0 (x) · (x − xi ) + li (x)2

(
hi (x) = li (x)2 · [1 − 2(x − xi ) · li0 (x)]
h0i (x) = 2[1 − 2(x − xi ) · li0 (x)] · li (x) · li0 (x) − 2li (x)2 · [li0 (x) + (x − xi )li00 (x)]

Cette méthode permet d’imposer également les dérivées aux noeuds, en plus de la valeur de la
fonction.
3.4 Approximation diffuse 22

3.4 Approximation diffuse


3.4.1 Motivations
Pour les problèmes de grande déformation, il est nécessaire d’adpté le maillage à la solution
trouvée : pour cela, on itère plusieurs fois le processus.

3.5 Intégration numérique

Z b n
X
I(f ) = f (x) dx → S(f ) = ωi · f (xi )
a i=0

Les xi sont les points d’intégration. On peut par exemple utiliser la méthode de calcul
suivante :

 ωi = (xi+1 − xi )

Xn

 S(f ) = (xi+1 − xi ) · f (xi )
i=0

3.5.1 Formule issue de l’interpolation de Lagrange


Interpolation de Lagrange de f(x) :
n
X
f (x) = f˜n (x) + e(x) = li (x) · f (xi ) + e(x)
i=0

Les proposition suivantes sont équivalentes :


3.5 Intégration numérique 23

1. Z b Z b
I(f ) = f (x) dx = (f˜n (x) + e(x)) dx
a a
2. Z b Xn Z b
I(f ) = ( li (x)f (xi )) dx + e(x) dx
a i= 0 a

3.
n Z b
X Z b
I(f ) = [ li (x) dx] · f (xi ) + e(x) dx
i=0 a a

4. Z b Z b
I(f ) = S(f ) + e(x) dx avec ωi = li (x) dx
a a
n
Y
(x − xi )
i=0
On a vu au paragraphe 3.2.2 que : e(x) = f (n+1) (ξ)
(n + 1)!
On peut donc exprimer :
n
Y
(x − xi )
Z b Z b
i=0
e(x) dx = f (n+1) (ξ) dx = R(f )
a a (n + 1)!
– R(f ) = 0 si f (x) est une fonction polynômiale de degré n ou moins.

– S(f ) est une formule de précision n.

3.5.2 Formule de Newton-Cotes


On utilise une distribution équidistante.
n
(n)
X
S(f ) = (b − a) Bi · f (xi )
i=0
Z nY
(n) 1 1
Bi = (y − j) dy · Y
n 0 (i − j)
j6=i
i6=j

Exemple : Cela donne différentes méthodes d’intégration :


– n=1
(1) (1) 1 1 1
(B0 ; B1 ) = ( ; ) ⇒ S(f ) = (f (x0 ) + f (x1 ))(b − a)
2 2 | 2 {z }
T rapèze
– n=2
(2) (2) (2) 1 4 1 1
(B0 ; B1 ; B2 ) = ( ; ; ) ⇒ S(f ) = (f (x0 ) + 4f (x1 ) + f (x2 ))(b − a)
6 6 6 | 6 {z }
Sympson

Remarque : La formule de Newton-Cotes est de précision n ou de précision n + 1 si n est


pair (on peut prendre l’exemple de f : x 7→ x3 ).
3.5 Intégration numérique 24

3.5.3 Formule de Gauss


n
X
On se pose la question :”Quelle précision peut atteindre une formule S(f ) = ωi f (xi ) ? ”.
i=0
Z 1
Exemple : Formule de deux points pour calculer : f (x) dx
−1

S(f ) = ω0 · f (x0 ) + ω1 · f (x1 )


Z 1
f (x) = 1 ⇒ S(f ) = ω0 + ω1 = I(f ) = dx = 2
−1
Z 1
f (x) = x ⇒ S(f ) = ω0 · x0 + ω1 · x1 = I(f ) = x dx = 0
−1
Z 1
2
f (x) = x2 ⇒ S(f ) = ω0 · x20 + ω1 · x21 = I(f ) = x2 dx =
−1 3
Z 1
f (x) = x3 ⇒ S(f ) = ω0 · x30 + ω1 · x31 = I(f ) = x3 dx = 0
−1

Ce qui donne les solutions : (ω0 ; ω1 ; x0 ; x1 ) = (1; 1; √13 ; √13 )


Avec n = 1 (c’est à dire 2 points), on obtient une précision de 2n + 1 = 3
n
X
Théorème 3.5.1 Une formule de quadrature S(f ) = ωi f (xi ) a une précision de 2n + 1
i=0
si et seulement si les points d’interpolation xi vérifient :
Z b Y n
∀q ∈ {0, ..., n}, xq (x − xi ) dx = 0
a i=0

Démonstration : Démontrons ce théorème en deux temps :


1. si S(f ) est exact pour tout f ∈ R2n+1 [X] :
Z b n
X
f (x) dx − ωk · f (xk ) = 0
a k=0
n
Y
∀q ∈ {0, ..., n}, xq · (x − xi ) ∈ R2n+1 [X]
i=0
=0
z }| {
Z b n n n
q
Y X Y
xq · (x − xi ) dx − ωk · xk · (xk − xi ) = 0
a i=0 k=0 i=0
Ce qui revient finallement à dire :
Z b n
Y
xq · (x − xi ) dx = 0
a i=0

La première partie du théorème est démontrée.


3.5 Intégration numérique 25

n
Rb Y
2. si f (x) ∈ R2n+1 [X] et a xq · (x − xi ) dx = 0 :
i=0

n
Y
∃(Qn ; Rn ) ∈ (Rn [X])2 , f (x) = (x − xi ) · Qn (x) + Rn (x)
i=0

=0
z }| {
Z b Z bYn Z b
f (x) dx = (x − xi ) ·Qn (x) + Rn (x) dx = Rn (x) dx
a a i=0 a
Z b n
X
f (x) dx = ωk · Rn (xk )
a k=0
n
Y
f (xk ) = (xk − xi ) · Qn (xk ) + Rn (xk ) = Rn (xk )
i=0

On obtient finallement l’égalité qui démontre la deuxième partie du théorème :


Z b n
X n
X
f (x) dx = ωk · Rn (xk ) = ωk · f (xk )
a k=0 k=0
Chapitre 4

Résolution d’équations
différentielles ordinaires

4.1 Introduction

nk
X (ul − uk ) · ekl
− [E · Skl · ] · ekl + F k = mk · ük
lkl
l=1

– En dynamique vibratoire, on recherche une solution de la forme u(t) = u · eiωt . Mais le


but d’un tel problème n’est pas vibratoire.
– On utilise le même modèle pour la simulation de crashs (auto, avion, etc.), pour l’étude
de l’usinage grande vitesse, ...

4.2 Définition du problème d’évolution de Cauchy



∂y1 (t)


 ∂t = f1 (t, y1 (t), ..., yn (t))
..
 .
 ∂yn (t) = f (t, y (t), ..., y (t))

∂t n 1 n

Avec les conditions initiales : ∀i ∈ {1, ..., n}, yi (t0 ) = yi0

26
4.3 Méthodes de résolution 27

Remarque : On peu se rapporter au même formalisme pour les problèmes du type :


 (n)
d y(t) d(n−1) y1 (t)

 = f (t, y(t), ..., )
dt(n) dt(n−1)
(i)
 ∀i ∈ {1, ..., n}, d y(t0 ) = y

i0
dt(i)
Théorème 4.2.1 Théorème de Cauchy-Lipschitz :
Soit T ∈ R+ . Le problème de Cauchy admet une solution unique si :

 f1 (t, y1 , ..., yn )

– f= .. est continue sur [0, T ],
 .
fn (t, y1 , ..., yn )

– f satisfait à la condition lipschitzienne :

∀(y, y ∗ ) ∈ (Rn )2 , ∃L ∈ R+ , kf (y, t) − f (y ∗ , t)k < L · · · ky − y ∗ k

4.3 Méthodes de résolution


4.3.1 Méthode de base


 dy
= f (t, y)
dt
 y(t ) = y
0 0

T
On utilise un pas de temps constant h = n, n désignant le nombre de divisions.

solutionnumerique
y(t) −→ (y(t0 ), ..., y(tn ))
4.3 Méthodes de résolution 28

4.3.1.1 Différence avancée

dy yn+1 − yn
(tn ) =
dt h
yn+1 = yn + h · f (yn , tn )
On applique la méthode d’Euler explicite. La résolution n’implique la résolution d’aucune
équation. C’est un schéma purement itératif, très rapide, mais qui peut être instable.

4.3.1.2 Différence rétrogradée

dy yn+1 − yn
(tn+1 ) =
dt h
yn+1 = yn + h · f (yn+1 , tn+1 )
On applique la méthode d’Euler implicite. Dans ce cas, il faut généralement résoudre une
équation non-linéaire à chaque pas. Cela ralentit la résolution, mais c’est un schéma qui est
généralement stable.

4.3.2 Méthode à pas multiple : formule de dérivée à 3 points


4.3.2.1 Formule de dérivée multiple :
2
X
y(t)
g= li (t)y(ti )
i=0
g = (t − t1 )(t − t3 ) (t− t0 )(t − t2 ) (t − t0 )(t − t1 )
y(t) 2
y(t0 ) − 2
y(t1 ) + y(t2 )
2h h 2h2
0 (t − t1 ) + (t − t2 ) 2t − t0 − t2 2t − t0 − t1
d’où, y(t)
g = y(t0 ) − y(t1 ) + y(t2 )
2h2 h 2 2h2

Ce qui donne les expressions suivantes :

– la différence rétrogradée :
dy g 0 |t=t = −3h y(t0 ) + 2h y(t1 ) − h y(t2 ) = 1 (−3y0 + 4y1 − y2 )
|t1 = y(t) 0
dt 2h2 h2 2h2 2h
– la différence centrée :
dy g 0 |t=t = y2 − y0
|t1 = y(t) 0
dt 2h
– la différence avancée :
dy g 0 |t=t = 1 (y0 − 4y1 + 3y2 )
|t1 = y(t) 0
dt 2h
dy
Posons pour la suite, dt = f (t, y). On obtient alors :

yn+2 − yn
– = f (tn , yn ) ⇒ yn+2 = yn + 2hf (tn , yn )
2h
yn+2 − yn
– = f (tn+1 , yn+1 ) ⇒ yn+2 = yn + 2hf (tn+1 , yn+1 )
2h
4.3 Méthodes de résolution 29

yn+2 − yn
– = f (tn+2 , yn+2 ) ⇒ yn+2 = yn + 2hf (tn+2 , yn+2 )
2h
Remarque : Les deux premières expressions sont dites ”explicites”.

4.3.2.2 Consistence d’une méthode à un pas

(
yn+1 = yn + hΦ(yn , tn , yn+1 , tn+1 , h)
y0 = y(t0 )
Le schéma est de consistance avec le problème
(
dy
dt = f (t, y)
y0 = y(t0 )
n
X
si : lim |y(tn+1 ) − y(tn ) − hΦ(y(tn ), tn , y(tn+1 ), tn+1 , h)| = 0
h→0
i=0
Une condition suffisante de consistance : lim Φ(y, t, h) = f (t, y)
h→0

4.3.2.3 Ordre d’un schéma

S’il existe une constante S telle que |y(tn+1 ) − y(tn ) − hΦ(y(tn ), t(tn ), h)| ≤ Shp+1 , alors
le schéma est d’ordre p.

Exemple : Φeuler (y, t, h) = f (t, y) car yn+1 = yn + hf (tn , yn )

h2 00
|y(tn+1 ) − y(tn ) − hf (y(tn ), tn )| = |[y(tn ) + hy 0 (tn ) + y (ζ)] − y(tn ) − hf (y(tn ), tn )|
2
h2 00 y 00 (ζ) 2
|y(tn+1 ) − y(tn ) − hf (y(tn ), tn )| = | y (ζ)| ≤ | |h ≤ Sh(1+1)
2 2
Le schéma est donc d’ordre 1.

4.3.3 Schéma d’ordre supérieur, Runge - Kutta


Remarque : On a la relation suivante :

h2 00 hp (p) hp+1 (p+1)


y(tn+1 ) = y(tn ) + h · y 0 (tn ) + · y (tn ) + ... + · y (tn ) + y (ξ)
2 p! (p + 1)!

De laquelle on tire :

h2 00 hp (p)
Φ(y, t, h) = h · y 0 (t) + · y (t) + ... + · y (t)
2 p!
On peut donc construire le schéma suivant :

yn+1 = yn + h · Φ(yn , tn , h)
4.3 Méthodes de résolution 30

L’erreur de conistance commise avec ce schéma vaut :


hp+1
|y(tn+1 − y(tn ) − h · Φ(yn , tn , h)| = | · y (p+1) (ξ)|
(p + 1)!
Ce schéma est d’ordre p. Il marche très bien dans la théorie, a condition de connaı̂tre y et ses
dérivées successives... Elle ne présente donc aucun intérêt.

Runge - Kutta explicite


 
Z n+1 Xp
y(tn+1 ) − y(tn ) = f (y, t) dt = h ·  aj · f (y(tj ), tj )
tn j=1

Exemple : Pour des valeurs de p particulières, on retrouve des schémas connus :


1. Pour p = 1, tj = tn , et aj = 1. On retrouve un schéma d’Euler.
1
2. Pour p = 2, {tj } = (tn , tn+1) , a1 = a2 = 2

h
y(tn+1 ) = y(tn ) + (f (y(tn ), tn ) + f (y(tn+1 ), tn+1 ))
2
Ce schéma est d’ordre 2, de type Euler composé (moyenne de Euler explicite et implicite).
Il est donc implicite.

Pour construire un schéma plus performant, on se donne deux constantes (b2 , c2 ) ∈ R2 et


on a :

y(tn+1 ) = y(tn ) + h [a1 · f (y(tn ), tn ) + a2 · f (y([tn + b2 h · f (y(tn ), tn )], tn + c2 h)]

La consistance du schéma impose une condition sur le couple(a1 , a2 ) :

lim Φ(y, t, h) = f (y, t) ⇒ a1 + a2 = 1


h→0

On peut écrire un schéma qui fonctionne très bien en prenant comme valeur (1, 1) pour le
couple (b2 , c2 ). Ceci nous donne le schéma suivant, appelé schéma de Heun :
1
ΦHeun = [f (y, t) + f (y + h · f (y, t), t + h)]
2

4.3.4 Stabilité du schéma itératif


Exemple : (
1
xn = 1 − n xn−1
Z
−1 n t
xn = e t e dt ⇒
0 xn−1 = n1 (1 − xn )
– xn = 1 − n xn−1 + n est le schéma perturbé correspondant. L’erreur cumulée commise
est :
n−1
X n!
n = i
(i + 1)!
i=1
Cette erreur augmente très rapidement, et le schéma peut devenir instable.
4.3 Méthodes de résolution 31

– xn−1 = n1 (1 − xn ) + n Dans ce cas l’erreur cumulée est divisée à chaque pas, ce qui rend
le schéma stable.

Définition 4.3.1 Soit les deux schéma suivants, respectivement d’origine et perturbé :
(
xn+1 = f (xn ), x0 = a
x∗n+1 = f (x∗n ) + n , x00 = a0

On dit que le schéma est stable si :


n−1
X
∀n ∈ N, ∃M > 0, |xn − x∗n | 0
≥ M · (|a − a| + |i |
i=1

Théorème 4.3.1 Un schéma d’intégration à un pas est stable.

Théorème 4.3.2 Si Φ(y, t, h) est lipschitzienne par rapport à y, alors le schéma est stable :

∃L ∈ R+ , ∀(y, y ∗ ) ∈ R2 , |Φ(y, t, h) − Φ(y ∗ , t, h)| ≥ L|y − y ∗ |

4.3.5 Convergence
Définition 4.3.2 Un schéma est convergent si :

lim |yn − y(tn )| = 0


h→0

Théorème 4.3.3 Un schéma est convergent s’il est à la fois stable et consistant.

Vous aimerez peut-être aussi