21.05.2015
Version 5.2 is a DWD (test) version, which contains mainly bug fixes and an update of the
code to process radiances.
- Corrected Computation of kflat for GRIB2 input
- Revision of using MPI Datatypes
- Update of Computation of Synthetic Satellite Images
- Technical Changes and Bug Fixes
- Changes to the Namelists
- Changes of Results
(by U. Blahak)
Since kflat is not contained in the GRIB2 meta data, it is computed by the model itself
taking into account if the levels are flat or not. This has erroneously been done in every
subdomain without information of the total domain. If subdomains only are located over
sea (without topography), kflat has been determined to 1, because all levels are flat then.
Correction:
vcoord%kflat is no more computed in the subroutines reference_atmosphere_xxx, because
it involves a global communication. It is done after calling these routines in module
src_input.f90.
Modifications in:
- src_input.f90: compute vcoord%kflat by gathering the
MAX value of all subdomains
- vgrid_refatm_utils.f90: changes in subroutines reference_atmosphere_xxx,
to not compute vcoord%kflat any more.
- src_relaxation.f90: Replaced vcoord%kflat by ke in 2 loops
for the computation of rdcoef
These changes do influence the results slightly.
Back to Contents
(by U. Schättler)
In the COSMO-Model the subroutine for boundary exchange is usually called for group of
variables. Some of these exchanges can be done using MPI Datatypes. This means that a
special communication pattern (the data type) is set up for every group of variable.
A unique identification number (ID) is assigned to every data type then and the exchange
during the model run is done by specifying the proper ID.
Due to some developments in the last time the proper association of the data types to the
corresponding IDs has been lost. Depending on the compiler, this could lead to erroneous
message passing and slightly wrong results.
The correct usage of MPI data types has been restructured now.
Back to Contents
(by R. Faulwetter, A. Schomburg)
The code to process radiances to be assimilated within the LETKF was
consolidated. Now, it is possible to process SEVIRI data in HRIT format and
all files produced by DWDs satellite-preprocessing package (sat_pp).
The calculation of input profiles for RTTOV was improved.
Changes results for synthetic satellite images.
Back to Contents
- data_fields.f90:
Include field cu_evap from convection
- grid_metrics_utilities.f90:
Implemented finalization routine final_grid_metrics, to deallocate fields
- gscp_interface.f90:
Introduced ifdef NUDGING directive to be able to compile without Nudging
- io_metadata.f90:
Bug fix for writing variables for multi-layer snow model
- io_utilities.f90:
Changed limit for checking grib meta values of rotated pole to 1E-4, because
there were rounding problems with 1E-5
- mo_fdbk_cosmo.f90:
Introduced new components ct_nwc, ch_nwc to type t_acc_header;
Introduced new component obs_par to type t_acc_body
- organize_diagnosis.f90:
Include ntke in argument list for mean_testsuite, to select proper TKE time level
- organize_dynamics.f90:
Deallocation of memory at the end of the program run
- organize_physics.f90:
Switch off all parameterizations explicitely, if lphys=.FALSE.
- organize_satellites.f90:
Deallocate additional fields at the end of the program (US)
- parallel_utilities.f90:
Introduced additional implementations for generic routine gatherv_values
- src_allocation.f90:
Deallocation of additional memory at the end of the program run
- src_artifdata.f90:
Removed incorrect resetting of vcoord%vcflat for vcoord%ivctype = 3 and 4.
- src_block_fields_org.f90:
Introduced some ifdef NUDGING directives to be able to compile without Nudging
Also allocate rho_b in SR block_fields_deallocate
- src_conv_tiedtke.f90:
Deleted some unused lines in SR cu_tied
Moved cu_evap to data_fields to deallocate it at the end of the program
- src_gridpoints.f90:
Added allocation of gp-fields for COSMO-ART
- src_input.f90:
Replaced imp_ireals by imp_integers in call to global_values for exchanging
igpsl,jgpsl;
Only use nzlist_xxx as indices, if these values are really set.
- src_meanvalues.f90:
Include ntke in argument list for mean_testsuite, to select proper TKE time level
- src_mult_local.f90:
Initialize character variable ystidml in any case, because it could be used
uninitialized otherwise
- src_mult_spread.f90:
Initialized lnoniso with .FALSE. in SR mult_spread_mass and mult_spread_wind
because there could be an uninitialized use otherwise
- src_radiation.f90:
Corrected computation of nextrad for nincrad=1: This was set erroneously to 0 then,
resulting in no more calls to the radiation scheme at all.
- src_runge_kutta.f90:
Corrected IDs of some MPI data types for calls to exchg_boundaries with
ldatatypes=.TRUE.
(Depending on Compiler and Application, this change might influence the results).
- src_setup.f90:
Implemented F2003 IOMSG-mechanism for better namelist error messages
(some have been forgotten before in Version 5.01)
- src_setup_vartab.f90:
Removed land-flag from DBZ-variables for NetCDF output: these variables are also
defined above sea
- src_sing_spread.f90:
Initialized lwobs in SR upair_org_spread, surf_org_spread to .FALSE.
- src_soil_multlay.f90:
Bug fix for itype_root=2: The computation of ztrang has to be moved out of the
IF (itype_root ..) condition, because it has to be done in all cases.
Because itype_root=2 is not active in COSMO, there are no changes to the results.
- src_traj.f90:
Introduced some ifdef NETCDF directives to be able to compile without NetCDF
- time_utilities.f90:
Added timer i_radar_barrier for MPI barrier waiting in the
radar forward operator
- vgrid_refatm_utils.f90:
Modified SR dealloc_refatm_defaults, dealloc_vcoord_defaults to deallocate these
structures at end of the program (US).
Back to Contents
Group |
Name |
Meaning |
Default |
/SATCTL/ |
lread_ct |
NEW |
| .FALSE. |
yclouddir |
NEW |
| '' |
linterp |
NEW |
| .TRUE. |
Back to Contents
The following changes do have a numerical influence on the results, i.e. they are
changed slightly:
- The bug fix for computation of kflat influences the results.
- The restruction of usage of MPI data types changes the results (may depend on compiler).
- The changes in the computation of synthetic satellite images changes just these
satellite images.
Back to Contents