hydrogeologie couplage de codes
DESCRIPTION
HYDROGEOLOGIE COUPLAGE DE CODES. J. Erhel – INRIA / RENNES É. Canot - INRIA / RENNES A. Ribes – INRIA / Rennes Chaire UNESCO - Calcul numérique intensif TUNIS - Mars 2004. Introduction Modèles de programmation sur une grille de calcul Application en hydrogéologie Conclusion. Plan. - PowerPoint PPT PresentationTRANSCRIPT
Coupla
ge d
e c
odes
HYDROGEOLOGIE
COUPLAGE DE CODES
J. Erhel – INRIA / RENNES
É. Canot - INRIA / RENNES
A. Ribes – INRIA / Rennes
Chaire UNESCO - Calcul numérique intensif
TUNIS - Mars 2004
Coupla
ge d
e c
odes
Plan
Introduction
Modèles de programmation sur une grille de calcul
Application en hydrogéologie
Conclusion
Coupla
ge d
e c
odes
Couplage de code
Thermique
Transport
Chimie
Ecoulement
Mécanique
Coupla
ge d
e c
odes
Caractéristiques
Echange de données
Volumes importants et échanges assez fréquents
Temps de calcul et espace mémoire
Simulations 3D, calcul transitoire, systèmes linéaires creux
Coupla
ge d
e c
odes
Exemple : insertion d’eau salée
écoulementpression et vitesse
liées à la concentration de sel
transportconcentration de sel
liée à la vitesse
Coupla
ge d
e c
odes
Grille de calcul
Homogeneous cluster
SAN
SAN
Homogeneous cluster
LAN
WAN
SupercomputerVisualisation
Coupla
ge d
e c
odes
Couches logicielles d’une grille
Coupla
ge d
e c
odes
Support de l’exécutif
Réseaux hétérogènes
Machines hétérogènes et structure dynamique
Plusieurs modèles de programmation
Parallélisme et distribution
Coupla
ge d
e c
odes
Applications en hydrogéologie
Couplage de phénomènes physiques
Un code = un phénomène physique
Codes parallèles
Intrusion d’eau salée
Transport réactif
Milieux fracturés
Projet Hydrogrid, de l’ACI-GRID
Coupla
ge d
e c
odes
Programmation d’une grille de calcul
Introduction
Couplage et distribution de composants logiciels
Composants logiciels en hydrogéologie
Conclusion
Coupla
ge d
e c
odes
Les composants logiciels
Unité logique indépendante
Unité de déploiement
Interfaces spécifiées
facette
puits d’évènement
FOU
RN
IR
EQ
UIS
attributs
réceptacle
Coupla
ge d
e c
odes
Assemblage de composants
component C1 : uses I1component C2 : provides I1
C1 C2
I1 I1
I1
connect_I1(C1,C2)
C1 C2
Coupla
ge d
e c
odes
Composants et grilles de calcul
Code modulaire
Distribution des composants
Modèle de composant CORBA
Modèle de composant parallèle GridCCM
Homogeneous cluster
Homogeneous cluster
Homogeneous cluster
Homogeneous cluster
Un composant par grappe
Mécanique
Ecoulement
Transport
ChimieThermique
Homogeneous cluster
Coupla
ge d
e c
odes
Composants parallèles
Redistribution des données
Flux de communications parallèles
Coupla
ge d
e c
odes
Hydrogéologie et grilles de calcul
Introduction
Couplage et distribution de composants logiciels
Composants logiciels en hydrogéologie
Conclusion
Coupla
ge d
e c
odes
Composants et hydrogéologie
un code = un composant logicielCouplage numérique
= distribution des
composants
Composants parallèles
Coupla
ge d
e c
odes
Intrusion d’eau salée
Écoulement : vitesse et pression fonction de la densitéDensité fonction de la concentration en sel
Transport du sel par convection (vitesse) et diffusion-dispersion (vitesse)
Coupla
ge d
e c
odes
EcoulementTransport
temps
t = 0
t = Δt
contrôleur
(schéma itératif à chaque pas de temps )
Intrusion d’eau salée
Coupla
ge d
e c
odes
Intrusion d’eau salée
composantEcoulement
composantTransport
composantContrôleur
vitesse
(scalaires)(scalaires)
concentration
Coupla
ge d
e c
odes
Transport réactif en milieu poreux
u
Convection
u Dispersion
Echange liquide-gaz
Réactions en solution
Dissolution
Précipitation
Sorption
Relargage
Biologie
Coupla
ge d
e c
odes
ChimieTransp.
1
temps
t = 0
t = Δt
contrôleur
Transp. 2
...
...
(schéma itératif à chaque pas de temps)
N espèces
Transport réactif
Coupla
ge d
e c
odes
Transport réactif
composantChimie
composantTransport
concentration(i)
composantTransportcomposant
TransportcomposantTransportcomposantTransport (i)
i : espèce
composantContrôleur
Coupla
ge d
e c
odes
Réseau de fractures
Très grand nombre de fracturesMéthode de sous-domaines
Coupla
ge d
e c
odes
Réseau de fractures
composantEcoulementfracture(i)
vitesse pression
i : fracture
composantEcoulementfracture(i)
composantEcoulementfracture(i)
composantEcoulementfracture(i)
composantEcoulementfracture(i)
composantEcoulementfracture(i)
composantEcoulementfracture (i)
composantréseau de liens
composantContrôleur
Coupla
ge d
e c
odes
Couplage de composants
composantChimie
composantEcoulement
composantTransport
Transportréactif
Réseau de fractures
Eau salée
Coupla
ge d
e c
odes
Composant écoulement
Calcul de la densité
Calcul de la matrice et du second membre
Résolution du système linéaire
Calcul de la vitesse
Composant parallèle
Coupla
ge d
e c
odes
Composant écoulement
Calcul des matrices : METISMinimiser les interfaces et équilibrer les tâches
proc #0
proc #1
proc #2
Coupla
ge d
e c
odes
Composant écoulement
Résolution des systèmes linéaires
maillage (64x40)
132 143 172 3
1300390
6287
52356 20 56 0
0
1000
2000
3000
4000
5000
6000
7000
TP, BiCG TP, Mumps P+TP, BiCG P+TP, Mumps,coefficients calculés
avant
duré
e en m
s
assemblage
resolution et calcul P
calcul Q
Coupla
ge d
e c
odes
Composant écoulement
Ordre du système = O(n)
Améliorer les performances ?3D ?
Coupla
ge d
e c
odes
Composant transport
Convection : calcul explicite et limiteur
Dispersion : calcul de la matrice et du second membre
Résolution du système linéaire
Composant parallèle
Coupla
ge d
e c
odes
Composant chimie
Équilibre chimique en chaque point du maillage
Parallélisme trivial
Équilibrage de charge ?
Coupla
ge d
e c
odes
Distribution des données Eau salée : écoulement-transport
Partitions identiques ou différentes
Coupla
ge d
e c
odes
Distribution des donnéestransport-chimie
Un composant transport par espèce avec partition du maillage
Un composant chimie avec plusieurs espèces par points
transport transport
transport
chimie
Coupla
ge d
e c
odes
Distribution des donnéesréseau de fractures
Un composant écoulement par fracture avec partition de maillage
Structure locale à la fracture / structure globale du réseau
Coupla
ge d
e c
odes
Conclusion et perspectives
Composants logiciels adaptés au couplage multi-physique
Distribution de composants indépendants
Parallélisation des composants par METIS et MUMPS
Améliorer les performances
Développer les composants avec Corba et GridCCM
Simulations 3D