{{{ #!html

Download

}}} ---- [[NoteBox(note,Download a model configuration to a specific machine using the '''modipsl''' tool., 600px)]] [[PageOutline(1-2,Table of contents,pullout)]] ---- # Description # '''modipsl''' is a suite of scripts which allow you to * obtain a model configuration from a computing center; * to [wiki:Doc/Compile compile] the model components of a model configuration on a specific machine. '''modipsl''' is also the architecture hosting the models and tools of a chosen model configuration. modipsl is developed at IPSL. # Downloading modipsl # {{{ #!sh svn co http://forge.ipsl.jussieu.fr/igcmg/svn/modipsl/trunk modipsl }}} To avoid typing this command line for every new modipsl retrieval, we recommend to create an alias : {{{ #!sh alias svn_ano='svn co http://forge.ipsl.jussieu.fr/igcmg/svn/modipsl/trunk modipsl' }}} The retrieval command then becomes {{{ #!sh svn_ano }}} To learn more about SVN and other useful scripts, [wiki:DocKexterntoolsAsvnbasic click here]. # How to use modipsl # ## The modipsl directories ## After downloading and unpacking '''modipsl''', you should have the following directory structure: * '''util''' contains information and scripts necessary to setup the different versions of the IPSL models; * '''doc''' contains the CECILL's license (license of the IPSL models) modipsl also contains the following directories (empty in the beginning) : * '''modeles''': directories containing the model source codes (filled once the model configuration has been downloaded and unpacked) * '''config''': directories containing the experiment directories (filled once the model configuration has been downloaded and unpacked) * '''bin''': directory containing the executables (filled after compiling) * '''lib''' and '''tmp''': directories containing temporary files created during the compilation. Those directories will not be used by all models. '''Main scripts in the directory ''util'''''[[BR]] * '''`model`''' --> Downloading script for available model configurations. This script also provides information on the available model configurations. * '''`mod.def`''' --> File containing the information on the available model configurations : components, tags, svn servers * '''`ins_make`''' --> Install Makefiles for the computing machine * '''`ins_job`''' --> Script for running jobs on the computing machine ## Available configurations via modipsl ## Using '''modipsl''' will give you access to a large number of model configurations, each of them uses one or more IPSL models. To list the available model configurations, use the following script: {{{ #!sh cd modipsl/util ./model -h }}} To obtain information on the models used (tags, versions,...) in a specific configuration, use the following script: {{{ #!sh ./model -h nom_de_la_config }}} Example with LMDZOR_v5 : {{{ #!sh ./model -h LMDZOR_v5 model : LMDZOR_v5 LMDZ and ORCHIDEE (closest version to IPSLCM5_v5) This configuration can be used with LMDZ4(LMDZ4/branches/LMDZ4_AR5) or LMDZ5 (LMDZ5/trunk(default), LMDZ5/branches/LMDZ5_AR5). email address of the model manager: Josefine.Ghattas@ipsl.jussieu.fr Component 1 : IOIPSL/tags/v2_2_1/src Tag 1 : HEAD System 1 : svn Server 1 : http://forge.ipsl.jussieu.fr/igcmg/svn Directory 1 : IOIPSL/src Local Dir 1 : modeles Component 2 : tags/ORCHIDEE_1_9_5/ORCHIDEE Tag 2 : HEAD System 2 : svn Server 2 : svn://forge.ipsl.jussieu.fr/orchidee Directory 2 : ORCHIDEE Local Dir 2 : modeles Component 3 : LMDZ5/trunk Tag 3 : 1628 System 3 : svn Server 3 : http://svn.lmd.jussieu.fr/LMDZ Directory 3 : LMDZ Local Dir 3 : modeles Component 4 : CONFIG/UNIFORM/v5/LMDZOR_v5 Tag 4 : HEAD System 4 : svn Server 4 : http://forge.ipsl.jussieu.fr/igcmg/svn Directory 4 : LMDZOR_v5 Local Dir 4 : config Component 5 : tags/libIGCM_v2.0_rc3 Tag 5 : HEAD System 5 : svn Server 5 : http://forge.ipsl.jussieu.fr/libigcm/svn Directory 5 : libIGCM Local Dir 5 : . }}} If the requested model configuration does not exist : {{{ #!sh ./model -h Ornithorynque Model Ornithorynque unknown Try "model -h" }}} ## How to download and use a selected model configuration ## Downloading is the recovery of the source codes of the model components of a specific model configuration from different SVN (and CVS) servers. The download can be done with this script: {{{ #!sh ./model config_name }}} When you try to access to the component servers, some of them request a login and a password: ORCHIDEE, NEMO, INCA and REPROBUS. To do so, you must contact the person in charge of the [wiki:DocHconfig model configuration] (see above the list of [#Specialcases special cases]; model managers email addresses is available via the command '''model -h''') [[BR]] Example : {{{ #!sh cd modipsl/util # see all the available configurations ./model -h # extract the LMDZOR_v5 configuration ./model LMDZOR_v5 }}} The source codes of the downloaded models are in the '''modipsl/modeles/''' directory. For the previous example you will obtain the following directories : * modipsl/modeles/IOIPSL * modipsl/modeles/LMDZ * modipsl/modeles/ORCHIDEE '''modipsl''' also installs a model '''configuration'''. It is installed in the directory '''modipsl/config/''' (here modipsl/config/LMDZOR_v5). [[BR]] Each model will be compiled and the simulation will be run in the '''`config`''' directory. The log files of the installation are stored in the `modipsl/util/log` file. ## Syntax in mod.def ## When launching '''./model config_name''', in mod.def lines starting with * '''#-H- config_name''' only text information * '''#-M- config_name''' an email will be sent to the given address only at first extraction at a new machine * '''#-C- config_name''' code extraction The code extraction line has the following syntax : {{{ #-C- config_name versionOnServer revisionNumber depotNumber modelName dirInModipsl }}} * depotNumber is the reference of the repository address for the given code. The full address is set in the beginning of mod.def where all repository addresses are listed starting with '''#-S- number'''. * versionOnServer is directory to extract find on the current depository address * revisionNumber is the revision to extract. If revisionNumber is HEAD, the latest revision on the versionOnServer will be extracted. * dirInModipsl is the directory in modipsl where the code will be installed * modelName is the name of the installed directory. The code will be find in modipsl/dirInModipsl/modelName As an example see here an extract from mod.def: {{{ ... #-S- 8 svn http://forge.ipsl.jussieu.fr/igcmg/svn #-S- 9 svn --username inca http://forge.ipsl.jussieu.fr/inca/svn #-S- 10 svn http://forge.ipsl.jussieu.fr/libigcm/svn #-S- 11 svn http://svn.lmd.jussieu.fr/LMDZ #-S- 12 svn http://forge.ipsl.jussieu.fr/ioserver/svn #-S- 13 svn http://forge.ipsl.jussieu.fr/fcm/svn #-S- 14 svn svn://forge.ipsl.jussieu.fr/orchidee ... ... #-H- LMDZ_v5 LMDZ (closest version to IPSLCM5_v5) #-H- LMDZ_v5 This configuration can be used with LMDZ4(LMDZ4/branches/LMDZ4_AR5) or LMDZ5 (LMDZ5/trunk(default), LMDZ5/branches/LMDZ5_AR5) #-M- LMDZ_v5 Josefine.Ghattas@ipsl.jussieu.fr #-C- LMDZ_v5 IOIPSL/tags/v2_2_2/src HEAD 8 IOIPSL/src modeles #-C- LMDZ_v5 LMDZ5/trunk 2076 11 LMDZ modeles #-C- LMDZ_v5 CONFIG/UNIFORM/v5/LMDZ_v5 HEAD 8 LMDZ_v5 config #-C- LMDZ_v5 tags/libIGCM_v2.5 HEAD 10 libIGCM . ... }}} By launching ./model LMDZ_v5, you'll install in directory * modipsl/modeles/IOIPSL/src : the latest revision of IOIPSL/tags/v2_2_2/src from repository http://forge.ipsl.jussieu.fr/igcmg/svn * modipsl/modeles/LMDZ : revision 2076 of LMDZ5/trunk from repository http://svn.lmd.jussieu.fr/LMDZ * modipsl/config/LMDZ_v5 : the latest revision of CONFIG/UNIFORM/v5/LMDZ_v5 from repository http://forge.ipsl.jussieu.fr/igcmg/svn * modipsl/libIGCM : the latest revision of tags/libIGCM_v2.5 from repository http://forge.ipsl.jussieu.fr/libigcm/svn ## Change a model version ## By default the available model configurations use specific model versions. But different versions of a given model can be used with a specific configuration. This is the case for the LMDZ version in the "_v5" configurations. You might want to use the latest version on an LMDZ4/branches/LMDZ4_AR5 branch (used for CMIP5 simulations) or you might want to use the new physics scheme of LMDZ and therefore you will need a more recent version of LMDZ5/trunk. To find out which model version to use, please contact the model development team directly. [[BR]] If you already know which model version to use, you just have to change the section about the model configuration you selected in '''modipsl/util/mod.def'''. [[BR]] For example with LMDZOR_v5, in mod.def you have the following lines: {{{ #-C- LMDZOR_v5 tags/ORCHIDEE_1_9_5/ORCHIDEE HEAD 14 ORCHIDEE modeles #-C- LMDZOR_v5 LMDZ5/trunk 2076 11 LMDZ modeles }}} The second column tells the version and third column the revision for this version. If it says HEAD, this means the latest revision. This means that you'll extract ORCHIDEE version '''tags/ORCHIDEE_1_9_5/ORCHIDEE''', latest revision. For example, to extract the LMDZOR_v5 configuration with the latest revision (HEAD) of LMDZ4_AR5, change '''mod.def''' to obtain : {{{ #-C- LMDZOR_v5 LMDZ4/branches/LMDZ4_AR5 HEAD 11 LMDZ modeles }}} or for LMDZ5/trunk revision 1628 : {{{ #-C- LMDZOR_v5 LMDZ5/trunk 1628 11 LMDZ modeles }}} or to use the "testing" branch of LMDZ with revision 2160: {{{ #-C- LMDZOR_v5 LMDZ5/branches/testing 2160 11 LMDZ modeles }}} You can also change to use a different branch for a model. For example if you want to use the branch ORCHIDEE-DOFOCO in LMDZOR_v5.2 configuration, change to obtain following in mod.def: {{{ #-C- LMDZOR_v5.2 branches/ORCHIDEE-DOFOCO/ORCHIDEE HEAD 14 ORCHIDEE modeles }}} # Special cases # * '''Reprobus''' : this model has restricted access via svn+ssh. Click [wiki:DocImodelEreprobus here] for more information. * '''Orchidee''' : * If you want to use the trunk of ORCHIDEE, use configuration LMDZOR_v5.2 or ORCHIDEE_trunk(offline) * Install LMDZOR and ORCHIDEE_OL with the same modipsl : [wiki:DocHconfigBlmdzor#HowtoretrieveORCHIDEE_OLinaLMDZORconfiguration click here] * '''NEMO''' : this model needs to get an account on [http://www.nemo-ocean.eu NEMO website]. Required only the first time. * '''INCA''' : this model needs also to get a specific account. ----