Vous regardez une version antérieure (v. /display/EDDSDLTEL/Configuration+files) de cette page.

afficher les différences afficher l'historique de la page

« Afficher la version précédente Vous regardez la version actuelle de cette page. (v. 12) afficher la version suivante »

To run, GEM needs the configuration files (short "config" files) listed below, which all need to be in a directory called "config directory". To make the exchange of these files easier between different users, I suggest we all keep similar "base" directory structures. Suggestion:

    ~/gem/version/Configs/...

For 'version' put one of the following:

    v_4.8.12.u   (GEM4.8)
    v_5.0.0   (GEM5.0)
    v_5.1.1   (GEM5.1.1)

Whenever you have problems with a simulation, let me know what the problem seems to be and where I can find your config files!

These are the needed config files:

If you want to start a new simulation I suggest you copy a set of config files from another simulation, which is as close as possible to the one you want to run.

configexp.cfg

This file is a shell parameter file which gets sourced by the scripts. You can put comments in it like in any other shell script and there must never be a space before or after the '=' sign. The parameters set here determine:

  • name of experiment (always keep *_YYYYMM and the end of the name)
  • start and end date
  • model time step
  • model levels
  • number of cores to run on
  • where to find the input files
  • where to archive the output
  • control output of pilot files
  • ...

When running UQAM style there are several more parameters to be set than in ECCC's forecast mode. These extra parameters all start with 'CLIMAT_...'.

General GEM parameters:

  BACKEND_machName of machine to run on → Keep set to ${TRUE_HOST}

BACKEND_time_modRequested job wallclock time in seconds

BACKEND_cmRequested memory per MPI process -> gets adjusted automatically by the model scripts




GEM_ptopoMPI(x*y) * OMP PEs topology (Syntax: MPIx x MPIy x OpenMP).
Example: GEM_ptopo=8x4x2
    uses 8 MPI tiles in x-direction, 4 MPI tiles in y-direction with OpenMP=2 for a total of 64 cores.
You can set the OpenMP factor (last factor ) to 1 or 2. If there are enough resources you can also set it to 4.

Keep in mind that the minimum number of grid points for a GEM tile is ~25:
   pilot region (Grd_maxcfl+7)  + blending (Lam_blend_H (default 10))  + 5 points
If you change the tiling and your simulation suddenly crashes right at the beginning of the model executable it might be that the tiling you chose does not work for this grid. Choose another tiling and try again.
In general you want to keep your tiles as square as possible to keep the amount of data exchange between tiles to a minimum.


GEM_expCurrent experiment name; Keep the '_YYYYMM' at the end. It will get replaced by the scripts with the current year/month!

GEM_analFull path of initial condition file. This file needs to match the start date of your simulation!

GEM_anclimaFull path of SST & sea ice fraction files minus the _YYYYMM at the end!

GEM_climatoClimatological file or directory

GEM_ozoneFull path of the ozone climatology file

GEM_geophyGeophysical fields file; specify directory of file 'Gem_geophy.fst'
This file should match your grid!

GEM_inrepWorking directory for driving data
On CC machines this should be under ~/scratch/...

GEM_ovbinPath to the model executables (up until but excluding 'build-${ORDENV_PLAT}')

Extra parameters when running "UQAM style":


CLIMAT_startdateStart date of simulation. Format: 'YYYY MM DD hh'
This date must match the validity date of all the fields in the analysis file.
Never change the startdate during a running simulation!!!

CLIMAT_enddateEnd date of simulation. Format: 'YYYY MM DD hh'
You can change this while the simulation is running.

CLIMAT_arch_machArchive machine (machine you are running on) so you can always set:
  CLIMAT_arch_mach=${TRUE_HOST}

CLIMAT_archdirArchive directory on ${CLIMAT_arch_mach}

CLIMAT_intervalNumber of months to run per one job

CLIMAT_outrepName of temporary output directory
On CC machines this should be under ~/scratch/...  (At least while this filesystem behaves well!)

CLIMAT_deltatModel time step in seconds. Must match 'Step_dt' in file gem_setting.nml!

CLIMAT_etanamePre-defined hybrib model level set. See 'Climat_eta2preshyb' for possible settings.

CLIMAT_diagnos1: Calculate monthly means and variances

CLIMAT_update_ghg1: Update greenhouse gases yearly

CLIMAT_ghg_listGreenhouse gas table

CLIMAT_nest_reptLAM only: Path of lateral boundary conditions

CLIMAT_nest_expLAM only: Common base name of monthly files or directories in above directory; without the _YYYYMM

