Vous êtes sur la page 1sur 14

Département de mathématiques Master 1

Faculté des sciences exactes Méthodes numériques 2


Univ. des Frères Mentouri, Cne. N. ARAR & D. BELAKROUM
2017-2018 armathar113@ yahoo.fr & math_appliqu@yahoo.fr

Méthode des différences finies

Introduction
La plupart des phénomènes physiques, chimiques ou biologiques sont régis par des
systèmes complexes d’équations aux dérivées partielles. Comme la solution exacte d’un
problème d’équations différentielles ou aux dérivées partielles est une fonction continue et
puisque les ordinateurs ne connaissent que le fini et le discret, les solutions sont calculées
à l’aide de méthodes numériques.
Le principe de toutes les méthodes de résolution numérique des équations aux dérivées
partielles est d’obtenir des valeurs numériques discrètes (c’est à dire en nombre fini) qui
approchent (en un sens convenable à préciser) la solution exacte. Dans ce procédé il faut
bien être conscient de deux points fondamentaux :
• Premièrement, on ne calcule pas des solutions exactes mais approchées.
• Deuxièmement, on discrétise le problème en représentant des fonctions par un nombre
fini de valeurs, c’est à dire que l’on passe du continu au discret.
Il existe de nombreuses méthodes d’approximation numérique des solutions d’équations
aux dérivées partielles. Nous présentons, dans ce chapitre, une des plus anciennes et des
plus simples, appelée "méthode des différences finies." Elle consiste à remplacer les
dérivées apparaissant dans le problème continu par des différences divisées ou combinaisons
de valeurs ponctuelles de la fonction en un nombre fini de points discrets appelés nœuds.
Avantages
• Grande simplicité de mise en oeuvre.
• Efficacité.
• La Possibilité de construire des approximations d’ordre élevé.
• L’analyse (locale) simple de la précision et de la convergence.
Inconvénients
• La limitation de la géométrie des domaines de calculs.
• La difficultés du traitement des conditions aux limites notamment les conditions
aux type Neumann..
• En général absence de résultats de majoration d’erreurs.

1 Quelques équations aux dérivées partielles


Donnons pour commencer, quelques exemples fondamentaux d’EDP linéaires du second
ordre, auxquels on peut appliquer la méthode des différences finies.

1ere année Master 1 N.ARAR & D. BELAKROUM


Équation de Poisson (elliptique)
Elle est définie par

∂ 2u ∂ 2u
+ = f (x, y), pour (x, y) ∈ Ω. (1)
∂x2 ∂y 2

Où, Ω est un domaine borné de R2 , u(x, y) la solution cherchée et f une fonction


donnée. lorsque cette dernière est nulle l’équation est dite de Laplace.

Équation de la chaleur (parabolique)


Pour un domaine Ω ⊂ R2 et T > 0, on cherche une fonction u = u(x, y, t) dépendante
du temps t telle que
 2
∂ u ∂ 2u

∂u 2
−α + = f (x, y, t), pour (x, y, t) ∈ Ω × [0, T ]. (2)
∂t ∂x2 ∂y 2

La fonction u représente la température en un point du domaine Ω et à l’instant t ∈ [0, T ].

Équation des ondes (hyperbolique)


Pour un domaine Ω ⊂ R2 et T > 0, on cherche une fonction u = u(x, y, t) dépendante
du temps t telle que

∂ 2u
 2
∂ u ∂ 2u

2
−α + = f (x, y, t), pour (x, y, t) ∈ Ω × [0, T ]. (3)
∂t2 ∂x2 ∂y 2

On peut citer également aux EDP du premier ordre à partir de quelques exemples fonda-
mentaux.

Équation de transport
En dimension 1 d’espace, on cherche u = u(x, t) avec x ∈ R et t ∈ R+ , vérifiant

∂u ∂u
+c = 0. (4)
∂t ∂x
La fonction u représente une quantité en x et à l’instant t transportée par une vitesse
c ∈ R.

