LMDZ-operationnel

Descriptif de la remise en route de l'opérationnel avril 2010

LMDZ opérationnel

 

Descriptif de la remise en route des simulations opérationnelles de LMDZ (SIRTA, AMMA, etc ...)

Avril 2010

 

Table des matières:

 


 

Récupération des données de forçage:
NCEP:

On utilise le script de récupération développé par L. Menut et R. Vautard et qui se trouve ici.

Ce script, getavn4-grib2.sh, a été adapté à nos besoins locaux et est rangé sur /u/lmdz/LMDZ-OPE/NCEP. Il est lancé par un cron tous les jours vers 7h du matin sur isola. Les fichiers grib sont archivés sur le répertoire /san0/lmdz/NCEP dans des sous-répertoires nommés selon la date du jour récupéré.

 

Transformation grib2 -> netcdf

La transformation vers netcdf des données NCEP récupérées en grib2 est effectué par l'utilitaire wgrib2 (description) qui permet donc de relire du grib2 et de ré-écrire les données en différents formats dont netcdf à la norme COARDS. La transformation est contrôlée par un fichier donné en argument à la commande wgrib2. Ce fichier permet de contrôler les niveaux verticaux à sortir, les noms à donner aux variables, etc ... Les fichiers de contrôle utilisés sont rangés sur /u/lmdz/LMDZ-OPE/NCEP (noms des fichiers: ncep_nc_table.*) ainsi que le script, ncep2nc.sh, qui s'occupe de la transformation. Ce script est lancé sur django par getavn4-grib2.sh lorsque le dernier fichier NCEP a été récupéré.

Exemple: les températures NCEP en grib2 sont transformées en netcdf par la commande:

wgrib2 -match TMP -match mb: gfs.t00z.pgrbf${HEURE}.grib2 -append -nc_table /u/lmdz/LMDZ-OPE/NCEP/ncep_nc_table.levels -netcdf $STORE_DIR/ta.nc
  • -match TMP indique à wgrib2 que l'on va traiter les records du fichier contenant la variable TMP (la température donc)
  • -match mb: que l'on traite les records du fichier contenant la valeur mb (donc les niveaux de pression en mb)
  • gfs.t00z.pgrbf${HEURE}.grib2 est le nom du fichier grib2 à traiter pour une certaine HEURE
  • -append indique que l'on va rajouter des valeurs à un fichier netcdf existant, pour créer une série temporelle dans notre cas
  • -nc_table /u/lmdz/LMDZ-OPE/NCEP/ncep_nc_table.levels indique la table à utiliser pour donner les bonnes caractéristiques à notre fichier netcdf
  • -netcdf $STORE_DIR/ta.nc indique que l'on veut un fichier de sortie netcdf qui sera nommé $STORE_DIR/ta.nc

Un extrait du fichier ncep_nc_table.levels:

# description of the transformation of NCEP analysis file
# from grib2 to netcdf

$lev_type 100:pressure:pressure levels:mb:0.01
$nlev 26
#$levs 1000 975 950 925 900 850 800 750 700 650 600 550 500 450 400 350 300 250
#       200 150 100  70  50  30  10

# variables to process
RH:*:hur
TMP:*:ta
UGRD:*:ua
VGRD:*:va

# variables to ignore
4LFTX:*:ignore
5WAVA:*:ignore

Explications:

  • La dimension verticale du fichier netcdf aura pour nom pressure, pour unité des mb et on sortira les 26 valeurs de pression contenues dans le fichier grib.
  • La variable TMP sera sortie sur tous les niveaux et aura pour nom ta dans le fichier netcdf et on ignore les variables 4LFTX, 5WAVA, etc ...

 

Réactivation des scripts de lancement

Pour l'instant, je n'ai eu le temps de relancer que la chaîne SIRTA_REF (48x32)

Adaptation du script /d3/LMDZ-OPE/SIRTA_REF/serie.x et des scripts appelés par celui-ci:

  • /d3/LMDZ-OPE/UTILS/lancer_simul.x
  • /d3/LMDZ-OPE/UTILS/lancer_post.x

Le job est lancé par un cron depuis django vers 8h30 chaque matin. Le modèle et le post-traitement sont lancés sur ghio. Les tracés sont faits sur mambo (à revoir)

Les résultats de la simulation du jour sont affichés sur la page web habituelle: http://web.lmd.jussieu.fr/~lmdz/LMDZ-OPE/SIRTA_REF/Welcome.html

Attention, au 16/04/2010, le modèle lancé est celui de l'ancienne chaîne: le modèle a fait des progrès considérables depuis (à revoir donc)