"Perspectives dans le développement de deux plateformes de modélisation CROCO et NEMO".

Les modèles numériques d’océansont des outils essentiels tant au service de la recherche scientifique, que pour des applications de surveillance et de prévisions opérationnelles, ou comme composante des modèles du système Terre utilisés pour les projections climatiques. Leur développement s’inscrit sur une temporalité longue et mobilise des équipes d’experts de haut niveau combinant des compétences variéeset complémentaires (océanographie, physique, chimie, biologie, mathématiques appliquées, informatique, calcul haute performance). La définition des domaines d’applications de ces modèles ainsi que de leurs priorités de développement s’appuient sur des communautés scientifiquesbien identifiées, qui s’intéressent de près aux bons (et moins bons) résultats de ces modèles. Il existe aujourd’hui plusieurs communautés de ce type en France, dont celles qui portent le développement des codes numériques CROCO et NEMO.Cette note a pour objet de préciser l’articulation et la complémentarité des travauxmenés par ces deux communautés. Une stratégie et des démarches complémentairesLes codes numériques CROCO et NEMO s’appuient sur le travail de deux communautésqui ont élaboré au cours de la dernière décennie des visions cohérentes et complémentaires. Les codes CROCO et NEMO ciblent ainsi des applications différentes, tant en terme de composantes qu’en termes d’échelles et de processus représentés : -Le code NEMOest constitué des trois composantes principales couvrant la dynamique de l’océan (OCE), de la glace de mer (SI3) et de la biogéochimiemarine (PISCES). Les échelles ciblées vont de l’échelle globale à l’échelle kilométrique (résolution effective). NEMO est utilisé pour des comprendre la variabilité de l’océan à ces échelles supérieures au kilomètre, pour préparer l’observation (notamment spatiale) des océans, pour des projections climatiques et comme composantes des systèmes opérationnels Copernicus. -Le code CROCOest constitué d’une composante dynamique, interfacée avec des modules complémentaires et pluridisciplinaires (PISCES, MUSTANG, BIOéBUS, ECO3M,...). Les échelles ciblées vont de l’échelle du bassin océanique aux échelles sub-kilométriques, incluant les régimes non-hydrostatiques et la modélisation LES à l’échelle décamétrique ou de l’expérience laboratoire (i.e. proche de la DNS). CROCO est utilisé pour comprendre la variabilité de l’océan à ces échelles, pour préparer l’observation des océans et comme composante de démonstrateurs opérationnels ou de futurs systèmes opérationnels. Comme on le voit, les périmètres d’applications et les échelles ciblées par chacun des codes sont différents de sorte que les démarches de ces deux communautés sont de facto complémentaires. Complémentaires, non seulement parce que les deux démarches répondent à des besoin différents, mais aussi parce qu’elles se complètent : de nombreuses applications de CROCO utilisent ainsi des conditions limites issues de simulations NEMO à plus large emprises; en retour CROCO est un outil de choix pour mener des études de processus en vue de formuler des paramétrisation sous-mailles pour NEMO (ondes internes, convection, etc...). Au-delà des complémentarités de fait, liées aux différences des positionnements scientifiques et applicatifs respectifs des deux codes, il existe égalementd’étroites collaborations entre les deux communautés. En effet, comme il existe un recouvrement partiel des domaines applicatifs des deux codes au niveau des échelles régionales, les deux communautés partagent de nombreuses préoccupations, notamment sur les questions liées aux schémas numériques pour la résolution des échelles kilométriques. De nombreux échanges scientifiques et techniques existent ainsi aujourd’hui sur ces questions. Les deux communautés partagent enfin une vision communede ce que pourrait être à terme une interface cohérente entre les deux modèles. Celle-ci devrait permettre de construire des applications qui échangent aux bonnes échelles les informations pertinentes et s’appuient sur les forces de chacun des modèles pour représenter correctement un large spectre d’échelles et de processus. Le raffinement de cette vision en un démonstrateur effectif fait l’objet de la dernière proposition de ce document.Des actions de développement en cours L’articulation des démarches des deux communautés se traduit dès aujourd’hui par le partage ou le développement conjoint d’un certain nombre de modules et composantes des codes NEMO et CROCO. Certaines composantes sont ainsi d’ores et déjà partagéesentre les deux codes. C’est le cas notamment : -de l’interface au module de gestion des entrées/sorties XIOS, développé par l’IPSL,-du modèle de biogéochimie marine PISCES dont le développement est coordonné par le groupe PISCO (qui rassemble , entre autres, des développeurs de NEMO et de CROCO),-du module de surface (gestions de l’interface air-mer),-de l’interface de couplage aux modèles d’atmosphère, implémenté via le coupleur OASIS du CERFACS. -de la librairie de raffinement de maillage en fortran Agrif d'Inria.Plusieurs développements et actionsde recherche ont par ailleurs été menés en communau cours des dernières années dans la perspective d’être versés dans chacun des codes. C’est le cas notamment des développements: -du module de couche limite atmosphérique ABL (mené dans le cadre des projets CMEMS ALBATROS et LEFE SIMBAD et H2020 IMMERSE),-de la paramétrisation du mélange vertical dans les couches de surface Generic Length Scale,-de schémas numériques de discrétisation en temps et en espace combinant au mieux les impératifs de précision, stabilité, conservation, compacité, coût informatique.Enfin, unesérie d’actions à engager conjointementa été établie pour le moyen terme. Celle-ci porte notamment sur : -des échanges autour des stratégies HPC des deux codes (en termes de parallélisation et de portage GPU)-le développement d’approche de traitement des conditions limites par méthodes de pénalisation; -des échanges sur les stratégies respectives en termes d’assimilation de données en passe d’aboutir à une mutualisation d’approche (e.g. via l’utilisation de NEMOVAR)Notons que plusieurs des actions conjointes listées ci-dessus ont porté sur ledéveloppement ou l’intégration d’interfaceà des codes de parties tierces, nécessaires pour certaines applications. Cette approche mutualisée sur les interfaces est cohérente avec les besoins et compétences de chacune des communautés. Elle a naturellement vocation à se poursuivre et se renforcer pour de nombreuses interfaces des deux modèles d’océan : biogeochimie marine (PISCES,...), couche limite atmosphérique (ABL), modèles de vagues à phases moyennées (WW3,...), modèles d’atmosphère (WRF, ...). Dans les développements en cours mentionnés, le rôle joué par l’équipe Inria AIRSEA est majeur : cette équipe de recherche grenobloise intervient en lien avec chacune des communautés CROCO et NEMO sur un grand nombre de thématiques essentielles au développement des modèles d’océan. Par son expertise sur les méthodes numériques, sur les algorithmes de couplages, sur les approches multi-grilles (AGRIF) et sur le calcul haute performance (HPC), cette équipe est de fait une interface naturelle entre les communautés CROCO et NEMO.Vers une meilleure visibilité de nos démarches Comme le montre le paragraphe précédent, de nombreuses démarches et interactions sont déjà engagées pour éviter toute duplication inutile et bénéficier au mieux des compétences disponibles dans les équipes de développement CROCO et NEMO. L’objectif de cette note est de rendre ces actions plus visibles. Pour cela, nous proposons : -La mise en place d’un groupe d’échanges de type « téléphone rouge » qui rassemblera aussi souvent que nécessaire des pilotes et experts des deux groupes de développement ainsi que des personnes “ressources “ de lacommunauté . Ce groupe contribuera à une meilleure visibilité de la coordination des développements, de faire des points d’informations et d’avancement à disséminer vers les développeurs des deux plateformes; -D’encourager la participation croisée desdéveloppeurs de chacun des codes aux processus d’élaboration au sein de Groupes de travail: ceux qui existent déjà du côté de NEMO , (dont, à titre d’exemples non exhaustifs les Working Groups Kernel, Air-sea interactions, HPC, TOP, Verification & Validation) et ceux en cours de création, financés par le GdR CROCO. Pour ce qui concerne la composante de biogéochimie PISCES, la structuration de la communauté des développeurs est effective au travers du projet LEFE-PISCO dont le comité de pilotage comprend unreprésentant de chacun des deux modèles;-La définition et la mise en oeuvre d’un démonstrateur de l’utilisation conjointe de NEMO et CROCO sur une application pertinente pour le développement des deux modèles et leurs interfaces.ConclusionsLes codes CROCO et NEMO ont chacun une stratégie de développement en lien avec leurs objectifs et leur communauté. Cette note veut rendre plus visible et plus explicite la stratégie et les démarches de co-construction : elles explicitent la stratégie commune et valorisent l'ensemble des efforts. Les propositions formulées ci-dessus devraient permettre une meilleure lisibilité de cette dynamique de co-construction pour les développeurs et au-delà, pour les communautés scientifiques et pour les tutelles