Équation de Bürgers
En dimension 1 d’espace, on cherche u = u(x, t) avec x ∈ R et t ∈ R+ , vérifiant

∂ u2
 
∂u
+c = 0. (5)
∂t ∂x 2

1ere année Master 2 N.ARAR & D. BELAKROUM


2 Approximation des dérivées par des différences finies
La méthode des différences finies consiste à approximer les dérivées des équations de la
physique au moyen des développements de Taylor et se déduit directement de la définition
de la dérivée. Soit u(x, y, t) une fonction de l’espace et du temps. Par définition de la
dérivée, on a
∂u u(x + h, y, t) − u(x, y, t)
= lim ,
∂x h→0 h
et le un développement de Taylor de u(x + h, y, t) au voisinage de x est donné par

∂u h2 ∂ 2 u h3 ∂ 3 u
u(x + h, y, t) = u(x, y, t) + h (x, y, t) + (x, y, t) + (x, y, t) + · · ·
∂x 2 ∂x2 6 ∂x3
En tronquant la série au premier ordre en h, on obtient :

u(x + h, y, t) − u(x, y, t) ∂u
= (x, y, t) + O(h); O(h) −→ 0.
h ∂x h→0

L’approximation de la dérivée est alors d’ordre 1.

2.1 Cas monodimensionnel


Considérons un cas mono-dimensionnel où l’on souhaite déterminer u(x) sur l’intervalle
[0, 1]. La recherche d’une solution discrète de la solution u amène à constituer un maillage
de l’intervalle de définition. On considère un maillage (ou grille de calcul) composé de N +1
points xi pour i = 0, . . . , N régulièrement espacés avec un pas ∆x. Les points xi = i∆x
sont appelés les nœuds du maillage. Le problème continu de départ de détermination
d’une solution sur un ensemble de dimension infinie se ramène ainsi à la recherche de N
valeurs discrètes de u(x) aux différents nœuds du maillage.
on note ui la valeur discrète de  u(x)  xi ,soit ui = u(xi ). De même pour la dérivée
 au point
∂u ∂u
de u(x) au nœud xi , on note = = u0i . Cette notation s’utilise de façon
∂x x=xi ∂x i
équivalente pour toutes les dérivées d’ordre successif de u. Le schéma aux différences
finies d’ordre 1 présenté au-dessus s’écrit, en notation indicielle :
 
∂u ui+1 − ui
= + O(∆x) (6)
∂x i ∆x

Ce schéma est dit "avant"


Il est possible de construire un autre schéma d’ordre 1, appelé "arrière"
 
∂u ui − ui−1
= + O(∆x) (7)
∂x i ∆x

1ere année Master 3 N.ARAR & D. BELAKROUM


2.1.1 Schéma d’ordre supérieur
Des schémas aux différences finies d’ordre supérieur peuvent être construits en mani-
pulant des développement de Taylor au voisinage de xi . On écrit

(∆x)2 ∂ 2 u
   
∂u
ui+1 = u(xi + ∆x) = ui + ∆x + + O((∆x)3 )
∂x i 2 ∂x2 i

(∆x)2 ∂ 2 u
   
∂u
ui−1 = u(xi − ∆x) = ui − ∆x + + O((∆x)3 )
∂x i 2 ∂x2 i
La soustraction de ces deux relations donne
 
∂u
ui+1 − ui−1 = 2∆x + O((∆x)3 )
∂x i

Ce qui permet d’obtenir le schéma d’ordre deux dit "centré" pour approximer la dérivée
première de u  
∂u ui+1 − ui−1
= + O((∆x)2 ) (8)
∂x i 2∆x
Pour obtenir des ordres supérieurs, il faut utiliser plusieurs nœuds voisins de xi . Le nombre
de points nécessaire à l’écriture du schéma s’appelle le stencil. Par exemple, un schéma
aux différences finies d’ordre 2 pour la dérivée première s’écrit
 
∂u −ui+2 + 6ui+1 − 3ui − 2ui−1
= + O((∆x)2 )
∂x i 6∆x

