NEMO@POLR

De POLR
Sauter à la navigation Sauter à la recherche

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 définies à l'aide des lignes suivantes dans votre ~/.bash_profile :
    • export INTEL_LICENCE_FILE=/share/apps/intel/licenses/lincense.lic
    • source /share/apps/intel/parallel_studio_xe_2015/bin/psxevars.sh
  • Également en utilisant les modules intel/compilateurs et intel/openmpi
    • module load intel/compilateurs intel/openmpi

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

Obtenir le code de NEMO

Vous avez plusieurs choix, en voici deux. Vous pouvez lancer la commande SVN suivante pour extraire le code de NEMO:

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.

Vous pouvez également l'obtenir la version CONCEPT en demandant à Simon Senneville. Cette version contient les fichiers de configuration spécifiques pour l'utilisation de NEMO sur la grappe de calcul Mingan.

Extraire le code de XIOS 1.0

XIOS gère les diagnostiques de sorties, les opérations temporelles/spatiales de post-traitement (parallèlement à NEMO) de façon flexible et performante (Calculs et écritures simultanées par appels asynchrones).

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

Possibilité de module sur Mingan?

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 avoir 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 dans le version CONCEPT ou 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

Des informations sont également disponibles à l'adresse suivante: nemo/wiki/Users/SetupNewConfiguration

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" est un script utile pour compiler les outils.

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"

COMPILE

DMP_TOOLS

Information provenant du README.

"DMP_TOOLS should be used to create a netcdf file called resto.nc containing restoration coefficients for use with the tra_dmp module in NEMO. Further instructions for it's use are available in the NEMO users guide."

GRIDEN

Informations provenant de Nesting tools: The mesh generations by Nemo System Team, Brice Lemaire, July 9, 2010.

"The objective is to have a toolbox allowing the creation of regional configurations from curvilinear grid. The first part will explain the method in that general case. With a series of procedures Fortran, we want to be able to make zooms on a domain (increasing the resolution) or a simple extraction of a sub-domain. The domain may be regional or global and the format of input and output files will be NetCDF format."

MPP_PREP

Informations provenant de Nesting tools: How to set up an MPP configuration with NEMO OPA9 by J.M. Molines, May 26, 2005.

"This document quickly describes a set of tools that were devel- opped to facilitate the setting up of MPP configuration. It is supposed that all the programs described here are installed and compiled. "

NESTING

Informations provenant de Nesting tools: NEMO/AGRIF Nesting tools: User's Guide, Jan 30, 2006 (minor update Dec 6, 2010).

"This guide presents a series of Fortran 95 procedures that could be useful for the pre-processing of OPA/NEMO 1 ocean model when running an embbeded model."

OBSTOOLS

Information provenant de: www.nemo-ocean.eu

"A series of Fortran utilities is provided with NEMO called OBSTOOLS. This are helpful in handling observation files and the feedback file output from the NEMO observation operator. "

REBUILD

REBUILD_NEMO

Informations tirées du script rebuild_nemo.

"Script to run the NEMO rebuild tool to rebuild NEMO diagnostic or restart files.

The scripts creates the nam_rebuild namelist based upon the command line options you give it (see usage below)

Ed Blockley, September 2011"

Pour compiler:

  • Se placer dans le répertoire TOOLS
  • Compiler REBUILD_NEMO à l'aide de maketools
  ex: ./maketools -m mpiifort_linux -n REBUILD_NEMO

Pour l'utiliser:

  • Se placer dans le répertoire où est le fichier
  • Lancer rebuild_nemo, l'option -t 1 est nécessaire avec notre version de NetCDF
 ex: ../../../TOOLS/REBUILD_NEMO/rebuild_nemo -t 1 toto_T 8

Dans cet exemple, les fichiers toto_T_0000.nc à toto_T_0007.nc seront assemblés dans toto_T.nc

SECTIONS_DIADCT

Semble être destiné pour faire des diagnostics pour des sections.

SIREN

Informations provenant de : nemo/wiki/Users/SetupNewConfiguration

"Use the SIREN tools to subset an existing model ... to create all the input files you need to run a NEMO regional configuration."

WEIGTHS

Informations provenant de : nocsSCRIP v1.1 03/11/2010, Author: NOCS NEMO Team

"This directory contains software for generating and manipulating interpolation weights for use with the Interpolation On the Fly (IOF) option in NEMO v3 onwards."

SETTE

Outils de validation. Information utiles dans : NEMO validation tools Documentation, Release 1.0.1, C. Levy, 20120330.