Méthodes numériques avancées et HPC pour lasimulation de phénomènes complexes
Schéma d’ordre arbitrairement élevé pour l’équation d’advection
Marc Massot1 Laurent Series2
1Professeur - Ecole PolytechniqueCentre de Mathématiques Appliquéesco-porteur de l’initiative HPC@Maths
[email protected]énieur de Recherche - CentraleSupélec
Laboratoire MICS - EA 4037Responsable du mésocentre de calcul de l’ENS Paris-Saclay et de CentraleSupélec
Master AMS - Cours X02 / Math. Model. - UPMC
Marc Massot, Laurent Series Méthodes numériques avancées 1/25
Equation d’advection
Considérons l’équation hyperbolique 1D :{∂tu(x , t) + ∂x f (u(x , t)) = 0u(x , 0) = u0(x)
On se place dans le cas linéaire :
f(u(x , t)
)= au(x , t)
il s’agit alors de l’équation d’advection à vitesse constante a :
∂tu(x , t) + ∂x (au(x , t)) = 0
pour laquelle on connaît la solution : u(x , t) = u0(x − at)
Marc Massot, Laurent Series Méthodes numériques avancées 2/25
Equation d’advection
La solution u(x , t) reste contant le long des droites x − at = cste.
0x
t
ta
tb
u0(x)
u(x, ta)
u(x, tb)x−
at=
cste
x−
at=
cste
x−
at=
cste
x−
at=
cste
Marc Massot, Laurent Series Méthodes numériques avancées 3/25
Méthode des volumes finis
Le domaine de calcul est divisé en N volumes Vj = [xj−1/2, xj+1/2] :
xj−1/2 xj+1/2
On intègre sur chaque maille l’équation d’advection :
∂t
∫ xj+1/2
xj−1/2
u(x , t)dx +
∫ xj+1/2
xj−1/2
a∂xu(x , t)dx = 0
Caractère conservatif (bilan des flux) :
∂t
∫ xj+1/2
xj−1/2
u(x , t)dx = au(xj−1/2, t)− au(xj+1/2, t) (1)
Les quantités au(xj−1/2, t) et au(xj+1/2, t) correspondent aux flux de laquantité u à travers les parois xj−1/2 et xj+1/2.
Marc Massot, Laurent Series Méthodes numériques avancées 4/25
Méthode des volumes finis
En intégrant l’expression (1) sur l’intervalle [tn, tn+1] :
∫ xj+1/2
xj−1/2
u(x , tn+1)dx−∫ xj+1/2
xj−1/2
u(x , tn)dx =
∫ tn+1
tnau(xj−1/2, t)dt−
∫ tn+1
tnau(xj+1/2, t)dt
On désigne par unj une approximation de la valeur moyenne sur Vj au temps tn :
unj '
1∆x
∫ xj+1/2
xj−1/2
u(x , tn)dx
En divisant par ∆x , on obtient :
un+1j − un
j = −1
∆x
[∫ tn+1
tnau(xj+1/2, t)dt −
∫ tn+1
tnau(xj−1/2, t)dt
]
Marc Massot, Laurent Series Méthodes numériques avancées 5/25
Méthode des volumes finis
En posant :
f nj±1/2 '
1∆t
∫ tn+1
tn
au(xj±1/2, t)dt
on obtient un schéma de la forme :un+1
j = unj −
∆t
∆x(f n
j+1/2 − f nj−1/2)
u0j =1
∆x
∫ xj+1/2
xj−1/2
u0(x)dx
Les quantités f nj+1/2 et f n
j−1/2 :
constituent les flux numériques du schéma
leur expression en fonction des inconnues discrètes unj détermine le
schéma numérique
Marc Massot, Laurent Series Méthodes numériques avancées 6/25
Schéma upwind
Le schéma upwind consiste à chosir les flux numériques suivants :{f nj+1/2 = aun
j
f nj−1/2 = aun
j−1si a > 0
Il s’écrit donc :un+1
j = unj − a
∆t
∆x(un
j − unj−1)
C’est un schéma d’ordre 1 en temps et en espace et stable, consistant etconvergent si :
a∆t
∆x< 1 (condition CFL)
Marc Massot, Laurent Series Méthodes numériques avancées 7/25
Schéma upwind : résultats numériques
domaine de cacul : x = [−1, 1]
conditions aux limites périodiques
solution initiale : u0(x) = −200 x e−100x2
−1 −0.8 −0.6 −0.4 −0.2 0 0.2 0.4 0.6 0.8 1−10
−5
0
5
10
solution initiale
Marc Massot, Laurent Series Méthodes numériques avancées 8/25
Schéma upwind : résultats numériques
discrétisation : dx = 2/1000 = 0.002
cfl = 0.8, a = 1
schéma très diffusif
−1 −0.8 −0.6 −0.4 −0.2 0 0.2 0.4 0.6 0.8 1−10
−5
0
5
10
solution exacte
solution à t = 2
solution à t = 4
solution à t = 8
Marc Massot, Laurent Series Méthodes numériques avancées 9/25
Schéma upwind : résultats numériques
t = 4, cfl = 0.8, a = 1
schéma converge vers la solution quand h→ 0
−1 −0.8 −0.6 −0.4 −0.2 0 0.2 0.4 0.6 0.8 1−10
−5
0
5
10
solution exacte
solution (dx = 2/1000)
solution (dx = 2/2000)
solution (dx = 2/5000)
Marc Massot, Laurent Series Méthodes numériques avancées 10/25
Schéma upwind : erreur de discrétisation
Erreur de discrétisation :
On appelle erreur de discrétisation en xi , la différence entre la solution exacte u en xi
et la ieme composante de la solution numérique au temps tn :
ei = uni −
1∆x
∫ xj+1/2
xj−1/2
u(xi , tn)dx
Soit E∆x = (e1, . . . , eN )T le vecteur des erreurs obtenues pour un maillage de pas ∆x ,on peut montrer que :
||E∆x || < CT (∆x)p
où CT est une constante strictement positive dépendante de tn et de u0(x) etindépendante de ∆x et p l’ordre du schéma.
Résultats numériques (a = 1, t = 2, cfl = 0.8) :
∆x ||E∆x ||2 nb. itérations1.000000e − 02 1.607349e + 00 2501.000000e − 03 2.562784e − 01 25001.000000e − 04 2.723178e − 02 250001.000000e − 05 2.740323e − 03 250000
Marc Massot, Laurent Series Méthodes numériques avancées 11/25
Schéma upwind : ordre du schéma
On peut estimer l’ordre du schéma en traçant log ||E∆x || en fonction de log ∆x .Si l’on considère que la norme ||E∆x || se comporte comme CT (∆x)p , l’ordre duschéma p correspond à la pente de la droite log ||E∆x || en fonction de log ∆x .
10−5 10−4 10−3 10−2
10−2
10−1
100
0.97
log ∆x
log||E
∆x|| 2
Estimation de l’ordre du schéma upwind (t = 2 et cfl = 0.8)
Marc Massot, Laurent Series Méthodes numériques avancées 12/25
Schéma upwind
Le schéma upwind possède de bonnes propriétés mathématiques luipermettant de converger vers la solution quand ∆x → 0.
Cependant, le phénomène de diffusion ne permet pas d’obtenir unesolution "acceptable" avec une discrétisation "acceptable".
En pratique, il n’est pas possible de diminuer le pas de maillageindéfiniment. En effet, lorsque la précision machine est atteinte, il n’estplus possible d’améliorer la solution en diminuant le pas d’espace.
→ Besoin de schémas plus précis
Marc Massot, Laurent Series Méthodes numériques avancées 13/25
Schéma Lax-Wendroff
On part du schéma upwind :
un+1j = un
j − a∆t
∆x(F 1
j − F 1j−1) avec F 1
j = unj (2)
On considère unj comme la fonction u évaluée en (xj , n∆t). En remplaçant dans
le schéma (2), les termes un+1j et un
j−1 par leur développement de Taylor àl’ordre 2, on obtient l’équation qui est effectivement résolue par (2) à l’ordre 2 :
∂t unj + a∂x un
j =a∆x
2∂2x un
j −a∆x
2∂2t un
j + O(∆x2) + O(∆t2)
Puisque u(x , t) = u0(x − at), on a ∂2t u = a2∂2x u, on peut écrire :
∂t unj + a∂x un
j =
(a∆x
2−
∆t
2
)∂2x un
j + O(∆x2) + O(∆t2)
En posant ν = a ∆t∆x
, on a :
∂t unj + a∂t un
j = a∆x1− ν2
∂2x unj + O(∆x2) + O(∆t2)
Le terme de droite est l’erreur commise par le schéma upwind, elle est d’ordre 1.Le terme a∆x 1−ν
2 ∂2x unj correspond à un opérateur de diffusion qui explique le
caractère très diffusif du schéma.
Marc Massot, Laurent Series Méthodes numériques avancées 14/25
Schéma Lax-Wendroff
En discrétisant ∂2x unj à l’ordre 2 :
∂2x unj =
unj−1 − 2un
j + unj+1
∆x2
on obtient le schéma de Lax-Wendroff en retirant le terme d’erreur d’ordre 1 auschéma d’upwind :
un+1j = un
j − a∆t
∆x
(F 1
j − F 1j−1 +
1− ν2
(unj−1 − 2un
j + unj+1)
)soit :
un+1j = un
j − a∆t
∆x(F 2
j − F 2j−1)
avec F 2j = F 1
j +1− ν2
(unj+1 − un
j )
Le schéma de Lax-Wendroff est d’ordre 2 en temps et en espace et stable,consistant et convergent si :
a∆t
∆x< 1
Marc Massot, Laurent Series Méthodes numériques avancées 15/25
Schémas d’ordre élevéV. Daru et C. Tenaud ont proposé une méthode(1) permettant d’obtenir des schémasd’ordre arbitrairement élevé p en généralisant le procédé pour construire le schéma deLax-Wendroff à partir du schéma d’upwind.
Les schémas s’écrivent :
un+1j = un
j − a∆t
∆x(F N
j+1/2 − F Nj−1/2)
Jusqu’à l’ordre 5, les flux(2) s’écrivent pour a > 0 :
F 1j−1/2 = un
j
F 2j+1/2 = F 1
j−1/2 + ν−12 (un
j − unj+1)
F 3j+1/2 = F 2
j+1/2 + ν−12
ν+13 (un
j−1 − 2unj + un
j+1)
F 4j+1/2 = F 3
j+1/2 + ν−12
ν+13
ν−24 (un
j−1 − 3unj + 3un
j+1 − uj+2)
F 5j+1/2 = F 4
j+1/2 + ν−12
ν+13
ν−24
ν+25 (uj+2 − 4un
j−1 − 6unj − 4un
j+1 − uj+2)
Ils sont d’ordre p en temps et en espace et stable, consistant et convergent si :
a∆t
∆x< 1
(1) V. Daru, C. Tenaud, High order one-step monotonicity-preserving schemes for unsteadycompressible flow calculations, J. Comput. Phys., 193 (2004), pp. 563–594
(2) S. Del Pino, H. Jourdren, Arbitrary high-order schemes for the linear advection and waveequations : application to hydrodynamics and aeroacoustics, CR Acad Sci Paris, Ser I 342 (2006)
Marc Massot, Laurent Series Méthodes numériques avancées 16/25
Schéma d’ordre élevé : résultats numériques
discrétisation : dx = 2/1000 = 0.002
cfl = 0.8, t = 10
−1 −0.8 −0.6 −0.4 −0.2 0 0.2 0.4 0.6 0.8 1−10
−5
0
5
10
solution exacte
ordre 1
ordre 2
ordre 3
ordre 4
ordre 5
Marc Massot, Laurent Series Méthodes numériques avancées 17/25
Schéma d’ordre élevé : résultats numériques
discrétisation : dx = 2/1000 = 0.002
cfl = 0.8, t = 1000
−1 −0.8 −0.6 −0.4 −0.2 0 0.2 0.4 0.6 0.8 1−10
−5
0
5
10
solution exacte
ordre 1
ordre 2
ordre 3
ordre 4
ordre 5
Marc Massot, Laurent Series Méthodes numériques avancées 18/25
Schémas d’ordre élevé
L’interêt de ces schémas est qu’ils tirent parti de la localité spaciale ettemporelle.
→ Le coût de calcul n’augmente pas avec le nombre d’opérations flottantes.
Résultats obtenues (∆x = 2/1000, t = 1000 et cfl = 0.8) :
Ordre du Flop(1) pour le Temps Erreurschéma calcul de Fj+1/2 consommé (s) ||E∆x ||2
1 1 0.88 3.529140e + 002 3 1.2 3.775015e + 003 8 1.53 1.426789e − 014 14 2.45 5.814688e − 035 22 3.26 1.536888e − 046 31 4.12 6.873385e − 067 42 5.21 9.560619e − 07
(1) : Flop = Nombre d’opérations flottantes
Marc Massot, Laurent Series Méthodes numériques avancées 19/25
Schémas d’ordre élevé
Temps relatif :Temps comsommé à l’ordre p
Temps comsommé à l’ordre 1
Flop relatif :Flop utilisés à l’ordre p
Flop utilisés à l’ordre 1
1 2 3 4 5 6 7
0
10
20
30
40
Ordre du schéma
Temps relatifFlop relatif
Marc Massot, Laurent Series Méthodes numériques avancées 20/25
Schémas d’ordre élevé
L’utilisation de ces schémas peut permettre un gain en terme de temps derestitution
Pour obtenir un résultat avec une précision donnée, le schéma d’ordre p + 1 estplus rapide que le schéma d’ordre p
Résultats obtenues pour t = 1000 et cfl = 0.8 pour obtenir ||E∆x ||2 < 10−2 :
Ordre du Nombre de Temps Erreurschéma volumes Vi consommé (s) ||E∆x ||2
1 − − −2 − − −3 2000 10.71 9.963436e − 034 900 1.98 8.857296e − 035 450 0.67 8.169664e − 036 300 0.38 8.664257e − 037 215 0.25 9.190613e − 03
Marc Massot, Laurent Series Méthodes numériques avancées 21/25
Simulation numérique des infrasons
Sous certaines hypothèses (air considéré comme un gaz parfait, régimeisentropique), la propagation des ondes acoustiques infrasonores 1D peut-êtremodélisée par les équations d’Euler linéaires :
∂tp(x , t) + ρ0c20∂xu(x , t) = 0
∂tu(x , t) +1ρ0∂xp(x , t) = 0
(3)
où :
(u, p) sont des petites perturbations de la vitesse et de la pression de l’airautour d’un champ constant (u0, p0)
ρ0 la densité de l’air
c0 la vitesse du son
Marc Massot, Laurent Series Méthodes numériques avancées 22/25
Simulation numérique des infrasons
En posant : w1 = p + ρ0c0u et w2 = p − ρ0c0u, le système (3) peut s’écrire :{∂tw1(x , t) + c0 ∂xw2(x , t) = 0
∂tw2(x , t) + c0 ∂xw1(x , t) = 0(4)
Les deux équations du système (4) sont deux équations d’advection que l’onpeut résoudre par la méthode des volumes finis.
Après résolution du système (4), on calcule u et p via :u(x , t) =
12ρ0c0
(w1(x , t)− w2(x , t))
p(x , t) =12
(w1(x , t) + w2(x , t))
Marc Massot, Laurent Series Méthodes numériques avancées 23/25
Schémas d’ordre élevé : application
Caractéristiques des simulations des infrasons
La fréquence des infrasons est inférieure à 20Hz
Leur vitesse au sol est de l’ordre de 330m.s−1
Les domaines de calculs peuvent atteindre plusieurs milliers de km
→ necessité de schémas précis pour des temps "longs"
→ les schémas d’ordre élevé sont de bons candidats pour résoudre ces problèmes
Mise en œuvre
S. Del Pino, B. Després, P. Havé, H. Jourdren, P.F. Piserchia, 3D Finite Volumesimulation of acoustic waves in the earth atmosphere, Computers & Fluids 38 (2009)
Application au 3D (splitting directionnel)
Application au cas de vitesse d’advection non constante
Marc Massot, Laurent Series Méthodes numériques avancées 24/25
Références
Méthode des volumes finis
Randall J. LeVeque, F inite Volume Methods for Hyperbolic Problems,Cambridge University Press, 2002
Schéma d’ordre élevé
V. Daru, C. Tenaud, High order one-step monotonicity-preserving schemes forunsteady compressible flow calculations, J. Comput. Phys., 193 (2004), pp.563–594
S. Del Pino, H. Jourdren, Arbitrary high-order schemes for the linear advectionand wave equations : application to hydrodynamics and aeroacoustics, CR AcadSci Paris, Ser I 342 (2006)
S. Del Pino, B. Després, P. Havé, H. Jourdren, P.F. Piserchia, 3D Finite Volumesimulation of acoustic waves in the earth atmosphere, Computers & Fluids 38(2009)
Marc Massot, Laurent Series Méthodes numériques avancées 25/25