libIGCM provides a set of scripts in the directory libIGCM placed at the same level as RegIPSL. This directory also contains the definition files for the various computer centres on which libIGCM has been ported. Finally it contains a user level script (ins_job) which will generate the script to be launched on the computer.
For each experiment there is a directory which contains the following elements when the experiment is set-up :
In this following description we will use the shell nomenclature to outline where the variables defined in config.card. Thus {JobName} refers to the job name defined in config.card.
With this set-up, ins_job script provided in the libIGCM directory needs to be executed in order to generate the jobs needed to run this experiment on the machine which you are using. This will create a file named Job_{JobName} and the file run.card.init which will serve to track the evolution of the experiment. For our computer centres the following options to the job work well for RegIPSL :
When the model starts running (once Job_{JobName} has been submitted to the queuing system) some extra information are written into this directory ({SUBMIT_DIR} in libIGCM talk) :
Some of the main variables which can be changed in config.card and change the behaviour of the scripts which execute the experiment.
For the configuration of libIGCM for regional modelling at IPSL the following parameters of config.card should not change :
The above lists are to be expanded as a better understanding of the application of libIGCM for RegIPSL is gained.
comp.card (where comp is the name of one of the executables to be coupled) contains the list of the various files needed to run the model and which will need to be copied to the temporary directory where the model will run. It will also contain the list of files written by the model and how they should be names once written on the output directory. The file can also contain the post-processing which should be done for a list of variables and how often this should be done. It can also contain higher level configuration parameters which affect more aspects of the execution of the model then just the run.def or Namelist.
comp.driver provides a number of functions which will be called at well determined moments by the Job as it is being executed (In the following COMP stands for the code of the component : ATM, SRF, OCE … or other) :
The files produced by the models will be distributed on either the disk storage or the mass store depending on the infrastructure provide by the computer centre and the selection by the user (in config.card) of the post-processing, packing and monitoring frequencies.
The selection of SpaceName between DEVT/TEST/PROD will also dictate that distribution. A production run will store most things on the mass store while a development run will keep files on disks.
Below an example from IDRIS :
The parameter PackFrequency of the config.card will decide, on IDRIS for instance, how often the output directory created on ADA in the WORKDIR is transferred to ERGON after some packing (reduce the number of files and generate larger ones !) is done.
Some standard implementations are available in SourceSup and will be delivered with the code. These should be benchmarks with which we regularly test the standard configurations of the model. They are characterized by the experiment name FirstBench (ExperimentName=FirstBench).
The output of these simulation, to evaluate the organization of the date and output, are available on ergon at ~rron972/IGCM_OUT/RegIPSL/PROD/FirstBench/
The monitoring of the spin-up of WRFORCH is available here : https://prodn.idris.fr/thredds/fileServer/ipsl_public/rron972/RegIPSL/PROD/FirstBench/WRFORCH/MONITORING/index.html
Here are some of the standard problems encountered when problems occurs with the simulation management of libIGCM.
In this case you have to update your run.card in the Home directory of your simulation. This the file which contains the status of your simulation. In this file you will find the variable PeriodState which will have the “Fatal” value. Replacing this value by “Running” and then re-submitting the job will allow the simulation to continue.
In some cases the model crash can leave the entire simulation in a more complex situation with un-packed files still in the WORKDIR, incomplete time series and out of date monitoring.
In this case the missed packings need to be re-done and all the files migrated from the WORKDIR to the mass store. This can be done with the pack_output.job from libIGCM. Here a simple cookbook of how to recover from such a situation.
if they exist.find . -name “*19810531*” -exec rm -r {} \;
The number has to be replaced by the year and month you want to delete.