wiki:Doc/Config/LMDZOR_v6.2

The LMDZOR_v6.2 configuration

LMDZOR_v6.2_work is a configuration under work, close the the coupled configuration IPSLCM6.2

Person in charge: Josefine Ghattas


1. Description

LMDZOR_v6.2 configuration contains the atmospheric model LMDZ and the land surface model ORCHIDEE. This configuration is under construction and the versions of the models might change without any announcement. If you want to use this version, contact the reference person above.

1.1. Main differences between LMDZOR_v6.2 and LMDZOR_v6.1.10

LMDZOR_v6.2 :

  • is adapted to the trunk version of LMDZ and version ORCHIDEE_2_2. These versions are slightly different from the versions used for CMIP6.
  • a compilation script is used instead of a makefile in config/LMDZOR_v6 folder.
  • the configuration is independent of the default module environnement as during compilation a file in config/LMDZOR_v6/ARCH is used
  • no possibility to use the old 2-bucket hydrology scheme Choisnel in ORCHIDEE

1.2. Computing centers

LMDZOR_v6.2_work is currently only maintained at irene/TGCC and jean-zay/IDRIS.

1.2.1. IDRIS-JeanZay

Because of JeanZay architecture (computing nodes based on sockets of 20 cores), we advice you to use 2, 4, 5, 10 or 20 OpenMP threads for LMDZ-ORCHIDEE component. By default, the number of OpenMP threads defined in config.card is 8. To change that, you have to edit and modify config.card as follows :

[Executable]
#D- For each component, Real name of executable, Name of executable for oasis
ATM= (gcm.e, lmdz.x, 71MPI, 10OMP)

Do not forget to install a new Job (command ins_job) in order to take into account these modifications.

1.3. Compiling

Compilation of LMDZOR_v6.2 configuration is done using the script compile_lmdzor.sh. No specific module environment is needed before launching the script. The modules to be used are sourced by the compiling script from the folder config/LMDZOR_v6/ARCH. The same module environement file is used during run time, this is set in config.card.

Options to use this script are :

  • -resol_atm : default is 144x142x79
  • -full : recompile the full configuration
  • -debug, -dev, -prod : compilation mode for the whole configuration, default is -prod

Several compile options can be used together except -debug, -dev, -prod where only one at a time can be set.

Example 1: Default compilation of LMDZ-ORCHIDEE with XIOS and IOIPSL
./compile_lmdzor.sh

Example 2: Compile in debug mode
./compile_lmdzor.sh -debug

Example 3: Default compilation with full recompilation of all components
./compile_lmdzor.sh -full

Example 4: Compilation of LMDZ in regular lat-lon for other dimensions (default: 144x142x79) 
The dimension can be changed to any other 3d dimension.
./compile_lmdzor.sh -resol_atm 96x95x79

If you compile in debug or in dev mode you need to modify the parameter OptMode in config.card. If you change the resolution at the compilation you need to modify the parameter ResolAtm in config.card

Even if the script allow you to compile any atmospheric resolution, the fully maintained one is 144x142x79

1.4. Launching

If you changed the compilation mode or default resolution, make the corresponding changes in config.card in the variables ResolAtm and OptMode.

The default set up is using 71 MPI * 8 OMP for the gcm.e and 1 MPI for the xios server. Following is set in config.card :

ATM= (gcm_${ResolAtm}_${OptMode}.e, lmdz.x, 71MPI, 8OMP)
SRF= ("", "")
SBG= ("", "")
IOS= (xios_server_${OptMode}.exe, xios.x, 1MPI)

1.5. Predefined resolutions

The default resolution 144x142x79 is fully maintained. Resolution 512x360x79 is supposed to work but less often tested. The resolution 96x95x39 using LMDZ_Physics=AP is also tested sometimes.

1.6. XIOS and output control

XIOS is used for output writing. It consists of a library linked to the model and an external server executable (xios_server.exe). It can be launched in attached mode or in server mode. The default set up in LMDZOR_v6.2 is using the server mode with 1 MPI for the server. 2 executables are launched: gcm.e and xios_server.exe. No reconstruction is needed for the output files. The rebuild tool detects automatically that this is not needed.

The output level and the files to write is set in lmdz.card, orchidee.card and stomate.card. See comments in the corresponding files and read more in chapter Setup. The WriteFrequency option in config.card is not used any more.

