Stage - Développement d'Interfaces pour des Codes de Calcul Scientifique H/F
Stage Quimper (Finistère) Développement informatique
Description de l'offre
Description
Contexte : Jusqu'à une époque récente, nous nous sommes concentrés sur la construction d'Outils de Calculs Scientifiques qui répondent à une problématique donnée (en l'occurrence la simulation des accidents graves pour un réacteur de 4ème génération) ;Par exemple, un code de thermohydraulique (CFD) pour calculer la dégradation du coeur (SIMMER), ou un code de neutronique pour calculer la réactivité d'un coeur (PARIS), ou autres.Les couplages étaient alors résolus avec des interfaces spécifiques (drivers) qui montrent des limites en matière de performance et de robustesse.Le CEA a récemment développé des techniques et des standards d'encapsulation de codes de calculs dans le but de favoriser leur intégration au sein d'une plateforme multiphysique (cf. en particulier SALOME, la plateforme de référencethermohydraulique et neutronique CEA-EDF https://www.salome-platform.org).Ces techniques d'intégration reposent sur les principes suivants :- Le code de calcul doit être doté d'une API Python qui offre les services décrits par le standard de couplage ICoCo (https://pypi.org/project/icoco/).Cette interface comprend deux types de service :- Qui assurent le pilotage de la boucle en temps (lecture du jeu de données, initialisation du calcul, exécution d'un pas temps, etc.)- Qui assurent des échanges normalisés entre les codes, en l'occurrence des champs MEDCoupling(https://docs.salomeplatform.org/latest/dev/MEDCoupling/tutorial/index.html)Par ailleurs, le CEA a développé une librairie Python qui offre une structure objet adaptée à l'écriture d'applications de couplage entre des codes équipés de l'interface ICoCo. Il s'agit de la librairie Objet C3PO décrite ici :https://www.sciencedirect.com/science/article/pii/S.Au LMAG, nous appliquons cette technologie pour notre plateforme SEASON. Cette plateforme porte principalement le couplage entre SIMMER et PARIS et elle sera le cadre de réalisation du sujet proposé :Travail prévu : L'API Python de SIMMER a déjà été équipé des méthodes ICoCo.Cette implémentation n'est pas tout à fait complète car les méthodes d'échange ne sont fonctionnelles que pour les données situées sur les frontières du calcul et ne permettent pas des échanges sur les parties internes au domaine.Votre mission sera d' étendre ces échanges (développement Fortran). Une fois cette extension réalisée, vous développerez des cas tests de couplage sous la forme de scripts Python qui exploitent la structure C3PO.On commencera avec des tests homogènes (couplages SIMMERSIMMER) et selon la progression, on s'intéressera à des couplages hétérogènes (SIMMERCATHARE, ce second code étant lui aussi équipé de son interface ICoCo).Dans la limite de durée de stage, on s'intéressera à des questions particulières comme la mise en oeuvre de schémas en temps particuliers, la gestion des hétérogénéités entre les codes couplés, et autres questions.
Lettre de motivation requise
Non
Date de début
09 juil., 2024
Expérience
Sup_7
Profil
Vous préparez un Bac +5 (Master 2 ou équivalents) en calcul scientifique et génie logiciel et/ou en simulation de processus physiques.Doté d'un esprit d'initiative, vous proposez des solutions et des actions de façon autonome. Vous savez vous adapter aux demandes formulées et y répondre dans un souci de satisfaction client.Bon communicant, vous appréciez le travail d'équipe et savez dialoguer avec différents interlocuteurs.En intégrant nos équipes, vous mettrez vos compétences et votre enthousiasme au service de projets sociétaux majeurs.Conformément aux engagements pris par le CEA en faveur de l'intégration des personnes en situation d'handicap, cet emploi est ouvert à toutes et à tous. Le CEA propose des aménagements et/ou des possibilités d'organisation.
Fonction
Qualite_securite_environnement
Formation
RJ/Qualif/Ingenieur_B5
Secteur
Ind_hightech_telecom