2.1.2 Dérivée d’ordre supérieur


Le principe est identique et repose sur les développements de Taylor au voisinage de
xi . Par exemple pour construire un schéma d’approximation de la dérivée seconde de u,
on écrit :
(∆x)2 ∂ 2 u (∆x)3 ∂ 3 u
     
∂u
ui+1 = ui + ∆x + + + O((∆x)4 )
∂x i 2 ∂x2 i 6 ∂x3 i

(∆x)2 ∂ 2 u (∆x)3 ∂ 3 u
     
∂u
ui−1 = ui − ∆x + − + O((∆x)4 )
∂x i 2 ∂x2 i 6 ∂x3 i
En faisant la somme de ces deux égalités, on aboutit à
 2 
2 ∂ u
ui+1 + ui−1 − 2ui = (∆x) 2
+ O((∆x)4 )
∂x i

Ce qui permet d’obtenir le schéma d’ordre deux dit "centré" pour approximer la
dérivée seconde de u
 2 
∂ u ui+1 − 2ui + ui−1
2
= + O((∆x)2 )
∂x i (∆x)2

1ere année Master 4 N.ARAR & D. BELAKROUM


Il existe aussi une formulation "avant" et "arrière" pour la dérivée seconde, toute les
deux d’ordre 1  2 
∂ u ui+2 − 2ui+1 + ui
= + O(∆x)
∂x2 i (∆x)2
 2 
∂ u ui − 2ui−1 + ui−2
2
= + O(∆x)
∂x i (∆x)2

2.1.3 Généralisation de notation


Dans le cas 1D instationnaire, considérons l’évolution de u(x, t) en fonction de l’espace
et du temps. Le domaine de définition de u est décomposé en N + 1 nœuds xi répartis
régulièrement avec un pas d’espace ∆x. De même, le temps est décomposé en intervalle
élémentaire de pas constant ∆t. On notera uni la valeur discrète de u(x, t) au nœud xi et
au temps n∆t.

2.2 Cas multidimensionnel


Dans le cas 2D, considérons u(x, y) définie sur un certain domaine. Ce dernier est
décomposé en N × P nœuds (xi , yj ) répartis régulièrement avec un pas d’espace ∆x dans
la direction x et ∆y dans l’autre direction. On notera uij la valeur discrète de u(x, y) au
nœud (xi , yj ).
De façon similaire au cas 1D instationnaire, dans le cas 2D instationnaire, on notera unij
la valeur discrète de u(x, y, t) au nœud (xi , yj ) et au temps n∆t. Et dans le cas 3D
instationnaire, on notera unijk la valeur discrète de u(x, y, z, t) au nœud (xi , yj , zk ) et au
temps n∆t.

2.2.1 Dérivée d’ordre supérieur et dérivée croisée


Le principe est toujours basé sur les développements de Taylor que nous rappelons
pour une fonction u(x, y), dans le cas 2D.

(`∆x)2 ∂ 2 u
     
∂u ∂u
u(xi+` , yj+m ) = u(xi , yj ) + `∆x + m∆y +
∂x i ∂y j 2 ∂x2 i
(m∆y)2 ∂ 2 u 2m`∆x∆y ∂ 2 u
   
+ + + ···
2 ∂y 2 j 2 ∂x∂y ij

De la même façon que précédemment nous obtenons les différences finies d’ordre 1 données
par les formules
 
∂u ui+1,j − ui,j
= + O(∆x) schéma "avant"
∂x i ∆x
 
∂u ui,j − ui−1,j
= + O(∆x) schéma "arrière"
∂x i ∆x

1ere année Master 5 N.ARAR & D. BELAKROUM


 
∂u ui+1,j − ui−1,j
= + O(∆x) schéma "centré"
∂x i 2∆x
et
∂ 2u
 
ui−1,j − 2ui,j + ui+1,j
= + O((∆x)2 )
∂x2 i (∆x)2
2
 