1.7. Parameter files

Parameter file are found in PARAM/ directory except the xml files copied directly from the models directory.

In the parameter files, some of the variables will be modified after the job is submitted. This is done by the comp.driver: lmdz.driver, orchidee.driver, stomate.driver and xios.driver. All the variables that might be modified are set equal _AUTO_ or _AUTOBLOCKER_. No variable can be modified without having this key word. The values for these variables are set according to the options from lmdz.card, orchidee.card, stomate.card and config.card.

A variable which is set to _AUTO_ can also be changed manually in the corresponding file in the PARAM directory. For this case, the driver can not change it again. Some variables are set equal _AUTOBLOCKER_. They cannot be changed. If still they are changed, the job will exit with error message.

Physics in LMDZ:
Different versions of physics for LMDZ exist in PARAM directory. The choice is done from lmdz.card by setting the variable LMDZ_Physics. The physiq.def and gcm.def files are suffixed by the version of the physics.

CWRR 11-layer hydrology in ORCHIDEE:
Only the multilayer CWRR hydrology scheme is available in ORCHIDEE.

2. Quick installation

2.1. Extract default version

# Install modipsl
svn co http://forge.ipsl.jussieu.fr/igcmg/svn/modipsl/trunk modipsl
cd modipsl/util

# Before next command, modify the file mod.def if you want to extract an old version (*)

# Download and compile configuration LMDZOR_v6.2_work
./model LMDZOR_v6.2_work
cd ../config/LMDZOR_v6
./compile_lmdzor.sh [-debug, ...]

# Experiment setup
cp EXPERIMENT/LMDZOR/clim_pdControl/config.card .     # => modify at least JobName=MyJobname, DateBegin, DateEnd in config.card
../../libIGCM/ins_job
cd MyJobname


# Modify default setup: 
# for example change physics in lmdz.card, or hydrology in orchidee.card

# Modify config.card if compilation done for debug mode or another resolution than the default 144x142x79
vi config.card  => OptMode=debug, ResolAtm=xxx

ccc_msub Job_MyJobname / sbatch Job_MyJobname

2.2. Extract a different version

Modify the file util/mod.def if you do not want the default set up. This must be done at step (*) above, before the command ./model LMDZOR_v6.2_work. Look for the lines starting with #-C- LMDZOR_v6.2_work. Each of these lines describes the extraction of one component which is included in the configuration LMDZOR_v6.2. Change the revision number to correspond to the revision you need.

3. How to reproduce a coupled simulation with the forced model ?

You have run a simulation with IPSLCM6.2 and you would like to launch the same with LMDZOR_v6.2 with limit conditions (SST and seaice) coming from the same or another IPSLCM6.2 simulation. In practice this is needed to estimate radiative forcing from MyIPSLCM6 experiment using SST and sea-ice from the same simulation or from a reference simulation.

Do as following :

  • Create limit.nc using sst / sic and land-sea mask from your IPSLCM6 simulation, as described in chapter LMDZ.
  • Create your new experiment directory
    cd modipsl/config/IPSLCM6
    cp -r MyIPSLCM6 MyLmdzor6
    cd MyLmdzor6
    rm -rf Script* run.card Job* Debug
    
  • modify config.card :
    • modify the JobName as you want
    • modify the TagName to LMDZOR
    • modify the Restart section to use Restart from MyIPSLCM6
    • remove or comment out all lines for the ocean component(OCE, MBG) and the coupler(CPL) in ListOfComponents:
      [ListOfComponents]
      ATM= (lmdz, LMDZ6)
      SRF= (orchidee, ORCHIDEE_2_2)
      SBG= (stomate, ORCHIDEE_2_2)
      #OCE= (opa9, nemo_v3_6_STABLE-r9455)
      #ICE= (lim3, nemo_v3_6_STABLE-r9455)
      #MBG= (pisces, nemo_v3_6_STABLE-r9455)
      #CPL= (oasis, oasis3-mct-r1818)
      IOS= (xios, xios)
      
  • Add the path of your new limit.nc files in [BoundaryFiles] Section of lmdz.card
  • create your new job
    ../../../libIGCM/ins_job
    
Last modified 2 years ago Last modified on 11/28/19 16:43:09