NEMO@POLR
Introduction
Ce document vise à documenter l’utilisation de NEMO sur la grappe de calcul Mingan à l’UQAR. Plusieurs des informations proviennent de site officiel de NEMO.
Certains programmes/utilitaires doivent être installé avec d’utiliser NEMO.
Compilation FORTRAN avec Ifort
Afin de pouvoir compiler avec Parrallel Studio, des variables d’environnement doivent être définies. Elles peuvent être ajoutées à votre ~/.bash_profile.
- export INTEL_LICENCE_FILE=/share/apps/intel/licenses/lincense.lic
- source /share/apps/intel/parallel_studio_xe_2015/bin/psxevars.sh
Installer NEMO avec FCM (depuis nemo_V3_3)
NEMO utilise un outil de gestion de code basé sur SVN, FCM (Flexible Configuration Manager, developped at UKMO ©Crown Copyright 2005-10). Pour l’instant, FCM est installé dans /home/sennevil/projects/fcm. Pour l’utiliser, il faut définir des variables d’environnement (peuvent être ajoutées dans le fichier .bash_profile):
- PATH=$PATH:/home/sennevil/projects/fcm/bin
- FCM=/home/sennevil/projects/fcm/
- export FCM
Extraire le code de NEMO
Il faut lancer la commande SVN suivante pour extraire le code de NEMO:
- svn --username "nom_utilisateur" co http://forge.ipsl.jussieu.fr/nemo/svn/branches/2015/nemo_v3_6_STABLE/NEMOGCM
Pour ce faire, vous devez avoir un compte pour nemo-ocean.eu. Si vous n’en avez pas, vous pouvez en faire la demande à l’adresse suivante : http://www.nemo-ocean.eu/user/login Vous avez maintenant le code de NEMO v.3.6 STABLE.
Extraire le code de XIOS 1.0
XIOS est un serveur pour gérer les sorties de NEMO. Pour extraire le code et installer XIOS 1.0, vous devez suivre les étapes à l’adresse suivante : http://www.nemo-ocean.eu/Using-NEMO/User-Guides/Basics/XIOS-IO-server-installation-and-use Une version du code est déjà installée sur Mingan. XIOS est installé dans /home/sennevil/projects/xios-1.0/. Afin de l’utiliser une nouvelle variable d’environnement doit également être définie (peut être ajoutée dans le fichier .bash_profile)
- source /home/sennevil/projects/xios-1.0/bin/fcm_env.ksh
Compiler et créer un NEMO exécutable
Le script principal pour compiler et créer NEMO est appelé makenemo et situé dans le répertoire CONFIG. Voici un exemple avec la configuration GYRE. GYRE à l’avantage que les champs initiaux et les forçages sont analytiques, il ne nécessite donc aucun fichier d’intrant.
- cd NEMOGCM/CONFIG;
- ./makenemo –m mpiifort_linux –r GYRE -n MY_GYRE
Cependant, vous devez préalablement avoir ajouté le fichier arch-mpiifort_linux à votre répertoire NEMOGCM/ARCH/. Dans le cas contraire, vous aurez un message d’erreur indiquant : Compiler not existing. Ce fichier est disponible sur : /home/sennevil/projetcs/NEMOGCM/ARCH/arch-mpiifort_linux.fcm Vous avez alors un répertoire nommé NEMOGCM/CONFIG/MY_GYRE/. Ce répertoire vous permet de lancer une expérience basée sur GYRE, une configuration de base de NEMO. Il ne reste qu’à créer votre lanceur pour qsub. Un exemple de fichier existe sur Mingan dans : /home/sennevil/projects/NEMOGCM/MY_GYRE/EXP00/lanceur.pbs.
Créer un nouvelle CONFIG dans NEMO
Par exemple, créons une CONFIG pour le domaine du golfe du Saint-Laurent GSL5km basé sur le configuration de MoGSL. Les étapes nécessaires
- 1.Créer un répertoire pour la nouvelle configuration
- -cd NEMO-code/NEMOGCM/CONFIG
- -mkdir GSL5KM
- 2.Créer un fichier permettant à FCM de faire la compilation et la construction de l’exécutable.
Ce fichier doit contenir toutes les informations sur les clefs de précompilation pour NEMO (et CICE ?). Dans la version du CMC, ces clefs se retrouvent dans BB_make.ldef. La définition de toutes les clefs se retrouve à l’adresse suivante : http://www.nemo-ocean.eu/Using-NEMO/User-Guides/Basics/cpp-keys-v3_4
- 3.Ajouter les fichiers de code source relatif à la nouvelle configuration dans CONFIG/GSL5KM/MY_SRC/.
Aucun code pour le moment.
- 4.Déterminer les paramètres de la grille de la nouvelle configuration.
Ces paramètres sont déterminés dans les fichiers CONFIG/GSL5KM/EXP00/namelist_cfg et CONFIG/GSL5KM/EXP00/namelist_ref.
- 5.Ajouter la nouvelle configuration à cfg.txt
Le fichier se retrouve dans CONFIG/cfg.txt
- 6.Compilation
Pour générer la nouvelle configuration MY_GSL5KM à partir de GSL5KM :
- -./makenemo –r GSL5KM –n MY_GSL5KM
Pour compiler la configuration MY_GSL5KM par la suite :
- -./makenemo –n MY_GSL5KM –m mpiifort_linux
L’option –m “compiler” choisi les options dans le fichier ARCH/arch_‘’compiler”.fcm
- 7.Génération de la bathymétrie
- -a.Coordinates.nc
- -b.Bathy_meter.nc
- 8.Génération de la condition initiale : salinité et température
- 9.Génération des conditions frontières : salinité, température et niveau d’eau
- 10.Génération des fichiers de rivières
- 11.Changer le fichier namelists pour refléter les changements dans les forçages.
Utilisation des outils de NEMO
maketools
BDY_TOOLS
Description tirée de bdy_reorder.f90.
"A routine to reorder old BDY data files to make them compatible with NEMO 3.4. ... The routine is mainly for re-ordering BDY data files, but can also be used to re-order BDY coordinate files if ln_coordinates is set to .true. Author: Dave Storkey Aug 2011"