Sunteți pe pagina 1din 58

Thme 5: rsolution numrique des quations aux

drives partielles(EDP)
Problmes dynamiques
Universit Pierre et Marie CURIE
Mthodes numriques et informatiques 2
29 mars 2011
( ) Thme 5: rsolution numrique des quations aux drives partielles(EDP) Problmes dynamiques 29 mars 2011 1 / 55
Sommaire
1
Introduction
Exemples dEDP
Gnralits
Conditions aux limites
Problmes statiques et dynamiques
2
Exemple de problme statique : rsolution numrique de lquation de
Laplace
Discrtisation du problme
Reformulation vectorielle de la solution
Solution du problme
3
Problmes dynamiques
Discrtisation de lespace et du temps
Algorithme explicite du premier ordre en temps
Algorithme implicite du premier ordre en temps
Algorithme de CrankNicholson
4
quation des ondes
( ) Thme 5: rsolution numrique des quations aux drives partielles(EDP) Problmes dynamiques 29 mars 2011 2 / 55
Sommaire
1
Introduction
Exemples dEDP
Gnralits
Conditions aux limites
Problmes statiques et dynamiques
2
Exemple de problme statique : rsolution numrique de lquation de
Laplace
Discrtisation du problme
Reformulation vectorielle de la solution
Solution du problme
3
Problmes dynamiques
Discrtisation de lespace et du temps
Algorithme explicite du premier ordre en temps
Algorithme implicite du premier ordre en temps
Algorithme de CrankNicholson
4
quation des ondes
( ) Thme 5: rsolution numrique des quations aux drives partielles(EDP) Problmes dynamiques 29 mars 2011 2 / 55
Sommaire
1
Introduction
Exemples dEDP
Gnralits
Conditions aux limites
Problmes statiques et dynamiques
2
Exemple de problme statique : rsolution numrique de lquation de
Laplace
Discrtisation du problme
Reformulation vectorielle de la solution
Solution du problme
3
Problmes dynamiques
Discrtisation de lespace et du temps
Algorithme explicite du premier ordre en temps
Algorithme implicite du premier ordre en temps
Algorithme de CrankNicholson
4
quation des ondes
( ) Thme 5: rsolution numrique des quations aux drives partielles(EDP) Problmes dynamiques 29 mars 2011 2 / 55
Sommaire
1
Introduction
Exemples dEDP
Gnralits
Conditions aux limites
Problmes statiques et dynamiques
2
Exemple de problme statique : rsolution numrique de lquation de
Laplace
Discrtisation du problme
Reformulation vectorielle de la solution
Solution du problme
3
Problmes dynamiques
Discrtisation de lespace et du temps
Algorithme explicite du premier ordre en temps
Algorithme implicite du premier ordre en temps
Algorithme de CrankNicholson
4
quation des ondes
( ) Thme 5: rsolution numrique des quations aux drives partielles(EDP) Problmes dynamiques 29 mars 2011 2 / 55
Introduction
Sommaire
1
Introduction
Exemples dEDP
Gnralits
Conditions aux limites
Problmes statiques et dynamiques
2
Exemple de problme statique : rsolution numrique de lquation de Laplace
Discrtisation du problme
Reformulation vectorielle de la solution
Solution du problme
3
Problmes dynamiques
Discrtisation de lespace et du temps
Algorithme explicite du premier ordre en temps
Algorithme implicite du premier ordre en temps
Algorithme de CrankNicholson
4
quation des ondes
( ) Thme 5: rsolution numrique des quations aux drives partielles(EDP) Problmes dynamiques 29 mars 2011 3 / 55
Introduction
Contexte
Les quations aux drives partielles (EDP) interviennent dans la
description de trs nombreux problmes de physique, chimie, sciences de la
Terre, biologie : mcanique des uides, propagation des ondes,
lectromagntisme, phnomnes de diusion ...
Nous nous limitons dans tout ce qui suit des EDP relatives un champ
scalaire u(

r , t). Les gnralisations vectorielles sont bien sr possibles, et
techniquement analogues.
Les exemples dEDP scalaires les plus connues :
1
Lquation des ondes
2
Lquation de Schrdinger
3
Lquation de diusion
4
Les quations de Poisson et de Laplace
( ) Thme 5: rsolution numrique des quations aux drives partielles(EDP) Problmes dynamiques 29 mars 2011 4 / 55
Introduction Exemples dEDP
quation des ondes
Lquation des ondes ou de dAlembert :

2
u
t
2
c
2
u = 0 (1)
o u = u(

r , t) est un champ scalaire fonction de la position

r et du
temps t, comme la pression dun gaz dans le cas du son.
La constante c la vitesse de propagation des ondes et est le Laplacien
scalaire :
=

2
x
2
+

2
y
2
en 2 dimensions (2)
( ) Thme 5: rsolution numrique des quations aux drives partielles(EDP) Problmes dynamiques 29 mars 2011 5 / 55
Introduction Exemples dEDP
quation de Schrdinger
Lquation de Schrdinger :
i
u
t
=
1
2
u + V u (3)
qui dcrit en mcanique quantique la fonction donde dune particule
massive dans un potentiel V.
Elle reprsente aussi la propagation dune onde harmonique la limite
paraxiale, dans un milieu de permittivit = n
2
= V + 1.
( ) Thme 5: rsolution numrique des quations aux drives partielles(EDP) Problmes dynamiques 29 mars 2011 6 / 55
Introduction Exemples dEDP
quation de la diusion
Lquation de diusion
u
t
+ div

J = 0 avec

J = D

grad(u)
Ici

