Changeset 5426 for BOL/LMDZ_Setup


Ignore:
Timestamp:
Dec 18, 2024, 7:36:56 PM (6 hours ago)
Author:
fhourdin
Message:

Modified access to http://lmdz...

Location:
BOL/LMDZ_Setup
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • BOL/LMDZ_Setup/interp_aerosols.sh

    r5415 r5426  
    2828
    2929orig=aerosols${year}_from_inca.nc
    30 ln -s "$LMDZ_INIT/$orig" .
     30ln -s $LMDZ_INIT/3DInputData/AerChem/$orig .
    3131
    3232
  • BOL/LMDZ_Setup/lmdz_env.sh

    r5424 r5426  
    99
    1010# <root_dir> will be set by sed by setup.sh here
    11 root_dir=/lus/work/CT1/c1607732/fhourdin/TestA
     11root_dir=/home/hourdin/TMP/TEST
     12pub_store=1
    1213
    1314function get_hostname {
     
    4647      ARCH="X64_JEANZAY_PBIOIPSL"
    4748      SIMRUNBASEDIR="$SCRATCH/$(basename $root_dir)"
    48       LMDZD="$root_dir/LMDZD"
    49       LMDZ_INIT="$root_dir/LMDZ_Init"
     49      LMDZD="$WORK/LMDZD"
     50      LMDZ_INIT="$WORK/LMDZ/pub"
    5051      NB_MPI_MAX=2000
    5152      NB_OMP_MAX=20
     
    7071      SIMRUNBASEDIR="$SCRATCH/$(basename $root_dir)"
    7172      LMDZD="$root_dir/LMDZD"
    72       LMDZ_INIT="$HOME/LMDZ_Init"
     73      LMDZ_INIT="$HOME/LMDZ/pub"
    7374      NB_MPI_MAX=5
    7475      NB_OMP_MAX=1
     
    111112      ARCH="X64_ADASTRA-GNU"
    112113      SIMRUNBASEDIR="$SCRATCHDIR/$(basename $root_dir)"
    113       LMDZD="$root_dir/LMDZD"
    114       LMDZ_INIT="$WORKDIR/LMDZ_Init"
     114      LMDZD="$WORKDIR/LMDZD"
     115      LMDZ_INIT="$WORKDIR/LMDZ/pub"
    115116      NB_MPI_MAX=2000
    116117      NB_OMP_MAX=200
     
    130131      ARCH="local-gfortran-parallel"  # The arch file to use
    131132      SIMRUNBASEDIR="$root_dir/SCRATCH/"  # Where the simulations will be executed ($SIMRUNBASEDIR/LMDZ_Setup/...)
    132       LMDZD="$root_dir/LMDZD"  # Where the sources will be downloaded and compiled
    133       LMDZ_INIT="$HOME/LMDZ_Init"  # Where to store shared files used for initialisation. Should be outside the LMDZ_Setup dir since it's shared between several LMDZ_Setup.
     133      LMDZD="$root_dir/../LMDZD"  # Where the sources will be downloaded and compiled
     134      if [[ $pub_store ]] ; then LMDZ_INIT="$HOME/LMDZ/pub" ; else LMDZ_INIT="$root_dir/LMDZ/pub" ; fi
    134135      NB_MPI_MAX=2  # Max number of MPI cores (only for running simulations)
    135136      NB_OMP_MAX=2  # Max number of OMP threads (only for running simulations)
     
    146147}
    147148
     149#-----------------------------------------------------------------------------------------------------
     150function wget_pub() { # geting file from http:lmdz... and saving on $LMDZ_INIT
     151#-----------------------------------------------------------------------------------------------------
     152  local dir=$1
     153  local file=$2
     154  local target_dir=$LMDZ_INIT/$dir
     155  if [ ! -f $target_dir/$file ] ; then
     156     mkdir -p $target_dir
     157     cd $target_dir
     158     wget --no-check-certificate -nv "http://lmdz.lmd.jussieu.fr/pub/$dir/$file"
     159     cd -
     160  fi
     161}
     162
     163#-----------------------------------------------------------------------------------------------------
     164function cp_from_pub() { # geting file from http:lmdz... and saving on $LMDZ_INIT
     165#-----------------------------------------------------------------------------------------------------
     166  local dir=$1
     167  local file=$2
     168  cp -f $LMDZ_INIT/$dir/$file .
     169}
     170
     171#-----------------------------------------------------------------------------------------------------
     172function ln_from_pub() { # geting file from http:lmdz... and saving on $LMDZ_INIT
     173#-----------------------------------------------------------------------------------------------------
     174  local dir=$1
     175  local file=$2
     176  ln -sf $LMDZ_INIT/$dir/$file .
     177}
     178
    148179get_hostname
    149180echo "Setting up lmdz_env on $hostname"
  • BOL/LMDZ_Setup/script_SIMU

    r5422 r5426  
    9292if [ "$aerosols" = "spla" ] ; then ERA10mDIR=$STORED/$MAINDIR/ERA10m ; fi
    9393LIMITDIR=$STORED/$MAINDIR/LIMIT
    94 SPLADIR=$STORED/$MAINDIR/INPUT_SPLA
    9594DEFDIR=$SIMUDIR/DEF
    9695
     
    132131echo mois ancien  : $ym
    133132echo mois nouveau : $next
    134 
    135 INI=${SPLADIR}/INITIAL
    136 PERIOD=${SPLADIR}/PERIOD00${month}/SUB
    137133
    138134echo '#################################################################'
     
    230226  fi
    231227
    232   ## Ca doit etre la meme liste de fichiers rapatriee par setup.sh dans $LMDZ_INIT/SPLA_Init
    233   ## et interpolee (setup.sh aussi) dans $SPLADIR
    234   if [ $aerosols = spla ] ; then
    235     inputf="wth.dat cly.dat donnees_lisa.nc SOILSPEC.data \
    236                 carbon_emissions.nc sulphur_emissions_antro.nc  \
    237                 sulphur_emissions_nat.nc  sulphur_emissions_volc.nc"
    238     for file in $inputf ; do ${GET} $INI/$file . ; done
    239 
    240     change="dust.nc "
    241     for file in $change ; do ${GET} $PERIOD/$file . ; done
     228  # Rapatriement des fichiers pour SPLA.
     229  # AFAIRE : si le wget marche de toutes les machines, enlever le wget_pub equivalent dans setup.sh
     230  #          et le faire automatiquement dans ln_from_pub
     231  if [[ $aerosols = "spla" ]]; then
     232    for file in donnees_lisa.nc SOILSPEC.data ; do
     233         ln_from_pub 3DInputData/dust_chimere $file
     234    done
     235    for file in cly.dat dust$mo.nc wth.dat ; do
     236         ln_from_pub 3DInputData/dust_inca $file
     237    done
     238    ln -s dust$mo.nc dust.nc
     239    for file in carbon_emissions.nc sulphur_emissions_antro.nc sulphur_emissions_nat.nc \
     240         sulphur_emissions_volc.nc  ; do
     241         ln_from_pub 3DInputData/non_dust $file
     242    done
    242243
    243244    # Le calcul d'emissions de sels marins utilise les vents ERA-10m interpoles sur grille_s (lonv,latu) avec le script era2gcm_uv10m.sh
     
    263264    set +e ; for t in stomate sechiba ; do cp $SIMUDIR/start_$t.$ym.nc ${t}_rest_in.nc ; done ; set -e
    264265    if [ "`grep RIVER_ROUTING orchidee.def |grep -i y`" ] ; then
    265       set +e ; ln -s $LMDZ_INIT/routing_simple.nc . ; ln -s $LMDZ_INIT/routing.nc .
    266                cp $SIMUDIR/start_routing.$ym.nc routing_start.nc ; set -e
     266      set +e
     267      for file in routing_simple.nc routing.nc ; do
     268          ln_from_pub 3DInputData/Orchideee routing.nc
     269      done
     270      cp $SIMUDIR/start_routing.$ym.nc routing_start.nc
     271      set -e
    267272    fi
    268273
     
    277282       echo "Autoinitialisation d'orchidee au besoin"
    278283       echo '#########################################################'
    279        get="ln -s $LMDZ_INIT/"
    280284       for file in cartepente2d_15min.nc \
    281           lai2D.nc soils_param.nc soil_bulk_and_ph.nc alb_bg_modisopt_2D_ESA_v2.nc reftemp.nc ; do ${get}$file ; done
    282 
     285          lai2D.nc soils_param.nc soil_bulk_and_ph.nc alb_bg_modisopt_2D_ESA_v2.nc reftemp.nc ; do
     286          ln_from_pub 3DInputData/Orchidee $file
     287       done
    283288       ln -sf alb_bg_modisopt_2D_ESA_v2.nc alb_bg.nc
    284289
     
    292297
    293298      if [ $veget = 7994 ] ; then
    294          get="ln -s $LMDZ_INIT/"
    295          for file in ndep_nhx.nc ndep_noy.nc nfert_cropland.nc nfert_pasture.nc nmanure_cropland.nc nmanure_pasture.nc bnf.nc ; do ${get}$file ; done
     299         for file in ndep_nhx.nc ndep_noy.nc nfert_cropland.nc nfert_pasture.nc nmanure_cropland.nc nmanure_pasture.nc bnf.nc ; do
     300            ln_from_pub 3DInputData/Orchidee $file
     301         done
    296302      fi
    297303
  • BOL/LMDZ_Setup/setup.sh

    r5424 r5426  
    4949
    5050# /!\ DO NOT EDIT BELOW UNLESS YOU KNOW WHAT YOU ARE DOING /!\
     51
    5152
    5253function enable_platform() {  # In job scripts, sed platform-specific headers
     
    464465function fetch_simu_init_files() {
    465466  #####################################################################
    466   echo "Recuperation eventuelle de certains fichiers sur $LMDZ_INIT"
     467  echo "Recuperation eventuelle de certains fichiers sur http:lmdz.lmd.jussieu.fr/pub"
    467468  #####################################################################
    468   mkdir -p "$LMDZ_INIT"
    469469
    470470  #-------------------------------------------------------------------
    471   # Fichiers ORCHIDEE
     471  #  ORCHIDEE input files
    472472  #-------------------------------------------------------------------
    473   get="myget 3DInputData/Orchidee/"
    474   cd "$LMDZ_INIT";
    475   for file in "PFTmap_IPCC_2000.nc" "cartepente2d_15min.nc" "routing.nc" "routing_simple.nc" "lai2D.nc" "soils_param.nc" "woodharvest_2000.nc" "PFTmap_15PFT.v1_2000.nc"; do
    476     if [[ ! -f $file ]]; then ${get}$file; fi
     473      # Files previously in NITROGEN_for_ORtrunk.tar and downloaded only for veget = 7994
     474  for file in PFTmap_IPCC_2000.nc cartepente2d_15min.nc routing.nc routing_simple.nc lai2D.nc \
     475      soils_param.nc woodharvest_2000.nc PFTmap_15PFT.v1_2000.nc \
     476      soil_bulk_and_ph.nc NITROGEN_for_ORtrunk.tar \
     477      ndep_nhx.nc ndep_noy.nc nfert_cropland.nc nfert_pasture.nc nmanure_cropland.nc nmanure_pasture.nc bnf.nc \
     478      ; do
     479         wget_pub 3DInputData/Orchidee $file
    477480  done
    478481  cd - > /dev/null
    479   # Additionnal files needed for ORCHIDEE trunk post-CMIP6
    480   if [[ $veget = 7994 && ! -f $LMDZ_INIT/soil_bulk_and_ph.nc ]]; then
    481     cd "$LMDZ_INIT"
    482     ${get}soil_bulk_and_ph.nc; ${get}NITROGEN_for_ORtrunk.tar
    483     tar -xvf NITROGEN_for_ORtrunk.tar; cd - > /dev/null
    484   fi
     482
    485483  #-------------------------------------------------------------------
    486   # Fichiers aerosols/chimie
     484  # Files for aerosols and chemistry
    487485  #-------------------------------------------------------------------
    488486  if [[ $aerosols = "clim" ]]; then
    489     get="myget 3DInputData/AerChem/"
    490     #liste_get="aerosols1850_from_inca.nc aerosols2000_from_inca.nc"
    491     #aerosols9999_from_inca.nc est un lien vers aerosols1995_2014_ensavg_from_inca.nc
    492     cd "$LMDZ_INIT"
    493     for file in "aerosols1850_from_inca.nc" "aerosols9999_from_inca.nc"; do
    494       if [[ ! -f $file ]]; then ${get}$file; fi
     487    for file in aerosols1850_from_inca.nc aerosols9999_from_inca.nc; do
     488        wget_pub 3DInputData/AerChem $file
    495489    done
    496490    cd - > /dev/null
    497491  fi
     492
    498493  # For SPLA
    499494  #-------------------
    500   # Dans ${LMDZ_INIT} on cree folder SPLA_Init et dedans le INITIAL
    501495  # Pour l'instant on copie là-dedans de chez Binta les fichiers a la res zoomNaf;
    502496  # plus tard on y recupererea des fichiers a haute resolution reguliere depuis http:/LMDZ,
     
    504498  # Les fichiers (regrides, sauf SOILSPEC.data utilise tel quel) seront mis dans $MAINDIR/INPUT_SPLA (equivalent de INPUT_DUST)
    505499  # The Path below is for JEANZAY. See with the team how to adapt to your cluster.
     500
    506501  if [[ $aerosols = "spla" ]]; then
    507     mkdir -p "${LMDZ_INIT}/SPLA_Init"; mkdir -p "$LMDZ_INIT/SPLA_Init/INITIAL"
    508     get="cp -p /gpfsstore/rech/gzi/rgzi027/ergon/BIBIAERO/INPUTS_DUST/INITIAL/"
    509     liste_get="wth.dat cly.dat donnees_lisa.nc SOILSPEC.data \
    510                  carbon_emissions.nc sulphur_emissions_antro.nc  \
    511                  sulphur_emissions_nat.nc  sulphur_emissions_volc.nc"
    512 
    513     cd "$LMDZ_INIT/SPLA_Init/INITIAL"
    514     for file in $liste_get; do
    515       if [[ ! -f $file ]]; then ${get}$file .; fi
    516     done
    517     cd - > /dev/null
     502    for file in donnees_lisa.nc SOILSPEC.data ; do
     503         wget_pub 3DInputData/dust_chimere $file
     504    done
     505    for file in cly.dat $( for i in $(seq 1 12 ) ; do echo dust$i.nc ; done ) wth.dat ; do
     506         wget_pub 3DInputData/dust_inca $file
     507    done
     508    for file in carbon_emissions.nc sulphur_emissions_antro.nc sulphur_emissions_nat.nc \
     509         sulphur_emissions_volc.nc  ; do
     510         wget_pub 3DInputData/non_dust $file
     511    done
     512
    518513    ###
    519514    #Cas particulier des fichiers mensuels dust.nc :A DECIDER :
     
    522517    # On pourrait (a)demander de precalculer dust.nc aussi, dans MAINDIR/INPUT_SPLA - avec un script à adapter de Jeronimo. Rien a mettre dans SPLA_Init alors.
    523518    # Ou (b) fournir dans SPLA_Init les 12 mois d'un dust.nc climato (an 2006 pour nous ici) à la res EC, et faire juste le regrid vers MAINDIR/INPUT_SPLA
    524     #ICI pour l'instant je copie les fichiers de chez Binta (repositoire==http...) dans LMDZ_INIT/SPLA_Init, avec test sur mois 01
    525 
    526     if [[ ! -d ${LMDZ_INIT}/SPLA_Init/PERIOD0001 ]]; then
    527       if [[ ${hostname:0:5} != "jean-" ]]; then echo "PERIOD001 (aerosols=spla) IS ONLY AVAILABLE ON JEANZAY FOR NOW, CONTACT SUPPORT"; exit 1; fi
    528       cp -pr /gpfsstore/rech/gzi/rgzi027/ergon/BIBIAERO/INPUTS_DUST/PERIOD* "$LMDZ_INIT/SPLA_Init/.";
    529     fi
     519
    530520   #A la fin on doit avoir dans SPLA_Init les fichiers initiaux dans INITIAL plus les repertoires PERIOD00MM contenant dust.nc
    531521   #Cela doit se retrouver dans script_SIMU qui les copie dans le repertoire de run sur $SCRATCH
     
    534524  # Fichiers Init
    535525  #-------------------------------------------------------------------
    536   get="myget 3DInputData/Init/"
    537   liste_get="alb_bg_modisopt_2D_ESA_v2.nc reftemp.nc"
    538   cd "$LMDZ_INIT"
    539   for file in $liste_get; do
    540     if [[ ! -f $LMDZ_INIT/$file ]]; then ${get}$file; fi
     526  for file in alb_bg_modisopt_2D_ESA_v2.nc reftemp.nc ; do
     527      wget_pub 3DInputData/Init $file
    541528  done
    542   cd - > /dev/null
    543529}
    544530
     
    582568    fi
    583569
    584     get="myget 3DInputData/Limit/"
    585570    liste_get="Albedo.nc Relief.nc Rugos.nc landiceref.nc"
    586571    for yr in $yrs; do
     
    590575    echo LISTEGET "$liste_get"
    591576    for file in $liste_get; do
    592       cd "$LMDZ_INIT"
    593       if [[ ! -f $LMDZ_INIT/$file ]]; then ${get}$file; fi
    594       cd - > /dev/null
    595       ln -s "$LMDZ_INIT/$file" .
     577       wget_pub 3DInputData/Limit $file
     578       ln_from_pub  3DInputData/Limit $file
    596579    done
    597580    #-------------------------------------------------------------------
    598     # ECDYN
     581    # Initial state ECDYN
    599582    #-------------------------------------------------------------------
    600     get="myget 3DInputData/Init/"
    601     if [[ ! -f $LMDZ_INIT/ECDYN.nc ]]; then cd "$LMDZ_INIT"; ${get}ECDYN.nc; cd - > /dev/null; fi
    602     ln -s "$LMDZ_INIT"/ECDYN.nc .
     583    wget_pub 3DInputData/Init ECDYN.nc
     584    ln_from_pub 3DInputData/Init ECDYN.nc
    603585    ln -sf ECDYN.nc ECPHY.nc
    604586
     
    653635  sed -e 's/anneeref=.*.$/anneeref='\$yr'/' DEF/run.def >| run.def
    654636  echo Starting initialisation
     637  # Runing ce0l.e
    655638  OMP_NUM_THREADS=1 $MPICMD 1 $ce0l  # ce0l requires MPI=OMP=1
    656639  if [ $climato = 0 ]; then mv limit.nc limit.\$yr.nc; fi
     
    668651fi
    669652
    670 # AS : S'il etait possible d'automatiser l'interpolation de l'input SPLA, ce serait a lancer ici
    671 #en attendant, on passe au paragraphe suivant où on copie les fichiers à la res ZoomNaf depuis $LMDZ_INIT/SPLA_Init
    672 #if [ $aerosols = spla ]; then
    673 #cp $local/futur script interp_aerosols_SPLA.sh .; chmod +x interp_aerosols_SPLA.sh
    674 #for file in...; do  ./interp_aerosols_SPLA.sh \$year; done
    675 #etc etc etc ...
    676 #fi
    677 
    678 # Copy initial and forcing files in $local/$INIT and $local/$LIMIT; also in $local/INPUT_SPLA if $aerosols=spla
    679653for f in sta* gri*nc; do cp \$f $local/$INIT/\$f; done
    680654if [[ $climato = 1 ]]; then cp limit.nc $local/$INIT/limit.nc; fi
     
    683657if [ $aerosols = clim ]; then  for f in aerosols[.0-9]*nc; do cp \$f $local/$LIMIT/\$f; done; fi
    684658#
    685 if [ $aerosols = spla ]; then
    686  #mkdir -p $local/INPUT_SPLA; pour l'instant on copie $LMDZ_INIT/SPLA_Init en block
    687  if [ ! -d $local/INPUT_SPLA ]; then cp -pr $LMDZ_INIT/SPLA_Init $local/INPUT_SPLA; fi
    688 fi
    689659cd $SIMRUNDIR
    690660...eod
Note: See TracChangeset for help on using the changeset viewer.