Changeset 5857 for BOL/LMDZ_Setup


Ignore:
Timestamp:
Oct 22, 2025, 1:51:30 PM (4 weeks ago)
Author:
idelkadi
Message:

Added the possibility to use read_climoz=1 (in config.def) to read a single ozone climatology that will be used for both day and night during the simulation
To enable it, set ozone=1 in setup.sh (by default ozone=0)

Location:
BOL/LMDZ_Setup
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • BOL/LMDZ_Setup/script_SIMU

    r5800 r5857  
    6464ok_guide=y   # y/n guidage ou non
    6565climato=1
     66ozone=0
    6667
    6768echo '##############################################################'
     
    197198if [ $climato = 1 ] ; then
    198199   ${GET} $LIMITDIR/limit.nc limit.nc
     200   if [ $ozone = 1 ] ; then ${GET} $LIMITDIR/climoz_LMDZ_1979_2008_clim.nc climoz_LMDZ.nc ; fi
    199201else
    200202   ${GET} $LIMITDIR/limit.$year.nc limit.nc
     203   if [ $ozone = 1 ] ; then ${GET} $LIMITDIR/climoz_$year.nc climoz_LMDZ.nc ; fi
    201204fi
    202205
  • BOL/LMDZ_Setup/setup.sh

    r5850 r5857  
    3535
    3636  aerosols="clim"
     37
     38  # OZONE :
     39  # AI et ZE oct 2025
     40  #         0 => analytic formula fonction of altitude and latitude
     41  #         1 => ozonread a single ozone climatology that will be used day and night
     42  ozone=0
    3743
    3844  # SURFACE/VEGETATION SCHEME
     
    4248  #   If you need other orch versions, and also require XIOS, you'll need
    4349  #                    to create the appropriate files in DEF/XMLfilesOR...
    44   veget="CMIP6"
     50  veget="none"
    4551
    4652  # New snow scheme INLANDSIS! "y" / "n"
     
    139145             -netcdf  0/1/DIR        Netcdf installation
    140146             -aerosols n/clim/spla   Aerosols : none / climatological / interactive with SPLA
     147             -ozone 0/1              Ozone : not read / read an ozone climatology
    141148             -veget CMIP6            CMIP6 version of rchidee
    142149                    7983             orch2.2
     
    169176      "-nudging") ok_guide=y; shift;;
    170177      "-climato") climato=$2; shift 2;;
     178      "-ozone") ozone=$2; shift 2;;
    171179      "-mthini") mthini=$2; shift 2;;
    172180      "-mthend") mthend=$2; shift 2;;
     
    390398  pwd
    391399
     400  # OZONE : modifier la cles logique pour ozone
     401  if [[ $ozone -eq 1 ]]; then
     402     sed -i'' -e 's/read_climoz=.*.$/read_climoz='$ozone'/' DEF/config.def
     403  fi
     404
    392405  # COSP : ok_cosp desactive COSP si on a compile avec; il ne l'active pas si on a compile sans
    393406  sed -i'' -e 's/ok_cosp.*.$/ok_cosp='$cosp'/' DEF/config.def
     
    533546  -e "s/^isotopes=.*.$/isotopes=$isotopes/" \
    534547  -e "s/^climato=.*.$/climato=$climato/" \
     548  -e "s/^ozone=.*.$/ozone=$ozone/" \
    535549  -e "s/^ok_guide=.*.$/ok_guide=$ok_guide/" \
    536550  "$local_d/script_SIMU" >| "$SIMRUNDIR/tmp_$SIM"
     
    664678       ln_from_pub  3DInputData/Limit $file
    665679    done
     680
     681    #  Ozone
     682    if [[ $ozone -eq 1 ]]; then
     683       if [[ $climato -eq 1 ]]; then
     684        echo LISTEGET tro3_1979_2008_clim.nc
     685           wget_pub 3DInputData/Ozone/original tro3_1979_2008_clim.nc
     686           ln_from_pub  3DInputData/Ozone/original tro3_1979_2008_clim.nc
     687       elif [[ $climato -eq 0 ]]; then
     688           yr=$yrini
     689           #while [[ $yr -le $yrend ]]; do
     690           echo LISTEGET tro3_${yr}.nc
     691           wget_pub 3DInputData/Ozone/original tro3_$(( $yr - 1 )).nc
     692           ln_from_pub 3DInputData/Ozone/original tro3_$(( $yr - 1 )).nc
     693           wget_pub 3DInputData/Ozone/original tro3_${yr}.nc
     694           ln_from_pub 3DInputData/Ozone/original tro3_$yr.nc
     695           wget_pub 3DInputData/Ozone/original tro3_$(( $yr + 1 )).nc
     696           ln_from_pub 3DInputData/Ozone/original tro3_$(( $yr + 1 )).nc
     697           #done
     698       fi
     699    fi
    666700    #-------------------------------------------------------------------
    667701    # Initial state ECDYN
     
    717751echo "Executable : $ce0l"
    718752for yr in $yrs; do
     753  # sst and sic
    719754  if [ $climato = 0 ]; then sufyr=$suf\$yr; else sufyr=$suf; fi
    720755  ln -sf amipbc_sic_\$sufyr.nc amipbc_sic_1x1.nc
    721756  ln -sf amipbc_sst_\$sufyr.nc amipbc_sst_1x1.nc
     757  # ozone
     758  if [[ $ozone -eq 1 ]]; then
     759     if [[ $climato -eq 1 ]]; then
     760        ln -s tro3_1979_2008_clim.nc climoz.nc
     761     else
     762        ln -s tro3_${yr}.nc  climoz.nc
     763        ln -s tro3_$(( $yr - 1 )).nc climoz_m.nc
     764        ln -s tro3_$(( $yr + 1 )).nc climoz_p.nc
     765     fi
     766   fi
     767  # modif annee dans run.def
    722768  sed -e 's/anneeref=.*.$/anneeref='\$yr'/' DEF/run.def >| run.def
    723769  echo Starting initialisation
    724770  # Runing ce0l.e
    725771  $mpicmd $ce0l  # ce0l requires MPI=OMP=1
     772  # Renomer limit et/ou climoz_LMDZ.nc si climato=0
    726773  if [ $climato = 0 ]; then mv limit.nc limit.\$yr.nc; fi
     774  if [[ $ozone -eq 1 ]]; then
     775     if [ $climato = 0 ]; then mv climoz_LMDZ.nc climoz_LMDZ_\$yr.nc; fi
     776  fi
    727777done
    728778# ANCIEN MULTI STEP   ;;
     
    740790for f in sta* gri*nc; do cp \$f $local_d/$INIT/\$f; done
    741791if [[ $climato = 1 ]]; then cp limit.nc $local_d/$INIT/limit.nc; fi
     792if [[ $climato = 1 ]]; then
     793   if [[ $ozone -eq 1 ]]; then cp climoz_LMDZ.nc $local_d/$INIT/climoz_LMDZ_1979_2008_clim.nc; fi
     794fi
    742795mkdir -p $local_d/$LIMIT
    743796for f in limit*.nc ; do cp \$f $local_d/$LIMIT/\$f; done
     797# ozone
     798if [[ $ozone -eq 1 ]]; then
     799   if [[ $climato -eq 1 ]]; then cp climoz_LMDZ.nc $local_d/$LIMIT/climoz_LMDZ_1979_2008_clim.nc; fi
     800   if [[ $climato -eq 0 ]]; then cp climoz_LMDZ_${yr}.nc $local_d/$LIMIT/.; fi
     801fi
    744802if [ $aerosols = clim ]; then  for f in aerosols[.0-9]*nc; do cp \$f $local_d/$LIMIT/\$f; done; fi
    745803#
Note: See TracChangeset for help on using the changeset viewer.