Approches multiéchelles parallèles en temps pour la simulation des milieux poreux
Vincent Chiaruttini
Christian Rey
Club ZeBuLoN 6 juin 2006
Approches multiéchelles parallèles en temps pour la simulation des milieux poreux 2/50
Plan de l'exposé
● Contexte de l'étude
● Simulation numérique des sites de stockage de déchets nucléaires
● Modèle de comportement d'un milieu poreux
● Formulation d'un problème de mécanique des milieux poreux
● Stratégie de résolution à plusieurs échelles de temps
● Problématique
● Résolution à plusieurs échelles de temps pour les problèmes multiphysiques
● Adaptation automatique des discrétisations temporelles
● Approche multiintégrateur parallélisée en temps
● Principe de l'intégration temporelle parallélisée
● L'algorithme « pararéel » : principes et limitations
● Extension : stratégie multiintégrateur
● Conclusion et perspectives
Approches multiéchelles parallèles en temps pour la simulation des milieux poreux 3/50
Problématique
● Étude de la faisabilité d'un stockage souterrain en couche géologique profonde pour les déchets radioactifs à longue durée de vie
● Modélisation du comportement hydromécanique de l'argilite
● Simulation de l'excavation du puits d'accès
● Étude de l'évolution à long terme
● Simulations et modélisations complexes
● Domaine spatial
de 1 m (colis radioactif) à 40 km (bassin) !
● Domaine temporel
de 1 mois à 10 000 ans !
Approches multiéchelles parallèles en temps pour la simulation des milieux poreux 4/50
Un problème couplé en évolution nonlinéairecf. Biot, Coussy, Schrefler...
● Équations de conservation
● Équilibre interne
● Masse de fluide
● Énergie
● Relations de comportement (milieu saturé et plasticité parfaite)
● Fluide
● Loi de Darcy
● Entropie
● Loi de Fourier
● Contraintes effectives
● Potentiel DruckerPrager
● Conditions imposées
● Aux limites
● Initiales
pp((t=0t=0), ), TT((t=0t=0), ), pp((t=0t=0) connus sur ) connus sur
{F = F d sur ∂F
u= u d sur ∂u
∂=∂F ∪∂F {M . n=M d sur ∂M
p=p d sur ∂p
∂=∂M∪∂p {Q . n=Q d sur ∂Q
T =T d sur ∂T
∂=∂Q∪∂T
QQdd
TTdd
Phase liquide squelette
Phase gazeuse
Approches multiéchelles parallèles en temps pour la simulation des milieux poreux 5/50
Formulation du problème
● Formulation faible● Inconnues primales
● Déplacements du squelette● Pression interstitielle● Température du milieu
● Discrétisation éléments finis mixtes (Q2Q1)● Système d’équations différentielles nonlinéaires
● Schéma d’intégration temporelle● Succession de systèmes nonlinéaires
● Résolution NewtonRaphson● Succession de systèmes linéaires
Comment résoudre efficacement un tel problème multiphysique ?
[0 0 0
−B T−N
−AT
T−C ]
up[
K m −B −A0 −K p 00 0 −K T
] up=
f u
f p
f T
Approches multiéchelles parallèles en temps pour la simulation des milieux poreux 6/50
Stratégies de résolution
● Quelques approches envisageables
● Algorithmes de partitionnement
● Algorithmes « zigzag » (stagerred)
Felippa & Park, Schrefler & al., Farhat & Lesoinne...
● Méthode LaTIn pour les problèmes multiphysiques
Ladevèze, Dureisseix, Néron, Schrefler...
● Résolution monolithique
Bloom, Gosselet & Chiaruttini & Rey & Feyel, Michler & de Borst...
T3
T2
T5
T4
T1
T0
T6
T3
T2
T5
T4
T1
T0
T6
Problèmefluide
Problème mécanique
Calcul découplé sur chaque phénomène physique avec un processus de dialogue pour assurer la stabilité du schéma
Couplage de deux codes de calcul mécanique et fluide
Approches multiéchelles parallèles en temps pour la simulation des milieux poreux 7/50
Choix d’une méthode de résolution
● Un ensemble de difficultés● Couplages forts sur l’ensemble de la structure
● Algorithmes partitionnés classique nombreuses sousitérations● Répartition hétérogène des degrés de liberté (condition LBB)
Ex 3D : 118 410 ddls dont 100 938 déplacements, 8 736 pression, 8 736 température
Interface thermoporomécanique
Problème mécaniqueProblème mécanique
Problème thermiqueProblème thermique
Problème fluideProblème fluide
Laboratoire expérimental de Bure
Inversion d'un système0
2500
5000
7500
10000
12500
Temps de calcul pour 1 pas de temps (s)
Monolithique
Mécanique
Temp/Press
Les couplages sont localisés sur l’intégralité du domaine
=> Interface entre les grandeurs physiques = Ensemble de la structure
Approches multiéchelles parallèles en temps pour la simulation des milieux poreux 8/50
Choix d’une méthode de résolution
● Un ensemble de difficultés● Couplages forts sur l’ensemble de la structure
● Algorithmes partitionnés classique nombreuses sousitérations● Répartition hétérogène des degrés de liberté (condition LBB)
Ex 3D : 118 410 ddls dont 100 938 déplacements, 8 736 pression, 8 736 température● Importantes complexités numériques
● Nombreuses nonlinéarités● Plasticité● Compressibilité du fluide / couplage thermique
● Dissymétrie du système d’équation
Méthode de décomposition de domaine avec des solveurs itératifs de Krylov(Farhat, Roux 1991, Mandel 1993, Gosselet, Rey 2003)Techniques d’accélérations(Rey, Risler 1999, Gosselet 2003)
Solveurs linéaires utilisant unedécomposition de domaine(calcul parallèle)
+ Accélérations multirésolutions
=> Approchemonolithique
Approches multiéchelles parallèles en temps pour la simulation des milieux poreux 9/50
Choix d’une méthode de résolution
● Un ensemble de difficultés● Couplages forts sur l’ensemble de la structure
● Algorithmes partitionnés classique nombreuses sousitérations● Répartition hétérogène des degrés de liberté (condition LBB)
Ex 3D : 118 410 ddls dont 100 938 déplacements, 8 736 pression, 8 736 température● Importantes complexités numériques
● Nombreuses nonlinéarités● Plasticité● Compressibilité du fluide / couplage thermique
● Dissymétrie du système d’équation● Plusieurs temps caractéristiques
● Phénomène thermique 5 fois plus rapide que le phénomène hydraulique● Conditions aux limites différentes sur chaque champ physique
=> Approchemonolithique
3 P t
T,P
p(t)
T(t)
3 T
t
Fd
TN/4
Qd
=> Solveurefficace
Approches multiéchelles parallèles en temps pour la simulation des milieux poreux 10/50
Choix d’une méthode de résolution
● Un ensemble de difficultés● Couplages forts sur l’ensemble de la structure
● Algorithmes partitionnés classique nombreuses sousitérations● Répartition hétérogène des degrés de liberté (condition LBB)
Ex 3D : 118 410 ddls dont 100 938 déplacements, 8 736 pression, 8 736 température● Importantes complexités numériques
● Nombreuses nonlinéarités● Plasticité● Compressibilité du fluide / couplage thermique
● Dissymétrie du système d’équation● Plusieurs temps caractéristiques
● Phénomène thermique 5 fois plus rapide que le phénomène hydraulique● Conditions aux limites différentes sur chaque champ physique
Comment réaliser une intégration temporelle peu coûteuse et respectueuse des phénomènes couplés dans un tel contexte ?
=> Approchemonolithique
=> Discrétisation temporellefine
=> Solveurefficace
Stratégies de calcul à plusieurs échelles pour les problèmes multiphysiques
Méthode de résolution multiintégrateurs parallélisée en temps
Approches multiéchelles parallèles en temps pour la simulation des milieux poreux 11/50
Algorithme à plusieurs échelles de temps
● Idée de base : une méthode multigrille● Introduire DTJ pas de temps adaptée à chaque physique XJ
● Résolutions couplées sur la grille temporelle « lente » ● Transmettre les valeurs du champ « lent » au processus « rapide » ● Résolutions découplées sur la grille temporelle « rapide » ● Transmettre les valeurs correctives du champ « rapide » au processus « lent »
t
Grille temporelle adaptée au phénomène mécanique (résolution mécanique et hydraulique)
tu
Résolution couplée (méca+hydraulique) sur le pas de temps large tu
t
Grille temporelle adaptée au phénomène hydraulique (résolution hydraulique)
tp
Résolution découplée (hydraulique) sur le pas de temps fin tp
Transmission de données pour la correctionTransmission de données pour le découplage
Exemple: résolution d'un problème de poro-mécanique
Approches multiéchelles parallèles en temps pour la simulation des milieux poreux 12/50
Détermination des discrétisations temporelles
● Comment définir chaque discrétisation temporelle ?● Estimateur d’erreur temporelle
● Erreur temporelle relative● Produit scalaire (défini sur l’ensemble de la structure et de l’intervalle temporel d’étude)
● Distance Erreur relative
● Xn : solution obtenue avec une discrétisation n fois plus fine que la solution X
● Hypothèse de linéarité de l’erreur temporelle par rapport au pas de temps
● Domaine d’admissibilité de l’erreur temporelle
● Estimateur d’erreur temporelleX
Xn
||X nX||/(b+1)
||X nX||/(b-1)
X *
SadrefXref
0Xad
A
B C
M
Approches multiéchelles parallèles en temps pour la simulation des milieux poreux 13/50
● Comment définir chaque discrétisation temporelle ?● Utilisation de l’estimateur d’erreur temporelle dans l’algorithme
● Hypothèse linéarité des erreurs temporelles sur chaque champs : hj = k DTj
● Hypothèse de séparation des erreurs (h variable à évolution lente et j à évolution rapide)
● 2 grilles : h (grille grossière) et j (grille fine)● Estimation de l’erreur sur le champ j à l’aide des solutions obtenues sur les deux grilles
● Adaptation automatique des discrétisations temporelles● 2 calculs préliminaires couplés avec des pas de temps DT et DT n
● Détermination des grilles de discrétisation temporelle à l’aide des erreurs estimées
Détermination des discrétisations temporelles
Approches multiéchelles parallèles en temps pour la simulation des milieux poreux 14/50
Validations numériques – Consolidation 3D
● Comportement élastique● Maillage : 27 600 DDL
(x 100 à 5 500 pas de temps)
Contrainte de DruckerPragerContrainte de DruckerPrager(à un instant donné)(à un instant donné)
■ Caractéristiques du matériau(Benchmark du GDR MOMAS)
TTNN = 2. 10 = 2. 1066 s ( s ( 23 jours) 23 jours)
Porosité initialePorosité initiale 00 = 0,15 = 0,15
Coefficient de Biot Coefficient de Biot b = 0,8b = 0,8Module d'Young drainéModule d'Young drainé EE00 = 5 800 MPa = 5 800 MPa
Coefficient de PoissonCoefficient de Poisson 00 = 0,3 = 0,3
Compressibilité de l'eauCompressibilité de l'eau KKee = 2 000 MPa = 2 000 MPa
Perméabilité du milieuPerméabilité du milieu kk00 = 10 = 101212m.sm.s11
F
p0
5 m
3 m
4 m
Flux thermique et fluide nuls
t
F
t1
● Répartition des DDL27 626 DDL (monolithique)25 546 DDL (couplé isotherme)23 466 DDL (purement mécanique) 4 160 DDL (partiellement couplé thermo
hydraulique) 2 080 DDL (découplé thermique ou hydrqaulique)
Approches multiéchelles parallèles en temps pour la simulation des milieux poreux 15/50
Validations numériques – Consolidation 3D
● Comportement élastique● Maillage : 27 600 DDL
(x 100 à 5 500 pas de temps)
F
p0
5 m
3 m
4 m
Flux thermique et fluide nuls
t
F
t1
● Répartition des DDL27 626 DDL (monolithique)25 546 DDL (couplé isotherme)23 466 DDL (purement mécanique) 4 160 DDL (partiellement couplé thermo
hydraulique) 2 080 DDL (découplé thermique ou hydraulique)
Coût résolution hydraulique et thermique
<<=> Coût résolution mécanique
Mise en oeuvre au sein du code de calcul orienté objet ZeBuLoN et calculs menés sur le calculateur NEC TX7 pôle MESO IledeFrance Sud (32 processeurs)
Approches multiéchelles parallèles en temps pour la simulation des milieux poreux 16/50
Consolidation poroélastique
● Augmentation de la précision sur le champ de pression (7 fois plus précis)● Bonne influence sur le champ de déplacement (2 fois plus précis)● Bon ordre de grandeur de l'erreur estimé (légère sousestimation dans le domaine de validité)● Adaptation automatique conforme (erreurs : 0,78% déplacement et 2,15% pression pour un
critère de 1%)
Auto
adaptation
1%
16/16 32/32 64/64 128/128 16/32 16/64 16/128 16/256 12/540,001
0,01
0,1
Erreurs relatives selon les méthodes d'intégration temporelle
Erreur UErreur P
Erreur P est.
Nombre de pas de temps sur chaque champ : #U/#P
Pré
cisi
on
tem
po
relle
rel
ativ
e (l
og)
Intégration monolithique Intégration multiéchelle
Approches multiéchelles parallèles en temps pour la simulation des milieux poreux 17/50
Consolidation thermoporoélastique
● Augmentation de la précision sur les deux champs rapides (pression et température)● Bonne influence sur le champ lent (en déplacement)● Adaptation automatique toujours conforme
● Erreur temporelle de 3% maximum sur le champs de température pour un critère de 1%● Erreur temporelle de 0,2% maximum sur le champs de température pour un critère de 0,1%
20/20/20 40/40/40 160/160/160 20/160/160 20/160/320 16/178/184 163/1784/18490,0001
0,001
0,01
0,1
Erreurs relatives selon les méthodes d'intégration temporelle
Erreur U
Erreur P
Erreur P est.
Erreur T
Erreur T est.
Nombre de pas de temps sur chaque champ : #U/#P/#T
Pré
cisi
on
tem
po
relle
rel
ativ
e (l
og)
1%
Intégration monolithique Multiéchelle Autoadaptation
0,1%
Approches multiéchelles parallèles en temps pour la simulation des milieux poreux 18/50
Consolidation poroélastique sous chargement complexe
● Conditions aux limites modifiées : ajout d'une injection d'eau sur la surface de charge pendant un intervalle de temps très court
F
p0
5 m
3 m
4 m
Flux hydraulique nul
Qd
t
F
t1
Qd
25/25 25/100 50/50 50/400 100/100 100/800 800/8000,0001
0,001
0,01
0,1
1Erreur U
Erreur P
Nombre de pas de temps sur chaque champ : #U/#P
Préc
isio
n te
mp
orel
le r
elat
ive
(log
)
Inté
grat
ion
mon
olit
hiq
ue
Inté
grat
ion
mu
lti
éch
elle
=> Amélioration de la qualité des résultats
Approches multiéchelles parallèles en temps pour la simulation des milieux poreux 19/50
Consolidation poroélastique sous chargement complexe
● Conditions aux limites modifiées : ajout d'une injection d'eau sur la surface de charge pendant un intervalle de temps très court
F
p0
5 m
3 m
4 m
Flux hydraulique nul
Qd
t
F
t1
Qd
Approches multiéchelles parallèles en temps pour la simulation des milieux poreux 20/50
Consolidation poroélastique sous chargement complexe
● Conditions aux limites modifiées : ajout d'une injection d'eau sur la surface de charge pendant un intervalle de temps très court
F
p0
5 m
3 m
4 m
Flux hydraulique nul
Qd
t
F
t1
Qd
Possibilité de « capter » le phénomène observé par la discrétisation fine alors que la grille grossière est trop large
Approches multiéchelles parallèles en temps pour la simulation des milieux poreux 21/50
Cas test nonlinéaire 2D
● Consolidation 2D
● État de contraintes initiales anisotropes
● Simulation du perçage du puits
● mise à pression l'atmosphérique de la paroi
● Relâchement des contrainte sur la paroi
O
R1= 3 m
q
ur
uq
X
Y
G1
GX2
GY2
GX2
GY2
60 m
60 m
15,4 MPa15,4 MPa
11 MP
a11 M
Pa
ppii
((qq))
pi
t(q)
t
Approches multiéchelles parallèles en temps pour la simulation des milieux poreux 22/50
Consolidation 3D en poroplasticité parfaite
● Toujours efficace pour réduire les erreurs temporelles en pression et en déplacement
● Bon ordre de grandeur de l'erreur estimée
● Réduction considérable du temps de calcul pour une erreur temporelle maximale sur tous les champs
Découplage des phénomènes rapides moins nonlinéaires (hydraulique) des phénomènes fortement nonlinéaire (plasticité mécanique)
80/80 160/160 80/160 360/360 80/360 640/640 80/6400,00001
0,0001
0,001
0,01
0,1
Erreurs relatives selon les méthodes d'intégration temporelleSu bt i t le
Error U
Error P
EST. Error P
Nombre de pas de temps sur chaque champ : #U/#P
Pré
ciso
n t
emp
ore
lle r
elat
ive
(lo
g)
80/80 160/160 80/160 360/360 80/360 640/640 80/6400
200
400
600
800
1000
1200
1400
1600Comparaison des temps de calcul
Nombre de pas de temps sur chaque champ : #U/#P
Tem
ps
CP
U (s
)
Intégration usuelle
Multiéchelle
Approches multiéchelles parallèles en temps pour la simulation des milieux poreux 23/50
Conclusion sur l'approche à plusieurs échelles de temps
● Méthode générale pour la résolution des problèmes multiphysiques avec des phénomènes temporelles de temps caractéristiques différents
● Mise en oeuvre au sein du code de calcul ZeBuLoN
● Précision plus homogène sur tous les champs à moindre coût
● Estimateur d'erreur donne un ordre de grandeur convenable (tendance à sous évaluer)
● Adaptation automatique des discrétisations performante
● Possibilité de capter des évolutions rapides sur les champs découplés
● Bonnes performances en nonlinéaire
Approches multiéchelles parallèles en temps pour la simulation des milieux poreux 24/50
Choix d’une méthode de résolution
● Un ensemble de difficultés● Couplages forts sur l’ensemble de la structure
● Algorithmes partitionnés classique nombreuses sousitérations● Répartition hétérogène des degrés de liberté (condition LBB)
Ex 3D : 118 410 ddls dont 100 938 déplacements, 8 736 pression, 8 736 température● Importantes complexités numériques
● Nombreuses nonlinéarités● Plasticité● Compressibilité du fluide / couplage thermique
● Dissymétrie du système d’équation● Plusieurs temps caractéristiques
● Phénomène thermique 5 fois plus rapide que le phénomène hydraulique● Conditions aux limites différentes sur chaque champs physique
Comment réaliser une intégration temporelle peu coûteuse et respectueuse des phénomènes couplés dans un tel contexte ?
=> Approchemonolithique
=> Discrétisation temporellefine
=> Solveurefficace
Stratégies de calcul à plusieurs échelles pour les problèmes multiphysiques
Méthode de résolution multiintégrateurs parallélisée en temps
Approches multiéchelles parallèles en temps pour la simulation des milieux poreux 25/50
Une stratégie de résolution efficace ?
● Première idée : utiliser des solveurs parallèles efficaces● Méthode de décomposition de domaine avec des solveurs itératifs de Krylov
(Farhat, Roux 1991, Mandel 1993, Gosselet, Rey 2003)
● Techniques d’accélérations
(Rey, Risler 1999, Gosselet 2003)
● Réponse efficace pour la résolution des grands systèmes
● Inversion d'un système thermoporomécanique de 118 410 DDL
Solveur direct (à matrice incomplète) 11 402 s
Solveur partitionné ISPP (Schrefler & al. 1996) 9 446 s
Solveur Décomposition de domaine (12 domaines) 629 s
Temps de calculs mesurés sur Cluster Athlon
Peuton envisager une approche comparable sur le domaine temporel ?
Approches multiéchelles parallèles en temps pour la simulation des milieux poreux 26/50
Décomposition de domaine temporel : introduction
● Résolution d'un système différentiel linéaire
T ref temps de résolution CPU pour un pas de temps
=> T seq = m T ref
MAIS
Comment une solution peutelle être obtenue plus rapidement avec le même pas de temps T ?
{Résoudre f X , X , t =0 ; t ∈[T 0,T N] avec T =
T N−T 0
mX 0=X 0
xx
ttTT N NT T 00
xx00
TT
Approches multiéchelles parallèles en temps pour la simulation des milieux poreux 27/50
Décomposition de domaine temporel : introduction
● Mise en oeuvre d'une méthode multigrille parallèle● Introduction d'une décomposition en domaines grossiers (N sous domaines)
avec m = k N
=> T prop= N T ref
NTT
TkT N 0 -D
{Résoudre f X , X , t =0 ; t ∈[T 0,T N] avec T =
T N−T 0
mX 0=X 0
tt
xx
ttT T 11 T T 22 TT N NT T 00
hh00=x=x00
hh11
hh22
DDTT
hh33
Approches multiéchelles parallèles en temps pour la simulation des milieux poreux 28/50
Décomposition de domaine temporel : introduction
● Mise en oeuvre d'une méthode multigrille parallèle
Si hi=X(T i) la convergence est atteinte : T // = (k+N) T ref
Accélération =
Efficacité 100 % (si N << k) N fois plus vite avec N processeurs
NkNk
T
Tseq
//
{f X , X ,t =0 ; t ∈[T 0, T N] avec t=
T N−T 0
mX 0=X 0
Pour des conditions initiales données hi, (i=0, N1), résoudre en parallèle
xx
ttT T 11 T T 22 TT N NT T 00
hh00=x=x00
hh11
hh22xx00
11
xx0022
xx0033
TT DDTT
hh33
Approches multiéchelles parallèles en temps pour la simulation des milieux poreux 29/50
Décomposition de domaine temporel : introduction
● Mise en oeuvre d'une méthode multigrille parallèle
MAIS
Comment déterminer les bonnes conditions initiales sur chaque domaine ?
{f X , X ,t =0 ; t ∈[T 0, T N] avec t=
T N−T 0
mX 0=X 0
Pour des conditions initiales données hi, (i=0, N1), résoudre en parallèle
xx
ttT T 11 T T 22 TT N NT T 00
hh00=x=x00
hh11
hh22xx00
11
xx0022
xx0033
TT DDTT
hh33
Approches multiéchelles parallèles en temps pour la simulation des milieux poreux 30/50
Décomposition de domaine temporel : l'algorithme « pararéel »
● Mise en oeuvre d'une méthode multigrille parallèle
Méthode « pararéelle » : algorithme global itératif (Lions et al. 2001)
=> Propagation des sauts (sur la grille grossière) pour corriger les conditions initiales
{f X , X ,t =0 ; t ∈[T 0, T N] avec t=
T N−T 0
mX 0=X 0
Pour des conditions initiales données hi, (i=0, N1), résoudre en parallèle
xx
ttT T 11 T T 22 TT N NT T 00
hh00=x=x00
hh11
hh22xx00
11
xx0022
xx0033
TT DDTT
hh33
Approches multiéchelles parallèles en temps pour la simulation des milieux poreux 31/50
Principe de l'algorithme « pararéel »
● Initialisation (intégrateur grossier F0
i )
● Itération j → j + 1● Résoudre en parallèle● Correction séquentielle (intégrateur grossier F
0i)
● Test de convergence
tt
xx
ttT T 11 T T 22 TT N NT T 00
hh00=x=x00
DDTT
XX0011
XX0022
XX0033
ij
ii
iiii
hTX
TTttXXf
)(
, ; 0),,( 1
Résolution séquentielle sur la grille grossière=> solution X
0i
Approches multiéchelles parallèles en temps pour la simulation des milieux poreux 32/50
Principe de l'algorithme « pararéel »
● Initialisation (intégrateur grossier F0
i )
● Itération j → j + 1● Résoudre en parallèle● Correction séquentielle (intégrateur grossier F
0i)
● Test de convergence
tt
xx
ttT T 11 T T 22 TT N NT T 00
hh00=x=x00
DDTT
hh0011=X=X
0011
hh0022=X=X
0022
XX0033
Résolution séquentielle sur la grille grossière=> solution X
0i = conditions initiales h0
i
ij
ii
iiii
hTX
TTttXXf
)(
, ; 0),,( 1
Approches multiéchelles parallèles en temps pour la simulation des milieux poreux 33/50
xx
ttT T 11 T T 22 TT N NT T 00
hh00=x=x00
xx0011
xx0022
xx0033
TT DDTT
hh0011=X=X
0011
hh0022=X=X
0022
XX0033
Principe de l'algorithme « pararéel »
● Initialisation (intégrateur grossier F0
i )
● Itération j → j + 1● Résoudre en parallèle● Correction séquentielle (intégrateur grossier F
0i)
● Test de convergence
Résolution séquentielle sur la grille grossière=> solution X
0i = conditions initiales h0
i => solution x
0i
ij
ii
iiii
hTX
TTttXXf
)(
, ; 0),,( 1
Approches multiéchelles parallèles en temps pour la simulation des milieux poreux 34/50
xx
ttT T 11 T T 22 TT N NT T 00
hh00=x=x00
xx0011
xx0022
xx0033
TT DDTT
hh0011=X=X
0011
hh0022=X=X
0022
XX0033
Principe de l'algorithme « pararéel »
● Initialisation (intégrateur grossier F0
i )
● Itération j → j + 1● Résoudre en parallèle● Correction séquentielle (intégrateur grossier F
0i)
● Test de convergence
Résolution séquentielle sur la grille grossière=> solution X
0i = conditions initiales h0
i => solution x
0i => sauts (x
0i X
0i)
ij
ii
iiii
hTX
TTttXXf
)(
, ; 0),,( 1
Approches multiéchelles parallèles en temps pour la simulation des milieux poreux 35/50
xx
ttT T 11 T T 22 TT N NT T 00
hh00=x=x00
xx0011
xx0022
xx0033
TT DDTT
hh0011=X=X
0011
hh0022=X=X
0022
XX0033
=h=h11
11
Principe de l'algorithme « pararéel »
● Initialisation (intégrateur grossier F0
i )
● Itération j → j + 1● Résoudre en parallèle● Correction séquentielle (intégrateur grossier F
0i)
● Test de convergence
tt
xx
T T ii T T i+1i+1
hhjjii
XXjjii + 1 + 1
hhjjii+ 1+ 1
xxjjii + 1+ 1
HHjj
ii++
++11
1 1 ? ?
Intégrateur Intégrateur FF00ii
Intégrateur Intégrateur FFjjii
ij
ii
iiii
hTX
TTttXXf
)(
, ; 0),,( 1
Approches multiéchelles parallèles en temps pour la simulation des milieux poreux 36/50
xx
ttT T 11 T T 22 TT N NT T 00
hh00=x=x00
xx0011
xx0022
xx0033
TT DDTT
hh0011=X=X
0011
hh0022=X=X
0022
XX0033
=h=h11
11
XX1122
Principe de l'algorithme « pararéel »
● Initialisation (intégrateur grossier F0
i )
● Itération j → j + 1● Résoudre en parallèle● Correction séquentielle (intégrateur grossier F
0i)
● Test de convergence
tt
xx
T T ii T T i+1i+1
hhjjii
XXjjii + 1 + 1
hhjjii+ 1+ 1
XXjjii++
++11
11
xxjjii + 1+ 1
Intégrateur Intégrateur FF00ii
Intégrateur Intégrateur FFjjii
HHjj
ii++
++11
1 1 ? ?
ij
ii
iiii
hTX
TTttXXf
)(
, ; 0),,( 1
Approches multiéchelles parallèles en temps pour la simulation des milieux poreux 37/50
xx
ttT T 11 T T 22 TT N NT T 00
hh00=x=x00
xx0011
xx0022
xx0033
TT DDTT
hh0011=X=X
0011
hh0022=X=X
0022
XX0033
=h=h11
11
hh1122
XX1122
Principe de l'algorithme « pararéel »
● Initialisation (intégrateur grossier F0
i )
● Itération j → j + 1● Résoudre en parallèle● Correction séquentielle (intégrateur grossier F
0i)
● Test de convergence
tt
xx
T T ii T T i+1i+1
hhjjii
XXjjii + 1 + 1
hhjjii+ 1+ 1
XXjjii++
++11
11
xxjjii + 1+ 1
hhjjii++
++11
11
Correction linéaireCorrection linéairehhjj
ii++
++11
11==xxjjii ++
11+(+(XXjj
ii++
++11
11XXjjii ++
11))
Intégrateur Intégrateur FF00ii
Intégrateur Intégrateur FFjjii
ij
ii
iiii
hTX
TTttXXf
)(
, ; 0),,( 1
Approches multiéchelles parallèles en temps pour la simulation des milieux poreux 38/50
xx
ttT T 11 T T 22 TT N NT T 00
hh00=x=x00
xx0011
xx0022
xx0033
TT DDTT
hh0011=X=X
0011
hh0022=X=X
0022
XX0033
=h=h11
11
hh1122
hh1133
XX1122
XX1133
Principe de l'algorithme « pararéel »
● Initialisation (intégrateur grossier F0
i )
● Itération j → j + 1● Résoudre en parallèle● Correction séquentielle (intégrateur grossier F
0i)
● Test de convergence
tt
xx
T T ii T T i+1i+1
hhjjii
XXjjii + 1 + 1
hhjjii+ 1+ 1
XXjjii++
++11
11
xxjjii + 1+ 1
hhjjii++
++11
11
Correction linéaireCorrection linéairehhjj
ii++
++11
11==xxjjii ++
11+(+(XXjj
ii++
++11
11XXjjii ++
11))
Intégrateur Intégrateur FF00ii
Intégrateur Intégrateur FFjjii
ij
ii
iiii
hTX
TTttXXf
)(
, ; 0),,( 1
Approches multiéchelles parallèles en temps pour la simulation des milieux poreux 39/50
xx
ttT T 11 T T 22 TT N NT T 00
hh00=x=x00
xx0011
xx0022
xx0033
TT DDTT
hh0011=X=X
0011
hh0022=X=X
0022
XX0033
=h=h11
11
hh1122
hh1133
XX1122
XX1133
Principe de l'algorithme « pararéel »
● Initialisation (intégrateur grossier F0
i )
● Itération j → j + 1● Résoudre en parallèle● Correction séquentielle (intégrateur grossier F
0i)
● Test de convergence
ij
ij
i
xj hh - 1maxh
ij
ii
iiii
hTX
TTttXXf
)(
, ; 0),,( 1
Approches multiéchelles parallèles en temps pour la simulation des milieux poreux 40/50
Algorithme « pararéel »
● Quelques remarques sur l'algorithme
● Convergence et stabilité
(G. Bal 2005 et autres …)
● Efficacité
T seq k N T ref et T // #it (k T ref)
=> Accélération = T seq / T // N / #it
● Efficacité maximale = 50% (convergence en 2 itérations)
Solutions pour améliorer les performances
utiliser un meilleur propagateur ?
augmenter l'efficacité des résolutions locales ?
T ref temps de résolution CPU pour un pas de temps
xx
ttT T 11 T T 22 TT N NT T 00
xx00
XX0011
XX0022
xx0011
xx0022
xx0033
TT DDTT
XX0033
NTT
T N 0-D
NkTT
kTΔ
Tδ N
0-
Approches multiéchelles parallèles en temps pour la simulation des milieux poreux 41/50
Stratégie d'intégration multiintégrateur
● Principe
● Résoudre le problème parallélisé avec un niveau de précision adapté
● Utiliser plusieurs intégrateurs temporels FJI
● pour chaque sous domaine grossier I
● pour chaque itération globale J
● Utiliser des intégrateurs de plus en plus fins
● Réduction du temps de calcul
● Permet l'obtention de solution de qualité a priori « illimité »
=> coût des premières itérations << coût de la dernière itération (la plus fine)
t1j
tpj
Intégrateur F1j
Intégrateur Fpj
t0j
Intégrateur F0j
T 0 T NT N1
Itér
atio
n p
Approches multiéchelles parallèles en temps pour la simulation des milieux poreux 42/50
xx
ttT T 11 T T 22 TT N NT T 00
hh00=x=x00
xx0011
xx0022
xx0033
TT DDTT
hh0011=X=X
0011
hh0022=X=X
0022
XX0033
=h=h11
11
hh1122
hh1133
XX1122
XX1133
Principe de l'algorithme « pararéel »
● Initialisation (intégrateur grossier F0
i )
● Itération j → j + 1● Résoudre en parallèle (intégrateur fin intégrateur F
ji)
● Correction séquentielle (intégrateur grossier F0
i)
● Test de convergence● Détermination du nouvel intégrateur F
ji+ 1
● Correction linéaire (continuité)
- x
j
xji
jij tt
11 h
h
Itération 1
Approches multiéchelles parallèles en temps pour la simulation des milieux poreux 43/50
xx
ttT T 11 T T 22 TT N NT T 00
hh00=x=x00
xx0011
xx0022
xx0033
TT DDTT
hh0011=X=X
0011
hh0022=X=X
0022
XX0033
=h=h11
11
hh1122
hh1133
XX1122
XX1133
Principe de l'algorithme « pararéel »
● Initialisation (intégrateur grossier F0
i )
● Itération j → j + 1● Résoudre en parallèle (intégrateur fin intégrateur F
ji)
● Correction séquentielle (intégrateur grossier F0
i)
● Test de convergence● Détermination du nouvel intégrateur F
ji+ 1
● Correction linéaire (continuité)
Itération 2
- x
j
xji
jij tt
11 h
h
Approches multiéchelles parallèles en temps pour la simulation des milieux poreux 44/50
xx
ttT T 11 T T 22 TT N NT T 00
hh00=x=x00
xx0011
xx0022
xx0033
TT DDTT
hh0011=X=X
0011
hh0022=X=X
0022
XX0033
=h=h11
11
hh1122
hh1133
XX1122
XX1133
Principe de l'algorithme « pararéel »
● Initialisation (intégrateur grossier F0
i )
● Itération j → j + 1● Résoudre en parallèle (intégrateur fin intégrateur F
ji)
● Correction séquentielle (intégrateur grossier F0
i)
● Test de convergence● Détermination du nouvel intégrateur F
ji+ 1
● Correction linéaire (continuité)
Itération 3
- x
j
xji
jij tt
11 h
h
Approches multiéchelles parallèles en temps pour la simulation des milieux poreux 45/50
xx
ttT T 11 T T 22 TT N NT T 00
hh00=x=x00
xx0011
xx0022
xx0033
TT DDTT
hh0011=X=X
0011
hh0022=X=X
0022
XX0033
=h=h11
11
hh1122
hh1133
XX1122
XX1133
Principe de l'algorithme « pararéel »
● Initialisation (intégrateur grossier F0
i )
● Itération j → j + 1● Résoudre en parallèle (intégrateur fin intégrateur F
ji)
● Correction séquentielle (intégrateur grossier F0
i)
● Test de convergence● Détermination du nouvel intégrateur F
ji+ 1
● Correction linéaire (continuité)
Itération 3
- x
j
xji
jij tt
11 h
h
Approches multiéchelles parallèles en temps pour la simulation des milieux poreux 46/50
Validations numériques – Consolidation 3D
● Comportement élastique● Maillage : 8 800 DDL
(x 100 à 3 500 pas de temps)
Contrainte de DruckerPragerContrainte de DruckerPrager(à un instant donné)(à un instant donné)
■ Caractéristiques du matériau(Benchmark du GDR MOMAS)
TTNN = 2. 10 = 2. 1066 s ( s ( 23 jours) 23 jours)
Porosité initialePorosité initiale 00 = 0,15 = 0,15
Coefficient de Biot Coefficient de Biot b = 0,8b = 0,8Module d'Young drainéModule d'Young drainé EE00 = 5 800 MPa = 5 800 MPa
Coefficient de PoissonCoefficient de Poisson 00 = 0,3 = 0,3
Compressibilité de l'eauCompressibilité de l'eau KKee = 2 000 MPa = 2 000 MPa
Perméabilité du milieuPerméabilité du milieu kk00 = 10 = 101212m.sm.s11
F
p0
5 m
3 m
4 m
Flux fluide nul
t
F
t1
● Répartition des DDL27 626 DDL (monolithique)25 546 DDL (couplé isotherme)23 466 DDL (purement mécanique) 4 160 DDL (partiellement couplé thermo
hydraulique) 2 080 DDL (découplé thermique ou hydrqaulique)
Approches multiéchelles parallèles en temps pour la simulation des milieux poreux 47/50
Performances théoriques de l'approchemultiintégrateurs
● Hypothèses● N sousdomaines temporels● Problème linéaire (intégration qméthode)● T ref temps CPU pour le calcul sur un pas● Temps de communication négligés● Linéarité de l'erreur temporelle par rapport
au pas de temps● L'erreur est divisée par un facteur k=7 à
chaque itération● Performances à erreur temporelle
équivalente● Méthode « pararéelle » avec J itérations
● Accélération maximale N/2● Méthode multiintégrateurs avec J
itérations● Utilisation de grille optimale (k j souspas)● Accélérations maximale N (k1)/k
● La discrétisation temporelle finale n'a pas besoin d'être déterminée
● L'accélération n'est plus limitée par le nombre d'itérations
Itératio
n 1
Itératio
n 2
Itératio
n 3
Itératio
n 4
Itératio
n 5
Itératio
n 6
02,5
5
7,510
12,515
17,520
22,5
25
27,5
Accélération théorique par rapport à larésolution séquentielle de qualité équivalente
avec 32 Processeurs
PR 2401 pas
PR 343 pas
PR 49 pas
MI 7^p pas
Acc
élér
atio
n
Approches multiéchelles parallèles en temps pour la simulation des milieux poreux 48/50
Consolidation 3D poroélastique isotherme
● Accélération Sequentielle / Parallèle● Pararéel
● Efficacité = 42.5 % (8 proc.)● Multiintégrateurs
● 8 procs. efficacités de 60% à 75% ● 16 proc. efficacité = 73%
● Possibilité d'atteindre des précisions importantes
Iter/# Iter/# T PrécisionT Précision TempsTempsMéthodeMéthode # # TT UU PP CPUCPU
SéquentielleSéquentielle 392392 3.90e-4 3.90e-4 2.87e-3 2.87e-3 1 673 s1 673 sPararéel 8 CPUPararéel 8 CPU 2/3922/392 4.40e-4 4.40e-4 3.62e-3 3.62e-3 499 s 499 sMulti-intg 8 CPUMulti-intg 8 CPU 2/3922/392 3.99e-4 3.99e-4 2.76e-32.76e-3 337 s 337 s
SéquentielleSéquentielle 27442744 4.43e-54.43e-5 3.24e-43.24e-4 11 498 s11 498 sMulti-intg 8 CPUMulti-intg 8 CPU 3/27443/2744 5.12e-55.12e-5 3.89e-43.89e-4 1 920 s 1 920 s
Séquentielle Séquentielle 34563456 3.47e-53.47e-5 2.20e-42.20e-4 14 557 s14 557 sMulti-intg 16 CPUMulti-intg 16 CPU 3/34563/3456 3.57e-53.57e-5 2.33e-42.33e-4 1 281 s 1 281 s
Itératio
ns 0/1
Itératio
ns 1/2
Itératio
ns 2/3
0
1
2
3
4
5
6
7
8
9
10
PR 343 pas
MI 7^p pas
Gai
n e
n p
réci
sio
n e
ntr
e 2
itér
atio
ns
Gai
n e
n p
réci
sio
n e
ntr
e 2
itér
atio
ns
Iter 1
Iter 2
Iter 3
0123456789
10111213
PR 343 pasPR 343 pas
PR 49 pasPR 49 pas
PR 7 pasPR 7 pas
MI 7^p pasMI 7^p pas
Acc
élér
atio
n
Résultats obtenus avec 16 processeurs
Approches multiéchelles parallèles en temps pour la simulation des milieux poreux 49/50
Description du cas test nonlinéaire
● Consolidation 2D
● État de contraintes initiales anisotropes
● Simulation du perçage du puits
● mise à pression l'atmosphérique de la paroi
● Relâchement des contrainte sur la paroi
O
R1= 3 m
q
ur
uq
X
Y
G1
GX2
GY2
GX2
GY2
60 m
60 m
15,4 MPa15,4 MPa
11 MP
a11 M
Pa
ppii
((qq))
pi
t(q)
t
Approches multiéchelles parallèles en temps pour la simulation des milieux poreux 50/50
Intégration temporelle parallélisée
● Simulation du problème d'excavation 2D avec un comportement poroplastique parfait à perméabilité constante
● Premiers résultats sur une structure à 10 000 DDL
Accélération du temps de calcul de 4,4 avec 8 processeurs soit une efficacité de 55 %
Itérations/Itérations/ Précisions Précisions TempsTempsMéthodeMéthode Pas de tempsPas de temps UU PP pp CPUCPU
SéquentielleSéquentielle 512512 4.03e-44.03e-4 2.51e-32.51e-3 1.06e-31.06e-3 2734 s2734 sMulti-intg 8 CPUMulti-intg 8 CPU 3/5123/512 4.80e-44.80e-4 2.72e-32.72e-3 1.89e-31.89e-3 617 s617 s
Approches multiéchelles parallèles en temps pour la simulation des milieux poreux 51/50
Conclusion sur l'approche multiintégrateur parallèle
● Meilleure efficacité de la décomposition de domaine en temps en utilisant plusieurs intégrateurs adaptés dans le processus itératif
● Intérêt à effectuer plus de 2 itérations (solution de qualité accessible avec un nombre de processeurs limité)
● Possibilité d'atteindre des solutions de grande précision temporelle sans imposer de discrétisation temporelle cible
● Premiers résultats encourageants et efficacité supérieure à la méthode « pararéelle » (55%) sur des problèmes nonlinéaires
Approches multiéchelles parallèles en temps pour la simulation des milieux poreux 52/50
Conclusion générale et perspectives
● Développement de nouvelles stratégies multiéchelles efficaces pour les problèmes multiphysiques
● Approche à plusieurs échelles de temps
● Méthode multiintégrateur parallélisée en temps
● Perspectives
● Simulations 3D avec désaturation du milieu
● Validation des approches dans un autre contexte (diffusion en double porosité, dynamique)
● Affiner les discrétisations spatiales dans le processus itératif parallèle en temps
● Améliorer le propagateur dans le cadre d’un solveur à décomposition de domaine