J est le ux (de u) par unit de surface et D le coecient de diusion,
ce qui donne, dans le cas o D est homogne :
u
t
= D u (4)
Cette quation dcrit :
les transferts de chaleur par conduction dans un milieu continu, elle
est alors appele quation de la chaleur et u T et D /C
p
.
la diusion des particules dun uide dans un autre (quation de Fick).
( ) Thme 5: rsolution numrique des quations aux drives partielles(EDP) Problmes dynamiques 29 mars 2011 7 / 55
Introduction Exemples dEDP
quations de Poisson et de Laplace
Des cas particuliers sont les quations de Poisson et de Laplace, qui
peuvent tre vues comme des cas limites lorsque la dpendance en temps
est supprime, ou remplace par une dpendance harmonique.
Lquation de Poisson
u =
est en lectrostatique celle qui rgit le potentiel (

r ) cr par la densit
de charges (

r ).
Lquation de Laplace est un cas particulier o la charge est nulle :
u = 0 (5)
On va notamment la retrouver comme solution stationnaire de lquation
de la chaleur.
( ) Thme 5: rsolution numrique des quations aux drives partielles(EDP) Problmes dynamiques 29 mars 2011 8 / 55
Introduction Gnralits
quations elliptiques/paraboliques/hyperboliques
Ltude thorique des EDP est un vaste domaine en mathmatiques qui
est hors du cadre de notre tude.
Les EDP linaires voques plus haut sont classes en EDP
elliptiques/paraboliques/hyperboliques selon la forme des coecients
gurant devant les drives partielles :
quation hyperbolique : quation de dAlembert 1-D
quation parabolique : diusion ou Schrdinger
quations elliptiques : quations de Laplace, Poisson, Helmholtz
Elles ont des proprits mathmatiques direntes, et leur rsolution
approche par des techniques numriques requirent aussi parfois des
mthodes distinctes.
Dans la pratique, nous nous concentrerons sur une mthode de rsolution
approche par des mthodes numriques, dans le cas principalement de
lquation de la chaleur.
( ) Thme 5: rsolution numrique des quations aux drives partielles(EDP) Problmes dynamiques 29 mars 2011 9 / 55
Introduction Conditions aux limites
Conditions au limites
On doit se donner des conditions au limites (CL). Lquation tant
vrie dans dans un domaine D de lespace (ou espace-temps), on
distingue des conditions de 2 types :
Conditions de Dirichlet : on impose la valeur de u sur la bordure de
D. Dans le cas o on tudie un problme dpendant du temps, cela
inclut des conditions initiales
Conditions de Neumann : cest la valeur de la drive normale
u/n =

gradu

n que lon impose.
Dans le cas gnral,on a une combinaison des deux selon direntes
parties de la bordures.
titre dexemple pour lquation de la chaleur :
Des CL de Dirichlet correspondent des parois isothermes, qui
imposent leur temprature.
Des CL de Neumann avec

gradu

n = 0 annulent le transfert de
chaleur : parois adiabatiques.
( ) Thme 5: rsolution numrique des quations aux drives partielles(EDP) Problmes dynamiques 29 mars 2011 10 / 55
Introduction Problmes statiques et dynamiques
Problmes statiques et dynamiques
Du point de vue de leur rsolution numrique, deux classes de problmes
doivent tre distingus :
Problmes dynamiques : il sagit de dterminer u(

r , t) dans un
domaine D, sur un certain intervalle de temps, en fonction des CL
spatio-temporelles :
CI : u(

r , t = 0) = + CL : u(

r = , t) =
Problmes statiques : le temps nintervient pas, il sagit de dterminer
u(

r ) en fonctions des seules CL ; cela correspond en gnral un
rgime stationnaire atteint aprs un temps dvolution assez long.
( ) Thme 5: rsolution numrique des quations aux drives partielles(EDP) Problmes dynamiques 29 mars 2011 11 / 55
Introduction Problmes statiques et dynamiques
Rgime permanent
Nous nous intresserons en premier lieu aux problmes statiques.
Il sagit de problmes o lon cherche la solution dune EDP o le temps
nintervient pas. Cest par exemple la solution dquilibre de lquation de
diusion qui sera asymptotiquement atteinte quand t , et qui doit
donc vrier lquation de Laplace.
Dans ce cas u reprsente un champ de temprature T(x, y) (avec une
origine arbitraire) et on a 2-D :
T =

2
T
x
2
+

2
T
y
2
= 0 . (6)
( ) Thme 5: rsolution numrique des quations aux drives partielles(EDP) Problmes dynamiques 29 mars 2011 12 / 55
Introduction Problmes statiques et dynamiques
Problmes dynamiques
Puis, dans une deuxime partie, nous considrerons les problmes
dynamiques.
Deux mthodes simples seront exposes et analyses sur lexemple de
lquation de diusion 1-D :
u
t
= D

2
u
x
2
(7)
avec diverses conditions initiales.
( ) Thme 5: rsolution numrique des quations aux drives partielles(EDP) Problmes dynamiques 29 mars 2011 13 / 55
Un problme statique : lquation de Laplace
Sommaire
1
Introduction
Exemples dEDP
Gnralits
Conditions aux limites
Problmes statiques et dynamiques
2
Exemple de problme statique : rsolution numrique de lquation de Laplace
Discrtisation du problme
Reformulation vectorielle de la solution
Solution du problme
3
Problmes dynamiques
Discrtisation de lespace et du temps
Algorithme explicite du premier ordre en temps
Algorithme implicite du premier ordre en temps
Algorithme de CrankNicholson
4
quation des ondes
( ) Thme 5: rsolution numrique des quations aux drives partielles(EDP) Problmes dynamiques 29 mars 2011 14 / 55
Un problme statique : lquation de Laplace
Rsolution de lquation de Laplace
Nous cherchons une solu-
tion numrique approche de
T = 0 lintrieur dun
domaine D que pour simpli-
er nous supposerons rectan-
gulaire, de cts x et y
(voir gure 1).
x
y
y
x
A l'intrieur T(x,y) inconnue
vrifiant T=0
Surlebord:T(x,y)connue
Figure 1: Gomtrie du problme de
lquation de Laplace : noter le
choix inhabituel de lorientation des axes x et y.
( ) Thme 5: rsolution numrique des quations aux drives partielles(EDP) Problmes dynamiques 29 mars 2011 15 / 55
Un problme statique : lquation de Laplace
Exemple de carte disothermes
Nous supposons en outre que les parois ont des tempratures imposes de
lextrieur (CL de Dirichlet).
1
2
3
4
5
6
7
8
9
10
11
12
13
14
16
18
0
5
10
15
20
0 5 10 15 20 25
y
x
0C

