New set up of the coupled model of IPSL. This configuration contains possibility to run IPSLCM5A, IPSLCM5B or IPSLCM5_C [[PageOutline]] == Extract IPSLCM5_v4 configuration == To use the configuration IPSLCM5_v4, it is necessary to extract modipsl rev 1618 or later. Extract using modipsl, same as IPSLCM5A except the configuration should be IPSLCM5_v4 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 LMDZ4 modeles #-C- IPSLCM5_v4 CONFIG/IPSLCM/IPSLCM5_v4 HEAD 8 IPSLCM5_v4 config #-C- IPSLCM5_v4 tags/libIGCM_v1_12 HEAD 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 }}} == 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.[[BR]] 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 }}} [[BR]] == 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.[[BR]] 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. [[BR]] 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. [[BR]] 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. [[BR]] == 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 ?[[BR]] - If the variable always is edited, it is then possible to put in parameter file var=_AUTO_[[BR]] - 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...