Beruflich Dokumente
Kultur Dokumente
drives partielles(EDP)
Problmes dynamiques
29 mars 2011
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
Contexte
2u
c2 u = 0 (1)
t 2
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 2
= + en 2 dimensions (2)
x 2 y 2
quation de Schrdinger
Lquation de Schrdinger :
u 1
i = u+V u (3)
t 2
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.
quation de la diffusion
Lquation de diffusion
u
+ div J = 0 avec J = D grad(u)
t
Ici J est le flux (de u) par unit de surface et D le coefficient de diffusion,
ce qui donne, dans le cas o D est homogne :
u
=Du (4)
t
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 /Cp .
la diffusion des particules dun fluide dans un autre (quation de Fick).
u=0 (5)
quations elliptiques/paraboliques/hyperboliques
Conditions au limites
On doit se donner des conditions au limites (CL). Lquation tant
vrifie 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 diffrentes
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)
29 mars 2011Problmes
10 / dyna
55
Introduction Problmes statiques et dynamiques
Rgime permanent
2T 2T
T = + =0. (6)
x 2 y 2
Problmes dynamiques
u 2u
=D (7)
t x 2
avec diverses conditions initiales.
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
Nous supposons en outre que les parois ont des tempratures imposes de
lextrieur (CL de Dirichlet).
10C y Figure 2: Exemple de
0 5 10 15 20 25
0 solution dans le cas o une
paroi est maintenue 20 C,
12 11
une autre adjacente est
5 16
14 13 10
9
10 C et les deux autres
18
8 parois sont T = 0 C. Les
20C
7
6 lignes indexes de 1 18
10 5 reprsentent les isothermes.
4
x 3
2
1
15
0C
20
Discrtisation du domaine
Maillage du domaine D
.'.'.
(i' ,j' )
x'=( nl+1)' p
i
.' .
i (i,j' )
(i,nc+1)
.'.'.'.'.'.
.'.'.'.'.'.
nl nl' +1
x p x
y'=(nc+1)' p
Figure 4: Les bords du domaine
Figure 3: Chaque point de la grille portant les conditions aux limites sont
est repr par un couple (i, j) o i numrots : i = 0 pour le haut,
repre la ligne et j la colonne. i = nl + 1 pour le bas, j = 0 pour la
Lintrieur du domaine est numrot gauche, j = nc + 1 pour la droite.
de i = 1 nl et de j = 1 nc.
( ) Thme 5: rsolution numrique des quations aux drives partielles(EDP)
29 mars 2011Problmes
18 / dyna
55
Un problme statique : lquation de Laplace Discrtisation du problme
Indexation du domaine
On a lintrieur de la grille :
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.
Diffrences finies
Les drives partielles sont approches par des diffrences finies, bases
sur des dveloppements de Taylor. Le dveloppement de Taylor :
T p2 2 T p3 3 T
T (x p, y) = T (x, y) p + + O p4
(8)
x 2 x 2 3! x 3
montre que :
2T
T (x + p, y) + T (x p, y) = 2T (x, y) + p2 (x, +
y) O p4 (9)
x 2
do :
2T T (x + p, y) + T (x p, y) 2 T (x, y)
(x, y) = + O p2
2 2
(10)
x p
ce qui conduit :
2T Ti+1,j + Ti1,j 2 Ti,j
(x ) = +
i , y j O p2 (11)
x 2 p2
dont la prcision est du deuxime ordre en p.
( ) Thme 5: rsolution numrique des quations aux drives partielles(EDP)
29 mars 2011Problmes
20 / dyna
55
Un problme statique : lquation de Laplace Discrtisation du problme
2T 1 T p T p
(xi , yj ) xi + , y j xi , y j
x 2 p x 2 x 2
(13)
Ti+1,j + Ti1,j 2 Ti,j
= + O p2
p2
o 2 (nl + nc) tempratures sont connues (celles sur les points aux bords
indiqus par des croix sur la figure 4) et N = nl nc sont dterminer.
nc+1 2E
solution sous la forme dun vecteur :
Est
x 1S k=(i1)nc+j
Sud
( ) Thme 5: rsolution numrique des quations aux drives partielles(EDP)
29 mars 2011Problmes
23 / dyna
55
Un problme statique : lquation de Laplace Reformulation vectorielle de la solution
Formulation vectorielle
AZ=B (18)
Matrice L2D
x
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 nl blocs
L2D = 0 0 1 0 0 1 4 1 0 0 1 0 de taille
0 0 0 1 0 0 1 4 0 0 0 1 nc nc
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
nc nc nc y
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)
29 mars 2011Problmes
25 / dyna
55
Sens de parcours et influence des bords
x
-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
nl blocs de taille nc nc
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
y
nc nc nc nc nc
Un problme statique : lquation de Laplace Reformulation vectorielle de la solution
Dans le cas prsent, avec au plus 5 coefficients non nuls par ligne, on
devrait exploiter le caractre creux de la matrice, et descendre un
nombre doprations proportionnel N .
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
u 2u
=D 2 (20)
t x
dans le domaine spatial x [0, L], et temporel t [0, T ], avec des
condition initiale (CI) :
Discrtisation du domaine
Il faut discrtiser les deux dimensions :
Espace : [0, L] est divis en nx + 1 pas de largeur x = L
nx +1 .
Temps : [0, T ] est subdivis en nt + 1 pas de largeur t = ntT+1 .
On note ujn , la valeur numrique de u(x, t) au point x = jx et linstant
t = nt.
Les CL fixent donc les u0n ugn et les unnx +1 udn pour tout n.
Les CI fixe quant elles les uj0 pour 1 6 j 6 nx .
La mthode de rsolution sera fondamentalement itrative, chaque pas de
temps ncessitant de calculer les nx valeurs de ujn+1 intrieures laide de
ujn et des conditions aux limites ugn+1 et udn+1 .
Diffrences finies
ujn+1 ujn n 2u n + u n
uj+1
=D pour 1 6 j 6 nx
j j1
(23)
t (x)2
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 1er 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.
ujn+1 = uj+1
n
+ (1 2) ujn + uj1
n
pour 1 6 j 6 nx (25)
Formulation matricielle
1.0
0.9
0.8
0.7
0.6
u(x,t)
0.5
0.4
0.3
0.2
0.1
0.0
0 20 40 60 80 100 120
position (x)
2.2
2.0
1.8
1.6
u(x,t)
1.4
1.2
1.0
0.8
0 20 40 60 80 100 120
position (x)
On spare les parties diagonale D et non-diagonale Pour simplifier prenons ici L1D :
R du laplacien comme ci-contre. On doit avoir :
0 1 0 0
L1D Z = B DZ = B RZ Z = 12 (B RZ) .. .. ..
1
0 . . .
que lon rsout .. .. ..
de faon itrative en faisant (avec Z(0) = B : L1D = 211 + 0 . . . 0
|{z} .
D . .. .. ..
Z(0) = B, Z(n+1) = 21 (B RZ(n) )
. . . . 1
0 0 1 0
qui, vu la structure de R scrit aussi : | {z }
n o R
(n+1) (n) (n) (n) (n)
1
Zi Zi = 2
Zi+1 + Zi1 2Zi B
qui est exactement ce que nous avons crit lquation (23) ou (25), avec = 12 .
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)
29 mars 2011Problmes
42 / dyna
55
Problmes dynamiques Algorithme implicite du premier ordre en temps
ujn+1
Figure 9: Schma (n+1) t
illustrant la
progression dun pas n t ujn
de temps avec
lalgorithme implicite
du premier ordre en t.
x
j x (nx+1) x
0
(j 1) x (j +1) x
Formulation matricielle
Ce systme peut tre crit de faon matricielle sous la forme :
M() Un+1 = Un + Vn
avec les mmes, notations que prcdemment, et notamment :
1+2 0 0
. . . .
- . . . . . . ..
. . .
M() = 11 + L1D 0 .. .. .. 0
= (32)
. . . .
. .. .. ..
. -
0 0 - 1+2
Notons que si M est tridiagonale, son inverse est au contraire une matrice
dense. Ainsi ujn+1 dpend de tous les autres lments, mais dautant moins
quils sont plus loigns. Bien sr, lorsque 0, M()1 M() ce
qui signifie que cette dpendance tend disparatre et on retrouve alors
lalgorithme explicite.
( ) Thme 5: rsolution numrique des quations aux drives partielles(EDP)
29 mars 2011Problmes
45 / dyna
55
Problmes dynamiques Algorithme implicite du premier ordre en temps
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.
Principe de lalgorithme
ujn+1
Figure 10: Schma (n+1) t
illustrant la progression n t ujn
dun pas de temps avec
lalgorithme de
CrankNicholson. x
j x (nx+1) x
0
(j 1) x (j +1) x
= (35)
1 + 2 sin2 k 2x
Formulation matricielle
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
2u 2
2 u
ujn+1 + ujn1 2ujn 2 uj+1 + uj1 2uj
n n n
= c = c
t 2 x 2 (t)2 (x)2
(38)
qui est du deuxime ordre en x et en t.
Algorithme explicite
ujn+1 = 2 (uj+1
n
+ uj1
n
) + 2(1 2 )ujn ujn1 . (39)
Critre CFL