10C

2
0
C

Figure 2: Exemple de
solution dans le cas o une
paroi est maintenue 20

C,
une autre adjacente est
10

C et les deux autres


parois sont T = 0

C. Les
lignes indexes de 1 18
reprsentent les isothermes.
( ) Thme 5: rsolution numrique des quations aux drives partielles(EDP) Problmes dynamiques 29 mars 2011 16 / 55
Un problme statique : lquation de Laplace Discrtisation du problme
Discrtisation du domaine
Nous procdons une discrtisation du domaine D : la temprature sera
calcule en un nombre ni de points. Pour simplier, le maillage choisi est
une grille de pas dx = dy = p comme reprsent sur les gures 3 et 4.
On a nl = x/p 1 lignes et nc = y/p 1 colonnes.
( ) Thme 5: rsolution numrique des quations aux drives partielles(EDP) Problmes dynamiques 29 mars 2011 17 / 55
Un problme statique : lquation de Laplace Discrtisation du problme
Maillage du domaine D
x
1
i
nl
.
'
.
.
'.
'.
'.
'.
'.
y
1
j nc
.'.'.' .'.'.'.'.'.
y' =(nc+1)'p
p
p
(i,j')

x
'=
(
n
l
+
1
)
'
p
Figure 3: Chaque point de la grille
est repr par un couple (i, j) o i
repre la ligne et j la colonne.
Lintrieur du domaine est numrot
de i = 1 nl et de j = 1 nc.
x
y
0
j
.'.'. .'.'.'.'.'.
nc+1
0
i
.
'.
'.
.
'.
'.
'.
'.
'.
nl'+1
(i,nc+1)
(0,j')
(i',j')
Figure 4: Les bords du domaine
portant les conditions aux limites sont
numrots : i = 0 pour le haut,
i = nl + 1 pour le bas, j = 0 pour la
gauche, j = nc + 1 pour la droite.
( ) Thme 5: rsolution numrique des quations aux drives partielles(EDP) Problmes dynamiques 29 mars 2011 18 / 55
Un problme statique : lquation de Laplace Discrtisation du problme
Indexation du domaine
On a lintrieur de la grille :
nl = x/p 1 lignes horizontales.
nc = y/p 1 colonnes verticales
Chaque point est repr par un couple dindices (i, j) o le premier indice
note le numro de la ligne et le second celui de la colonne.
On note T
i,j
la temprature en ce point, de coordonnes
x
i
= i p, y
j
= j p.
Les inconnues du problme sont les N = nl nc valeurs de T
i,j
o
1 i nl , 1 j nc qui seront dduites des valeurs de T
i,j
aux bords
(pour i = 0 ou i = nl + 1, j = 0 ou j = nc + 1).
( ) Thme 5: rsolution numrique des quations aux drives partielles(EDP) Problmes dynamiques 29 mars 2011 19 / 55
Un problme statique : lquation de Laplace Discrtisation du problme
Dirences nies
Les drives partielles sont approches par des dirences nies, bases
sur des dveloppements de Taylor. Le dveloppement de Taylor :
T(x p, y) = T(x, y) p
T
x
+
p
2
2

2
T
x
2

p
3
3!

3
T
x
3
+ O
_
p
4
_
(8)
montre que :
T(x + p, y) + T(x p, y) = 2T(x, y) + p
2

2
T
x
2
(x, y) + O
_
p
4
_
(9)
do :

2
T
x
2
(x, y) =
T(x + p, y) + T(x p, y) 2 T(x, y)
p
2
+ O
_
p
2
_
(10)
ce qui conduit :

2
T
x
2
(x
i
, y
j
) =
T
i+1,j
+ T
i1,j
2 T
i,j
p
2
+ O
_
p
2
_
(11)
dont la prcision est du deuxime ordre en p.
( ) Thme 5: rsolution numrique des quations aux drives partielles(EDP) Problmes dynamiques 29 mars 2011 20 / 55
Un problme statique : lquation de Laplace Discrtisation du problme
Dirences nies (suite)
On note que cette approximation peut sobtenir de faon alternative
partir de :
T
x
(x
p
2
, y)
T(x p, y) T(x, y)
p
(12)
qui conduit :

2
T
x
2
(x
i
, y
j
)
1
p
_
T
x
_
x
i
+
p
2
, y
j
_

T
x
_
x
i

p
2
, y
j
__
=
T
i+1,j
+ T
i1,j
2 T
i,j
p
2
+ O
_
p
2
_
(13)
( ) Thme 5: rsolution numrique des quations aux drives partielles(EDP) Problmes dynamiques 29 mars 2011 21 / 55
Un problme statique : lquation de Laplace Discrtisation du problme
Dirences nies (suite)
On obtient ainsi le Laplacien discrtis :
T
i,j
=
T
i+1,j
+ T
i1,j
+ T
i,j+1
+ T
i,j1
4 T
i,j
p
2
+ O
_
p
2
_
(14)
Lquation de Laplace se traduit alors par un systme linaire de N
quations reliant les valeurs de T
i,j
au 4 points voisins :
T
i+1,j
+ T
i1,j
+ T
i,j+1
+ T
i,j1
4 T
i,j
= 0 (15)
o 2 (nl +nc) tempratures sont connues (celles sur les points aux bords
indiqus par des croix sur la gure 4) et N = nl nc sont dterminer.
( ) Thme 5: rsolution numrique des quations aux drives partielles(EDP) Problmes dynamiques 29 mars 2011 22 / 55
Un problme statique : lquation de Laplace Reformulation vectorielle de la solution
Rindexation 1-D (matrice aplatie)
On r-indexe des points lintrieur de la grille par un indice k : (cf g. 5)
k = (i 1)nc + j (16)
qui fait correspondre au tableau 2-D des T
i,j
calculer, le vecteur
N = nl nc composantes Z
k
.
x
1
j
nc
1W
i
2
k=(i1)nc+j
2nc
nlnc
nc+1
y
1N
1S
2E
O
u
e
s
t
Nord
Sud
E
s
t
Figure 5: Renumrotation des
points de grille pour reprsenter la
solution sous la forme dun vecteur :
le domaine est r-index ligne par
ligne de la gauche vers la droite et
de bas en haut.
( ) Thme 5: rsolution numrique des quations aux drives partielles(EDP) Problmes dynamiques 29 mars 2011 23 / 55
Un problme statique : lquation de Laplace Reformulation vectorielle de la solution
Formulation vectorielle
Pour un point intrieur au domaine, lquation (15) scrit :
Z
knc
+ Z
k1
4Z
k
+ Z
k+1
+ Z
k+nc
= 0 (17)
En labsence de bords ce systme serait un systme homogne, conduisant
une temprature uniforme.
Avec des bords de temprature direntes, certaines des quations (17)
font apparatre un terme de bord, comme celle du Nord par exemple si
i = 1 En plaant droite du signe gal les tempratures imposes sur les
bords, ce systme dquations prend alors la forme :
A Z = B (18)
o A est une matrice carre N N comportant nl nl blocs carrs de
dimension nc nc, du type :
( ) Thme 5: rsolution numrique des quations aux drives partielles(EDP) Problmes dynamiques 29 mars 2011 24 / 55
Un problme statique : lquation de Laplace Reformulation vectorielle de la solution
Matrice L
2D
L
2D
=
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
4 1 0 0 1 0 0 0 0 0 0 0
1 4 1 0 0 1 0 0 0 0 0 0
0 1 4 1 0 0 1 0 0 0 0 0
0 0 1 4 0 0 0 1 0 0 0 0
1 0 0 0 4 1 0 0 1 0 0 0
0 1 0 0 1 4 1 0 0 1 0 0
0 0 1 0 0 1 4 1 0 0 1 0
0 0 0 1 0 0 1 4 0 0 0 1
0 0 0 0 1 0 0 0 4 1 0 0
0 0 0 0 0 1 0 0 1 4 1 0
0 0 0 0 0 0 1 0 0 1 4 1
0 0 0 0 0 0 0 1 0 0 1 4
ncncnc
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_

_
nl blocs
de taille
nc nc
Chaque ligne et chaque colonne contient 5 termes non-nuls comme (17)
le prvoit, sauf celles de numro nc et nc 1, o apparaissent les 0.
( ) Thme 5: rsolution numrique des quations aux drives partielles(EDP) Problmes dynamiques 29 mars 2011 25 / 55
Sens de parcours et inuence des bords

-4 1 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
1 -4 1 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 1 -4 1 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 1 -4 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0
1 0 0 0 -4 1 0 0 1 0 0 0 0 0 0 0 0 0 0 0
0 1 0 0 1 -4 1 0 0 1 0 0 0 0 0 0 0 0 0 0
0 0 1 0 0 1 -4 1 0 0 1 0 0 0 0 0 0 0 0 0
0 0 0 1 0 0 1 -4 0 0 0 1 0 0 0 0 0 0 0 0
0 0 0 0 1 0 0 0 -4 1 0 0 1 0 0 0 0 0 0 0
0 0 0 0 0 1 0 0 1 -4 1 0 0 1 0 0 0 0 0 0
0 0 0 0 0 0 1 0 0 1 -4 1 0 0 1 0 0 0 0 0
0 0 0 0 0 0 0 1 0 0 1 -4 0 0 0 1 0 0 0 0
0 0 0 0 1 0 0 0 1 0 0 0 -4 1 0 0 1 0 0 0
0 0 0 0 0 1 0 0 0 1 0 0 1 -4 1 0 0 1 0 0
0 0 0 0 0 0 1 0 0 0 1 0 0 1 -4 1 0 0 1 0
0 0 0 0 0 0 0 0 0 0 0 1 0 0 1 -4 0 0 0 1
0 0 0 0 1 0 0 0 0 0 0 0 1 0 0 0 -4 1 0 0
0 0 0 0 0 1 0 0 0 0 0 0 0 1 0 0 1 -4 1 0
0 0 0 0 0 0 1 0 0 0 0 0 0 0 1 0 0 1 -4 1
0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 1 0 0 1 -4
ncncncncnc

n
l
b
l
o
c
s
d
e
t
a
i
l
l
e
n
c

n
c
Un problme statique : lquation de Laplace Reformulation vectorielle de la solution
Le vecteur B rsultant des CL
B est un vecteur N composantes form partir des tempratures aux
bords. On peut le dcomposer sous la forme :
Nord
B =
_

_
T
1N
T
2N
.
.
.
T
nc N
0
.
.
.
.
.
.
0
0
.
.
.
.
.
.
0
_

_
Sud
+
_

_
0
.
.
.
.
.
.
0
0
.
.
.
.
.
.
0
T
1S
T
2S
.
.
.
T
nc S
_

_
Ouest
+
_

_
T
1W
0
.
.
.
0
T
2W
0
.
.
.
0
T
nc W
0
.
.
.
0
_

_
Est
+
_

_
0
.
.
.
0
T
1E
0
.
.
.
0
T
2E
0
.
.
.
0
T
nc E
_

_
alias b
k=(i1)nc+j
= (
i,1
T
i1,j
+
i,nc
T
i+1,j
+
j,1
T
i,j1
+
j,nl
T
i,j+1
) (19)
( ) Thme 5: rsolution numrique des quations aux drives partielles(EDP) Problmes dynamiques 29 mars 2011 27 / 55
Un problme statique : lquation de Laplace Solution du problme
Solution du systme linaire
Plusieurs mthodes permettent de rsoudre le systme linaire (18), par
exemple :
1
Les mthodes les plus gnrales de rsolution numrique des systmes
linaires, telles que la mthode dlimination de Gauss-Jordan, la
dcomposition LU
1
;
2
Des mthodes adaptes au cas o A est une matrice creuse .
3
Des mthodes de relaxation qui sapparentent, dans le cas dune
quation telle que lquation de Laplace, la rsolution temporelle de
lquation de la chaleur.
4
Lutilisation de transformes de Fourier.
1. La factorisation LU exprime la matrice comme produit dune matrice
triangulaire infrieure (Lower) par une matrice triangulaire suprieure (Upper).
( ) Thme 5: rsolution numrique des quations aux drives partielles(EDP) Problmes dynamiques 29 mars 2011 28 / 55
Un problme statique : lquation de Laplace Solution du problme
Rsolution du systme linaire
Les mthodes gnrales, comme Gauss-Jordan ou LU demandent un
nombre doprations en N
3
pour rsoudre un systme de N quations
2
.
Dans le cas prsent, avec au plus 5 coecients non nuls par ligne, on
devrait exploiter le caractre creux de la matrice, et descendre un
nombre doprations proportionnel N.
En TE, nous pourrons utiliser la bibliothque Blas/Lapack optimise, et on
pourra donc explorer des rgimes de tailles relativement intressants, de
lordre de 1000 10000 points.
On pourra commencer avec la fonction Lapack xGESV pour les matrices
gnrales, et comparer ensuite ce que lon obtient avec la procdure
ddie aux matrices symtriques xSYSV ou aux matrices bandes xSBSV.
Notons que cette dernire requiert un stockage spcique, par diagonales.
2. Pour une matrice symtrique positive la factorisation de Choleski permet
une rsolution en N
2
( ) Thme 5: rsolution numrique des quations aux drives partielles(EDP) Problmes dynamiques 29 mars 2011 29 / 55
Problmes dynamiques
Sommaire
1
Introduction
Exemples dEDP
Gnralits
Conditions aux limites
Problmes statiques et dynamiques
2
Exemple de problme statique : rsolution numrique de lquation de Laplace
Discrtisation du problme
Reformulation vectorielle de la solution
Solution du problme
3
Problmes dynamiques
Discrtisation de lespace et du temps
Algorithme explicite du premier ordre en temps
Algorithme implicite du premier ordre en temps
Algorithme de CrankNicholson
4
quation des ondes
( ) Thme 5: rsolution numrique des quations aux drives partielles(EDP) Problmes dynamiques 29 mars 2011 30 / 55
Problmes dynamiques
Introduction aux problmes dynamiques
Comme indiqu dans lintroduction gnrale, les problmes dynamiques
sont ceux o lon suit lvolution temporelle partir dun tat hors
dquilibre .
Il sera donc caractris par des conditions initiales , et des conditions
aux limites susceptibles de dpendre du temps. Dans ce dernier cas, on
pourra tudier un systme forc , qui, comme pour les systmes linaires
dcrits par une EDO, donnent lieu un transitoire suivi dun rgime
permanent forc la frquence dexcitation.
Comme prcdemment, nous allons nous concentrer sur le problme de
lquation de la chaleur, et pour simplier, rduire la dimensionnalit de
lespace une dimension.
( ) Thme 5: rsolution numrique des quations aux drives partielles(EDP) Problmes dynamiques 29 mars 2011 31 / 55
Problmes dynamiques
quation de diusion 1-D
On cherche la solution numrique u(x, t) de lquation de diusion 1-D :
u
t
= D

2
u
x
2
(20)
dans le domaine spatial x [0, L], et temporel t [0, T], avec des
condition initiale (CI) :
u(x, 0) = u
0
(x) x (21)
et des conditions aux limites (CL) :
u(0, t) = u
g
(t) et u(L, t) = u
d
(t) t (22)
Le coecient de diusion D, ncessairement positif, est suppos uniforme
et constant.
( ) Thme 5: rsolution numrique des quations aux drives partielles(EDP) Problmes dynamiques 29 mars 2011 32 / 55
Problmes dynamiques Discrtisation de lespace et du temps
Discrtisation du domaine
Il faut discrtiser les deux dimensions :
Espace : [0, L] est divis en n
x
+ 1 pas de largeur x =
L
n
x
+1
.
Temps : [0, T] est subdivis en n
t
+ 1 pas de largeur t =
T
n
t
+1
.
On note u
n
j
, la valeur numrique de u(x, t) au point x = jx et linstant
t = nt.
Les CL xent donc les u
n
0
u
n
g
et les u
n
n
x
+1
u
n
d
pour tout n.
Les CI xe quant elles les u
0
j
pour 1 j n
x
.
La mthode de rsolution sera fondamentalement itrative, chaque pas de
temps ncessitant de calculer les n
x
valeurs de u
n+1
j
intrieures laide de
u
n
j
et des conditions aux limites u
n+1
g
et u
n+1
d
.
Les mthodes vont direr selon lordre dvaluation de la drive
temporelle, et le caractre explicite ou implicite.
( ) Thme 5: rsolution numrique des quations aux drives partielles(EDP) Problmes dynamiques 29 mars 2011 33 / 55
Problmes dynamiques Algorithme explicite du premier ordre en temps
Dirences nies
Lalgorithme le plus simple et le plus naturel consiste remplacer
lquation direntielle (20) par lquation aux dirences nies :
u
n+1
j
u
n
j
t
= D
_
u
n
j+1
2u
n
j
+ u
n
j1
(x)
2
_
pour 1 j n
x
(23)
o le second membre est celui que nous avons utilis pour les problmes
statiques (du 2

ordre en x) et le membre de droite est une expression


explicite, au 1
er
ordre de la drive temporelle.
Du point de vue temporel, cette approche peut tre vue comme une
extension de la mthode dEuler explicite (progressive) tudie sur les
EDO.
( ) Thme 5: rsolution numrique des quations aux drives partielles(EDP) Problmes dynamiques 29 mars 2011 34 / 55
Problmes dynamiques Algorithme explicite du premier ordre en temps
Systme dquations linaires
Il est utile dintroduire le paramtre sans dimension :
=
D t
x
2
(24)
ce qui permet dcrire :
u
n+1
j
= u
n
j+1
+ (1 2) u
n
j
+ u
n
j1
pour 1 j n
x
(25)
qui met clairement en vidence le caractre explicite puisque les u
n+1
j
sobtiennent directement en fonction des valeurs des u
n
k
linstant initial
du pas considr.
Lorsque lun des u
n
j1
ou u
n
j+1
nexiste pas, cest dire que j = 1 ou
j = n
x
on retrouve une condition de bord, et u
n
0
u
n
g
et u
n
n
x
+1
u
n
d
apparatront au second membre, aects dun signe moins.
( ) Thme 5: rsolution numrique des quations aux drives partielles(EDP) Problmes dynamiques 29 mars 2011 35 / 55
Problmes dynamiques Algorithme explicite du premier ordre en temps
Formulation matricielle
En considrant le vecteur U
n
= (u
n
1
, . . . , u
n
n
x
) des solutions t = nt pour
les n
x
points intrieurs, le systme dquations linaire prend la forme :
U
n+1
= M() U
n
+ V
n+1
,
o V
n
= (u
n
g
, 0, . . . , 0, u
n
d
) est le vecteur des conditions aux limites, et la
matrice est M() = 11 + L
1D
o L
1D
est la matrice tridiagonale
reprsentant la drive seconde une dimension :
L
1D
=
_
_
_
_
_
_
_
_
2 1 0 0
1 2 1
.
.
.
.
.
.
0
.
.
.
.
.
.
.
.
.
0
.
.
.
.
.
.
.
.
.
2 1
0 0 1 2
_
_
_
_
_
_
_
_
M() =
_
_
_
_
_
_
_
_
1+2 0 0
1+2
.
.
.
.
.
.
0
.
.
.
.
.
.
.
.
.
0
.
.
.
.
.
.
.
.
.
1+2
0 0 1+2
_
_
_
_
_
_
_
_
(26)
( ) Thme 5: rsolution numrique des quations aux drives partielles(EDP) Problmes dynamiques 29 mars 2011 36 / 55
Problmes dynamiques Algorithme explicite du premier ordre en temps
Schma de progression explicite
Il est utile de reprsenter cette situation par un schma de progression :
Figure 6: Schma
illustrant la progression
dun pas de temps avec
lalgorithme explicite du
premier ordre en t.
(n+1) t
n t
0
(j 1) x
j x
(j +1) x
(n
x
+1) x
x
t
( ) Thme 5: rsolution numrique des quations aux drives partielles(EDP) Problmes dynamiques 29 mars 2011 37 / 55
Problmes dynamiques Algorithme explicite du premier ordre en temps
Analyse de stabilit de von Neumannn
Cette mthode lavantage de la simplicit, mais soure dinstabilit.
Considrons lexemple dune onde harmonique stationnaire :
u(x, t) = A(t) exp(ikx) u
n
j
= A
(n)
exp(i kjx) , (27)
qui est une solution exacte pour les condition de Dirichlet u
g
= u
d
= 0 si
k = p/L et que A(t) vrie lEDO :
dA/dt = Dk
2
A(t) . (28)
Or la version discrtise (23) donne, aprs division par u
n
j
:
A
(n+1)
A
(n)
A
(n)
= Dt
e
ikx
2 + e
ikx
x
2
= 4sin
2
_
kx
2
_
.
soit une suite gomtrique de raison , A
(n)
= A
0

n
, dont la stabilit
exige :
= 1 4sin
2
_
kx
2
_
[1, 1] 1
1
2
.
(29)
( ) Thme 5: rsolution numrique des quations aux drives partielles(EDP) Problmes dynamiques 29 mars 2011 38 / 55
Problmes dynamiques Algorithme explicite du premier ordre en temps
Stabilit : Lien avec le spectre de L
1D
On montre assez facilement que la p-ime valeur propre de la matrice L
1D
,
en dimension n, scrit en fonction de = /2(n + 1) = x/2L :
valeur pr : 4 sin
2
_
p
_
; vecteur pr : u
(p)
m
= sin
_
m p
_
On en dduit celles de la matrice M() :
M() = 11 + L
1D
1 4sin
2
_
p x
2
_
.
La condition de stabilit traduit donc simplement le fait que ces valeurs
propres sont de module infrieur 1.
( ) Thme 5: rsolution numrique des quations aux drives partielles(EDP) Problmes dynamiques 29 mars 2011 39 / 55
Problmes dynamiques Algorithme explicite du premier ordre en temps
Exemple : Diusion dune distribution en marche
0 20 40 60 80 100 120
0.0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1.0
Diffusion dune marche
position (x)
u
(
x
,
t
)
Figure 7: Diusion dune marche
( ) Thme 5: rsolution numrique des quations aux drives partielles(EDP) Problmes dynamiques 29 mars 2011 40 / 55
Problmes dynamiques Algorithme explicite du premier ordre en temps
Exemple : Diusion dune superposition de 2 modes
0 20 40 60 80 100 120
0.8
1.0
1.2
1.4
1.6
1.8
2.0
2.2
Rle de la longueur donde sur la diffusion
position (x)
u
(
x
,
t
)
Figure 8: Amortissement de deux modes
( ) Thme 5: rsolution numrique des quations aux drives partielles(EDP) Problmes dynamiques 29 mars 2011 41 / 55
Problmes dynamiques Algorithme explicite du premier ordre en temps
Lien avec la mthode de relaxation (dplacer dans Laplace)
Pour rsoudre lquation de Laplace on aurait pu opter pour la mthode de Jacobi :
Pour simplier prenons ici L
1D
:
L
1D
= 211
..
D
+
_
_
_
_
_
_
_
_
_
_
0 1 0 0
1 0
.
.
.
.
.
.
.
.
.
0
.
.
.
.
.
.
.
.
.
0
.
.
.
.
.
.
.
.
.
.
.
.
1
0 0 1 0
_
_
_
_
_
_
_
_
_
_
. .
R
On spare les parties diagonale D et non-diagonale
R du laplacien comme ci-contre. On doit avoir :
L
1D
Z = B DZ = B RZ Z =
1
2
(B RZ)
que lon rsout
de faon itrative en faisant (avec Z
(0)
= B :
Z
(0)
= B, Z
(n+1)
=
1
2
(B RZ
(n)
)
qui, vu la structure de R scrit aussi :
Z
(n+1)
i
Z
(n)
i
=
1
2
_
_
Z
(n)
i+1
+ Z
(n)
i1
2Z
(n)
i
_
B
_
qui est exactement ce que nous avons crit lquation (23) ou (25), avec =
1
2
.
Cette approche est une mthode alternative de rsolution de lquation de Laplace, facile
mettre en oeuvre, mais nettement plus lente car itrative. Elle revient rsoudre une
quation dpendant du temps, en propageant les conditions de bords par relaxation.
( ) Thme 5: rsolution numrique des quations aux drives partielles(EDP) Problmes dynamiques 29 mars 2011 42 / 55
Problmes dynamiques Algorithme implicite du premier ordre en temps
Solution au problme de stabilit : mthode rtrograde
Lalgorithme explicite est simple mais la condition de stabilit oblige faire
de trs petits pas...
On a vu, avec les EDO, que ces problmes peuvent tre rsolus en utilisant
un algorithme implicite. Cest ce que nous faisons ici en introduisant les
nouvelles quations :
u
n+1
j
u
n
j
t
= D
_
u
n+1
j+1
2u
n+1
j
+ u
n+1
j1
(x)
2
_
(30)
Les u
n+1
j
(j [1, n
x
]) sobtiennent alors en fonction des u
n
j
(j [0, n
x
+ 1]) en rsolvant le systme de n
x
quations linaires :
u
n+1
j1
+ (1 + 2) u
n+1
j
u
n+1
j+1
= u
n
j
pour j [1, n
x
] (31)
On peut cette fois faire un parallle avec la mthode dEuler implicite
(rtrograde).
( ) Thme 5: rsolution numrique des quations aux drives partielles(EDP) Problmes dynamiques 29 mars 2011 43 / 55
Problmes dynamiques Algorithme implicite du premier ordre en temps
Schma de progression implicite
Cette mthode met en uvre le schma de progression suivant :
Figure 9: Schma
illustrant la
progression dun pas
de temps avec
lalgorithme implicite
du premier ordre en t.
(n+1) t
n t
0
(j 1) x
j x
(j +1) x
(n
x
+1) x
x
t
u
j
n+1
u
j
n
( ) Thme 5: rsolution numrique des quations aux drives partielles(EDP) Problmes dynamiques 29 mars 2011 44 / 55
Problmes dynamiques Algorithme implicite du premier ordre en temps
Formulation matricielle
Ce systme peut tre crit de faon matricielle sous la forme :
M() U
n+1
= U
n
+ V
n
avec les mmes, notations que prcdemment, et notamment :
M() = 11 + L
1D
=
_
_
_
_
_
_
_
_
1+2 0 0
-
.
.
.
.
.
.
.
.
.
.
.
.
0
.
.
.
.
.
.
.
.
.
0
.
.
.
.
.
.
.
.
.
.
.
.
-
0 0 - 1+2
_
_
_
_
_
_
_
_
(32)
Notons que si M est tridiagonale, son inverse est au contraire une matrice
dense. Ainsi u
n+1
j
dpend de tous les autres lments, mais dautant moins
quils sont plus loigns. Bien sr, lorsque 0, M()
1
M() ce
qui signie que cette dpendance tend disparatre et on retrouve alors
lalgorithme explicite.
( ) Thme 5: rsolution numrique des quations aux drives partielles(EDP) Problmes dynamiques 29 mars 2011 45 / 55
Problmes dynamiques Algorithme implicite du premier ordre en temps
Stabilit de lalgorithme implicite
On cherche nouveau les modes propres dnis par (27).
Si on reporte leur expression dans la nouvelle quation aux dirences
nies (30), on obtient la raison de la suite gomtrique :
=
1
1 + 4 sin
2
_
k x
2
_
(33)
qui montre que lalgorithme implicite est toujours stable quel que soit le
choix des pas x et t. On obtient plus simplement le mme rsultat
partir des valeurs propres de M()
1
.
On obtient donc toujours la bonne solution dquilibre.
Toutefois, cet algorithme tant bas sur une approximation du premier
ordre en t seulement, une description prcise de la solution transitoire
requiert le choix dun t assez petit.
( ) Thme 5: rsolution numrique des quations aux drives partielles(EDP) Problmes dynamiques 29 mars 2011 46 / 55
Problmes dynamiques Algorithme de CrankNicholson
Principe de lalgorithme
Il sagit damliorer lapproximation en dirences nies du terme de
drive partielle temporelle. Plutt que de modier celui-ci directement, on
utilise la mme stratgie que pour la mthode dEuler modie pour les
EDO, qui est du 2
nd
ordre en temps.
On fait donc la moyenne des seconds membres des deux algorithmes
prcdents. On obtient les quations :
u
n+1
j
u
n
j
t
=
D
2
_
(u
n+1
j+1
2u
n+1
j
+ u
n+1
j1
) + (u
n
j+1
2u
n
j
+ u
n
j1
)
(x)
2
_
,
(34)
dont on montre quelles sont du deuxime ordre en t comme en x.
( ) Thme 5: rsolution numrique des quations aux drives partielles(EDP) Problmes dynamiques 29 mars 2011 47 / 55
Problmes dynamiques Algorithme de CrankNicholson
Schma de progression de CrankNicholson
Le schma de progression est dsormais le suivant :
Figure 10: Schma
illustrant la progression
dun pas de temps avec
lalgorithme de
CrankNicholson.
(n+1) t
n t
0
(j 1) x
j x
(j +1) x
(n
x
+1) x
x
t
u
j
n+1
u
j
n
( ) Thme 5: rsolution numrique des quations aux drives partielles(EDP) Problmes dynamiques 29 mars 2011 48 / 55
Problmes dynamiques Algorithme de CrankNicholson
Stabilit de lalgorithme de CrankNicholson
Ltude de stabilit de von Neumann peut tre reprise pour ce nouvel
algorithme et conduit une dcroissance gomtrique des modes avec une
raison :
=
1 2 sin
2
_
k x
2
_
1 + 2 sin
2
_
k x
2
_
(35)
ce qui permet de montrer que cet algorithme est lui aussi
inconditionnellement stable (i.e. quel que soit le choix de t).
( ) Thme 5: rsolution numrique des quations aux drives partielles(EDP) Problmes dynamiques 29 mars 2011 49 / 55
Problmes dynamiques Algorithme de CrankNicholson
Formulation matricielle
Les u
n+1
j
sobtiennent dsormais en fonction des u
n
j
en rsolvant le
systme dquations linaires (pour j [1, n
x
]) :
u
n+1
j1
+ (1 +2)u
n+1
j
u
n+1
j+1
= u
n
j1
+ (1 2)u
n
j
+u
n
j+1
(36)
Ce systme peut tre crit de faon matricielle sous la forme :
M
_

2
_
U
n+1
= M
_

2
_
U
n
+

2
_
V
n
+ V
n+1
_
(37)
avec les mmes notations que pour les deux autres algorithmes.
( ) Thme 5: rsolution numrique des quations aux drives partielles(EDP) Problmes dynamiques 29 mars 2011 50 / 55
quation des ondes
Sommaire
1
Introduction
Exemples dEDP
Gnralits
Conditions aux limites
Problmes statiques et dynamiques
2
Exemple de problme statique : rsolution numrique de lquation de Laplace
Discrtisation du problme
Reformulation vectorielle de la solution
Solution du problme
3
Problmes dynamiques
Discrtisation de lespace et du temps
Algorithme explicite du premier ordre en temps
Algorithme implicite du premier ordre en temps
Algorithme de CrankNicholson
4
quation des ondes
( ) Thme 5: rsolution numrique des quations aux drives partielles(EDP) Problmes dynamiques 29 mars 2011 51 / 55
quation des ondes
quation des ondes : dirences nies
voquons brivement la rsolution de lquation de dAlembert :
On discrtise le domaine comme pour lquation de la chaleur ;
On se donne des conditions initiales arbitraires u(x, 0) ;
On se xe pour simplier des conditions aux limites de Dirichlet, ou de
Neumann homognes ;
On essaye le schma de dirences nies :

2
u
t
2
= c
2

2
u
x
2

u
n+1
j
+ u
n1
j
2u
n
j
(t)
2
= c
2
u
n
j+1
+ u
n
j1
2u
n
j
(x)
2
(38)
qui est du deuxime ordre en x et en t.
( ) Thme 5: rsolution numrique des quations aux drives partielles(EDP) Problmes dynamiques 29 mars 2011 52 / 55
quation des ondes
Algorithme explicite
En posant = ct/x, on obtient les quations explicites :
u
n+1
j
=
2
(u
n
j+1
+ u
n
j1
) + 2(1
2
)u
n
j
u
n1
j
. (39)
soit, sous forme matricielle :
U
n+1
= 211 +
2
L
1D
U
n
U
n1
+ 2
2
L
1D
V
n
)
o V reprsente nouveau les conditions aux limites sur les bords.
Ce schma explicite est potentiellement instable, selon la valeur de .
( ) Thme 5: rsolution numrique des quations aux drives partielles(EDP) Problmes dynamiques 29 mars 2011 53 / 55
quation des ondes
Critre CFL
Le critre de CourantFriedrichsLewy donne une prescription sur la valeur
de qui doit tre assez petit .
La borne prcise dpend de lquation et aussi de la dimension de lespace.
Lide gnrale est nanmoins toujours la mme :
Le pas de temps t doit tre infrieur au temps mis par londe ( la
vitesse c) pour traverser un pas despace x.
ou de faon quivalente : Le pas despace doit tre suprieur la distance
parcourue par londe durant le pas de temps. Dans le cas contraire, la
mthode est ncessairement instable.
( ) Thme 5: rsolution numrique des quations aux drives partielles(EDP) Problmes dynamiques 29 mars 2011 54 / 55
quation des ondes
Schma de progression et critre CFL
Le schma de progression est dsormais le suivant :
Figure 11: Schma
illustrant la progression
dun pas de temps dans
lalgorithme explicite
pour lquation de
dAlembert t
0
L
x
t
u
j
n+1
u
j
n
x
cne de lumire
n+1
n
n1
Le critre CFL se traduit (dans ce cas simple 1D) par le fait que des points
intervenant dans la progression doivent tre hors du cne de lumire, pour
laisser londe le temps de se propager .
( ) Thme 5: rsolution numrique des quations aux drives partielles(EDP) Problmes dynamiques 29 mars 2011 55 / 55

S-ar putea să vă placă și