wiki:IGCMG/libIGCM/ExempleAjoutLMD144142

Exemple d'ajout de la résolution LMD144142 au couplé IPSLCM4_v1_OASIS3


TableOfContents?(3)

But

Cette page décrit les actions effectuées pour ajouter la résolution ORCA2xLMD144142 au couplé IPSLCM4_v1_OASIS3. Il s'agit de réaliser une simulation de 10 ans, avec production d'atlas à partir d'un restart de la simulation VV20 au 30 12 1949.

La prochaine étape concernera la mise au propre des nouveaux scripts pour la configuration IPSLCM4_v2_PAR.

Compilation

Rien de spécial pour la compilation vis à vis des nouveaux scripts. Juste les étapes nécessaires pour cette résolution supplémentaire:

  • La cible ORCA2xLMD144142 a été ajoutée au fichier IPSLCM4_v1_OASIS3/AA_make
  • Les sources modifiés dans LMDZ :
    • LMDZ : LMDZ4/libf/phylmd/readsulfate.F ligne 106-107 pour faire un contrôle actuel
              IF (iyr .lt. 4850) THEN
                 cyear='1980'}}}
        * LMDZ : LMDZ4/libf/filtrez/parafilt.h (à automatiser?)
       {{{
      c 144 142 19 non-zoom:
             PARAMETER (nfilun=24, nfilus=23, nfilvn=24, nfilvs=24)}}}
        * LMDZ : Commenter dans LMDZ4/libf/phylmd/interface_surf.F90 la lecture du fichier iceberg (obsolète)
       {{{
      !!    open (12,file='flux_iceberg',form='formatted',status='old')
      !!    read (12,*) coeff_iceberg
      !!    close (12)}}}
      
       /!\ et ORCHIDEE en version "beton". Récupération du fichier tar 
       {{{
      wget http://www.lmd.jussieu.fr/~hourdin/PATCH_LMDZ4OR_G95/orchidee_beton.tar.gz 
      }}}
      
       /!\ et prendre makegcm avec brodie là : 
       {{{
      cp /home/rech/ces/rces452/TEST_SX8/modipsl/modeles/LMDZ4/makegcm .
      cp /home/rech/ces/rces452/TEST_SX8/modipsl/modeles/LMDZ4/create_make_gcm .
      }}}
      
      = Fichiers d'entrée =
      == Description de la simulation ==
      
      La description de la simulation est à décrire dans le fichier config.card.
      
      Pour partir d'une simulation réalisée avec l'ancienne nomenclature de fichiers, il faut :
       * utiliser le fichier config.card.!OldName
       * Créer dans l'ancienne nomenclature un lien vers les nouveaux noms de fichiers restart du coupleur. [[BR]]
       Par exemple à l'IDRIS pour un Restart depuis VV20 à la date du 30 12 1949 :
      {{{
      rhodes : cd $HOMEGAYA/SORTIES_CPL_IPSL/VV20/Cpl/Restart 
      rhodes : ln -s VV20_flxatmos_19491230.nc VV20_19491230_flxat.nc
      rhodes : ln -s VV20_sstocean_19491230.nc VV20_19491230_sstoc.nc
      rhodes : ls *19491230*
      lrwxr-x---    1 ...      25 Apr 24 12:09 VV20_19491230_flxat.nc -> VV20_flxatmos_19491230.nc
      lrwxr-x---    1 ...      25 Apr 24 12:09 VV20_19491230_sstoc.nc -> VV20_sstocean_19491230.nc
      -r--r--r--    1 ... 3131248 Apr 15 15:41 VV20_flxatmos_19491230.nc
      -r--r--r--    1 ... 1519344 Apr 15 15:41 VV20_sstocean_19491230.nc
      }}}
      
      
      == Les fichiers texte ==
      Les fichiers d'entrée de type texte ont été ajoutés au répertoire : IPSLCM4_v1_OASIS3/EXP00/PARAM.
      Voir [http://forge.ipsl.jussieu.fr/cgi-bin/viewvc.cgi/IPSLCM4_v1_OASIS3/EXP00/PARAM/?hideattic=0&root=ioipsl&pathrev=CHILI les fichiers *144142*]
      
      Pour les nouveaux scripts, la namelist de l'océan doit déjà être au format F90.
      /!\ Le fichier namelist ne dépend que de la résolution océanique. N'en garder qu'un par résolution océanique. Il faudra les doubler pour les couplés avec cycle du carbone (champs à échanger supplémentaire, par exemple). Même question pour les fichiers glace.
      
      Pour ORCHIDEE "beton" il faut ajouter dans {{{orchidee.def}}} les 2 paramêtres :
      {{{
      RSOL_CSTE=33000.
      RVEG_CSTE=0.5
      }}}
      
      == Les fichiers binaires ==
      
      === Conditions aux limites atmosphériques ===
      Les fichiers d'entrée de l'atmosphère (SULFATE) sont stockés dans un répertoire commun. /!\ A noter : le fichier flux_iceberg est inutile et fait planter la simul à plus haute résolution si on utilise celui de LMD9671.
      
      ==== IDRIS ====
      A l'IDRIS :
      {{{
      rhodes:/u/rces452/IGCM/BC/ATM/IPSLCM4_v1_OASIS3
      |--LMD9671
      |--LMD14496
      |--ISCCP
      |--IPCC
      |--LMD7245
      |--LMD144142
         |--HISTORIQUE -> /cache2/rces452/IPCC/IPSL_SO4/ORCA2xLMD144142/HISTORIQUE
      }}}
      
      ==== CCRT ====
      Au CCRT :
      
      ... à compléter ...
      
      === Conditions aux limites du coupleur ===
      
      Les fichiers d'entrée du coupleur, poids et états intiaux sont stockés dans un répertoire commun. Ils sont créés par Olivier Marti.
      
      ==== IDRIS ====
      
      A l'IDRIS :
      {{{
      rhodes:/u/rces452/IGCM/BC/CPL/IPSLCM4_v1_OASIS3
      |--ORCA2xLMD144142  
         |--areas.nc
         |--masks.nc
         |--mozaic.wa2o.i4.r8 
         |--mozaic.wo2a.i4.r8
         |--grids.nc 
         |--mozaic.wa2o.calvin.i4.r8  
         |--mozaic.wa2o.runoff.i4.r8
      |--ORCA2xLMD14496   
      |--ORCA2xLMD4443    
      |--ORCA2xLMD9671    
      |--ORCA4xLMD4443    
      |--ORCA4xLMD7245
      }}}
      
      ==== CCRT ====
      
      Au CCRT :
      
      === Les fichiers Restart ===
      
      Pour une simulation en cours, les fichiers Restart sont rangés là :
      
      {{{
      IGCM_OUT/
      `-- IPSLCM4_v1_OASIS3
          `-- TMONRUN
              |-- ATM
              |   `-- Restart
              |-- CPL
              |   `-- Restart
              |-- ICE
              |   `-- Restart
              |-- OCE
              |   `-- Restart
              `-- SRF
                  `-- Restart
      }}}
      
      = Comparaison ancienne nomenclature / nouvelle nomenclature =
      
      == Ancienne nomenclature ==
      
      {{{
      $HOMEGAYA/SORTIES_CPL_IPSL/VV20:
       |-- Atm
            |-- Analyse
                  |-- MO2YE
                       |-- VV20_m2y_1y_19500101_19501230_histmth.nc
                       |-- VV20_m2y_1y_19500101_19501230_dynzon.nc
                  |-- SE
                       |-- VV20_SE_1950_1959_dynzon.nc
                       |-- VV20_SE_1950_1959_histmth.nc
                       |-- ...
                  |-- TS
                       |-- VV20_1m_18600101_19761230_BILS.nc
                       |-- VV20_1m_18600101_19761230_NETTOP.nc
                       |-- VV20_1m_18600101_19761230_PRECIP.nc
                       |-- VV20_1m_18600101_19761230_TSOL.nc
                       |-- ...
                       |-- VV20_1m_18600101_19691230_CLDH.nc
                       |-- ... AUTRES VARIABLES 10 ANS ...
                       |-- VV20_1m_18600101_19691230_W500.nc
                  |-- TS_YE
                       |-- VV20_1m_18600101_19691230_BILS.nc
                       |-- ... AUTRES VARIABLES A LA MAIN TOUS LES 10 ANS ...
                       |-- VV20_1m_18600101_19691230_W500.nc
            |-- Output
                  |-- MO
                       |-- VV20_1m_19500101_19500130_dynzon.nc
                       |-- VV20_1m_19500101_19500130_histmth.nc
                       |-- ...
            |-- Restart
                  |-- VV20_19500130_restart.nc
                  |-- VV20_19500130_restartphy.nc
                  |-- ...
      
       |-- Cpl
            |-- Output
                  |-- MO
                       |-- VV20_19500101_19500130_cpl_oce_tau.nc
                       |-- VV20_19500101_19500130_cpl_oce_flx.nc
                       |-- VV20_19500101_19500130_cpl_oce_sst.nc
                       |-- VV20_19500101_19500130_cpl_atm_tauflx.nc
                       |-- VV20_19500101_19500130_cpl_atm_sst.nc
                       |-- ...
            |-- Restart
                  |-- VV20_sstocean_19500130.nc
                  |-- VV20_flxatmos_19500130.nc
                  |-- ...
       |-- Exe
            |-- VV20_18600101_18600130_oasis
            |-- VV20_18600101_18600130_opa.xx
            |-- VV20_18600101_18600130_lmdz.x
            |-- VV20_18600101_18600130_create_etat0_limit.e
       |-- Lim
            |-- Analyse
                  |-- MO2YE
                       |-- VV20_m2y_1y_19500101_19501230_icemod.nc
                       |-- ...
                  |-- SE
                       |-- VV20_SE_1950_1959_icemod.nc
                       |-- ...
                  |-- TS
                       |-- VV20_1m_18600101_19691230_IICEVELU.nc
                       |-- VV20_1m_18600101_19691230_IICEVELV.nc
                       |-- VV20_1m_18600101_19761230_IICETHIC.nc
                       |-- VV20_1m_18600101_19761230_ILEADFRA.nc
                       |-- VV20_1m_18600101_19761230_ISNOWTHI.nc
                  |-- TS_YE
                       |-- VV20_1m_18600101_19691230_IICETHIC.nc
                       |-- ... AUTRES VARIABLES A LA MAIN TOUS LES 10 ANS ...
                       |-- VV20_1m_18600101_19591230_IICEVELV.nc
            |-- Output
                  |-- MO
                       |-- VV20_1m_19500101_19500130_icemod.nc
                       |-- ...
            |-- Restart
                  |-- VV20_19500130_restart_icemod
                  |-- ...
       |-- More
            |-- Atlas
                  |-- WWW
                        |-- VV20
                              |-- Images
                                    |-- VV20-LEVITUS-DJF-SE_1950_1959.gif
                                    |-- ...
                              |-- SE_1860_1869
                              |-- ...
                              |-- SE_1950_1959
                              |-- ...
            |-- Debug
                  |-- VV20_19500101_19500130_namelist
                  |-- VV20_19500101_19500130.ocean.output
                  |-- VV20_19500101_19500130.solver.stat
                  |-- VV20_19500101_19500130_ice_mouchard
                  |-- VV20_19500101_19500130_ice_evolu
                  |-- VV20_19500101_19500130_Oasis.prt
                  |-- VV20_19500101_19500130_opa.xx.prt0
                  |-- VV20_19500101_19500130_lmdz.x.prt0
                  |-- VV20_19500101_19500130_cplout
                  |-- ...
            |-- Monit
                   |-- WWW
                         |-- Monitoring
                               |-- online.html
                               |-- online_bils_fig1.gif
                               |-- online_bils_fig1.info
                               |-- online_bils_fig1.jpg
                               |-- ...
            |-- Out
                  |-- mo2st_sl_18600101_19501230.out
                  |-- mo2ye_19500101_19501230.out
                  |-- MONITOR__19501230.out
                  |-- mo2se_1950_1959.out
                  |-- atlas_cpl_1950_1959.out
                  |-- atlas_cpl_ORCA_LIM2_1950_1959.out
                  |-- atlas_cpl_LMDZOR_1950_1959.out
                  |-- atlas_cpl_ORCA_LIM_1950_1959.out
                  |-- ...
      
       |-- Oce
            |-- Analyse
                  |-- MO2YE
                       |-- VV20_m2y_1y_19500101_19501230_grid_T.nc
                       |-- VV20_m2y_1y_19500101_19501230_grid_U.nc
                       |-- VV20_m2y_1y_19500101_19501230_grid_V.nc
                       |-- VV20_m2y_1y_19500101_19501230_grid_W.nc
                       |-- VV20_m2y_1y_19500101_19501230_diaznl.nc
                       |-- ...
                  |-- SE
                       |-- VV20_SE_1950_1959_grid_T.nc
                       |-- VV20_SE_1950_1959_grid_U.nc
                       |-- VV20_SE_1950_1959_grid_V.nc
                       |-- VV20_SE_1950_1959_grid_W.nc
                       |-- VV20_SE_1950_1959_diaznl.nc
                       |-- ...
                  |-- TS
                       |-- VV20_1m_18600101_19691230_IOWAFLUP.nc
                       |-- ... AUTRES VARIABLES 10 ANS ...
                       |-- VV20_1m_18600101_19691230_SOZANFSO.nc
                       |-- VV20_1m_18600101_19761230_SOSSTSST.nc
                       |-- ... AUTRES VARIABLES 1 AN ...
                       |-- VV20_1m_18600101_19761230_SOZONFHE.nc
                  |-- TS_YE
                       |-- VV20_1m_18600101_19691230_IOWAFLUP.nc
                       |-- ... AUTRES VARIABLES A LA MAIN TOUS LES 10 ANS ...
                       |-- VV20_1m_18600101_19691230_SOZANFSO.nc
            |-- Output
                  |-- MO
                       |-- VV20_1m_19500101_19500130_grid_U.nc
                       |-- VV20_1m_19500101_19500130_grid_V.nc
                       |-- VV20_1m_19500101_19500130_grid_W.nc
                       |-- VV20_1m_19500101_19500130_grid_T.nc
                       |-- VV20_1m_19500101_19500130_diaznl.nc
                       |-- ...
            |-- Restart
                  |-- VV20_19500130_restart.nc
                  |-- VV20_19500130_EMPave.dat
                  |-- ...
       |-- Out
            |-- VV20_19500101_19500130_job_output
            |-- ...
       |-- Srf
            |-- Analyse
                  |-- MO2YE
                       |-- VV20_m2y_1y_19500101_19501230_sechiba_out.nc
                       |--...
                  |-- SE
                       |-- VV20_SE_1950_1959_sechiba.nc
                       |-- ...
                  |-- TS
                       |-- VV20_1m_18600101_19691230_ALB_NIR.nc
                       |-- ... AUTRES VARIABLES 10 ANS ...
                       |-- VV20_1m_18600101_19691230_TSOL_MIN.nc
                  |-- TS_YE
                       |-- VV20_1m_18600101_19691230_ALB_NIR.nc
                       |-- ... AUTRES VARIABLES A LA MAIN TOUS LES 10 ANS ...
                       |-- VV20_1m_18600101_19691230_TSOL_MIN.nc
            |-- Output
                  |-- MO
                       |-- VV20_1m_19500101_19500130_sechiba_out.nc
                       |-- 1m_19500101_19500130_orchidee.def
                       |-- ...
            |-- Restart
                  |-- VV20_19500130_sechiba_rest.nc
                  |-- ...
      
      
      }}}
      
      == Nouvelle nomenclature ==
      
      {{{
      rhodes - /u/rech/psl/rpsl003/IGCM_OUT/IPSLCM4_v1_OASIS3/VC20 : find . -type d -print | tree
      VC20
      |--ATM
      |  |--Output
      |  |  |--MO
                |-- VC20_19500101_19500130_1M_histmth.nc
                |-- VC20_19500101_19500130_1M_dyn_hist_ave.nc
                |-- VC20_19500101_19500130_1M_dynzon.nc
      |  |  |--DA
                |-- VC20_19500101_19500130_1D_histday.nc
      |  |  |--HF
                |-- VC20_19500101_19500130_HF_histhf.nc
      |  |--Restart
              |-- VC20_19500130_restart.nc
              |-- VC20_19500130_restartphy.nc
      |  |--Debug
              |-- VC20_19500101_19500130_lmdz.x.prt0
      |--SRF
      |  |--Output
      |  |  |--MO
                |-- VC20_19500101_19500130_1M_sechiba_history.nc
      |  |--Restart
              |-- VC20_19500130_sechiba_rest.nc
      |  |--Debug
      |--OCE
      |  |--Output
      |  |  |--MO
                |-- VC20_19500101_19500130_1M_grid_T.nc
                |-- VC20_19500101_19500130_1M_grid_U.nc
                |-- VC20_19500101_19500130_1M_grid_V.nc
                |-- VC20_19500101_19500130_1M_grid_W.nc
                |-- VC20_19500101_19500130_1M_diaznl.nc
      |  |  |--DA
                |-- VC20_19500101_19500130_1D_grid_T.nc
                |-- VC20_19500101_19500130_1D_grid_U.nc
                |-- VC20_19500101_19500130_1D_grid_V.nc
      |  |--Restart
              |-- VC20_19500130_restart.nc
      |  |--Debug
              |-- VC20_19500101_19500130_ocean.output
              |-- VC20_19500101_19500130_opa.xx.prt0
              |-- VC20_19500101_19500130_solver.stat
      |--ICE
      |  |--Output
      |  |  |--MO
                |-- VC20_19500101_19500130_1M_icemod.nc
      |  |--Restart
              |-- VC20_19500130_restart_icemod
      |  |--Debug
              |-- VC20_19500101_19500130_ice_evolu
              |-- VC20_19500101_19500130_ice_mouchard
      |--CPL
      |  |--Output
      |  |  |--MO
                |-- VC20_19500101_19500130_cpl_oce_tau.nc
                |-- VC20_19500101_19500130_cpl_oce_flx.nc
                |-- VC20_19500101_19500130_cpl_oce_sst.nc
                |-- VC20_19500101_19500130_cpl_atm_sst.nc
                |-- VC20_19500101_19500130_cpl_atm_tauflx.nc
      |  |--Restart
              |-- VC20_19500130_flxat.nc
              |-- VC20_19500130_sstoc.nc
      |  |--Debug
              |-- VC20_19500101_19500130_out_oasis
              |-- VC20_19500101_19500130_cplout
              |-- VC20_19500101_19500130_Oasis.prt
      |--Out
           |-- Script_Output_VC20.1
           |-- VC20_19500101_19500130_out_oasis
      |--Exe
           |-- VC20_19500101_19500130_gcm.e
           |-- VC20_19500101_19500130_opa
           |-- VC20_19500101_19500130_oasis
      
      }}}
      
      = Le Job =
      
       * Pour ajouter la récupération des aérosols 1980 et .nat, il faut modifier le fichier lmdz.card. La partie !BoundaryFiles devient :
       {{{
      [BoundaryFiles]
      List=   ()
      ListNonDel= (${R_BC}/ATM/${config_UserChoices_TagName}/${RESOL_ATM}/HISTORIQUE/so4.run1980.cdf, .),\
                  (${R_BC}/ATM/${config_UserChoices_TagName}/${RESOL_ATM}/HISTORIQUE/so4.run.nat.cdf, .),\
      	    (${R_BC}/ATM/${config_UserChoices_TagName}/ISCCP/tautab.formatted, .),\
      	    (${R_BC}/ATM/${config_UserChoices_TagName}/ISCCP/invtau.formatted, .)
      }}}
      
      = Execution =
      
       Dans le répertoire EXP00, la soumission du Job : 
      {{{
      qsub Job_VC20
      }}}
      
      == DRYRUN=3 ==
      DRYRUN=3 permet de régler les namelist
        * format F90 des namelist
        * {{{rm run.card}}} pour relancer la même simulation une fois les corrections faites. 
        * Les sorties sont dans le même répertoire, fichier Script_Output_VC20.1
      
      == DRYRUN=2 ==
      DRYRUN=2 permet de régler les noms de fichiers
        * Restart
         * utiliser config.card.!OldName
         * faire le lien pour les 2 fichiers restart coupleur flxat.nc et sstoc.nc
        * iceberg_flux à enlever (dans le fichier lmdz.card)
      
      == DRYRUN=1 ==
      DRYRUN=1 permet de lancer les executions
      Aucune anomaie repérée là.
      
      == DRYRUN=0 ==
      DRYRUN=0 permet un lancement complet.
      
       * Il FAUT supprimer les fichiers qui sont en accès lecture seule à ce moment là. Pour VV20 à l'IDRIS
      {{{
      rhodes - $HOMEGAYA/IGCM_OUT/IPSLCM4_v1_OASIS3/VC20 : find . -type f -exec rm {} \; 
      }}}
      
       * L'exécution ne démarre pas... 
      
        * Ajouté récupération fichier out_oasis (dans oasis.card) pour avoir qq messages.
        * Pb a l'execution de lecture de fichier restart dynamique. 
       {{{
      la valeur de im =****  lue sur le fichier de dem arrage est differente de la valeur parametree iim = 144
      }}}
       Provient d'un souci de compilation -D_NCDOUBLE visiblement absent de LMDZ. Reprise makegcm là : 
       {{{
      cp /home/rech/ces/rces452/TEST_SX8/modipsl/modeles/LMDZ4/makegcm .
      cp /home/rech/ces/rces452/TEST_SX8/modipsl/modeles/LMDZ4/create_make_gcm .
      }}}
       A corriger après.
      
       * Ca tourne!
      
      = Le Post-traitement =
      
      == Atmosphere ==
      
      Extrait du fichier lmdz.card :
      
      {{{
      ...
      [OutputFiles]
      List=	(histmth.nc,      ${R_OUT_ATM_O_M}/${PREFIX}_1M_histmth.nc,      Post_1M_histmth), \
      ...
      [Post_1M_histmth]
      Patches= (Patch_20060710_ModifyUnits, Patch_20060710_AddModulo)
      GatherWithInternal = (lon, lat, presnivs, t_ave_02592000)
      MonitoringVars= (bils, nettop, precip, tsol)
      TimeSeriesVars= (bils, cldh, cldl, cldm, cldq, cldt, evap, iwp, lwp, LWdnSFC, LWdnSFCclr, LWupSFCclr, LWdn200, LWdn200clr, LWup200, LWup200clr, nettop, nettop0, precip, prw, pluc, psol, q2m, sens, slp, snow, snow_mass, soll0, soll, sols0, sols, SWdnSFC, SWupSFC, SWup200, SWup200clr, SWdnTOA, SWupTOA, SWdn200, SWdn200clr, SWdnSFCclr, SWupSFCclr, SWupTOAclr, t2m, taux_ter, taux_sic, taux_lic, taux_oce, tauy_ter, tauy_sic, tauy_lic, tauy_oce, lat_ter, lat_sic, lat_lic, lat_oce, topl0, topl, tops0, tops, topsad, topsai, tsol, u10m, u500, uv10m_m, v10m, v500, w500)
      }}}
      
      == Ocean ==
      
      Extrait du fichier opa.card :
      {{{
      ...
      [OutputFiles]
      List=	(${PREFIX_MO}_grid_T.nc, ${R_OUT_OCE_O_M}/${PREFIX}_1M_grid_T.nc, Post_1M_grid_T),\
      ...
      [Post_1M_grid_T]
      Patches = 
      GatherWithInternal = (nav_lon, nav_lat, deptht, time_counter)
      MonitoringVars = (sosstsst, sossheig, sohefldo, sowaflup, sosaline, soicecov)
      TimeSeriesVars = (iowaflup, sohtc300, sohefldo, soicecov, somxl010, sorunoff, sosaline, sossheig, sosstsst, sowaflep, sowaflcd, sowaflup)
      }}}
      }}}
      }}}
      
Last modified 16 years ago Last modified on 04/10/08 11:07:07