wiki:IPSLCM5_v5

Version 9 (modified by mafoipsl, 12 years ago) (diff)

--

New set up of the coupled model of IPSL. This configuration contains possibility to run IPSLCM5A, IPSLCM5B or IPSLCM5_C

Extract IPSLCM5_v4 configuration

To use the configuration IPSLCM5_v4, it is necessary to extract modipsl rev 1618 or later. It is also necessary to have libIGCM/trunk rev 541 or later.

Extract using modipsl, same as IPSLCM5A except the configuration name should be IPSLCM5_v4. Change also directory LMDZ4 to LMDZ. And change libIGCM. Add in mod.def :

#-H- IPSLCM5_v4  IPSLCM5_v4 coupled configuration
#-H- IPSLCM5_v4  CMIP5 version 08/12/2011
#-H- IPSLCM5_v4  with 5 NEMO sub-domains for vargas or titane by default
#-H- IPSLCM5_v4  NEMO svn branches/CMIP5_IPSL 3205 
#-H- IPSLCM5_v4  XMLF90 svn trunk revision 297
#-H- IPSLCM5_v4  XMLIO_SERVER svn trunk revision 297
#-H- IPSLCM5_v4  IOIPSL/src svn tags/v2_2_1
#-H- IPSLCM5_v4  LMDZ4 branches LMDZ4_AR5 revision 1602
#-H- IPSLCM5_v4  ORCHIDEE version orchidee_1_9_5
#-H- IPSLCM5_v4  OASIS3 tag ipslcm5a
#-H- IPSLCM5_v4  IPSLCM5_v4 svn 
#-H- IPSLCM5_v4  libIGCM tag libIGCM_v1_12
#-M- IPSLCM5_v4  arnaud.caubel@lsce.ipsl.fr
#-C- IPSLCM5_v4  IOIPSL/tags/v2_2_1/src        HEAD         8  IOIPSL/src modeles
#-C- IPSLCM5_v4  ORCHIDEE            orchidee_1_9_5         2  .          modeles
#-C- IPSLCM5_v4  OASIS3                    ipslcm5a         1  prism      .
#-C- IPSLCM5_v4  LMDZ4/branches/LMDZ4_AR5/     1602        11  LMDZ       modeles
#-C- IPSLCM5_v4  CONFIG/IPSLCM/IPSLCM5_v4      HEAD         8  IPSLCM5_v4 config
#-C- IPSLCM5_v4  trunk/libIGCM                  541        10  libIGCM    .
#-C- IPSLCM5_v4  branches/CMIP5_IPSL/NEMO      3205         7  .          modeles
#-C- IPSLCM5_v4  branches/CMIP5_IPSL/UTIL      3205         7  .          modeles
#-C- IPSLCM5_v4  XMLF90                         297        12  .          modeles
#-C- IPSLCM5_v4  XMLIO_SERVER/trunk             297        12  XMLIO_SERVER  modeles

LMDZ5 can also be used, in that case change the line for extraction of LMDZ into :

#-C- IPSLCM5_v4  LMDZ5/trunk        HEAD        11  LMDZ       modeles

Contents of the configuration directory IPSLCM5_v4

> ls
AA_make
AA_make.ldef
scripts
config.card
GENERAL
USER_SPEC

The AA_make* files and the directory scripts are used for the compiling. These are the same as in IPSLCM5A. There are no differences in compiling compared to IPSLCM5A.

For the running part, there are 2 directories USER_SPEC and GENERAL and one config.card. The directory GENERAL contains the sub-directories POST, PARAM and DRIVERS. The files in GENERAL are used for all types of experiments using this configuration. USER_SPEC contains different sub-directories with all cards needed for 5 proposed experiments with IPSLCM5.

> ls USER_SPEC
IPSLCM5

> ls USER_SPEC/IPSLCM5
Chistorical
CpiControl
EXP00
historical
piControl

For one experiment, a config.card and a directory COMP exist. The COMP directory contains all components card for the experiment. For example the experiment historical :

> ls USER_SPEC/IPSLCM5/historical
config.card
COMP

> ls USER_SPEC/IPSLCM5/historical/COMP
lim2.card
lmdz.card
oasis.card
opa9.card
orchidee.card
pisces.card
stomate.card


How to create a job and run directory

Combining the GENERAL directory with one of the sub-directories in USER_SPEC makes a complete run directory.
The ins_job now contains the creation of such a run directory. The config.card in the directory IPSLCM5_v4, beside the GENERAL and USER_SPEC directory has to be edited. A new variable UserSpec in the section UserChoices points to the COMP directory of the chosen experiment. For example UserSpec=IPSLCM5/historical for a historical run. In each of the experiment directories in USER_SPEC/IPSLCM5, config.card are given as example and can be copied. Other variables in config.card are modified as usual.

While running ins_job, if a config.card found beside a GENERAL and a USER_SPEC directory, then the creation of a new run directory will be done. The directory GENERAL will be copied into a directory with same name as JobName in config.card. Then according to the variable UserSpec, a specific COMP directory in USER_SPEC will be copied into the new run directory. Finally the config.card will be copied in the run directory.

Once the run directory has been created with ins_job, this directory is used as a normal run directory. For example it is possible to remove the job, change the config.card inside the directory and re-create the job with ins_job. To create a second run directory, modify the upper config.card, in IPSLCM5_v4 directory, with at least the JobName, and re-run ins_job. If a directory with the JobName already exist, nothing will be done using this config.card.

DRIVER directory

Another difference with origin configuration structure (such as IPSLCM5A) is the separation between cards and drivers. All cards (expect config.card) are kept in COMP directory and all drivers are in a new DRIVER directory. To use this structure the tag libIGCM_v1_12 or later is needed.

Remaining questions

How to make clear that a variable in a parameter file might be edited by the drivers ?

  • If the variable always is edited, it is then possible to put in parameter file var=_AUTO_
  • But if a variable only is some cases is modified, then a default value is needed. A possibility might be to decide a syntax for example var=_AUTO_:X where X is the default value. Then before starting the execution all variables that still keeps _AUTO_, the X value must be adapted...

To do list

  • libIGCM MPI/OPenMP
  • NEMO v3_4 with FCM to compile, dynamic allocation for the number of processors.
  • ORCHIDEE from svn server

Attachments (1)

Download all attachments as: .zip