At ECMWF version 902 of FLEXPART is centrally installed on ecgb and on some internal Linux-based systems. On these systems Metview is configured to pick up automatically the FLEXPART location via these env variables:
MV_FLEXPART_EXE_PATH: defines the FLEXPART executable
MV_FLEXPART_RESOURCES_PATH: specifies the directory containing the following files
MV_FLEXPART_SPECIES_PATH
Hard-coded parameters
Some of the key FLEXPART parameters cannot specified as a run time option but are hard-coded in the source. The FLEXTRA installation at ECMWF uses the following set of hard-codes parameters:
Description | Value | Parameter in source | Source file |
---|---|---|---|
Maximum number of grid points in E-W (input grid) | 721 | nxmax | par_mod.f90 |
Maximum number of grid points in N-S (input grid) | 361 | nymax | par_mod.f90 |
Maximum number of model levels (input grid) | 138 | par_mod.f90 | |
Maximum number of species | 1 | maxspec | par_mod.f90 |
Maximum number of particles | 2000000 | maxpart | par_mod.f90 |
Maximum number of age classes | 1 | maxageclass | par_mod.f90 |
Maximum number of receptor sites | 200 | maxreceptors | par_mod.f90 |
Maximum number of output grid nests | 0 | maxnests | par_mod.f90 |
Compilation
compiler: gfortran
compilation options:
-O2 -m64 -mcmodel=medium -fconvert=little-endian -frecord-marker=4
Code modifications
To make FLEXPART work at ECMWF the following modifications had to be made in the source code:
1. Resolve type mismatch in err.f90 with newer gfortran compiler: see flextra ticket49
This involved the modification in err.f90 of line 106 and 111
and line 140 and 145 as well.
2. Make FLEXPART work for 137 model levels
In par_mod.f90 line 125 had to be modified: