After more than a year of stability, we had 2 new versions for the interpolation program INT2LM in the last months. The changes and new features are described below.
A new (alternative) reference atmosphere has been introduced, which
is based on the temperature profile
Thus, the reference atmosphere approaches an isothermal profile in the stratosphere, whereas the existing reference profile has an increasingly negative vertical temperature gradient in the stratosphere. The vertical extent of the model domain is no longer limited with the new reference atmosphere.
Choosing the reference atmosphere for the fine grid model domain:To choose the reference atmosphere, a new Namelist switch irefatm has been introduced:
All 3 new Namelist variables are in the group /LMGRID/.
The reference atmosphere for the coarse grid input model domain (in case of llm2lm):Also the input grid can have the new reference atmosphere (if input data are coming from the COSMO-Model). New variables irefatm_in, delta_t_in and h_scal_in are used for that. But these variables are no Namelist variables, because they are read from the header information (vertical coordinate parameters) of the input data.
NOTE: Reading of the vertical coordinate parameters of the input model (and therefore also computation of the input reference atmosphere) was moved from routine external_data to the module src_read_coarse_grid, because only then real atmospheric fields are read, that definitely contain the vertical grid information. Twodimensional fields, that are read in external_data, need not carry these informations.
The CLM Community implemented the new reference atmosphere also for the NetCDF I/O.
New external parameters are provided for the COSMO-Model, which can be optionally read from the external parameter file, if present. Please note, that these fields are not yet distributed regularly.
An optional interpolation of soil humidity has been introduced by MeteoSwiss following the introduction of the new hydrological IFS model on Nov. 6, 2007. This option is also used for other input models.
It can be controlled by the new Namelist Switch: l_smi (default: .FALSE.) in the group /CONTRL/.
New Options for the namelist switch itype_w_so_rel:2 new options have been implemented by the CLM Community:
An optional treatment of the humidity has been implemented by MeteoSwiss. Per default, cloud water and specific humidity are added to get the relative humidity, which is used for vertical interpolation to COSMO levels. Afterwards, the relative humidity is splitted again to the two compontents. Cloud ice, however, is treated separately.
When setting the new Namelist switch lmixcld to .TRUE., (Default: .FALSE.), the general relative humidity is computed as the sum of specific humidity, cloud water and cloud ice. After vertical interpolation, these three components are derived again.
NOTE:
This new treatment has not been fully implemented in the official version.
It calls a routine moist_split, which is written only for one grid point.
Therefore the corresponding loops do not vectorize on the NEC.
The code lines calling this routine are commented, so that lmixcld=.TRUE.
will not work without modifications to the Source Code!
A new option has been implemented into the INT2LM, to interpolate the data from the Unified Model (from the MetOffice) to the COSMO-Model grid. Up to now only the atmospheric variables are treated. To choose this option, set lum2lm=.TRUE.
The Unified Model data are provided on an unrotated lat-lon horizontal grid and hybrid height levels in the vertical. They are treated similar to COSMO-Model data:
NOTE:
For this option, the Unified Model data have to be provided in terms of DWD
grib code regarding element numbers and table codes. For NWP, the UM data
is usually provided in the british PP-format. DWD provides a transformation
program that converts the PP-format to (DWD) grib code.
An option to interpolate the variables t_ice and h_ice from the GME sea ice model to the COSMO-grid has been implemented. To switch on this option, set lseaice=.TRUE. (Default: .FALSE.).
An option to initialize the prognostic variables of the FLake model has been implemented. To switch on this option, set llake_coldstart=.TRUE. (Default: .FALSE.).
NOTE:
This option should be used with great care: For case studies it is
of NO sense to run the lake model, because it takes several weeks
until the lake variables have reached a useful content.
Therefore it is NOT recommended to use the FLake model in case studies.
The recalculation of a hydrostatic balanced pressure deviation in the module src_read_coarse_grid.f90 (Section 6) has been improved. This changes the results in case of llm2lm and lbalance_pp.
There were bugs in the vertical interpolation in the lm2lm-case, which were corrected by Anne Roches, MCH:
There are reproducibility problems with the INT2LM, option llm2lm. One reason was, that the interpolation weights were computed for every coarse grid subdomain. And with differing subdomains also the interpolation weights could be different, because of numerical rounding errors. This has now been fixed by computing the interpolation weights always by using the information for the total coarse grid domain.
Another problem still remains for the soil variables that are horizontally interpolated using the "match" type of horizontal interpolation. If none of the surrounding grid points has the same land-sea characteristics as the point in the fine grid, a search in the whole coarse grid subdomain is done. Depending on the subdomains, the result of this search can be different.
There is no solution for that up to now!
There were the following changes for the Namelist variables:
Group | Name | Meaning | Default |
---|---|---|---|
/CONTRL/ | lstomata | Read a map from the external parameters for the minimum stomata resistance of plants. | .FALSE. |
lemiss | Read a map from the external parameters for the thermal radiative surface emissivity. | .FALSE. | |
itype_aerosol | To select the treatment of plant cover and leaf area index.
|
1 | |
l_smi | Switch for using an optional interpolation for the soil humidity. | .FALSE. | |
lmixcld | Switch for using an optional treatment of the humidity. | .FALSE. | |
lseaice | Switch to interpolate sea ice variables from GME to the COSMO-Model. | .FALSE. | |
llake_coldstart | Switch to initialize the prognostic FLake variables for a cold start. | .FALSE. | |
lum2lm | Switch to interpolate data from the Unified Model to the COSMO-Model grid. | .FALSE. | |
nhori | Number of sectors for the horizon array used by the topographic correction of the radiation. | 24 | |
itype_w_so_rel | To select the type of relative soil moisture input:
|
0 | |
itype_w_so_rel | To select the treatment of plant cover and leaf area index:
|
0 | |
/LMGRID/ | irefatm | To choose the type of reference atmosphere:
|
1 |
delta_t | Temperature difference between sea level and stratosphere (for irefatm=2). | 75.0 | |
h_scal | Scale height (for irefatm=2). | 10000.0 | |
/DATA/ | l_ke_in_gds | Technical switch to write the number of vertical levels explicitly to the grid description section. | .FALSE. |
If using the default settings of all the new Namelist switches, the results of the interpolation GME ⇒ COSMO are not changed at all.
For the interpolation COSMO ⇒ COSMO, the results are changed due to some changes of algorithms.