390 likes | 568 Views
CALCIUM : l'outil de couplage de codes de EDF-R&D. Jean-Yves Berthou EDF Division Recherche et Développement. Plan. Le couplage de codes Un outil logiciel pour le couplage de codes ? CALCIUM : l'outil de couplage de codes de EDF-R&D Les utilisations et utilisateurs de CALCIUM
E N D
CALCIUM : l'outil de couplage de codes de EDF-R&D Jean-Yves Berthou EDF Division Recherche et Développement CALCIUM : l'outil de couplage de codes de EDF-R&D - 1
Plan • Le couplage de codes • Un outil logiciel pour le couplage de codes ? • CALCIUM : l'outil de couplage de codes de EDF-R&D • Les utilisations et utilisateurs de CALCIUM • Conclusions et perspectives CALCIUM : l'outil de couplage de codes de EDF-R&D - 2
Le couplage de codes • Besoins croissants en modélisation de phénomènes couplés • Prévision climatique (Météo-France) • Plasmas (CEA-DAM) • Fonctionnement des centrales (Framatome, CEA, IPSN, EDF) • Conception de turbines (SNECMA) • Migrations (pollution ou dépollution) de polluants réactifs • Simulation de fours verriers • Diffusion de la pollution atmosphérique ... CALCIUM : l'outil de couplage de codes de EDF-R&D - 3
Le couplage de codes • Riche patrimoine de codes disciplinaires • Thermo-mécanique 3D : ASTER(EDF), CASTEM(CEA) • Thermohydraulique 3D : N3S (EDF), THYC (EDF), TRIO_U(CEA), FLICA (CEA) • Electromagnétisme 3D : TRIFOU (EDF), FLUX3D(CEDRAT) • Diffusion neutronique 3D : COCCINELLE (EDF), CRONOS (CEA) • Réseaux électriques : EUROSTAG (EDF) • Fonctionnement des centrales : LEGO(ENEL), CATHARE (CEA-EDF-FRA) CALCIUM : l'outil de couplage de codes de EDF-R&D - 4
action Modèle 1 Modèle 2 réaction Le couplage de codes • Différents types de couplage • monophysique, multidomaine (couplage par les conditions limites) • multiphysique, monodomaine (couplage par les termes sources) • Systèmes multi-échelles • Intensité du couplage • couplage faible : la réaction est négligeable • enchaînement de codes : exécutions successives • couplage fort : la réaction n’est pas négligeable • couplage de codes : exécutions simultanées, communication, synchronisation action Modèle 1 Modèle 2 CALCIUM : l'outil de couplage de codes de EDF-R&D - 5
Le couplage de codes En l'absence de couplage : X(a1,b1,x) = 0 - a1, b1, paramètres connus - x inconnue Y(a2,b2,y) = 0 - a2,b2 paramètres connus - y inconnue Il y a couplage lorsque : b1 dépend de y : b1 = f(y) ; b2 dépend de x : b2=f(x) x b2 b1 y Y X a1 a2 Conclusion : ECHANGE DE DONNEES entre codes nécessaire CALCIUM : l'outil de couplage de codes de EDF-R&D - 6
Un outil logiciel pour le couplage de codes ? • En l’absence d’outils pour le couplage de codes, plusieurs approches possibles : • 1. Implanter ex nihilo le phénomène couplé : • Complexe du point de vue physique, numérique, informatique : risques d’échec élevés • Simplification potentielle de certains effets intervenant dans le système couplé • On ne réutilise pas le patrimoine de codes développés depuis 30 à 40 ans CALCIUM : l'outil de couplage de codes de EDF-R&D - 7
Un outil logiciel pour le couplage de codes ? • 2. Fusion de codes : • Difficile : chaque code a sa propre logique de développement, de maintenance corrective/évolutive • Perte d’indépendance des codes • Multiplication potentielle des versions des codes intervenant dans plusieurs systèmes couplés • => Nécessité d’un coupleur CALCIUM : l'outil de couplage de codes de EDF-R&D - 8
Un outil logiciel pour le couplage de codes ? • PROBLEME : • Maitriser la complexité de la mise en œuvre du couplage • Réutiliser les codes existants pour les coupler à l’image des processus physiques • Intervenir peu dans les codes • Préserver l’indépendance des équipes de développement • SOLUTION : Utiliser un outil intermédiaire appelé COUPLEUR DE CODES qui prend en charge les échanges de données et les synchronisations • adapté aux codes écrits en FORTRAN ou en C • portable sur de nombreuses plates-formes matérielles • permettant les couplages distribués en réseau • exploitant le parallélisme éventuel du couplage • COUPLEUR DE CODES EDF : CALCIUM CALCIUM : l'outil de couplage de codes de EDF-R&D - 9
CALCIUM : l'outil de couplage de codes de EDF-R&D • Un outil : CALCIUM (responsabilité MMN) - Calcium V1 depuis décembre 93 - Calcium V2 en exploitation depuis juin 1996 - Outil rodé, fiable, sous AQ - Construit au dessus de PVM • Un guide utilisateur Calcium • Batterie d’exercices (TPs) et procédure d’installation • Un site WEB depuis avril 1999 (évaluation gratuite) : http://www.edf.fr/der/html/produits/logiciels/calcium/accueil.fr.htm • Un Club utilisateurs : le CLUC CALCIUM : l'outil de couplage de codes de EDF-R&D - 10
CALCIUM : l'outil de couplage de codes de EDF-R&D • Principes de base du couplage avec CALCIUM : • Définir les points d’entrée et de sortie de chaque code : notion de code "COUPABLE" • Définir une topologie de couplage : spécification EXTERNE du COUPLAGE : CALCIUM : l'outil de couplage de codes de EDF-R&D - 11
CALCIUM : l'outil de couplage de codes de EDF-R&D Un programmeur intègre son code dans l’environnement Calcium Tâche : construire l’interface de couplage du code Thermix Temperature puissance Une autre personne peut développer une application en couplant des codes intégrés dans Calcium Tâche : créer un circuit de codes interconnectés Temperature Puissance PuissNeutro Tempcoeur Thermix neutronix machine2 machine1 CALCIUM : l'outil de couplage de codes de EDF-R&D - 12
CALCIUM : l'outil de couplage de codes de EDF-R&D • Définir une topologie de couplage dans un fichier de couplage à l’aide des commandes CALCIUM : • Déclaration des codes et de leurs variables produites et consommées • Déclaration des instances des codes et définition de la machine virtuelle • Déclaration des liens entre variables des instances CALCIUM : l'outil de couplage de codes de EDF-R&D - 13
PuissNeutro Temperature Tempcoeur Puissance Neutronix Thermix CALCIUM : l'outil de couplage de codes de EDF-R&D CODE Neutronix Tempcoeur T IN REEL PuissNeutro T OUT REEL CODE Thermix Puissance T IN REEL Temperature T OUT REEL INSTANCE Neutron CODE Neutronix EXEC start_Neutron INSTANCE HeatFlow CODE Thermix EXEC start_heat LIEN Neutron.PuissNeutro => HeatFlow.Puissance HeatFlow.Temperature => Neutron.Tempcoeur CALCIUM : l'outil de couplage de codes de EDF-R&D - 14
CALCIUM : l'outil de couplage de codes de EDF-R&D Intégrer les points de connexion dans les codes : • VARIABLES ECHANGEES modélisées par des POINTS DE CONNEXION • POINTS DE CONNEXION : nommés, typés, directionnels • VALEURS des variables sont ESTAMPILLEES en fonction du TEMPS ou d’un numéro d’ITERATION Program Thermix ... C Beginning of temporal loop C import values of variable ‘Puissance‘ to process time step (ti, tf) CALL cplre(CP_TEMPS, ti, tf, i, "Puissance", nmax, nval, P, info) ... C some computation ... C export ‘Temperature‘ just computed variables at time tf CALL cpere(CP_TEMPS, tf, i, "Temperature", nval, temp, info) C end of loop ... Puissance (u), REEL ti <u<tf deplacement (i+1), REEL CODE C Temperature (tf), REEL force (i), REEL CALCIUM : l'outil de couplage de codes de EDF-R&D - 15
CALCIUM : l'outil de couplage de codes de EDF-R&D Importation de données et interpolation temporelle : CALL cplre(CP_TEMPS, ti, tf, i, "Puissance",nmax, nval, P, info): Selon configuration du fichier de couplage, lecture de «Puissance» en: • ti, • tf, • ou (delta*tf + (1-delta)*ti) CALCIUM : l'outil de couplage de codes de EDF-R&D - 16
CALCIUM : l'outil de couplage de codes de EDF-R&D Ecriture de PuissNeutro(t) Ecriture de PuissNeutro(t+1) Neutronix t+1 t x Thermix ti tf Lecture de Puissance(ti) Le code Thermix demande la donnée Puissance produite par le code Neutronix au temps ti=t+dt Puissance(ti) = (PuissNeutro(t+1)- PuissNeutro(t))*dt + PuissNeutro(t) CALCIUM : l'outil de couplage de codes de EDF-R&D - 17
CALCIUM : l'outil de couplage de codes de EDF-R&D La bibliothèque de couplage : CONNEXION/DECONNEXION au coupleur EXPORT/IMPORT EFFACEMENT INTERROGATION CONFIGURATION DYNAMIQUE OPTIONS CONTRÔLE CALCIUM : l'outil de couplage de codes de EDF-R&D - 18
CALCIUM : l'outil de couplage de codes de EDF-R&D Exécution du couplage : import/export de variables par passage de messages PVM Neutronix Thermix librarie Calcium commandes Calcium trace coupleur votre application Calcium CALCIUM : l'outil de couplage de codes de EDF-R&D - 19
CALCIUM : l'outil de couplage de codes de EDF-R&D Résumé des fonctionnalités de CALCIUM : • Lecture/écriture de données de codes à codes, • Prise en compte des pas de temps distincts entre codes couplés et interpolation temporelle implicite des données lues, • Mode debugging (mode pas à pas, retour arrière, ...), • Détection des blocages mortels entre codes couplés (deadlock) et gestion de ces blocages, • Gestion dynamique de l’architecture du couplage, • Gestion de la machine virtuelle CALCIUM : l'outil de couplage de codes de EDF-R&D - 20
CALCIUM : l'outil de couplage de codes de EDF-R&D • CALCIUM ne résout pas le problème du choix de la méthode numérique de couplage • méthode explicite, implicite, semi-implicite, prédicteur-correcteur, pas fractionnaires, ... • pas de temps identiques ou différents • CALCIUM favorise l’utilisation de méthodes à caractère explicite • méthodes explicites à pas de temps différents • méthodes semi-implicites à pas de temps identiques • CALCIUM fournit le moyen de mettre en oeuvre des méthodes implicites CALCIUM : l'outil de couplage de codes de EDF-R&D - 21
Les utilisations et utilisateurs de CALCIUM Calcium : un logiciel bien implanté ! CALCIUM : l'outil de couplage de codes de EDF-R&D - 22
Les utilisations et utilisateurs de CALCIUM • SNECMA • ONERA • TURBOMECA • DGA • CNUSC • Danone Emballage • Simulog • Ecole Centrale de Lyon • Météo France, LODYC-Université de Paris VI, CERFACS • Division Recherche et Développement du Pôle Industrie de EDF (RNE/PhR, AEE/LNH, AEE/ADEI, EP/AMV, EP/MSP, RNE/MTC, ER/FCR,EP/CCC) • Direction de l’équipement de EDF (CNEH, SEPTEN) CALCIUM : l'outil de couplage de codes de EDF-R&D - 23
Les utilisations et utilisateurs de CALCIUM Le projet ARCAE : SNECMA-ONERA-TURBOMECA-DGA Code couplés : MSD/MATHILDA (ONERA), ABAQUS (Hibbitt, Karlsson & Sorensen, Inc, www.hks.com.), CANARI (ONERA) Acteurs : ONERA et SNECMA développeurs et utilisateurs Etat actuel : développements en cours Objectifs : simulation globale des aubages de turbines refroidies afin de mieux prédire la température dans le solide et donc leur durée de vie. CALCIUM : l'outil de couplage de codes de EDF-R&D - 24
Les utilisations et utilisateurs de CALCIUM Le couplage MERCURE-ESTET Codes couplés : MERCURE et ESTET Acteurs : EDF-R&D/AEE/ENV développeurs et utilisateurs Etat actuel : développements en cours Objectifs : Modélisation de l'impact de la pollution atmosphérique extérieure sur la qualité de l'air dans l'enceinte d'un bâtiment ou d’un ensemble de bâtiments. CALCIUM : l'outil de couplage de codes de EDF-R&D - 25
Les utilisations et utilisateurs de CALCIUM Le projet CADYAC Codes couplés : CADYRO (EDF-R&D/EP/AMV) et EDYOS(EDF-R&D/EP/MSP) Acteurs : EDF-R&D/EP/AMV, EDF-R&D/EP/MSP, société XANTH Etat actuel : développement et exploitation Objectifs : Etude du comportement des pompes et des groupes turboalternateurs équipant les organes de production de l’électricité, en régime normal ou en présence d'anomalies (perte d'ailette, fissures, frottement, ...) CALCIUM : l'outil de couplage de codes de EDF-R&D - 26
Les utilisations et utilisateurs de CALCIUM Le projet OCCER Codes couplés : CATHARE (CEA/DRN), THYC, COCCINELLE (EDF-R&D/RNE/PhR) Acteurs : EDF-R&D/RNE/PhR développeur, DE/SEPTEN et EDF-R&D/RNE/PhR utilisateurs Etat actuel : développement et exploitation Objectifs : Le couplage permet d'évaluer plus précisément l'évolution de la puissance dégagée par le coeur au cours d'un accident hypothétique tel que celui de Rupture de Tuyauterie Vapeur. CALCIUM : l'outil de couplage de codes de EDF-R&D - 27
Les utilisations et utilisateurs de CALCIUM CATHARE conditions limites coeur puissance totale coeur température du fluide température des crayons masse volumique fluide THYC COCCINELLE distribution de puissance CALCIUM : l'outil de couplage de codes de EDF-R&D - 28
Les utilisations et utilisateurs de CALCIUM CALCIUM : l'outil de couplage de codes de EDF-R&D - 29
Les utilisations et utilisateurs de CALCIUM Exemple d’application : RTV 1300 MW CALCIUM : l'outil de couplage de codes de EDF-R&D - 30
Les utilisations et utilisateurs de CALCIUM Le couplage SUBIEF-CHESS Codes couplés : SUBIEF (EDF-R&D/AEE/LNH), CHESS (Ecole des Mines de Paris) Acteurs : EDF-R&D/AEE/LNH et Ecole des Mines de Paris développeurs, EDF-R&D/AEE/LNH utilisateur Etat actuel : développement et exploitation Objectif : étude de migrations (pollution ou dépollution) de polluants réactifs dans le sol ou les nappes phréatique et prédiction de l’altération chimique à long terme de certains matériaux constitutifs d'installations industrielles (liants hydrauliques, verres, métaux) par le lessivage des eaux souterraines CALCIUM : l'outil de couplage de codes de EDF-R&D - 31
Les utilisations et utilisateurs de CALCIUM LE COUPLAGE ESTET SYRTHES N3S • ACTEURS : AEE/LNH développeur et utilisateur • OBJECTIFS • MODELISATION DES CHAMPS THERMIQUES POUR DES CABLES ENTERRES • PRINCIPE • REUTILISER ET COUPLER DES CODES EXISTANTS DISCIPLINAIRES • un code de thermique solide éléments finis : SYRTHES • un code de mécanique des fluides volumes finis struturés : ESTET • un code de mécanique des fluides volumes finis non-struturés: N3S • GEOMETRIE • RESULTATS : cf. figures CALCIUM : l'outil de couplage de codes de EDF-R&D - 32
Les utilisations et utilisateurs de CALCIUM COUPLAGE ESTET ESTET • ACTEURS : AEE/LNH+AEE/ADEI développeur, AEE/ADEI utilisateur • OBJECTIF • Modélisation du chauffage de bains métalliques par une torche à plasma • PRINCIPE • Coupler un code avec lui-même • un code de mécanique des fluides volumes finis : ESTET • RESULTATS : cf. figures CALCIUM : l'outil de couplage de codes de EDF-R&D - 33
Les utilisations et utilisateurs de CALCIUM LE COUPLAGE LIDO-BELIER • ACTEURS : DE/CNEH • OBJECTIF • évaluer l’impact de la fermeture d’une usine hydro-électrique sur le canal d’amenée • PRINCIPE • Couplage écoulement à surface libre/écoulement en charge • RESULTATS : cf. figures CALCIUM : l'outil de couplage de codes de EDF-R&D - 34
Conclusions et perspectives • Un cas particulier de réutilisation de composants • réutilisation de codes existants avec peu de modifications • définition d’une interface de couplage et assemblage selon le principe des composants électriques • Avantages • Permet la modélisation de systèmes couplés • Facilité d’intégration d’applications existantes dans l’environnement CALCIUM • CALCIUM n’introduit pas de dépendances fortes entre applications • Utilisation de la puissance de calcul disponible en réseau • Une solution pour la mise en œuvre de calculs distribués CALCIUM : l'outil de couplage de codes de EDF-R&D - 35
Conclusions et perspectives 4 chantiers logiciels : 1. Un modèle de données pour le couplage de codes • Quel modèle de données ? • Quels traitements doivent être attachés à ces données ? • Quelle implantation de ce modèle de données et de ces traitements ? • Base de travail : • Groupe de travail MED EDF-R&D et CEA/DRN • Stage de DEA été 1999 et thèse initiée en 11/1999 • Partenaire potentiel : opération ELAN de CEA/DRN CALCIUM : l'outil de couplage de codes de EDF-R&D - 36
Conclusions et perspectives 2. Une Interface Homme-Machine pour CALCIUM • Quelles fonctionnalités : • Description graphique de l’architecture du couplage • Génération automatiquement du fichier de couplage • Gestion d’une base de données de topologies de couplages • Visualisation graphique de la trace des couplages • Partenariat potentiel : département PhR de EDF-R&D CALCIUM : l'outil de couplage de codes de EDF-R&D - 37
Conclusions et perspectives 3. Les communications : un goulot qui peut être résorbé Deux modes de fonctionnement : • Mode mise au point : fonctionnement actuel • Mode de production : les instances gérent leurs communications • Version MPI envisageable Partenariat potentiel : SNECMA CALCIUM : l'outil de couplage de codes de EDF-R&D - 38
Conclusions et perspectives 4. Réunification CALCIUM/ISAS • Objectifs : • mutualiser les développements menés sur nos outils de couplage • permettre le couplage entre codes de la DRN et codes de EDF-R&D • Contraintes : • conserver les qualités et fonctionnalités de CALCIUM et ISAS • compatibilité ascendante totale entre CALCIUM/ISAS et les deux coupleurs. • Etat actuel : étude de faisabilité • Partenariat potentiel : collaboration EDF/CEA CALCIUM : l'outil de couplage de codes de EDF-R&D - 39