These fixes have been implemented as version 2.06a_1 on 08.11.19.
A tar-file int2lm_191108_2.06a_1.tar is available on the server.
A problem occured with the local section 28, introduced for COSMO-LEPS. When no record of the input file has such a local section 28, the value lgot_loc28 is never set to .TRUE. and in the last cycle of the read-loop a deadlock could occur for the global communication, because not every MPI task then has a record to process.
In the module src_read_coarse_grid.f90 the checks for the local section 28 are now only done, if all records of a file do have local section 28 for COSMO-LEPS. Otherwise INT2LM stops with an error message.
Setting nunit_of_time in src_read_coarse_grid.f90The nunit_of_time is read from the input files and (up to this version) distributed by task 0 to all other tasks. But in rare cases it could happen, that task 0 does not get a valid nunit_of_time, while other tasks did.
The value for nunit_of_time is now taken from a global reduction over all tasks.
Working with a regular (not rotated) lat-lon-gridIn the module io_utilities.f90, subroutine check_input_grid, a check has been added that the rotated pole is specified as the geographical north pole, in case a regular lat-lon grid is used as input grid.
To store the COSMO-LEPS GRIB 2 data in the ECMWF MARS archive, it is necessary to set some specific meta data in the local use section of GRIB 2. These meta data are defined in a special ECMWF local use section with localDefinitionNumber 28.
To enable INT2LM and the COSMO-Model to also write this special group of meta data with the same localInformationNumber 28 directly and without any further post-processing, this group of meta data is also included in the DWD definition files with localDefinitionNumber 28. With the linking mechanism for other centers this group will be available for other centers running INT2LM and the COSMO-Model.
Changes to the INT2LM
To read IFS data with ensemble information and write GRIB 2 data, the DWD definition set for eccodes is needed: definitions.edzw/grib2. This set contains modifications to include the definitions of local use section 28 (from ECMWF) and 250 (COSMO). With the linking mechanism, every center can create links to all necessary files within definitions.edzw/grib2 and can therefore use the same set of definitions as DWD.
IFS data are coded with localDefinitionNumber 30 (using keys number (of representative member RM), totalNumber, legBaseDate and legBaseTime) and with centre=98, subcentre=0. These data have to be modified with a (grib_filter) script to modify the local use section to localDefinitionNumber 28 (used for COSMO-LEPS files) and the necessary keys in this group. The localDefinitionNumber 28 also uses the key numberOfMembersInCluster, which is defined via a profile-script for the special cluster. Its value has to be taken from an environment variable set by this profile-script.
Settings for namelist variables:
Up to now the packing type in INT2LM and the COSMO-Model was hard-coded as 'grid_simple'. But for GRIB 2 additional packing types have been introduced, which offer an additional packing and therefore result in smaller Grib files. The following packing types can now be used by INT2LM (2.06a) and COSMO (5.06b) by setting the new namelist variable: ypackingType (INT2LM: /DATA/; COSMO-Model: /GRIBOUT/)
New Namelist Variable in /DATA/: ypackingType (Default: 'grid_simple')
NOTES:
The following modifications have been implemented by the MESSy Group:
Problem:
ICON provides a value of 0.0 for rho_snow, where no snow is present.
Interpolating such points together with snow points, where rho_snow ≥ 50.0
can lead to small values of rho_snow, which can lead to a crash in the
COSMO-Model.
Group | Name | Meaning | Default | |
---|---|---|---|---|
/DATA/ | ypackingType | NEW | To choose GRIB 2 packing type. Possible values are
(depends on configuration settings of eccodes!)
|
'grid_simple' |
Setting a minimal threshold value for rho_snow_lm has the potential to modify the results.