CLIMAT_out_analOutput frequency (in # of model time steps) of initial condition files to be used to initialize other simulations

CLIMAT_out_pilotOutput frequency (in # of model time steps) of pilot files to be used to drive other simulations at the lateral boundaries

CLIMAT_pp_superjobUse super jobs instead of submitting post processing directly

gem_settings.nml  

This file contains Fortran namelists which will be read by the model. This means you cannot put any comments inside the namelists, but only in between them!
This file is very sensitive to errors. Even a missing '.' can make the model crash and all you will get is a message saying that there is an error in a specific namelist and it is up to you to find this error.

The parameters set here determine:

  • model grid
  • model (and driving data) time step
  • output file formats (monthly/daily/..., etiket)
  • advection & diffusion
  • spectral nudging
  • physics (radiation/convection/surface/...) schemes
  • ...

For more information have a look at an extract of RPN's wiki pages:
        GEM_4.8.lts12 namelists
        GEM_5.0.0 namelists
In climate mode the following parameters will be set automatically, according to certain parameters in your 'configexp.cfg':

  • 'Step_runstrt_S' and 'Fcst_end_S' (according to start date and current month)
  • 'hyb' and 'Grd_rcoef' (according to 'CLIMAT_etaname')
  • Greenhouse gas concentrations:  qcfc12, qcfc11, qch4, qn2o, qco2 (according to ${CLIMAT_ghg_list})

outcfg.out  

This file gets evaluated by the model. This file does not tolerate any comments. As soon as the model finds only one character out of place it will ignore the rest of the file! It controls the RPN standard file output such:

  • output grid (model/core/free)
  • output frequency (in steps or hours)
  • output levels (model/pressure)
  • and which fields will be written

Have a look at the general description on our wiki: outcfg.out

A list of all model variables available for output can be found at the beginning of each model listing.
Note that this list varies depending on the schemes used!
A list of the most common fields can also be found under: RPN variable names

When running the UQAM version of GEM for output intervals ('steps=#,hour,<start,end,inc>';) the start and end hour (or step) will get updated automatically! Only for the first job in a run the start hour (or step) has to be set by the user!

You can find an example file further down on this page under: outcfg.out example

If you set one of the following 3 parameters in your configexp.dot file:

    CLIMAT_out_anal
    CLIMAT_out_pilot
    CLIMAT_out_offline

additional lines will automatically get added to your outcfg.out file to output initial condition files (prefix=an), pilot files (prefix=nm) or fields to drive an offline model like SPS (prefix=ol).

outcfg.out example:

 grid=1,free;

 levels=1, eta, -1;
 levels=2, pres,[1000.,975.,950.,925.,900.,850.,800.,700.,600.,500.,400.,300.,250.,200.,150.,100.,70.,50.,30.,20.,15.,10.];
 levels=3, eta,  0;

 steps=1,step,0;
 steps=2,hour,<98592.,99312.,1>;
 steps=3,hour,<98592.,99312.,3>;
 steps=4,hour,<98592.,99312.,24>;

 sortie_p([PR,PC,AE,RN,SN,FR,PE,N3,N7,RNAC,O7,MLTS,MLTR,TRAF,TDRA,RFAC]  , grid, 1, levels, 1, steps, 2, avgacc)
 sortie_p([NF,NFR,NFRL,NFRM,NFRH,NFRT,AS,AI,AV,AH,AR,AB,AU,N4,AD,AHF,AVF], grid, 1, levels, 1, steps, 3, avgacc)
 sortie_p([IMAV,UVAV,ICRM,IIRM,IWVM]                                     , grid, 1, levels, 1, steps, 3, average)
 sortie_p([AL,SD,DN,FSNO,TN,GL,TM,I3,I4,I5,I6,I7,I8,I9,7S,3P,4P,5P]      , grid, 1, levels, 1, steps, 3)
 sortie_p([I0,I1,I2,J8,J9,TT2M,LMLT,LIFR,S5,S6,5P]                       , grid, 1, levels, 1, steps, 3)

 sortie_p([T5]                                                           , grid, 1, levels, 3, steps, 4, min)
 sortie_p([T9,UVMX]                                                      , grid, 1, levels, 3, steps, 4, max)

 sortie  ([P0,PN]                                                        , grid, 1, levels, 1, steps, 3)
 sortie  ([TT,UU,VV,HU,WW,GZ]                                            , grid, 1, levels, 2, steps, 3)
 sortie  ([TT,UU,VV,HU,HR]                                               , grid, 1, levels, 3, steps, 3)

 sortie_p([SAND,CLAY,DPTH,SCOL,8L,Y2C,MF,MG,2V,LB,FU,E8,C9,H7,HT,D2,D5,LDEP]  , grid, 1, levels, 1, steps, 1)
 sortie  ([ME]                                                           , grid, 1, levels, 1, steps, 1)


physics_input_table

The ‘physics_input_table’ contains a list of all your physics input fields. This includes all the geophysical fields (GEOP), fields to be read from the initial condition file (ANAL), fields read from the climatological file specified in ‘GEM_climato‘ (CLIM) as well as fields from the analyzed climatological file, ‘GEM_anclima’, like for ‘TM’ and ‘LG’ (INREP).

There is one row per field to be read with the following parameters:

    in : name of field to be read
    freq : frequency at which field will be read. 0: initial time step; 1: whenever it is found; 2: ???
    search : shortcut of file to look for field. A list of files can be given.
    Interp : horizontal interpolation type. Options: linear, near, cubic
    timeint: linear, step, any, near

Examples:

    in=VF;   freq=0;   search=GEOP;       interp=near;   levels= 1,26;
    in=SD;   freq=0;   search=ANAL;       interp=near;   levels= 1,7;
    in=TM;   freq=0,1; search=ANAL,INREP; interp=linear; timeint=near
    in=LG;   freq=0,1; search=ANAL,INREP; interp=near;   timeint=near

CLASS_input_table  (only needed in GEM 5 when running CLASS or CLASSIC)

This file is only needed when running GEM5 and up with CLASS. It  contains almost all the parameter settings for CLASS or CLASSIC. Usually this file does not need to get edited. You can just copy one from another GEM5 CLASS simulation.


  • Aucune étiquette