∂ u ui,j−1 − 2ui,j + ui,j+1
= + O((∆y)2 )
∂y 2 j (∆y)2
et une approximation de la dérivée croisée à l’ordre 1 est donnée par
 2 
∂ u ui+1,j+1 − ui+1,j−1 − ui−1,j+1 + ui−1,j−1
= + O((∆x + ∆y)2 )
∂x∂y ij 4∆x∆y

2.3 Exemple 1D avec conditions de Dirichlet


Considérons l’équation différentielle suivante

 −u00 (x) = f (x), x ∈]0, 1[
u(0) = α
u(1) = β

où f est une fonction continue.


Le maillage est construit en introduisant N + 1 nœuds xi avec i = 0, 1, . . . , N, réguliè-
rement espacés avec un pas ∆x. La quantité ui désignera la valeur de la fonction u(x)
au nœud xi . L’équation à résoudre s’écrit, sous forme discrète en chaque nœud xi
 2 
du ui+1 − 2ui + ui−1
− =
dx2 i (∆x)2

L’équation discrétisée est ainsi


ui+1 − 2ui + ui−1
− = fi ; pour i variant de 1 à N − 1.
(∆x)2

En utilisant une formulation matricielle en faisant apparaître le vecteur des inconnues


discrètes, on obtient le système
    
2 −1 0 · · · 0 u1 f1 + α/(∆x)2
−1 2 −1 · · · 0   u2   f2 
    
 .. . . . . . . ..   ..  = (∆x)2  .. 
 . . . . .  .   . 
    
0 0 −1 2 −1   uN −2   fN −2 
2
0 0 0 −1 2 uN −1 fN −1 + β/(∆x)

1ere année Master 6 N.ARAR & D. BELAKROUM


2.4 Exemple 1D avec conditions mixtes Dirichlet-Neumann
Considérons l’équation différentielle suivante

 −u00 (x) = f (x), x ∈]0, 1[
u(0) = α
u0 (1) = β

où l’on a cette fois une condition de Neumann en x = 1.


Les modifications du problème discrétisé par rapport au cas précédent sont les suivantes.
Tout d’abord, le nombre d’inconnues a changé. Il y a une inconnue au bord en x = 1. Le
problème discret a donc maintenant, sur la base du même maillage que précédemment, N
inconnues ui pour i variant de 1 à N.
D’autre part, il faut discrétisée la condition de Neumann u0 (1) = β. Plusieurs choix sont
possibles pour approximer cette dérivée première. C’est un des inconvénients de la méthode
des différences finies : elle ne donne pas de façon naturelle une bonne approximation des
conditions de Neumann. Dans notre cas, utilisons une approximation d’ordre 1
uN − uN −1
u0 (1) =
∆x
Sous forme matricielle, on obtient :
    
2 −1 0 ··· 0 0 f1 + α/(∆x)2
u1
−1 2 −1 ··· 0 0   u2 f2 
    
 .. . . . . ... ..
 ..  .. .. 
 . . . . . 2 . .
 = (∆x) 
  
  
0
 0 −1 2 −1 0  uN −2 
   
 fN −2 

0 0 0 −1 2 −1 uN −1   fN −1 
0 0 0 0 −1 1 uN β/∆x

2.5 Discrétisation de l’équation de la chaleur 1D


Considérons le problème mono-dimensionnel de la conduction de la chaleur dans une
barre de 1m de longueur. Le champ de température u(x, t) vérifie l’équation de la chaleur

∂u ∂ 2u
=α 2
∂t ∂x
où α est la diffusivité thermique.
A cette EDP s’ajoute deux conditions aux limites aux extrémités de la barre ainsi qu’une
condition initiale : 
 u(0, t) = ug
u(1, t) = ud
u(x, 0) = u0 , la condition initiale

L’intervalle [0, 1] est discrétisé en N + 1 nœuds de coordonnées xi (i variant de 0 à N )


régulièrement espacés. Notons ∆x le pas d’espace. Le temps est discrétisé en intervalles de
pas constant, ∆t. Notons uni la température au nœud xi = i∆x et à l’instant tn = n∆t.

1ere année Master 7 N.ARAR & D. BELAKROUM


On peut utiliser deux approches pour discrétiser cette équation. La première dite

Explicite : Elle utilise une discrétisation au nœud xi et à l’itération courante n


n n
∂ 2u
 
∂u

∂t i ∂x2 i

et la seconde dite
Implicite : Elle utilise une discrétisation au nœud xi et à l’itération n + 1
n+1 n+1
∂ 2u
 
∂u

∂t i ∂x2 i

Schéma explicite
Nous utilisons un schéma avant d’ordre 1 pour évaluer la dérivée temporelle et un
schéma centré d’ordre 2 pour la dérivée seconde en espace, soient
 n
∂u un+1 − uni
= i
∂t i ∆t
 2 n
∂ u uni+1 − 2uni + uni−1
=
∂x2 i (∆x)2
En posant
∆t
λ=α ,
(∆x)2
la température à l’itération n + 1 est donnée par

un+1
i = λuni−1 + (1 − 2λ)uni + λuni+1 ∀ i = 1, N − 1, (9)

qui s’écrit encore sous la forme matricielle


 n+1   n  
u1 1 − 2λ λ 0 ··· 0 u1 ug
 u2 
 
 λ
 1 − 2λ λ ··· 0   u2 
  
0
 
 .. 
=  ... .. .. .. ..   ..  + λ  .. 

 .  . . . . 
 . 
  .
    
uN −2   0 0 λ 1 − 2λ λ  uN −2  0
uN −1 0 0 0 λ 1 − 2λ uN −1 ud

Dans ce genre de schéma, aucun système d’équation n’est à résoudre ( i.e. pas de matrice
à inverser numériquement), le nouveau pas se déduit des pas précédement calculés.

1ere année Master 8 N.ARAR & D. BELAKROUM


Schéma implicite
Nous utilisons un schéma arrière d’ordre 1 pour évaluer la dérivée temporelle et un
schéma centré d’ordre 2 pour la dérivée seconde en espace, soient
 n+1
∂u un+1 − uni
= i
∂t i ∆t
n+1
∂ 2u un+1 n+1
i+1 − 2ui + un+1

i−1
=
∂x2 i (∆x)2
En posant
∆t
λ=α ,
(∆x)2
la température à l’itération n + 1 est donnée par

(1 + 2λ)un+1
i − λ(un+1 n+1 n
i+1 + ui−1 ) = ui ∀ i = 1, N − 1, (10)

ou bien
−λun+1 n+1
i−1 + (1 + 2λ)ui − λun+1 n
i+1 = ui ∀ i = 1, N − 1,
On constate que les inconnues à l’itération n + 1 sont reliées entre elles par une relation
implicite (d’où le nom de la méthode).
Ce schéma nécessite la résolution d’un système d’équations au temps tn . Il s’écrit sous la
forme matricielle suivante
  n+1  n  
1 + 2λ −λ 0 ··· 0 u1 u1 ug
 −λ 1 + 2λ −λ ··· 0   u2   u2  0
      

 .. ... ... ... . .
..   ..  . .
=  ..  + λ  .. 
      
 .
      
 0 0 −λ 1 + 2λ −λ  uN −2  uN −2  0
0 0 0 −λ 1 + 2λ uN −1 uN −1 ud

Donc, à chaque itération, le vecteur des inconnues discrètes se détermine par résolution
d’un système linéaire.

2.6 Convergence des schémas explicite et implicite


Théorème 2.1. Pour un problème linéaire aux valeurs initiales, la solution numérique
d’un schéma itératif en temps aux différences finies converge vers la solution exacte si le
schéma est consistant et stable.

Sensibilité d’un problème et stabilité d’une méthode numérique


Un problème est dit très sensible ou mal conditionné si une petite variation des données ou
des paramètres entraîne une grande variation des résultats. Cette notion de conditionne-
ment, liée au problème mathématique, est indépendante de la méthode numérique utilisée

1ere année Master 9 N.ARAR & D. BELAKROUM


pour le résoudre.
Une méthode numérique est dite instable si elle est sujette à une propagation importante
des erreurs numériques de discrétisation et d’arrondi.
Un problème peut être bien conditionné alors que la méthode numérique choisie pour le
résoudre est instable. Dans ce cas, il est impératif de changer de méthode numérique. Par
contre, si le problème de départ est mal conditionné, aucune méthode numérique ne pourra
y remédier

Théorème 2.2.
La condition de stabilité du schéma explicite est donnée par
1
0≤λ≤ .
2
Le schéma implicite décrit plus haut est inconditionnellement stable.

Consistance d’un schéma numérique


La consistance caractérise la façon dont l’équation aux différences finies (EDF) ap-
proche l’équation aux dérivées partielles (EDP).
Notons
F (u) = 0 (11)
une EDP, où F (u) est une fonction de u et de ses dérivées partielles en tout point (t, x).
Notons aussi EDF, en utilisant tous ses indices possibles i et n, par la formule

F∆t,∆x {un+m

i+k } m− ≤m≤m+ , k − ≤k≤k + =0 (12)

où m− , m+ , k − et k + , définissent la largeur du stencil du schéma.

Définition 2.1. Le schéma aux différences finies (12) est dit consistant avec l’équation
aux dérivées partielles (11), si pour toute solution u(t, x) suffisamment régulière de cette
équation, l’erreur de troncature du schéma, définie par

F∆t,∆x ({u(t + m∆t, x + k∆x)}m− ≤m≤m+ , k− ≤k≤k+ ) (13)

tend vers zéro, uniformément par rapport à (t, x), lorsque ∆t et ∆x tendent vers zéro
indépendamment.
De plus, on dit que le schéma est précis à l’ordre p en espace et à l’ordre q en temps,
si l’erreur de troncature (13) tend vers zéro comme O((∆x)p + (∆t)q ) lorsque ∆t et ∆x
tendent vers zéro.

Remarques.
• Concrètement on calcule l’erreur de troncature d’un schéma en remplaçant un+m
i+k
dans la formule (12) par u(t + m∆t, x + k∆x).
• Le schémas explicite et implicite plus haut sont consistant, précis à l’ordre 1 en temps
et l’ordre 2 en espace.

1ere année Master 10 N.ARAR & D. BELAKROUM


2.7 Schéma de Crank-Nicolson
Le schéma de Crank-Nicolson consiste à utiliser un schéma aux différences finies, centré
en espace, afin d’accroître la précision. L’intérêt du schéma de Crank-Crank-Nicolson est
qu’il permettra de réduire l’erreur sur la dérivée temporelle en O((∆t)2 ), au lieu de O(∆t).
En pratique, le schéma de Crank-Nicolson revient à faire la moyenne du schéma d’Euler
explicite et du schéma d’Euler implicite, soit
un+1 ui+1 − 2uni + uni−1 un+1 n+1
+ un+1
 n
− uni i+1 − 2ui

i 1 i−1
' α +
∆t 2 (∆x)2 (∆x)2
qui s’écrit encore sous la forme
1 1 ∆t
un+1
i − λ(un+1 n+1
i+1 − 2ui + un+1 n n n n
i−1 ) = ui + λ(ui+1 − 2ui + ui−1 ); λ=α , (14)
2 2 (∆x)2
appelé le schéma numérique de Crank-Nicolson.
Le second membre étant connu, on obtient à nouveau une dépendance implicite des un+1
i
en fonction des uni . Comme dans le cas du schéma d’Euler implicite, en assemblant les
équations (14) pour tous les i, on obtient un système linéaire sous la forme
Aun+1 = bn

1
 
1+λ − λ 0 ··· 0

 1 2 
− λ 1 + λ − λ · · · 1 
 2 0 
 . 2 
A= . . . . . . . . .
.

 . . . . 

 1 1 
 0 0 − λ 1 + λ − λ
 2 2 
 1 
0 0 0 − λ 1+λ
2
et le second membre bn est donné par
n
1
  n+1
(1 − λ)u1 + λ(ug + u2 ) ug
 2 
1
   
(1 − λ)u + λ(u + u )
 
0
 2 1 3
 
 2 
1 .

n
b =
 .
.

.. 
.  + 2λ 
  
1
 

(1 − λ)uN −2 + λ(uN −3 + uN −1 )
  0
 

 2   
 1 
(1 − λ)uN −1 + λ(uN −2 + ud ) ud
2
Il faut souligner que malgré que le schéma de Crank-Nicolson est inconditionnellement
stable,très largement utilisé et plus précis que les deux schémas proposés initialement par
Euler (explicte et implicite), mais il reste implicite, ce qui peut conduire à des coûts de
calcul importants. Pour le rendre explicite, on propose au lecteur d’appliquer le Schéma
de Heun [2].

1ere année Master 11 N.ARAR & D. BELAKROUM


2.8 Discrétisation de l’équation de la chaleur 2D stationnaire
Considérons le problème bidimensionnel stationnaire de la conduction de la chaleur
dans un domaine rectangulaire [0, Lx ] × [0, Ly ]. Le champ de température u(x, y) vérifie
l’équation de Laplace

∂ 2u ∂ 2u
∆u = + = 0, (x, y) ∈ [0, Lx ] × [0, Ly ]


∂x2 ∂y 2






 u(0, y) = ug et u(Lx , y) = ud 0 < y < Ly




u(x, 0) = ub et u(x, Ly ) = uh 0 < x < Lx

Le domaine de calcul est discrétisé en (N + 1) × (P + 1) nœuds (xi , yj ) (i variant de 0 à


N et j variant de 0 à P ). On supposera que les pas d’espace dans chaque direction ∆x et
∆y sont constants. La température discrète au nœud (xi , yj ) sera notée uij = u(xi , yj ).
Nous utilisons un schéma centré d’ordre 2 pour approximer les dérivées secondes en espace,
soient  2 
∂ u ui+1,j − 2ui,j + ui−1,j
2
=
∂x ij (∆x)2
 2 
∂ u ui,j+1 − 2ui,j + ui,j−1
=
∂y 2 ij (∆y)2
La formulation discrétisée est alors, pour i variant de 1 à N − 1 et j variant de 1 à P − 1 :

(∆y)2 (ui+1,j + ui−1,j ) + (∆x)2 (ui,j+1 + ui,j−1 ) − 2((∆x)2 + (∆y)2 )ui,j = 0.

Soit sous forme matricielle, pour N = P = 4, en posant A = (∆x)2 + (∆y)2

−2A ∆y 2 ∆x2
 2
0 0 0 0 0 0 u11 ∆x ub + ∆y 2 ug
   
 ∆y 2 −2A ∆y 2 0 ∆x2 0 0 0 0  u21   ∆x2 ub 
2 2 2 2
     
 0
 2 ∆y −2A 0 0 ∆x 0 0 0  u31 
    ∆x ub + ∆y ud 
−2A ∆y 2 ∆x2 ∆y 2 ug
 
 ∆x 0 0 0 0 0  u12   
 2 2 2 2
    
 0
 ∆x 0 ∆y −2A ∆y 0 ∆x 0   u22  = − 
   0 

 0 0 ∆x 2 0 ∆y 2 −2A 0 0 ∆x 2 u ∆y 2 u
32 d
    
    
 0 0 0 ∆x 2 0 0 −2A ∆y 2 0  u13  2 2
∆x uh + ∆y ug 
    

 0 0 0 0 ∆x2 0 ∆y 2 −2A ∆y 2  u23   ∆x2 uh 
0 0 0 0 0 ∆x 2 0 ∆y 2 −2A u33 2 2
∆x uh + ∆y ud

Dans le cas où les pas d’espace sont identiques ∆x = ∆y, la formulation devient, pour i
variant de 1 à N − 1 et j variant de 1 à P − 1 :

ui+1,j + ui−1,j + ui,j+1 + ui,j−1 − 4ui,j = 0.

1ere année Master 12 N.ARAR & D. BELAKROUM


Soit sous forme matricielle, pour N = P = 4,
    
−4 1 0 1 0 0 0 0 0 u11 ub + ug
1
 −4 1 0 1 0 0 0 0 u21 
   ub 
 
0
 1 −4 0 0 1 0 0 0 u31 
   ub + ud 
 
1
 0 0 −4 1 0 1 0 0 u12 
 
 ug 
 
0
 1 0 1 −4 1 0 1 0 u22  = −  0 
   
0
 0 1 0 1 −4 0 0 1  u32 
   ud 
 
0
 0 0 1 0 0 −4 1 0 u13 
 
uh + ug 
 
0 0 0 0 1 0 1 −4 1  u23   uh 
0 0 0 0 0 1 0 1 −4 u33 uh + ud

2.9 Discrétisation de l’équation des ondes en dimension 1 d’espace


Considérons le problème pour l’équation des ondes
 2 2
∂ u 2∂ u
− α = f (x, t), (x, t) ∈ [0, L] × [0, T ]


∂t2 ∂x2







 u(0, t) = u(L, t) = 0, 0<t<T

u(x, 0) = g(x), 0<x<L











 ∂u
(x, 0) = ϕ(x), 0<x<L


∂t
En adoptant les mêmes discrétisations définies plus haut, on obtient le prblème approché
suivant
un+1
i − 2uni + un−1
i
n n n
2 ui+1 − 2ui + ui−1
− α = fin
(∆t)2 (∆x)2
En posant
∆t
λ=α
,
∆x
l’équation précédente à l’itération n + 1 est donnée par

un+1
i = λ2 uni−1 + 2(1 − λ2 )uni + λ2 uni+1 − uin−1 + (∆t)2 fin ∀ i = 1, N − 1, n = 1, m − 1
qui s’écrit encore sous la forme matricielle
2(1 − λ2 ) λ2 ···
 
 n+1 0 0  n  n−1  n
u1 .. .. u1 u1 f1
 λ2 2(1 − λ2 ) λ2
 

 u2 
  . .   u2   u2 
   
 f2 
 
 .. 
=
 .. .. ..   ..   .. 
− +(∆t) 2  .. 

 . 
  0 . . . 0  .   . 
    
 . 
 
uN −2   .. . .. .. ..  uN −2  uN −2  fN −2 
 . . . λ2 
uN −1 uN −1 uN −1 fN −1
0 ··· 0 λ2 2
2(1 − λ )

Ou bien, encore
U n+1 = AU n − U n−1 + F n ∀ n = 1, m − 1

1ere année Master 13 N.ARAR & D. BELAKROUM


Constatons que pour calculer U 2 il faut connaître U 1 et U 0 . Par hypothèse des conditions
initiales, on
U 0 = (g(x1 ), g(x2 ), · · · , g(xn−1 ))T
Pour calculer U 1 , on utilise la condition initiale
∂u
(x, 0) = ϕ(x), 0 < x < L
∂t
Par définition de la dérivée, on a

∂u u(xi , t1 ) − u(xi , 0)
ϕ(xi ) = (xi , 0) = + O(∆t)
∂t ∆t
de sorte que
u(xi , t1 ) ' g(xi ) + ∆tϕ(xi ) = u1i
Ainsi

U 1 = (g(x1 ) + ∆tϕ(x1 ), g(x2 ) + ∆tϕ(x2 ), · · · , g(xN −1 ) + ∆tϕ(xN −1 ))T .

Références
[1] G. Allaire. Analyse numérique et optimisation, Paris, 2005.
[2] Alfio Quarteroni. Riccardo Sacco. Fausto Saleri. Méthodes Numériques
Algorithmes, analyse et applications, Milano 2007.

1ere année Master 14 N.ARAR & D. BELAKROUM

Vous aimerez peut-être aussi