TM5
/ std
¶
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¶
direxec: (mandatory)
Path to executable and/or sources
accepted type: str
auto_recompile: (mandatory)
Recompile sources
accepted type: bool
make_clean: (mandatory)
When compiling, do a ‘make clean’ first.
accepted type: bool
fc: (mandatory)
Fortran compiler
accepted type: str
linker: (mandatory)
Linker
accepted type: str
Optional arguments¶
autoflush: (optional): False
Cleans big temporary files when the simulation is done. Triggers the function
flushrun
of the model if availableaccepted type: bool
tracer: (optional): CH4
The tracer to be used in the inverse modelling.
accepted type: str
nlay: (optional): 25
Number of layers in TM5 vertical grid.
accepted type: int
levs: (optional): tropo25a
Number of layers in TM5 vertical grid.
accepted type: str
eclevs: (optional): ml137
Number of layers in ECMWF vertical grid.
accepted type: str
projs: (optional): [‘base/src/’, ‘proj/levels/ml137/tropo25a/src/’, ‘proj/levels/ml137/src/’, ‘proj/tracer/CH4/src/’]
Copy these projects from the source dir before compilation. Note that the variable tm5_dir must be defined in the yaml config file.
accepted type: list
make_options: (optional): -j4
Options to pass to make, such as ‘-j n’ to have make run parallel threads.
accepted type: str
makedeps_dir: (optional):
The path to Makefile_makedeps, a makefile that automatically generates a list of dependencies.
accepted type: str
fflags_gfortran: (optional): -fdefault-real-8 -fdefault-double-8 -ffree-line-length-0 -g1 -O3 -fbacktrace -fcheck=array-temps -fcheck=bounds -fcheck=do -fcheck=pointer -fcheck=recursion -fallow-argument-mismatch -I/usr/local/gfortran/include
Compiler flags for gfortran. Note that openmp only works for ifort, but that ifort is not yet supported for compiling TM5 in CIF.
accepted type: str
ldflags_gfortran: (optional): -Wl,-rpath=/usr/local/gfortran/lib -Wl,-rpath=/usr/local/gfortran/include -L/usr/local/gfortran/lib -l:libmfhdf.a -l:libdf.a -ljpeg -lz -lsz -L/usr/local/gfortran/lib -lhdf5_hl -lhdf5hl_fortran -lhdf5 -lhdf5_fortran -L/usr/local/gfortran/lib -lnetcdff -lnetcdf -lhdf5_hl -lhdf5hl_fortran -lhdf5_fortran -lhdf5 -lz -lm -lsz -L/usr/local/gfortran/lib -llapack -lblas
Linker flags for gfortran.
accepted type: str
fflags_ifort: (optional): -traceback -warn errors -warn declarations -qopenmp -r8 -O3 -I/hpc/sw/netcdf-fortran-4.4.2-intel-seq/include -I/hpc/sw/hdf-4.2.9-intel-seq/include -I/hpc/sw/szip-2.1-intel/include -mkl=sequential
Compiler flags for ifort. Note that compiling TM5 with ifort is not yet supported in CIF.
accepted type: str
ldflags_ifort: (optional): -qopenmp -L/hpc/sw/netcdf-fortran-4.4.2-intel-seq/lib -lnetcdff -Wl,-rpath -Wl,/hpc/sw/netcdf-fortran-4.4.2-intel-seq/lib -L/hpc/sw/netcdf-4.3.1.1-intel-seq/lib -lnetcdf -Wl,-rpath -Wl,/hpc/sw/netcdf-4.3.1.1-intel-seq/lib -L/hpc/sw/hdf-4.2.9-intel-seq/lib -lmfhdf -ldf -L/hpc/sw/szip-2.1-intel/lib -lsz -ljpeg -lz -L/opt/intel/composer_xe_2015.0.090/mkl/lib/intel64 -lmkl_lapack95_lp64 -lmkl_intel_lp64 -lmkl_sequential -lmkl_core -lpthread -lm -ldl -Wl,-rpath -Wl,/opt/intel/composer_xe_2015.0.090/mkl/lib/intel64
Linker flags for ifort.
accepted type: str
meteo_macros: (optional): [‘with_tmm_tm5’]
Meteo macro’s (my.tmm.define in tmvar-tm5-build.rc)
accepted type: list
model_macros: (optional): [‘slopes’, ‘with_budgets’, ‘without_wet_deposition’, ‘without_photolysis’, ‘without_dry_deposition’, ‘with_convdiff’, ‘with_lapack’]
Model macro’s. When compiling with ifort, use with_mkl, else with_lapack.
accepted type: list
mdf_macros: (optional): [‘with_hdf4’, ‘with_netcdf4’]
Datafile macro’s
accepted type: list
optim_emis_type: (optional): 3
Type of variable to be optimized for emissions
accepted type: int
TCCON_FTS_list: (optional)
path to a station list for TCCON sites; this may disappear in the future
accepted type: str
Requirements¶
The current plugin requires the present plugins to run properly:
Requirement name |
Requirement type |
Explicit definition |
Any valid |
Default name |
Default version |
---|---|---|---|---|---|
domain |
False |
False |
dummy |
std |
|
chemistry |
False |
False |
TM5 |
SINK-TIPP |
|
flux |
True |
False |
TM5 |
std |
|
meteo |
True |
False |
TM5 |
std |
|
inicond |
True |
False |
TM5 |
ic |
Yaml template¶
Please find below a template for a Yaml configuration:
1model:
2 plugin:
3 name: TM5
4 version: std
5 type: model
6
7 # Mandatory arguments
8 direxec: XXXXX # str
9 auto_recompile: XXXXX # bool
10 make_clean: XXXXX # bool
11 fc: XXXXX # str
12 linker: XXXXX # str
13
14 # Optional arguments
15 autoflush: XXXXX # bool
16 tracer: XXXXX # str
17 nlay: XXXXX # int
18 levs: XXXXX # str
19 eclevs: XXXXX # str
20 projs: XXXXX # list
21 make_options: XXXXX # str
22 makedeps_dir: XXXXX # str
23 fflags_gfortran: XXXXX # str
24 ldflags_gfortran: XXXXX # str
25 fflags_ifort: XXXXX # str
26 ldflags_ifort: XXXXX # str
27 meteo_macros: XXXXX # list
28 model_macros: XXXXX # list
29 mdf_macros: XXXXX # list
30 optim_emis_type: XXXXX # int
31 TCCON_FTS_list: XXXXX # str