Changeset 4749 for BOL


Ignore:
Timestamp:
Nov 14, 2023, 2:23:10 PM (14 months ago)
Author:
asima
Message:

Script optimisation :
a/ era2gcm_tuto.sh : preprocessing of ERA files, if needed, is only done for the requested variables (cf options guide_*=y) instead of the full list (u,v,ta,q)
b/ test_ERAfiles_JeanZay.sh : only list the required ERA files, don't do any preprocessing

Location:
BOL/LMDZ_Setup
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • BOL/LMDZ_Setup/era2gcm_tuto.sh

    r4748 r4749  
    3030#------------------------------------------------
    3131# Periode :
    32 mth_i=200001
    33 mth_f=200001
     32mth_i=202201
     33mth_f=202201
    3434#
    3535# Guidage en vent(u&v) et/ou temperature, humidite
     
    4343
    4444GRID_DIR=./INIT
     45GRID_DIR=TEST_PROD_v20230629/INIT/
    4546#-----------------------------------------------------------------------------
    4647#Utilite du block suivant a re-examiner :
     
    109110   echo -------- liens de telechargement a actualiser ----
    110111   if [ "$rea" = "ERA5" ] ; then
    111      if [ $an -le 2021 ] ; then
     112     if [ $an -ge 2022 ] ; then
     113      ANA_DIR='/gpfsstore/rech/psl/rpsl376/ergon/ERA5/NETCDF/GLOBAL_025/hourly'
     114      suf="ap1e5.GLOBAL_025"
     115     else
    112116      ANA_DIR='/gpfsstore/rech/psl/rpsl376/ergon/ERA5/NETCDF/GLOBAL_025/4xdaily'
    113117      suf="aphe5.GLOBAL_025"
    114      else
    115       ANA_DIR='/gpfsstore/rech/psl/rpsl376/ergon/ERA5/NETCDF/GLOBAL_025/hourly'
    116       suf="ap1e5.GLOBAL_025"
    117118     fi
    118119   elif [ "$rea" = "ERAI" ] ; then
     
    140141  fvshort="$ANA_DIR/AN_PL/$an/v.$an$mois.$suf.nc"
    141142  ftshort="$ANA_DIR/AN_PL/$an/ta.$an$mois.$suf.nc"
     143  fqshort="$ANA_DIR/AN_PL/$an/r.$an$mois.$suf.nc"
    142144  fileu="$SCRATCH/u.$an$mois.$suf.nc"
    143145  filev="$SCRATCH/v.$an$mois.$suf.nc"
    144146  filet="$SCRATCH/ta.$an$mois.$suf.nc"
    145   ncap2 -s 'u=float(u)' $fushort $fileu
    146   ncap2 -s 'v=float(v)' $fvshort $filev
    147   ncap2 -s 'ta=float(ta)' $ftshort $filet
    148   #fileq pas teste ; a faire pour fileq aussi ?
    149   fileq="$ANA_DIR/AN_PL/$an/r.$an$mois.$suf.nc"
     147  fileq="$SCRATCH/r.$an$mois.$suf.nc"
     148  if [ "$guide_uv" = "y" ] ; then
     149    ncap2 -s 'u=float(u)' $fushort $fileu
     150    ncap2 -s 'v=float(v)' $fvshort $filev
     151  fi
     152  if [ "$guide_t" = "y" ] ; then ncap2 -s 'ta=float(ta)' $ftshort $filet ; fi
     153  if [ "$guide_q" = "y" ] ; then ncap2 -s 'q=float(q)' $fqshort $fileq ; fi
    150154elif [ "$rea" = "ERA5" -a $an -ge 2022 ] ; then
     155  echo Extract 0,6,12,18 hours from ERA5 hourly files
    151156  fu1h="$ANA_DIR/AN_PL/$an/u.$an$mois.$suf.nc"
    152157  fv1h="$ANA_DIR/AN_PL/$an/v.$an$mois.$suf.nc"
     
    157162  filet="$SCRATCH/ta.$an$mois.$suf.nc"
    158163  fileq="$SCRATCH/r.$an$mois.$suf.nc"
    159   cdo selhour,0,6,12,18 $fu1h $fileu
    160   cdo selhour,0,6,12,18 $fv1h $filev
    161   cdo selhour,0,6,12,18 $ft1h $filet
    162   cdo selhour,0,6,12,18 $fq1h $fileq
     164  if [ "$guide_uv" = "y" ] ; then 
     165    cdo selhour,0,6,12,18 $fu1h $fileu
     166    cdo selhour,0,6,12,18 $fv1h $filev
     167  fi
     168  if [ "$guide_t" = "y" ] ; then cdo selhour,0,6,12,18 $ft1h $filet ; fi
     169  if [ "$guide_q" = "y" ] ; then cdo selhour,0,6,12,18 $fq1h $fileq ; fi
    163170else
    164171 fileu="$ANA_DIR/AN_PL/$an/u.$an$mois.$suf.nc"
  • BOL/LMDZ_Setup/test_ERAfiles_JeanZay.sh

    r4748 r4749  
    2525   echo -------- liens de telechargement a actualiser ----
    2626   if [ "$rea" = "ERA5" ] ; then
    27      if [ $an -le 2021 ] ; then
     27     if [ $an -ge 2022 ] ; then
     28      ANA_DIR='/gpfsstore/rech/psl/rpsl376/ergon/ERA5/NETCDF/GLOBAL_025/hourly'
     29      suf="ap1e5.GLOBAL_025"
     30     else
    2831      ANA_DIR='/gpfsstore/rech/psl/rpsl376/ergon/ERA5/NETCDF/GLOBAL_025/4xdaily'
    2932      suf="aphe5.GLOBAL_025"
    30      else
    31       ANA_DIR='/gpfsstore/rech/psl/rpsl376/ergon/ERA5/NETCDF/GLOBAL_025/hourly'
    32       suf="ap1e5.GLOBAL_025"
    3333     fi
    3434   elif [ "$rea" = "ERAI" ] ; then
     
    4343   fi
    4444
    45 varu=u
    46 varv=v
    47 vart=ta # peut etre parfois juste "t"
    48 varq=q
    49 #varp=msl
    5045
    51 if [ "$rea" = "ERAI" ] ; then
    52   # variables en format "short" doivent etre transformees en "float" via NCO
    53   # This is done here with ncap2 ; also possible: "ncpdq --overwrite --unpack fin.nc fout.nc"
    54   fushort="$ANA_DIR/AN_PL/$an/u.$an$mois.$suf.nc"
    55   fvshort="$ANA_DIR/AN_PL/$an/v.$an$mois.$suf.nc"
    56   ftshort="$ANA_DIR/AN_PL/$an/ta.$an$mois.$suf.nc"
    57   fileu="$SCRATCH/u.$an$mois.$suf.nc"
    58   filev="$SCRATCH/v.$an$mois.$suf.nc"
    59   filet="$SCRATCH/ta.$an$mois.$suf.nc"
    60   ncap2 -s 'u=float(u)' $fushort $fileu
    61   ncap2 -s 'v=float(v)' $fvshort $filev
    62   ncap2 -s 'ta=float(ta)' $ftshort $filet
    63   #fileq pas teste ; a faire pour fileq aussi ?
    64   fileq="$ANA_DIR/AN_PL/$an/r.$an$mois.$suf.nc"
    65 elif [ "$rea" = "ERA5" -a $an -ge 2022 ] ; then
    66   fu1h="$ANA_DIR/AN_PL/$an/u.$an$mois.$suf.nc"
    67   fv1h="$ANA_DIR/AN_PL/$an/v.$an$mois.$suf.nc"
    68   ft1h="$ANA_DIR/AN_PL/$an/ta.$an$mois.$suf.nc"
    69   fq1h="$ANA_DIR/AN_PL/$an/r.$an$mois.$suf.nc"
    70   fileu="$SCRATCH/u.$an$mois.$suf.nc"
    71   filev="$SCRATCH/v.$an$mois.$suf.nc"
    72   filet="$SCRATCH/ta.$an$mois.$suf.nc"
    73   fileq="$SCRATCH/r.$an$mois.$suf.nc"
    74   cdo selhour,0,6,12,18 $fu1h $fileu
    75   cdo selhour,0,6,12,18 $fv1h $filev
    76   cdo selhour,0,6,12,18 $ft1h $filet
    77   cdo selhour,0,6,12,18 $fq1h $fileq
    78 else
    7946 fileu="$ANA_DIR/AN_PL/$an/u.$an$mois.$suf.nc"
    8047 filev="$ANA_DIR/AN_PL/$an/v.$an$mois.$suf.nc"
    8148 filet="$ANA_DIR/AN_PL/$an/ta.$an$mois.$suf.nc"
    8249 fileq="$ANA_DIR/AN_PL/$an/r.$an$mois.$suf.nc"
    83 fi
    8450
    8551# verifier disponibilite des fichiers
Note: See TracChangeset for help on using the changeset viewer.