Introduction ` a la Simulation Num´ erique
J´er´emie Gressier
Septembre 2009
1 / 37
Plan
1
Pr´ esentation
2
Diff´ erences Finies
3
Int´ egration d’un probl` eme de Cauchy
4
Conclusion
2 / 37
Simulation num´ erique, contexte
Physique Mod` ele
continu
mod´ elisation Mod` ele
discret discr´ etisation
validation
´ etude
Pr´esentation 4 / 37
Discr´ etisation
Discr´ etisation
Repr´ esentation d’un probl` eme continu (dim ∞) en probl` eme de dimension finie Quelques m´ ethodes de repr´ esentation :
valeurs en N points (Diff´ erences Finies)
projection sur une base ` a support r´ eduit (´ El´ ements Finis, Volumes Finis) projection sur une base ` a support ´ etendu (spectral, Fourier, Chebyshev, ...)
x x
x
Types de probl` emes physiques
probl` eme d’´ evolution
Probl` eme ` a condition initiale (Pb de Cauchy) probl` eme d’´ equilibre
Probl` eme ` a conditions limites
(Pb stationnaire, Pb ´ evolution ` a contrainte) condition d’existence d’une solution
probl` eme aux valeurs propres
Pr´esentation 6 / 37
Cadre du cours
Equation diff´ ´ erentielle ordinaire (une coordonn´ ee
xou
t)Probl` eme ` a valeur initiale (´ evolution)
Une (scalaire) ou plusieurs variables (vectoriel) (U de dimension d ) Lin´ eaire ou non-lin´ eaire
Pr´esentation 7 / 37
Calcul discret de d´ eriv´ ees
D´ efinition :
du
dx (x
i) = lim
∆x→0
u(x
i+ ∆x) − u(x
i)
∆x Diff´ erences finies :
„ du dx
«
i
' u(x
i+1) − u(x
i) x
i+1− x
ierreur ?
D´ eveloppement de Taylor : (de u
i±1en x
i) u
i±1= u
i±
„ du dx
«
i
∆x + 1 2
„ d
2u dx
2«
i
∆x
2+ O(∆x
3)
Diff´erences Finies Principes de discr´etisation 9 / 37
D´ eriv´ ees du premier ordre
u
i±1= u
i±
„ du dx
«
i
∆x + 1 2
„ d
2u dx
2«
i
∆x
2+ O(∆x
3)
Diff´ erence d´ ecentr´ ee aval (ordre 1)
„ du dx
«
i
= u
i+1− u
i∆x + O(∆x) Diff´ erence centr´ ee (ordre 2)
„ du dx
«
i
= u
i+1− u
i−12∆x + O(∆x
2)
Interpr´ etation g´ eom´ etrique
x u(x)
x
i−1u
i−1x
i+1u
i+1x
iu
id´ eriv´ ee exacte
d´ecentr´ee amontd´ecentr´ee aval
Diff´erences Finies Principes de discr´etisation 11 / 37
Interpr´ etation g´ eom´ etrique
x u(x)
x
i−1u
i−1x
i+1u
i+1x
iu
id´ eriv´ ee exacte
centr´ee
Diff´erences Finies Principes de discr´etisation 11 / 37
M´ ethodologie g´ en´ erale
x x
n−1x
nx
n+1x
n+21
Choix du support de calcul pour obtenir
„ d
ku dx
k«
xn
`
a l’ordre p
2
D´ eveloppement de Taylor de chaque u
n+i` a l’ordre k + p en x
n3
Ecrire une combinaison arbitraire des ´ u
n+iX
i,support
a
iu
n+i= α
0u
n+ X
m=1,k+p
α
m„ d
mu dx
m«
xn
∆x
mm!
o` u
αmsont des combinaisons lin´ eaires des
ai4
D´ eterminer les a
i` a l’aide des k + p ´ equations : α
m,m6=k= 0 et α
k= 1 Pour une ´ evaluation de d´ eriv´ ee d’ordre k ` a un ordre de pr´ ecision p,
il faut (en g´ en´ eral) un sch´ ema ` a k + p points.
Diff´erences Finies Principes de discr´etisation 12 / 37
Exemple: d´ eriv´ ee premi` ere, au 2
ndordre, d´ ecentr´ e ` a gauche
1/21
choix du support
x x
n−2x
n−1x
n2
d´ eveloppement de Taylor
u
n−2' u
n− 2∆x
„ du dx
«
xn
+ 4∆x
22
„ d
2u dx
2«
xn
u
n−1' u
n− ∆x
„ du dx
«
xn
+ ∆x
22
„ d
2u dx
2«
xn 3
´ ecriture des combinaison des u
n+iX
i=−2,0
a
iu
n+i= (a
−2+ a
−1+ a
0) u
n+(−2a
−2− a
−1)∆x
„ du dx
«
xn
+(4a
−2+ a
−1) ∆x
22
„ d
2u dx
2«
xn
Exemple: d´ eriv´ ee premi` ere, au 2
ndordre, d´ ecentr´ e ` a gauche
2/21
choix du support
x x
n−2x
n−1x
n2
d´ eveloppement de Taylor
3
´ ecriture des combinaison des u
n+i4
identification
8
<
:
a
−2+ a
−1+ a
0= α
0−2a
−2− a
−1= α
14a
−2+ a
−1= α
25
pour obtenir
„ du dx
«
xn
`
a l’ordre 1, il faut α
0= 0 et α
1= 1
(∞t´e solutions)6
pour obtenir
„ du dx
«
xn
`
a l’ordre 2, il faut α
0= 0, α
1= 1 et α
2= 0
„ du dx
«
xn
= u
n−2− 4u
n−1+ 3u
n2∆x + O(∆x
2)
Diff´erences Finies Principes de discr´etisation 14 / 37
Synth` ese des d´ eriv´ ees du premier ordre
ordre x
n−2x
n−1x
nx
n+1x
n+2d´ ecentr´ e gauche 1 -1 1 /h
d´ ecentr´ e droite 1 -1 1 /h
d´ ecentr´ e gauche 2 1 -4 3 /2h
d´ ecentr´ e droite 2 -3 4 -1 /2h
centr´ e 2 -1 0 1 /2h
centr´ e 4 1 -8 0 8 -1 /12h
Diff´erences Finies Principes de discr´etisation 15 / 37
Synth` ese des d´ eriv´ ees du second ordre
ordre
xn−3 xn−2 xn−1 xn xn+1 xn+2 xn+3d´ ecentr´ e gauche 1 1 -2 1
/h2d´ ecentr´ e droite 1 1 -2 1
/h2centr´ e 2
?1 -2 1
/h2d´ ecentr´ e gauche 2 -1 4 -5 2
/h2d´ ecentr´ e droite 2 2 -5 4 -1
/h2centr´ e 4
?-1 16 -30 16 -1
/12h2Diff´erences Finies Principes de discr´etisation 16 / 37
Synth` ese des d´ eriv´ ees centr´ ees d’ordre ´ elev´ e
ordre
xn−3 xn−2 xn−1 xn xn+1 xn+2 xn+3du dx
2 -1 0 1
/2h4 1 -8 0 8 -1
/12hd2u dx2
2 1 -2 1
/h24 -1 16 -30 16 -1
/12h2d3u dx3
2 -1 2 0 -2 1
/2h34 1 -8 13 0 -13 8 -1
/8h3d4u dx4
2 1 -4 6 -4 1
/h44 -1 12 -39 56 -39 12 -1
/6h4R´ esum´ e sur la m´ ethode des Diff´ erences Finies
calcul sur un ensemble de points (maillage)
propri´ et´ es de convergence uniquement en ces points formules ´ etablies pour maillage uniforme
perte des propri´ et´ es de pr´ ecision sur autre maillage support de calcul important avec ordre (d´ eriv´ ee et pr´ ecision)
coˆ ut de calcul
traitement des fronti` eres
Diff´erences Finies Principes de discr´etisation 18 / 37
Probl` eme de Cauchy
8
<
: d U
dt = F (U, t) U (0) = U
0probl` eme d’´ evolution (´ equation d’´ evolution + condition initiale)
´
equation diff´ erentielle ordinaire du premier ordre U de dimension d
Th´ eor` eme de Cauchy-Lipschitz si F (U , t) est lipschitzienne
„
∃M, ∀i, j ∈ {1..d },
˛
˛
˛
˛ dF
id U
j˛
˛
˛
˛
< M
«
alors il existe une solution unique sur R
+Int´egration d’un probl`eme de Cauchy Formulation et notations 20 / 37
R´ eduction de l’ordre du probl` eme
Si l’ordre de d´ erivation maximal k est sup´ erieur ` a un, on se ram` ene au probl` eme de Cauchy pr´ ec´ edent
en d´ efinissant des variables suppl´ ementaires, d´ eriv´ ees des premi` eres.
r´ eduction ` a un probl` eme d’ordre 1
augmentation de la dimension du probl` eme (k × d )
conditions initiales : valeurs et d´ eriv´ ees suppl´ ementaires introduites
Int´egration d’un probl`eme de Cauchy Formulation et notations 21 / 37
R´ eduction de l’ordre : exemple
Syst` eme masse/ressort avec frottement visqueux
m d
2x
dt
2+ c dx
dt + k x = 0 Rq : probl` eme lin´ eaire scalaire, ordre 2
R´ eduction de l’ordre par cr´ eation de variables d´ eriv´ ees
Probl` eme ´ equivalent
d dt
„ x v
«
=
„ 0 1
−k /m −c /m
« „ x v
«
Rq :
syst` eme lin´ eaire de dim 2, ordre 1
(x v ) espace d’´ etats ou espace des phases
Euler explicite
d U
dt = F (U, t) Au premier ordre (
d´evelopp´ee entn),
U
n+1− U
n∆t + O(∆t) = F (U
n, t
n) Euler explicite
U
n+1' U
n+ ∆tF (U
n, t
n)
Int´egration d’un probl`eme de Cauchy Int´egration explicite et implicite 23 / 37
Euler explicite : exemple d’int´ egration
d
2u
dt
2+ 11 du
dt + 10u = 0 avec
u(0) = 10, dudt
(0) = 0
On reformule le probl` eme d dt
„ u v
«
=
„ 0 1
−10 −11
« „ u v
«
t u(t)
solution ∆t = 0.1 ∆t = 0.21
Int´egration d’un probl`eme de Cauchy Int´egration explicite et implicite 24 / 37
Euler explicite : analyse de stabilit´ e
U
n+1= U
n+ ∆t A · U
nHypoth` eses : probl` eme lin´ eaire et A diagonalisable W
n+1= W
n+ ∆t Λ · W
nOn obtient, par composante, W
in+1= (1 + ∆t λ
i)W
inL’int´ egration est stable si ∀i, |1 + ∆t λ
i| < 1
∆t Re(λ)
∆t Im(λ)
-1
condition de stabilit´ e sur ∆t si λ r´ eel, ∆t < 2
|λ|
exemple: 2 valeurs propres {−1; −10}
∆t
max= 0.2 si λ imaginaire pur,
inconditionnellement instable si probl` eme non-lin´ eaire, λ = λ(U)
pas adaptatif
Int´egration d’un probl`eme de Cauchy Int´egration explicite et implicite 25 / 37
Euler implicite
(backward Euler)d U
dt = F (U, t) Au premier ordre (
d´evelopp´ee entn+1),
U
n+1− U
n∆t + O(∆t) = F (U
n+1, t
n+1) Euler implicite
U
n+1− ∆tF (U
n+1, t
n+1) ' U
nRemarques :
si probl` eme non lin´ eaire, difficult´ e ` a r´ esoudre (it´ eratif)
si probl` eme lin´ eaire, inversion matricielle (dim d)
Euler implicite lin´ earis´ e
Forme lin´ earis´ ee
U
n+1= U
n+ ∆t
"
I − ∆t
„ ∂F
∂U
«
Un
#
−1· F (U
n) Remarques :
calcul de la matrice jacobienne (coˆ ut, difficult´ e) coˆ ut de l’inversion
Stabilit´ e W
in+1= 1
1 − ∆t λ
iW
instabilit´ e inconditionnelle pour tout λ
i∈ C
− Re(λi <0)Remarques :
sch´ ema inconditionnellement stable ∆t arbitrairement grand attention, seulement pr´ ecis au premier ordre
Int´egration d’un probl`eme de Cauchy Int´egration explicite et implicite 27 / 37
Pr´ edicteur/correcteur
point milieudU
dt = F (U , t )
U = U
n+ ∆t
2 F (U
n, t
n) U
n+1= U
n+ ∆tF
„
U , t
n+ ∆t 2
«
t
u(t)
Euler explicitepr´edicteur
RK2
2 pas, 2 ´ evaluations de F m´ ethode d’ordre 2
rapport coˆ ut O1/O2 ` a pr´ ecision ´ egale : n
2/2n
Int´egration d’un probl`eme de Cauchy Int´egration multi-´etapes 28 / 37
M´ ethodes de Runge et Kutta
G´ en´ eralisation des m´ ethodes p multi-´ etapes (multi-level)
U
i= U
n+ ∆t
i−1
X
j=0
α
ijF ` U
j´
U
n+1= U
n+ ∆t
p
X
j=0
β
jF ` U
j´
Tableau de Butcher associ´ e
γ
0= 0
γ
1α
1,0γ
iα
i,0α
i,i−1γ
pα
p,0α
p,jα
p,p−1β
0. . . . . . β
pconsistance γ
i= P
i−1j=0
α
i,jet P
pj=0
β
j= 1
Int´egration d’un probl`eme de Cauchy Int´egration multi-´etapes 29 / 37
Tableaux de Butcher : exemples
Euler RK ordre 1 0
1
point milieu trap` eze
RK ordre 2
0
1/2 1/2
0 1
0
1 1
1/2 1/2
RK ordre 3
0
1 1
1/2 1/4 1/4 1/6 1/6 2/3
RK ordre 4
0
1/2 1/2
1/2 0 1/2
1 0 0 1
1/6 1/3 1/3 1/6
Diagramme de stabilit´ e lin´ eaire des m´ ethodes Runge-Kutta
∆tRe(λ)
∆tIm(λ)
extension du domaine de stabilit´ e
extension significative sur l’axe imaginaire (RK3 et RK4)
Int´egration d’un probl`eme de Cauchy Int´egration multi-´etapes 31 / 37
Propri´ et´ es des m´ ethodes num´ eriques
1
CONSISTANCE :
le mod` ele continu est approch´ e avec une erreur d’ordre connu cette erreur d´ epend des pas caract´ eristiques de discr´ etisation l’ordre de pr´ ecision quantifie la variation de cette erreur (//pas) la solution discr` ete th´ eorique converge vers la solution continue
2
STABILIT´ E :
un sch´ ema est stable si la solution du calcul est effectivement la solution du probl` eme discret
toute perturbation num´ erique est amortie
3
CONVERGENCE :
la solution discr` ete converge vers la solution continue lorsque les pas tendent vers 0
Th´ eor` eme de Lax
un sch´ ema consistant et stable est convergent
Int´egration d’un probl`eme de Cauchy Validation et exploitation 32 / 37
Calcul d’erreur
Int´ egration du
dt = −u :
erreur relative ` a t = 10 selon nombre de pas
10 100 1000 10000
1e-12 1e-11 1e-10 1e-09 1e-08 1e-07 1e-06 1e-05 0.0001
0.001 0.01 0.1 1
RK1RK2 RK4
Int´egration d’un probl`eme de Cauchy Validation et exploitation 33 / 37
Convergence de la m´ ethode
Soit
m(h) mesure de la solution discr` ete associ´ ee au pas caract´ eristique h, p l’ordre de pr´ ecision du sch´ ema de discr´ etisation
m
0la solution exacte de cette mesure pour le probl` eme continu On a
m(h) = m
0+ ε(h) ε(h) = O(h
p)
On effectue 3 calculs (m
1, m
2, m
3) de pas (h
1, h
2, h
3) de ratios r . On calcule l’ordre de la m´ ethode selon
p = 1
ln r ln m
3− m
2m
2− m
1Remarque :
Ce calcul peut ˆ etre sensible au comportement r´ eellement asymptotique de la m´ ethode
Extrapolation de Richardson
A partir de `
m(h
1) = m
0+ k h
1p+ O(h
1p+1) m(h
2) = m
0+ k (rh
1)
p+ O(h
p+11) On peut calculer
m
?= r
pm
1− m
2r
p− 1 = m
1+ m
1− m
2r
p− 1 qui est une estimation d’ordre p + 1 de m
0Int´egration d’un probl`eme de Cauchy Validation et exploitation 35 / 37
Conclusion
Diff´ erences Finies
m´ ethode bas´ ee sur les d´ eveloppements de Taylor utilisable pour les EDP (plusieurs coordonn´ ees)
support de calcul potentiellement ´ etendu (coˆ ut, traitement des fronti` eres) sensibilit´ e ` a la qualit´ e de la r´ epartition des points
Probl` eme ` a valeur initiale
discr´ etisation Diff´ erence Finies de l’op´ erateur “temporel”
m´ ethodes explicites, pr´ ecision et stabilit´ e
attention aux probl` emes raides (vp tr` es diff´ erentes) et peu amortis m´ ethodes implicites
coˆ ut de calcul (si d 1) et en non-lin´ eaire attention ` a la pr´ ecision
classe de m´ ethodes utilis´ ees pour l’int´ egration des EDP (instationnaires)
Conclusion 37 / 37