LMDZ/std LMDZ/std#

Description#

This is the plugin to run the model LMDZ. Please see further details on LMDZ itself here

YAML arguments#

The following arguments are used to configure the plugin. pyCIF will return an exception at the initialization if mandatory arguments are not specified, or if any argument does not fit accepted values or type:

Mandatory arguments#

fileexec : str, mandatory

path to DISPERSION executable

file_controle : str, mandatory

path to a restart file. It is used to update the controle variables in the initial condition files. It is especially important when directly interpolating initial conditions from another dataset. It is also used to update the initial date if different from the restart provided in the data vector

Optional arguments#

autoflush : bool, optional, default True

Clean sub-directories of temporary files (mod.bin, etc.)

dir_sources : str, optional, default “”

Path to DISPERSION sources. Overwrites fileexec if specified.

periods : str, optional, default “1MS”

Frequency for sub-simulations

flx_tresol : str, optional, default “1D”

Expected time step between flux values in the executable

physic : bool, optional, default True

Use physics in LMDZ

thermals : bool, optional, default False

Use thermals

compressed_phystoke : bool, optional, default False

Use compressed phystoke files

conv_scheme : “TK” or “KE” or “KE-Therm”, optional, default “TK”

Convection scheme to use for the deep-convection

  • “TK”: Tiedke parametrization; corresponds to convection scheme #2 in LMDZ

  • “KE”: Kerry-Emmanuel parametrization; corresponds to convection scheme #3 in LMDZ

  • “KE-Therm”: Kerry-Emmanuel parametrization + thermics; corresponds to convection scheme #30 in LMDZ

no_trajq : bool, optional, default False

Do not write ‘trajq_*.bin’ files. WARNING: ‘trajq_*.bin’ files are necessary for the adjoint mode

dump : bool, optional, default False

Dump trajq as netCDF

do_chemistry : bool, optional, default True

Use the chemistry

auto-recompile : bool, optional, default False

Auto-compile executables before running if executables not available

force-recompile : bool, optional, default False

Force compilation even if executables available

force-compile-stderr : bool, optional, default False

Force printing what happened during compiling

compile-clean : bool, optional, default False

Cleaning repositories before compiling; slows the compilation but prevent side-effects from re-compiling.Can be switched of for minor modifications in the code

compile-mode : “PROD” or “DEBUG”, optional, default “PROD”

Compilation mode

  • “PROD”: production mode; all optimizations are activated

  • “DEBUG”: check-all and traceback are activated, hence slowing down the execution

compiler : “ifort” or “gfortran”, optional, default “ifort”

Compiler to use

mpirun : str, optional, default “mpirun”

path to mpirun

run_options : optional, default []

MPI options

nfilun : int, optional, default 16

Parameter used in LMDZ sources in libf/firtrez/parafilt.h

nfilus : int, optional, default 15

Parameter used in LMDZ sources in libf/firtrez/parafilt.h

nproc : optional

Force using a given number of processors. By default, LMDZ uses all available processors

dont_perturb_species : list, optional

List of species to not perturb in batch sampling

copy_inputs : “any subset of [‘meteo’, ‘prescrconcs’, ‘prodloss3d’, ‘kinetic’]”, optional, default []

Copy (rather creating symbolic links) the input files

Requirements#

The current plugin requires the present plugins to run properly:

Requirement name

Requirement type

Explicit definition

Any valid

Default name

Default version

domain

Domain

False

False

LMDZ

std

flux

DataStream

True

False

LMDZ

sflx

chemistry

Chemistry

False

False

CHIMERE

gasJtab

emis_species

DataStream

True

False

LMDZ

bin

meteo

DataStream

True

False

LMDZ

mass-fluxes

inicond

DataStream

True

False

LMDZ

ic

prescrconcs

DataStream

True

False

LMDZ

prescrconcs

kinetic

DataStream

True

False

LMDZ

photochem

prodloss3d

DataStream

True

False

LMDZ

prodloss3d

YAML template#

Please find below a template for a YAML configuration:

 1model:
 2  plugin:
 3    name: LMDZ
 4    version: std
 5    type: model
 6
 7  # Mandatory arguments
 8  fileexec: XXXXX  # str
 9  file_controle: XXXXX  # str
10
11  # Optional arguments
12  autoflush: XXXXX  # bool
13  dir_sources: XXXXX  # str
14  periods: XXXXX  # str
15  flx_tresol: XXXXX  # str
16  physic: XXXXX  # bool
17  thermals: XXXXX  # bool
18  compressed_phystoke: XXXXX  # bool
19  conv_scheme: XXXXX  # TK|KE|KE-Therm
20  no_trajq: XXXXX  # bool
21  dump: XXXXX  # bool
22  do_chemistry: XXXXX  # bool
23  auto-recompile: XXXXX  # bool
24  force-recompile: XXXXX  # bool
25  force-compile-stderr: XXXXX  # bool
26  compile-clean: XXXXX  # bool
27  compile-mode: XXXXX  # PROD|DEBUG
28  compiler: XXXXX  # ifort|gfortran
29  mpirun: XXXXX  # str
30  run_options: XXXXX  # any
31  nfilun: XXXXX  # int
32  nfilus: XXXXX  # int
33  nproc: XXXXX  # any
34  dont_perturb_species: XXXXX  # list
35  copy_inputs: XXXXX  # any subset of ['meteo', 'prescrconcs', 'prodloss3d', 'kinetic']