ECMWF

Objectifs
Comparer les résultats de Vorticité potentielle retournés par les modèles Mimosa/ECMWF. On effectura ces calculs à haute résolution (0.125 pour ECMWF). On compare les prévisions Mimosa/ECMWF de J-10  à J0. On aura donc 10 simulations à faire de J-10 à J-1 (Simulations effectuées tous les 10K

On souhaite savoir si Mimosa (Modélisation Isentrope du transport Méso-échelle de l'Ozone Stratosphérique par Advection) à toujours un intérêt pour le calcul de Vorticité Potentielle (PV). Ces calculs de PV ( Modélisations et prévisions quotidiennes) sont disponibles journalièrement sur la base de donnée Ether.

Ether

Mimosa

le PV et le rapport de mélange d'ozone sont très bien corrélés sur une surface isentropique et la localisation des filaments d'ozone peuvent être visualisés à l'aide PV comme un traceur quasi-passif. Or on on s'interesse à savoir d'ou vienne les "constituants" qui sont transportés dans la basse stratosphère.

Les champs de Vorticité potentielle sont en effet accessibles via ECMWF   Ether

1-Simulations
Mimosa: intro Mimosa permet de modéliser les champs de pv à partir des données ECMWF(champs temp,vents,geopt...). Nous avons donc choisis de réaliser cette modélisation sur: Nous utilisons la version de Drouin. Mimosa utilise les données ECMWF en "niveaux modèle" (données GRIB). Pour fonctionner Mimosa requiert  des fichiers .Grib en entrée, placés selon une arborescence spécifique (voir manuel d'utilisation).
 * des surfaces isentropes données dans le tableaub de cathy
 * avec une résolution d' 1/6 de degré en longitude-latitude

Comment faire tourner Mimosa ?

Le minimum pour fonctionner est donc de metrtre au même endroi

Comment je procède sur Mimosa ?
 * mimosa.x
 * input.namelist
 * un dossier GRIB contenant les fichiers d'input .grib

Si l' on veut qqch de plus simple:


 * mimosa.sh: permet de créer les imput.namelist pour plusieurs niveaux (pas besoin d nrecrée un fichier inputnamelist à chaque niveau, puisque mimosa.sh boucle, pour le faire)
 * SVA_TMPDIR=/data/pincemai/MIMOSA_WORK_1:


 * declare -a THETA=( 475 550 675 950 )

Précisions sur les paramètres:
ZONE=3: on souhaitais la vorticité potentielle sur tout le globe

INTYPE=2: on se sert des niveaux modèles .grib en entrée (analyse et forecast)

INITPV=0 : (1 pour l'initialisation), 0 lorsque l' on utilise un fichier ph* d'un run précédent

## GRID (NX=320,NY=161,PASLAT=1.125,PASLONG=1.125,LATMIN=-90,LATMAX=90):définitles caractéritiques de la grille ECMWF fournit dans le fichiers d' entrée.grib NP=91  :ondispose 91 niveaux lmodèles

## CONFIG (NLIS2D=8 NDEG=6:

NHGRID=6 NWRITE=6 NHMOD=12 NHRELAX=240 NPRHMOD=0 NPRWRITE=0 INDIFEXPL=0 DIFF=4050

NRUN=$rep NWTEMP=12 WINDOUT=1 TOUT=1 STATIONS=0
 * 1) OUTPUT

Temp
file_mim='/data/pincemai/MIMOSA_WORK_1/RESULTATS_Janvier_2009/25_janvier/S1/pvg09012500.0950' name=FILE_BASENAME(file_mim) 'MLS-Aura_L2GP-N2O_v03-30-c01_2009d025.he5'

base='MLS-Aura_L2GP-N2O_v03-c01_2011d091.he5'

Tab_file_mim=

Tab_file_MLS=['MLS-Aura_L2GP-N2O_v03-30-c01_2009d020.he5','MLS-Aura_L2GP-N2O_v03-30-c01_2009d025.he5','MLS-Aura_L2GP-N2O_v03-30-c01_2009d030.he5','MLS-Aura_L2GP-N2O_v03-30-c01_2009d214.he5','MLS-Aura_L2GP-N2O_v03-30-c01_2009d216.he5','MLS-Aura_L2GP-N2O_v03-30-c01_2009d219.he5','MLS-Aura_L2GP-N2O_v03-32-c02_2011d109.he5','MLS-Aura_L2GP-N2O_v03-32-c01_2011d118.he5']

Déroulement des simulations
A partir des fichiers d' analyse (GRIB) de l' ECMWF on va réaliser les fichiers d' initialisation.

Conduite de l' Etude
Exemple: Simulation Par exemple pour un fichier du 1er janvier 2009 (jour d'intérêt) à analyser: on s'interesse au split du vortex polaire.

On utilise les données 'réanalysées' Era interim (fournit par l' ECMWF) pour l' initialisation : des modèles de transport (comme Mimosa). Ces données sont fournis au format netcdf.

1) Récupérer les fichiers décembre 2008 pour cibler le: 22 decembre 2008 (J-10)


 * Les données ERAI sont des réanalyses du modèle de l' ECMWF (résolution 1.126°/1.125°.

Récupération des données:
ftp://ftp.climserv.ipsl.polytechnique.fr/

ftp://ftp.climserv.ipsl.polytechnique.fr/erai/GLOBAL_075/4xdaily/AN_PL/

ftp://ftp.climserv.ipsl.polytechnique.fr/erai/GLOBAL_1125/4xdaily/AN_PL/2011/

http://www.ece.uvic.ca/~frodo/jasper/#download

https://software.ecmwf.int/wiki/display/GRIB/Releases

wget https://software.ecmwf.int/wiki/download/attachments/3473437/grib_api-1.9.9.tar.gz

cd /data/cboonne/MIMOSA_HD/

Paramètres d' entrée
!======================================================================! !              __  __ _____ __  __  ____   _____                      ! !              |  \/  |_   _|  \/  |/ __ \ / ____|  /\                 ! !              | \  / | | | | \  / | |  | | (___   /  \                ! !              | |\/| | | | | |\/| | |  | |\___ \ / /\ \               ! !              | |  | |_| |_| |  | | |__| |____) / ____ \              ! !              |_|  |_|_____|_|  |_|\____/|_____/_/    \_\             ! !======================================================================! ! ! CARACTERISCS OF THE RUN ! &run !- ! ZONE defines the geographical area : !  -> 1 for the Northern Hemisphere [-10N, 90N] !  -> 2 for the Southern hemisphere [-90N, 10N] !  -> 3 for the both Hemisphere     [-90N, 90N] zone = 3 !- ! INTYPE defines the type of input files : !  -> 1 for ASCII isobaric files (*.ECMR) !  -> 2 for GRIB encoded model levels files (*.grib) intype = 2 !- ! IAND, MOISD, JOURD, IHEURED define the starting date of the simulation ! -> Year  (YY) iand   = 08 ! -> Month (MM) moisd  =  12 ! -> Day   (DD) jourd  =  21 ! -> Hour  (HH) iheured = 0 !- ! IANF, MOISF, JOURF, IHEUREF define the final date of the simulation ! -> Year  (YY) ianf   = 09 ! -> Month (MM) moisf  =  12 ! -> Day   (DD) jourf  = 01 ! -> Hour  (HH) iheuref = 0 !- ! INITPV defines if the simulation is new or a restart ! -> 1 if initialization is need ! -> 0 if a ph* file from a previous run should be read initpv =  1 !- ! TETA defines the isentropic surface (K) !  -> shouldn't be greater than 950K for isobaric input files (intype = 1) teta   = 475;550;675;950 / ! ! CARACTERISCS OF ECMWF GRID ! &grid !- ! NX, NY and NP define the number of points of the ECMWF grid !  -> Number of grid points along longitudes nx = 320 !  -> Number of grid points along latitudes ny = 161 !  -> Number of pressure levels (intype = 1) or number or model levels (inType = 2) np = 90 !- ! PRES allows to define the pressure levels of isobaric file (intype = 1) !  -> this variable is not needed for GRIB files (intype = 2) !  -> If there is more than 50 levels, declaration of pres variable in mimosa.f95 pres(1) = 1000.,975.,950.,925.,900.,875.,850.,825.,800.,775.,750.,700.,650.,600.,550.,500.,450.,400.,350.,300.,250.,225.,200.,175.,150.,125.,100.,70.,50.,30.,20.,10.,7.,5.,3.,2.,1. !- ! PASLAT and PASLONG define the horizontal resolution of the ECMWF grid !  -> resolution along latitude paslat = 1.125 !  -> resolution along longitude paslong = 1.125 !- ! LATMINECMR and LATMAXECMR define the minumum and maximum latitude of ECMWF grid !  -> minimum latitude latminecmr = -90 !  -> maximum latitude latmaxecmr = 90 / ! ! CONFIGURATION OF THE SIMULATION ! &config !- ! NDEG defines the number of MIMOSA grid points per degree of latitude and longitude !   -> value should be 3 or 6 ndeg  = 3 !- ! NLIS2D defines the number of points use for the smooth nlis2d = 8 !- ! NHGRID defines the number of hours between two call to regrid nhgrid = 6 !- ! NWRITE defines the number of hour between two outputs of PV files nwrite = 12 !- ! NHMOD defines the number of hours between two ECMWF files nhmod = 6 !- ! NHRELAX defines the number of hours of relaxation time nhrelax = 240 !- ! NPRHMOD defines the hour of the first ECMWF file nprhmod = 0 !- ! NPRWRITE defines the first hour of PVF file nprwrite = 0 !- ! Explicit diffusion ! INDIFEXPL defines if explicit diffusion is activated !  -> 0 no explicit diffusion !  -> 1 explicit diffusion indifexpl = 0 ! DIFF defines the value of the explicit diffusion if it is activated diff = 4050 / ! ! OUTPUT OF THE SIMULATION ! &output !- ! NRUN defines the name of the directory where MIMOSA outputs will be saved !  -> if nrun =  5, files will be saved in RUN05 directory !  -> if nrun = 16, files will be saved in RUN16 directory nrun = 16 !- ! NWTEMP defines the time between two output of temperature or wind nwtemp = 12 !- ! WIND_OUT defines if wind horizontal components files will be saved !  -> 0 no output of wind files !  -> 1 output of wind files wind_out = 1 !- ! T_OUT defines if temperature files will be saved !  -> 0 no output of temperature files !  -> 1 output of temperature files t_out = 1 !- ! STATIONS_OUT defines if PV and temperature and PV profiles at stations files will be saved !  -> 0 no output of stations files !  -> 1 output of stations files stations_out = 1 /

Date:fichier date.inc
2011/04 parameter   (iand=11,moisd=04,jourd=01,iheured=000) parameter   (ianf=11,moisf=04,jourf=02,iheuref=000) Permet d' aller chercher les fichierdu type : v.201104.aphei.GLOBAL_1125.nc

Modifier le fichier fortran:

Pour la lecture des données: //Original write(path_nc,2415) 2415          Format('../data/') //Après modif write(path_nc,2415) 2415           Format('/tmp15/pincemaille/donnees_erai/Mimosa/')

Pour modifier le nom du fichier d' arrivée //Original Fileouta = MonYear//'PV_MIMOSA.nc' Print*, Fileouta //Après modif : par exemple Fileouta = filename//MonYear//'PV_MIMOSA.nc' Print*, Fileouta

//Après modif

ls                                                                                 ?                  950PV_MIMOSA.nc  date.inc~      MIMOSA_ERAI.f~  OPERA          variables.inc~ 950KPV_MIMOSA.nc date.inc          MIMOSA_ERAI.f  mimosang.x      variables.inc [hauche@cartman MIMOSANG]$ cd OPERA [hauche@cartman OPERA]$ ls 2010 2011 [hauche@cartman OPERA]$ cd 2010 [hauche@cartman 2010]$ ls d.201001.aph.GLOBAL_1125.nc     pv.201001.aph.GLOBAL_1125.nc  ta.201001.aph.GLOBAL_1125.nc geopt.201001.aph.GLOBAL_1125.nc  r.201001.aph.GLOBAL_1125.nc   u.201001.aph.GLOBAL_1125.nc [hauche@cartman 2010]$ cd ../.. [hauche@cartman MIMOSANG]$ ls ?                 950PV_MIMOSA.nc  date.inc~      MIMOSA_ERAI.f~  OPERA          variables.inc~ 950KPV_MIMOSA.nc date.inc          MIMOSA_ERAI.f  mimosang.x      variables.inc [hauche@cartman MIMOSANG]$ vi date.inc [hauche@cartman MIMOSANG]$ vi variables.inc [hauche@cartman MIMOSANG]$ mimosang.x mimosang.x: Command not found. [hauche@cartman MIMOSANG]$ ./mimosang.x out pvp out pvp out lisse2D out regrid2tr timenetcdf            1 memorisation out pvp out lisse2D out regrid2tr timenetcdf            2 memorisation out pvp out lisse2D out regrid2tr timenetcdf            3 memorisation out pvp out lisse2D out regrid2tr timenetcdf            4 memorisation fin du niveau theta=   750.0000 out pvp out pvp out lisse2D out regrid2tr timenetcdf            1 memorisation out pvp out lisse2D out regrid2tr timenetcdf            2 memorisation out pvp out lisse2D out regrid2tr timenetcdf            3 memorisation out pvp out lisse2D out regrid2tr timenetcdf            4 memorisation fin du niveau theta=   850.0000 out pvp out pvp out lisse2D out regrid2tr timenetcdf            1 memorisation out pvp out lisse2D out regrid2tr timenetcdf            2 memorisation out pvp out lisse2D out regrid2tr timenetcdf            3 memorisation out pvp out lisse2D out regrid2tr timenetcdf            4 memorisation fin du niveau theta=   950.0000 fin du run MIMOSA 950KPV_MIMOSA.nc                                                      AMSUA: printed lat, lon grid AMSUA: printed data close 950KPV_MIMOSA.nc                                                     [hauche@cartman MIMOSANG]$ ls ?                  950PV_MIMOSA.nc  date.inc~      MIMOSA_ERAI.f~  OPERA          variables.inc~ 950KPV_MIMOSA.nc date.inc          MIMOSA_ERAI.f  mimosang.x      variables.inc [hauche@cartman MIMOSANG]$ ls -l total 79424 -rwxrwxrwx 1 hauche latmos 15624400 juil. 26 2012 ? -rwxrwxrwx 1 hauche latmos 46860984 juin   4 17:46 950KPV_MIMOSA.nc -rwxrwxrwx 1 hauche latmos 15624400 juil. 26 2012  950PV_MIMOSA.nc -rwxrwxrwx 1 hauche latmos      202 juil. 27 2012 date.inc -rwxrwxrwx 1 hauche latmos     202 juil. 26 2012 date.inc~ -rwxrwxrwx 1 hauche latmos   66615 juil. 26 2012 MIMOSA_ERAI.f -rwxrwxrwx 1 hauche latmos    66611 juil. 26 2012 MIMOSA_ERAI.f~ -rwxrwxrwx 1 hauche latmos  3056032 juil. 27 2012 mimosang.x drwxrwxrwx 4 hauche latmos       44 juil. 26 2012 OPERA -rwxrwxrwx 1 hauche latmos     605 juil. 27 2012 variables.inc -rwxrwxrwx 1 hauche latmos     595 juil. 26 2012 variables.inc~ [hauche@cartman MIMOSANG]$ vi variables.inc Suspended [hauche@cartman MIMOSANG]$ ls ?                 950PV_MIMOSA.nc  date.inc~      MIMOSA_ERAI.f~  OPERA          variables.inc~ 950KPV_MIMOSA.nc date.inc          MIMOSA_ERAI.f  mimosang.x      variables.inc [hauche@cartman MIMOSANG]$ pwd /net/nfs/home/hauche/MIMOSA/MIMOSANG

950PV_MIMOSA.nc  date.inc~      MIMOSA_ERAI.f~  OPERA          variables.inc~ 950KPV_MIMOSA.nc  date.inc          MIMOSA_ERAI.f  mimosang.x      variables.inc

[hauche@cartman MIMOSANG]$ ./mimosang.x

sous Eole allez dans  cd ~/Bureau/CNRS/Mimosa/

Puis

erreurs
../data/u.201104.aph.GLOBAL_1125.nc Warning: ieee_inexact is signaling FORTRAN STOP

Vi (ou vim)

 * Pour commenter de la ligne 1 à la ligne 3 sous vim, taper : :1,3s/^/# /g
 * sortir : ':q'
 * afficher num de lignes ':set nu'

Commandes shells utiles

 * Connexion au serveur à Guyancourt: ssh -X pincemai@cartman.latmos.ipsl.fr


 * Serveur de calcul: eole
 * Lorsqu'il faut les droits de super utilisateur: sudo
 * rappatrier ftp/http: wget ftp://ftp.climserv.ipsl.polytechnique.fr/erai/GLOBAL_1125/4xdaily/AN_PL/2011/d*nc
 * acces au headzer: ncdump -h 950KPV_MIMOSA.nc


 * ncdump -c 950KPV_MIMOSA.nc


 * ncdump 950KPV_MIMOSA.nc > toto

du -h
 * memoire
 * scp -r Mimosa_cathy/ pincemai@134.157.176.253:~  (pour copier un repertoire sur un compte cyclad de id 134.157.176.253
 * ps
 * ssh -X pincemai@ciclad.ipsl.jussieu.fr
 * var=3 ,echo $var
 * find -name "nomfichier.txt"
 * idlde8&
 * eog
 * grep -r 'MAX' *
 * grep  'MAXRANGE' *.pro
 * ls -ltr (voir les derniers copiers)
 * du -sh dossier_a_quantifier (voir la place prise par un dossier) / du -h dossier_a_quantifier (les sous arborescences visibles egalement)