Model development releases

Last updated: 20 May 2014

The following table shows which developments have been or are implemented into cosmo and int2lm, per version.

Note: Changes from older to newer versions are documented in each "releaseNotes" field, as links to "Release Notes" documents. All these documents can also be collectively found.

Cosmo model releases
Target
version
Version status Development
start
Planned
delivery
Delivery
date
6.00 work 2019-07-01 2019-12-31 N/A

COSMO-Model Version 6.0 will be the last and ultimate unified release of the COSMO-Model. It will contain all the loose ends, i.e. the developments which at the moment are ongoing and will be finished by the end of 2019.

NOTE: Deadline for submitting contributions to COSMO-Model 6.0 is 31st of December 2019.

2015-10-31 Parameterization of urban effects WG3b work [CLM] H. Wouters (KU Leuven)

Based on in-depth urban climate modeling research

  • De Ridder, Geophys. Res. Lett., 2006
  • Demuzere et al., J. Geophys. Res., 2008
  • Wouters et al., Boundary-Layer Meteorol., 2012
  • De Ridder et al., J. Geophys. Res., 2012

Urban upgrade of TERRA-ML to TERRA-URB

  • Urban land-use class with specific surface parameters (De Ridder et al. 2012; Demuzere et al. 2008)for albedo, emissivity, conductivity, heat capacity. Implicitly accounts for urban morphology
  • New surface-layer transfer coefficients (Wouters et al., 2012) as a replacement for the Louis-type functions (itype_tran = 1)
  • Brutsaert/Kanda Bluff-rough thermal roughness parametrization
  • Anthropogenic heat (Flanner 2009)
  • Impervious Surface water Interception Distribution (SID) for evaporation

Integration of TERRA-URB in COSMO

  • Urban fraction determined from EEA soil-sealing database (250m res.)
  • Annual-averaged anthropogenic heat from Flanner 2009
  • Tile approach

'Offline' evaluations were performed for urban sites of Marseille, Toulouse and Basel

COSMO-CLM/TERRA 'Online' evaluation for Flanders, Belgium

Status

  • a direct representation of urban tiles in TERRA has been successfully implemented and tested by H.Wouters / KU Leuven;
  • additional CPU cost is negligible and only two additional external parameters are required.

An action has started to incorporate this development in the official COSMO code (coordination U.Blahak)

Documentation (Presentation of Results, Model Documentation, External Documentation)

Provide specific information on availability of the following documentation required by the COSMO source code management rules:

  • internal product documentation within properly structured code
  • external product documentation: scientific documentation, User Guide and (possibly) implementation documentation
  • process documentation: documentation of the chages to the existing software for inclusion to the version history and the changes log-file.

The TERRA-URB scheme and its effects are documented in the following paper currently under review for GMD:

Wouters, H., Demuzere, M., Blahak, U., Fortuniak, K., Maiheu, B., Camps, J., Tielemans, D., and van Lipzig, N. P. M.: Efficient urban canopy parametrization for atmospheric modelling: description and application with the COSMO-CLM model (version 5.0_clm6) for a Belgian Summer, Geosci. Model Dev. Discuss., doi:10.5194/gmd-2016-58, minor revisions, 2016.

2017-03-01 Higher order discretization in the Runge-Kutta dynamical core WG2 work Will, Ogaja (Univ. Cottbus)

Description

The current Runge-Kutta dynamical core will be extended in respect to the discretization order of the horizontal operations.

The 5th order advection shall be replaced by a 4th order symmetric advection scheme (Morinishi et al ,1998, JCP).

Similarly in the fast waves solver the horizontal currently 2nd order operations are replaced by 4th order discretizations.

First tests with this new version show an improved behaviour of the kinetic energy spectrum.

Furthermore climate runs over 20 years have been done in a stable manner without any artificial horizontal diffusion.

One problem which must still be solved is an excessive underestimation of precipitation during summer with this new scheme.

Status

A first version based on COSMO 5.0 has been delivered in April 2016.

However, it could not deal with the COSMO-DE setup.

A fixed version has been delivered in Nov. 2016.

5.06 refVersion 2018-05-06 2019-03-29 2019-10-18

Two subversions have been implemented on the way to Version 5.06. There are release notes for every sub-version.

This version 5.06 has been tested with the COSMO NWP Test Suite before the official release.

  • 5.06: released 2019-10-18; Release Notes
    • Running the COSMO-Model in Single Precision
    • Mire Parameterization
    • Update of Turbulence Scheme with ICON
    • Fix for Tiedtke-Bechtold Convection Scheme
    • Latest Modifications for the GPU Version
    • GNSS Standard Operator
    • Additional Changes in the Data Assimilation
    • Changes in the Latent Heat Nudging
    • New Wind Gust Tuning
    • Introducing Lockfile Mechanism
    • Technical Changes and Bug Fixes
    • Changes to the Namelists
    • Changes of Results
  • 5.05b: implemented 2018-12-14; Release Notes
    • Latest Modifications (on 14.12.18)
    • Finalize port to GPU
    • Enabled writing radar composites to restart files
    • Technical Changes and Bug Fixes
    • Changes to the Namelists
    • Changes to the Results
  • 5.05a: implemented 2018-07-13; Release Notes
    • Latest Modifications for 5.05a_1(on 13.07.18)
    • Changes in the Dynamics
    • Changes for the Radar Forward Operator
    • Porting additional COSMO Parts to GPU
    • Technical Changes and Bug Fixes
    • Changes to the Namelists
    • Changes of Results
2014-03-31 read Meteosat radiances KENDA finish Faulwetter (DWD)

Description

  • Implement reading of Meteosat SEVIRI radiances (probably from HRIT files, but this has to be checked) --> it is already included in the code, making use of an external library for processing of satellite data

Modification for V5.06:

  • additional option for RTTOV-12 (in addition to RTTOV-10, RTTOV-9)
  • removal of option for bias correction of Africa and Jason, which depends on observed cloud top height and makes use of the NWC-SAF cloud (top height) products
  • various bug corrections

Status

Robin Faulwetter produces a new official version of the external library for satellite data. Based on this, Axel Hutt upgrades the adaptions of the COSMO code from V5.02 to V5.03, and then Uli Schättler continues the upgrade to V5.05 .

Documentation (Presentation of Results, Model Documentation, External Documentation)

Provide specific information on availability of the following documentation required by the COSMO source code management rules:

  • internal product documentation within properly structured code
  • external product documentation: scientific documentation, User Guide and (possibly) implementation documentation
  • process documentation: documentation of the chages to the existing software for inclusion to the version history and the changes log-file.
2014-03-31 radar obs operators + nudging of radial winds KENDA finish Blahak / Stephan (DWD)

Description

  • observation operators for radar reflectivity + radial winds (for KENDA)
  • reading radar data, processing, applying observation operator, and writing results to NetCDF feedback files.

Status

Some (further) code clean-up will be done by Uli Blahak before the code will enter V5.06.

Later on (after the code is introduced in the official version), some (even) further code cleanup is planned, e.g. splitting of the large src_obs_radar.f90 into several modules.

Technical Issues (Coding Standards, Technical Test Suite, 4-eyes Assurance)

Coding standards fulfilled (except for some in-line comments in German, which will be partly replaced by comments in English, but probably not all by the time of bringing it into V5.06 - note that the code consists of 20'000 code lines).

4-eyes assurance for much of the code (commonly written by Yuefeil Zeng, Dorit Jerger, Uli Blahak).

The code has been applied by various users, and the latest bug report was two year ago. This shows that the code is very stable, indeed

Testing (Single Test Cases, Experiments)

The operator has been thoroughly tested and already applied by various users and in various studies, incl. the peer-reviewed paper of Bick et al, 2016, QJRMS.

The latest bug report was two year ago which shows that the code is very stable.

Documentation (Presentation of Results, Model Documentation, External Documentation)

Scientific documentation:

  • Zeng Y, Blahak U, Jerger D. 2016. An efficient modular volume scanning radar forward operator for NWP-models: Description and coupling to the COSMO-model. Q. J. R. Meteorol. Soc., doi:10.1002/qj.2904.
  • Blahak U. 2016. RADAR_MIE_LM and RADAR_MIELIB - Calculation of Radar Reflectivity from Model Output. COSMO Technical Report 28 (23.58 MB).
  • Jerger D. 2013. Radar forward operator for verification of cloud resolving simulations within the COSMO model. Dissertation. IMK-TRO 62, KIT Scientific Publishing: Karlsruhe, Germany, doi:10.5445/KSP/1000038411.
  • Zeng Y. 2013. Efficient radar forward operator for operational data assimilation within the COSMO-model. Dissertation. IMK-TRO 60. KIT Scientific Publishing: Karlsruhe, Germany, doi:10.5445/KSP/1000036921..

Presentation of results: E.g.:

  • Bick T, Simmer C, Trömel S, Wapler K, Hendricks Franssen HJ, Stephan K, Blahak U, Schraff C, Reich H, Zeng Y, Potthast R. 2016. Assimilation of 3D radar reflectivities with an ensemble Kalman filter on the convective scale. Q. J. R. Meteorol. Soc., 142, 1490-1504, doi:10.1002/qj.2751.

User's Guide: There are 3 parts (to be) written:

  • Example run scripts with documented namlists are available from Uli Blahak. They decribe the 3 modi which can be run ((i) setup for idealized tests, (ii) ..., (iii) reading of real radar data, application of observation operator to (real) model fields, and writing of feedback files).

These descriptions has been found sufficient by the several users of the code to get started, apply the operator and do experiments.

  • A full User's Guide with more extended explanations is in development, but this will take time and likely not be finished by the time of delivery of V5.06.
  • Description of the template of the radar NetCDF observation files.
2014-06-30 Extension of the Bott tracer advection scheme WG2 finish Schneider (Univ. Bonn), Blahak

Description

An improvement (socalled deformational correction) of the Bott-schemes is currently done at the University Bonn (W. Schneider, A. Bott) to circumvent the necessity of the "true" Strang splitting (A. Bott (2010) AtmRes).

The traditional strang splitting stretched over two timesteps is still necessary. A further improvement is the use of newer discretization coefficients for

the gradient operators. The current COSMO implementation uses coefficients from a very old paper of Bott (1989).

Status

Preliminary version is available for 4th oder advection with the options "no flux limiter", "positive definite flux limiter" and "shape preserving" (Schneider, Bott), which runs efficiently on cache-based machines.

Optimization of this new version for NEC SX9 has been done for the 4th order positive definite option (Vectorization) (Blahak).

This new Version is currently under testing at DWD.

Upgrade of this method to COSMO 5.4b1 has been done.

A COSMO-DE experiment has been started.

If successful, this new scheme might be a condidate for COSMO 5.07.

Technical Issues

The code is the original code of Bott and Schneider taken from their own model and coupled separately to COSMO,

totally different from the already implemented Bott schemes.

Unfortunately, this implementation is not very efficient, because there the

model fields are divided into an array for the interior domain and separate fields for the 4 lateral boundary zones, which necessitates

the copying/mapping of the COSMO fields to these fields and back in every timestep for every tracer. Also, all grid lengths and velocities

are normalized somehow.

In case of successfull meteorological testing, this should be changed in that the method is re-coded in

the COSMO "standard" way of coding the Bott-Schemes (if possible). This requires a new global array for summing up

and storing the deformational correction term, which is subtracted again at the end of the advection algorithm.

To be tested/checked further: Coding Standards, Technical Test Suite, 4-eyes Assurance

Documentation (Presentation of Results, Model Documentation, External Documentation)

Provide specific information on availability of the following documentation required by the COSMO source code management rules:

  • internal product documentation within properly structured code
  • external product documentation: scientific documentation, User Guide and (possibly) implementation documentation
  • process documentation: documentation of the chages to the existing software for inclusion to the version history and the changes log-file.
2014-09-10 GPU Version of COSMO WG6 finish PP POMPA participants

Documentation (Presentation of Results, Model Documentation, External Documentation)

Provide specific information on availability of the following documentation required by the COSMO source code management rules:

  • internal product documentation within properly structured code
  • external product documentation: scientific documentation, User Guide and (possibly) implementation documentation
  • process documentation: documentation of the chages to the existing software for inclusion to the version history and the changes log-file.
2015-12-01 Soil and surface fluxes: effective slope-angle correction factor (1/cos(slopeangle) WG3a submit Blahak/De Morsier/Raschendorfe

Description

To account for the effect of an enhanced area for fluxes and their divergences at the surface and in the soil in case of sloping terrain (enlarged area but same grid box volume to heat up), an effective factor 1/cos(slope) is multiplied to the exchange coefficients tcm and tch. This factor has been mentioned in the PhD-Thesis of M. Buzzi (2008), based on Müller and Scherrer (1995), but it cancels out in the surface energy balance. The only terms where it does not cancel out (and this is not mentioned by Buzzi), are the fluxes of momentum, heat and moisture on the atmospheric side at the ground (transfer scheme). Within the atmosphere, where turbulent fluxes are assumed to be parallel to the gradient of the grid scale quantity (flux-gradient-relations), this factor is implicitly taken into account when taking into account the full 3D turbulent fluxes. In the soil, heat gradients are mainly perpendicular to the surface, so also here the factor has to be taken into account, whereas for soil water fluxes where gravity is an important factor, this is not so clear. Therefore, we include the factor in the heat conductivity, but exclude it for hydraulic conductivity at the moment.

Status

Code has been implemented into a test version based on COSMO 5.3 and is currently being tested.

This measure belongs to the generalized boundary-layer-approximation already implemented in the surface-to-atmosphere transfer scheme (considering already the surface enlargement by sub-grid scale slopes) and should now be revied in order to implement the effect of grid scale slopes consistent to the planned implementation of "the vertically resoled roughness layer" and its vertical profiles of a surface area index.

Alredy with the parameterization of a mixed roughness layer, which is being impemented in order to be coupled impicitly with the air above and the soil below, the general effect of the surface enlargement will be included. Thus a consistent representation of the mean surface slope effect will be implemented in connection with this deveopment.

Technical Issues

Coding Standards are fullfilled.

Technical Test Suite has still to be run.

4-eyes principle has yet to be insured

Testing

Single Test Cases, Experiments:

First tests with the present version and 3D-diffusion show only a rather small impact for the Alps only, mainly in terms of upward long-wave radiation.

Documentation (Presentation of Results, Model Documentation, External Documentation)

Provide specific information on availability of the following documentation required by the COSMO source code management rules:

  • internal product documentation within properly structured code
  • external product documentation: scientific documentation, User Guide and (possibly) implementation documentation
  • process documentation: documentation of the chages to the existing software for inclusion to the version history and the changes log-file.
2015-12-01 Stochastic boundary layer perturbations reflecting unresolved effects of variability of surface fluxes on convection initiation WG3a submit Kober / Blahak

Description

  • Kober, K., and C. Craig, 2016: Physically Based Stochastic Perturbations (PSP) in the Boundary Layer to Represent Uncertainty in Convective Initiation, J. Atmos. Sci., 73, 2893-2911.

In Short:

  • Perturb tendencies (T, w, q) additively based on variances from the turbulence scheme and the turbulent length scale, model resolution and time step. Current perturbations are targeted to enhance the subgrid scale variability caused by the process of surface heating, as described by the liquid pot. temp. variance, moisture variance and vertical wind variance as derived from the turbulence scheme.
  • Method:
    Similar to Teixeira and Reynolds (2004), described in Kober, Craig et al. (2015):

ttens = ttens + const * random_number * sqrt(tetl_tetl)
qvtens = qvtens + const * random_number * sqrt(h2og_h2og)
wtens = wtens + const * random_number * sqrt(w_w)
tetl_tetl = mean(theta_l'theta_l')
h2og_h2og = mean(qv'qv')
w_w = mean(w'w')

  • "const" is proportional to tur_len / (dx*dt) times a namelist parameter "blpert_const". The default for blpert_const is 2.0.
  • "random_number" is a 2D-field of gaussian random numbers, folded by a Gaussian smoothing kernel to generate spatially coherent patterns. It is updated in regular time intervals (namelist parameter), which should be the approximate eddy turnover time in shallow convection.
    The spatial width of the kernel is the namelist parameter "blpert_sigma" and is specified as multiple of horizontal grid length dx. It should be around the effective model resolution, i.e., 1 <= blpert_sigma <~ 4 . The default for blpert_sigma is 2.5.
  • The initial seed for the random number generator is the namelist parameter "seed_val", in order to control/reproduce the random numbers in subsequent runs.If "seed_val=-999", the random numbers are instead either randomly seeded by the system time (if namelist parameter "lseed_use_starttime=.false.") or are seeded by the model start time ydate_ini (if "lseed_use_starttime=.true."). The actual seed for each new draw of random numbers during the model run is determined from this initial seed in a unique way, depending on the forecast time, the forecast time range and the ensemble member number. Thus, the stochastic perturbations are "deterministic" in the sense that if a run is repeated on the same computer, the exact same perturbations are imposed.
  • Original method and code provided by Kirstin Kober, LMU Munich, based on turbulent variances taken from M. Raschendorfer.
    Code re-written by Ulrich Blahak.
  • Code modified by Ulrich Blahak with respect to:

- random number seeding and -generation
- changed computation of convolution with the Gaussian kernel, so
that it is now also correct near the model boundaries
- implemented periodic boundary conditions into the perturbation field
- limit the variances from Mellor-Yamada to values >= 0.0 to avoid
"realizability problems" with negative values
- new methods and namelist parameters for:
- possibility to advect the perturbation field with the horizontal velocity
from level ke-10 (ladvect_blpert)
- possibility for an asymetric random number distribution (itype_blpert >=4)
- possibility for extremely asymetric random number distribution to negative numbers (cold bubbles) (itype_blpert >=7)
- possibility for modified vertical perturbation structure
(propagate maximum variance upwards up to the PBL height (1500 m / 500 m AGL at most)
itype_blpert = 2, 3 (symmetric distribution)
itype_blpert = 5, 6 (asymetric distribution)
itype_blpert = 8, 9 (extremly asymetric distribution, cold bubbles)
- original perturbations: itype_blpert = 1
(same but with asymetric/extremely asymetric random numbers: itype_blpert = 4 / 7)

Status

Original code provided by K. Kober, LMU Munich.

Code technically re-written and implemented into Cosmo 5.3 test version. Modified random number seeding. Implemented random number field into restart.

Has the potential to increase convective activity, but some more tuning seems to be necessary.

Although first vefication reslults are not yet convincing, the code is going to be implemented, as it is already of value for ensemble methods and can be controlled by namelist switches.

In a test-version, the neeed output of turbulence statistics has also been integrated into the new blocked SUB 'turbdiff'. Howeve, this additional modification needs to be introduced into the official code as well.

Technical Issues

Coding Standards fulfilled

Technical Test Suite not yet

4-eyes Assurance not yet

Testing

Single Test Cases, Experiments

First test simulations for convective periods do not yet provide a significant increase in precipitation.

The results of a 1-month verification based on COSMO 5.2 (August 2015) are now yet convincing.

Documentation

Presentation of Results, Model Documentation, External Documentation

Publication by Kirsin Kober et al:

Kober, K., and C. Craig, 2016: Physically Based Stochastic Perturbations (PSP) in the Boundary Layer to Represent Uncertainty in Convective Initiation, J. Atmos. Sci., 73, 2893-2911.

PPTx by Ulrich Blahak (Description, new namelist parameters, experiments)

2016-09-30 Implementation of ICON/COSMO two-moment microphysics scheme WG3a work Seifert/Blahak

Description

The two-moment microphysics scheme has been rewritten and strner modulaized for the ICON code and thus is already formulated in block-data stucture. This code being physcally identical with a previous implementation will now be portet to COSMO.

Status

Code is being committed to the code administrator and needs to be implmented into the next COSMO-version

Documentation (Presentation of Results, Model Documentation, External Documentation)

Provide specific information on availability of the following documentation required by the COSMO source code management rules:

  • internal product documentation within properly structured code
  • external product documentation: scientific documentation, User Guide and (possibly) implementation documentation
  • process documentation: documentation of the chages to the existing software for inclusion to the version history and the changes log-file.
2017-03-15 New communication interfaces POMPA work Oliver Fuhrer (MeteoSwiss)

Description

The existing interface for halo-updates is not flexible enough in order to make it work on GPUs and allows for dynamically allocated fields to be exchanged. A new interface has been introduced in the code which is based on the GCL library (C++) and can handle halo-updates both on CPU and GPU.

Impact on code:

  • New source file gcl_utilities.f90 (800 lines of code)
  • Approximately 30 #ifdef GCL_COMM in code at locations where exchg_boundary() is called
  • Files touched: lmorg.f90, organize_physics.f90, src_nudging.f90

Impact on build process:

  • If GCL_COMM is defined, GCL library is required for successful linking

Impact on results:

  • None

Involved code owners (with effort):

  • Ulrich Schaettler (0.5 days)
  • Christoph Schraff (0.25 days)

Technical Issues

The work is finished and has been implemented in COSMO 5.0.

Technical Issues

Coding standard have been observed.

Technical testsuite has been run using 3 compilers, 5 different systems and both in single and double precision, as well as in CPU and GPU mode.

4-eyes assurance has been done by Xavier Lapillonnne and Andrea Arteaga.

Testing

Results are bit-reproducible with respect to reference version using the exchg_boundaries() interface on CPU.

The new interfaces are being used regularly in COSMO-1 and COSMO-E and for the nightly builds on Jenkins.

Documentation

Process documentation is done.

No other documentation required, since the code modifications are within a #ifdef and the standard implementation is not being modified.

2017-05-15 Data assimilation in SP POMPA work Xavier Lapillonne (MeteoSwiss)

Documentation (Presentation of Results, Model Documentation, External Documentation)

Provide specific information on availability of the following documentation required by the COSMO source code management rules:

  • internal product documentation within properly structured code
  • external product documentation: scientific documentation, User Guide and (possibly) implementation documentation
  • process documentation: documentation of the chages to the existing software for inclusion to the version history and the changes log-file.
2017-06-01 C++ Dycore for 5.06 POMPA work Pascal Spoerri (C2SM)

Description

  • Shift towards making C++ dycore standalone
  • Implement missing Features from POMPA_supported_features.xlsx
  • Extending dycore documentation

Documentation (Presentation of Results, Model Documentation, External Documentation)

Provide specific information on availability of the following documentation required by the COSMO source code management rules:

  • internal product documentation within properly structured code
  • external product documentation: scientific documentation, User Guide and (possibly) implementation documentation
  • process documentation: documentation of the chages to the existing software for inclusion to the version history and the changes log-file.
2017-06-15 Physical parametrizations to GPU POMPA work Xavier Lapillonne (MeteoSwiss)

Description

Update

SON 2016 : work on Turblence and sso (not completed)

- Radiation (5.03)

- Microphysics (5.06)

- Turbulence (5.06)

- Soil (5.06)

- Shallow Convection (5.04b)

- Tiedke Convection (5.06)

- sso (5.06)

- flake (5.06)

Other not planned

- sea ice

Documentation (Presentation of Results, Model Documentation, External Documentation)

Provide specific information on availability of the following documentation required by the COSMO source code management rules:

  • internal product documentation within properly structured code
  • external product documentation: scientific documentation, User Guide and (possibly) implementation documentation
  • process documentation: documentation of the chages to the existing software for inclusion to the version history and the changes log-file.
2017-06-15 LHN to GPU POMPA work Xavier Lapillonne (MeteoSwiss)

Documentation (Presentation of Results, Model Documentation, External Documentation)

Provide specific information on availability of the following documentation required by the COSMO source code management rules:

  • internal product documentation within properly structured code
  • external product documentation: scientific documentation, User Guide and (possibly) implementation documentation
  • process documentation: documentation of the chages to the existing software for inclusion to the version history and the changes log-file.
2017-06-15 Nudging to GPU POMPA work Xavier Lapillonne (MeteoSwiss)

Description

Some parts which can not be run in parallel have been modified for the GPU:

  • new code introduced for both CPU and GPU when bitwise identical
  • separate code introduced (#ifdef OPENACC) when results are changed
  • All diagnostic writes deactivated on GPU

Impact on code:

  • pp_utilities.f90s
  • src_correl_cutoff.f90
  • src_lheating.f90
  • src_nudging.f90

Impact on build process:

  • None

Impact on results:

  • None

Involved code owners (with effort):

  • Christoph Schraff (0.5 days)
  • Stephan Klaus (0.5 days)
  • Ulrich Schaettler (0.5 days)

Documentation (Presentation of Results, Model Documentation, External Documentation)

Provide specific information on availability of the following documentation required by the COSMO source code management rules:

  • internal product documentation within properly structured code
  • external product documentation: scientific documentation, User Guide and (possibly) implementation documentation
  • process documentation: documentation of the chages to the existing software for inclusion to the version history and the changes log-file.
2017-06-15 Output to GPU POMPA work Xavier Lapillonne (MeteoSwiss

Documentation (Presentation of Results, Model Documentation, External Documentation)

Provide specific information on availability of the following documentation required by the COSMO source code management rules:

  • internal product documentation within properly structured code
  • external product documentation: scientific documentation, User Guide and (possibly) implementation documentation
  • process documentation: documentation of the chages to the existing software for inclusion to the version history and the changes log-file.
2017-06-15 Static memory allocations POMPA work Xavier Lapillonnne (MeteoSwiss

Description

Cost of memory allocation is very high on GPU, all arrays used on the GPU need to be allocated once before the time loop. In order to address this issue automatic arrays used in routine running on GPU will be made allocatable. An option will be provided to allocate these arrays on the fly at every time step so as to reduce memory usage when running on CPU. When running on GPU the allocation will be done once before the time loop.

Impact on code:

  • Files touched: lmorg.f90, physical parametrizations, data assimilation

Impact on build process:

  • None

Impact on results:

  • None
  • Evaluation of performance impact on CPU will be provided

Involved code owners (with effort):

  • Ulrich Schaettler (1 day)
  • Christoph Schraff (1 day)
  • Klaus Stephan (1 day)
  • Code owners of physical parametrizations

Technical Issues

The developments are implemented in COSMO 5.0

Technical Issues

The coding standards have been observed, although static memory allocations may not be considered good coding style on a CPU-based system. Nevertheless, allocating/deallocating memory on every timestep can incurr an overhead also on traditional hardware.

Technical testsuite has been passed using 3 compilers, 5 systems and in single/double precision.

4-eyes ensurance is done by Stefan Ruedisuehli and Christoph Schraff/Kaus Stephan (in the assimilation).

Testing

These modifications are being run regularly for COSMO-1.

Results are bit-identical with respect to a version without modifications.

Documentation

No documentation is required, purely technical change.

Process documentation will be delivered with code changes to SCA.

2017-06-15 New lateral BC module POMPA work Oliver Fuhrer (MeteoSwiss)

Description

The lateral boundary conditions in the current model version are inconsistent, hard to understand and implemented differently throughout the code.

See presentations at COSMO GM:

../../consortium/generalMeetings/general2014/wg6-pompa/wg6_lbc.pdf

../../consortium/generalMeetings/general2012/wg6-pompa/boundary_conditions.pdf

Impact on code:

  • New source file src_lbc.f90 (2500 lines of code)
  • Approximately 100 calls to lbc_masspoint, lbc_upoint or lbc_vpoint in order to apply boundary conditions
  • Files touched: fast_waves_rk.f90, fast_waves_sc.f90, hori_diffusion.f90, lmorg.f90, src_advection_rk.f90, src_runge_kutta.f90, organize_physics.f90

Impact on build process:

  • None

Impact on results:

  • Different BCs at several places (partly bugfixes)

Involved code owners (with effort):

  • Oliver Fuhrer (owner of new src_lbc.f90)
  • Ulrich Schaettler (1.5 days)
  • Michael Baldauf (2 days)

Technical Issues

The work is done and has been implemented in COSMO v5.0

Technical Issues

The coding standards have been observed.

Technical testsuite has been passed using 3 different compilers, 5 different systems and both single/double precision as well as CPU/GPU execution.

4-eyes assurance has been done by Carlos Osuna and Anne Roches.

Testing

Verification results between the pompa code and the offfical COSMO 5.0 have shown neutral effects of these changes.

Documentation

The new interface has been presented at the COSMO GM's and has a very lightweight user-interface which is very easy to understand. The in code documentation explains what is done where directly in the code. The process documentation is available.

2017-06-15 Port of lmorg and other "glue code" to GPU POMPA work Xavier Lapillonne (MeteoSwiss)

Description

Port using OpenACC

Technical Issues

Work done in COSMO v5.0

Technical Issues

Coding standards have been observed.

Technical testsuite has been run using 3 compilers, 5 different systems, in single/double precision and on CPU and GPU.

4-eyes assurance has been done by Stefan Ruedisuehli and Christoph Schraff

Testing

Results are bit-reproducible.

Version with modifications is being run with COSMO-1 regular runs and nightly with Jenkins.

Documentation

On technical refactoring. No further documentation except process documentation required.

2017-09-01 Mire parametrization WG3b finish I.Rozinkina (RHM)

Mires (organic soil) are extremely moist landscapes, which occupy relatively large areas in Scandinavia, North-West of European Russia and Siberia. Due to their unique physical and hydrological properties mires as well as lakes (Mironov et al., Boreal Environment Research, 2009) deserve a specific description in land surface schemes. The goal of this task is to incorporate a mire parameterization into the TERRA land surface scheme. It is planned to investigate the influence of mire parameterization on the components of the heat and water balance simulated by TERRA and compare them with available observations.

  1. Database on mire distribution is compiled from the various sources (national soil inventories, satellite products) for the COSMO-EU and COSMO‑RU domain. The database is prepared at 1km resolution in a binary format. Simple rules are used to modified the existing raw database of soil textures (FAO based); the resulting data set can be processed by EXTPAR in the usual way.
  2. Dependencies of peat thermal conductivity on soil water (ice) content is included. To achieve this task Russian thermal conductivity database compiled for building industry was analyzed. Specifically, thermal conductivity for peat with different water content was used to parameterize Johansen equation used in TERRA. First, existing parameterization of TERRA was tested, but the match between the results and observations was poor. Then, parameters of Johansen equation proposed for peat in Lawrence and Slater (2007) were used, except for Kersten number. The latter was derived based on observations solving the inverse problem. The resulting equation for Kersten number as a function of water content has greatly improved the thermal conductivity parameterization. Similar work was done for frozen peat thermal conductivity.

  3. As Hydrology option one: Mixed Mire Water and Heat model (MMWH, Granberg et al., 1999) will be adopted to simulate the water table position, evapotranspiration, and runoff from mires within the TERRA land surface scheme. As Hydrology option two: exchange with ground water at the low boundary of the mire active layer will be prescribed in the solution of Richard’s equation in TERRA (standard version) following F. Ament. The two hydrology options will be compared.
  4. Mire parameterization are verified using data from the existing observation sites (Derego mire, Sweden, Samun-Luo, Russia). Verified variables are: water table depth, peat temperature at various depths, surface sensible heat flux, and latent heat flux.

Features of the mire hydrological and thermal regime have been introduced in the TERRA code and are being tested in production at RHM over Wester Siberia.

There is now a final ICON branch for the Mire scheme that could in principle used also for COSMO.

Final test will be made at DWD.

Juergen Helmert has seen the code.

Those modifications were tested with the single column model and the overall performance is reasonable and matches the observation.

A verification of the 3D COSMO version on the basis of SYNOP stations in Siberia and North European Russia where mires are numerous has been done.

These modifications are now tested in the production model at RHM.

A paper has been submitted to a special issue of 'Water Resources Research', this will be used for the scientific documentation of the model

Input for the COSMO User Guide will be prepared by Inna

2019-02-27 ensure reproducibility of redundancy check, adaptations for buoy and AMV reports KENDA finish Schraff (DWD)

Description

  • Option introduced to ensure that the redundancy check becomes reproducible irrespective of the domain decomposition.
    If this option ('lredn_repro') is set, redundancy is constrained to occur only between reports assigned to the same grid point. This limits the validity of the redundancy limits set in 'data_obs_cdfin.f90' and increases the risk that redundancy of the two reports, e.g. one from an original ASCII TAC report and the other one from an original BUFR report, is not detected and that both reports may be used actively.
    If this option is not set (which coincides with the implementation in the previous code versions) then the results of the redundancy check may depend on the domain decomposition (which was a 'known bug'). As a consequence of this, the 'fof' feedback files from different ensemble members running on different processor configurations could then contain different sets of reports, and using these 'fof' files in the LETKF as input could then lead to a fatal crash.
  • Adaptation to a new BUFR template for buoy reports, such that element MTODB (type of data buoy, WMO Table 002149) is stored as report header entry 'instype' in the ('fof') feedback file.
  • Adaptation for AMV (Atmospheric Motion Vector) reports such that a 'satellite frequency digit' is added to the wind computation method stored as report header entry 'retrtype' in the ('fof') feedback file. This is required for the correct processing of AMV data in the KENDA-LETKF (e.g. at CNMCA).

Changes of the namelist variables:

  • 'lredn_repro' added (default: .false.):
    if true then reproducibility of redundancy check ensured irrespective of domain decomposition by allowing for redundancy only between reports assigned to the same grid point.

Changes of the results:

None for the use of conventional data, unless 'lredn_repro' is switched on.

Status

All changes implemented.

All changes tested in short experimental trials, handed to CNMCA for successful testing of the adaptations of the buoy and AMV processing.

Technical Issues

Coding Standards: YES

Technical Test Suite: By Uli.

Testing

All changes tested in short technical experimental trials.

New option ensuring reproducibility avoids a crash of the LETKF if the ensemble members run with different domain decompositions.

Adaptations for buoy and AMV data further tested at CNMCA where the new code allows successful processing of these data.

Documentation (Presentation of Results, Model Documentation, External Documentation)

Provide specific information on availability of the following documentation required by the COSMO source code management rules:

  • internal product documentation within properly structured code
  • external product documentation: scientific documentation, User Guide and (possibly) implementation documentation
  • process documentation: documentation of the chages to the existing software for inclusion to the version history and the changes log-file.
5.05 release 2016-04-05 2017-04-30 2018-02-23

Version 5.05 is implemented in several substeps and includes the following sub-versions (with contents listed). There are release notes for every sub-version. In addition a summary of Namelist changes and changes to the results will be added shortly.

This version 5.05 is now tested with the COSMO NWP Test Suite before an official release to the public can be done (expected in May 2018).

  • 5.05: released 2018-02-23; Release Notes.
    • Porting additional COSMO parts to GPU
    • GCL Communication Library for GPU communication
    • Update STELLA and Serialbox Version
    • Optimization of Global Communication in Latent Heat Nudging
    • New Output Variables for Maximum Echotops between Output Steps
    • New Output Variables for Low-Level Moisture Convergence
    • Using src_lbc in lmorg (SR initialize_loop)
    • Radar Forward Operator (Update of interfaces)
    • New Option for Targeted Cold Pool Diffusion
    • Modifications to the Turbulence Scheme
  • 5.04h: released 2017-12-15; Release Notes.
    • Changes in the Data Assimilation
    • Changes in the Dynamics
    • Changes in the Physics
    • GPU Version of Turbulence Scheme
  • 5.04g: released 2017-11-13; Release Notes.
    • Reproducing the Behaviour of the old COSMO Physics
    • Updated TERRA to the latest ICON Version
    • GPU Port for Tiedtke Convection Scheme
    • Blocked Version of Herzog Turbulence Scheme
    • Modified Computation of HPBL
    • Modifications to SPPT
  • 5.04f: released 2017-09-01; Release Notes.
    • Additional Changes for COSMO-ICON Physics
    • Reproducing the Behaviour of the old COSMO Physics
    • Changes in the Data Assimilation
    • New Diagnostic Output Variables to Highlight Convective Cell Tracks between Output Timesteps
    • Changes in Handling Statistically Processed Fields
    • Changes for shortNames
    • GPU Version of TERRA
    • Changes for using RTTOV
  • 5.04e: released 2017-04-05; Release Notes.
    • Blocked Turbulence scheme is now the default
    • COSMO-ICON surface schemes (TERRA, FLake, SeaIce)
    • Blocked version of SSO scheme
    • Changes in Data Assimilation
    • Technical changes and adaptations for TWOMOM_SB and COSMOART
  • 5.04d: released 2016-10-06; Release Notes.
    • Changes in data assimilation
    • Incremental analysis update (IAU)
    • Changes in treatment of lateral boundary conditions
    • New GNSS STD operator
    • Changes in the blocked turbulence scheme
  • 5.04c: released 2016-10-06; Release Notes.
    • New tuning parameters for physics perturbation
    • C++ Dynamical Core Integration
    • several updates and fixes
  • 5.04b: released 2016-07-12; Release Notes.
    • New boundary condition module
    • COSMO convection schemes (Tiedtke, Shallow), IFS Tiedtke-Bechtold convection scheme (ICON version)
  • 5.04a: released 2016-05-12; Release Notes.
    • COSMO-ICON version of prognostic TKE turbulence scheme
    • Additional Changes in the Physics (src_block_fields.f90)
    • Changes in the Dynamics
    • Technical Changes and Bug Fixes
2013-11-30 Unified COSMO-ICON Physics WG6 finish PP POMPA

Description

In the future, DWD wants to unify the physical packages between the COSMO-Model and the new global model ICON in a way, that if the same package is used from both, the COSMO-Model and the ICON, then also the same source code has to be used (which is at the moment not the case between COSMO-Model and GME, for example). For such a unification, several issues have to be addressed:

  • Memory layout, data structures: The data structure, that should be implemented in all parameterizations, is a 2-dimensional one (number of grid points, vertical dimension). The COSMO-Model up to now uses a 3D memory layout and data structure. All parameterizations therefore have to sweep over the full domain. Internally, some parameterizations use such a 2D data structure, as is considered now again. This is due to the fact that these routines originate from implementations on former machines, where only few memory was available.
  • Interfaces: The original idea was that all global variables, which are used in a parameterization, should be passed by argument lists. Therefore, these lists could be very long. This is the reason why the actual implementation in ICON uses a mix: all fields (multidimensional arrays) are passed via argument lists, all scalar variables can be accessed via USE lists. In the COSMO-Model, all variables (fields and scalars) are accessed via USE lists at the moment. There was a valuable suggestion, that (besides all arrays) also scalar variables should be put to the argument list, if they are modified within the parameterization.
  • Naming conventions: There are different naming conventions for modules and routines, but also for variables. An example is the name of the working precision. In the COSMO-Model ireals is used for specifying the KIND parameter for the working precision, while wp is used in ICON. For modules, ICON has the convention, that the name should start with mo_, which leads to the actual situation, that a parameterization must either use data_xy (for COSMO) or mo_data_xy (for ICON). If possible, these names should also be unified.

There are some other advantages of such an approach: When passing 2D structures to the parameterizations, the user can make the choice to pass rather few grid points (or short vectors), which is good for cache based machines, or to pass long vectors (good for vector processors) to the subroutines. All grid points have to be grouped to blocks then, which allows for an easy parallelization over these blocks (e.g. for OpenMP, but could also be good for implementation on GPUs).

Work on the physical parameterizations has started to convert them to the correct memory layout.

During this work, several issues occured at MeteoSwiss:

  • Because of performance reasons, it would be good to have all physical parameterizations called in one block (at the moment the microphysics is called at a different place)
  • The saturation adjustment is called several times during the time stepping. Is this really necessary? And when best to call?
  • In the COSMO-Model some parameterizations are only called in the interior of the domain, some are called for the whole domain. This should be unified, because it is rather awkward to track this when copying to the block data structure.

Work done since 2011:

MeteoSwiss ported most of the physical parameterizations (which are necessary to run COSMO-1) to GPUs using the block structure version. A framework was developed to copy the necessary COSMO fields from the (i,j,k) data structure to the blocked structure and back. This framework has been modified early 2014 to make its usage more comfortable and straightforward.

But developments were also going on in the ICON physics, so that most packages have now diverged. The new ICON versions therefore have to be brought back to the COSMO-Model and tested there.

Microphysics (Work done in 2014):

  • April, May: The latest developments for the microphysics (done by Carmen Köhler, DWD) are incorporated to the COSMO-Model and tested by MCH and DWD. This will be a candidate to be included in the official COSMO Version 5.1
    • MeteoSwiss tested the microphysics without changes done at DWD with success in the new framework
    • DWD also tested the new modifications and bug fixes:
      • Cloud Ice Sedimentation: This plays an important role in restructuring the high clouds and counteracting overprediction or too long lifecycles of cirrus. Cloud ice sedimentation was implemented and tuned in ICON for the cloud ice scheme hydci_pp. It is now also implemented in the graupel scheme hydci_pp_gr.
      • Sticking Efficiency: This influences the aggregation and ice autoconversion and was changed accordingly to the cloud ice sedimentation
      • Evaporation: In ICON, also a limitation for maximum evaporation was implemented. This is needed to provide numerical stability for large horizontal resolutions.
      • Supercooled liquid water and reduced freezing rate: The supercooled liquid water approach reduces the depositional growth for temperatures below 250K, which is assumed to be the threshhold for mixed-phase clouds. The reduction in freezing rate of in-cloud and below-cloud rainwater takes effect for the temperatures below the threshhold for heterogeneous freezing of raindrops (= 271.15K). These changes were already tested for COSMO-EU in 2013. They proved to improve the forecasts for aircraft icing (ADWICE).
  • May, June: DWD tested all changes in COSMO-EU and COSMO-DE experiments for summer and winter periods. Less importance was given to COSMO-EU, as some of the changes have already be tested last year. Therefore, the COSMO-EU experiments only run for 24 hours to provide boundary data for COSMO-DE. Verification results are shown in "testing".
  • November: The blocked version of the new microphysics has been implemented in COSMO-Model 5.1. ICON also implemented the changes to the microphysics, so ICON and the COSMO-Model use the same contents. But ICON did not incorporate the version modified by MeteoSwiss, where all vector optimizations were eliminated and only one big loop is used. It turned out that the Cray Compiler also could vectorize the loops better before, which lead to a slow-down of the microphysics in ICON.
  • July 2015: Implemented the possibility of calling the microphysics at the beginning of the time loop before all other parameterizations. This has been realized by a switch lgsp_first. Note that the results are changed, if lgsp_first=.TRUE.

Radiation (Work done in 2015, May - July)

  • A blocked version of the Ritter-Geleyn (RG) radiation (in module radiation_rg.f90 ) and the corresponding interface (radiation_interface.f90) has been implemented. The RG radiation scheme needs special input variables (si milar to other radiation schemes as RRTM), which are computed in the interface. The different computations are grouped in subroutines, which have been put to a new module (radiation_utilities.f90).
  • This version also supports the possibility to work on a coarser grid, and because of that we need a special data structure for the variables in the interface
    xvar (nproma*nradcoarse, nradcoarse)
    where nradcoarse is the number of grid points to group together in i- and in j-direction for one coarse grid point. Note that for the full COSMO grid (nradcoarse=1) this is just the usual blocked data structure, just with an additional dimension 1. For this data structure we need two fields mind_ilon_rad, mind_jlat_rad (similar to mind_ilon, mind_jlat), which give the correspondance between indices (i,j) of the full COSMO grid to this data structure. The fields mind_ilon_rad, mind_jlat_rad have the dimension (nproma*nradcoarse, nradcoarse, nblock_rad) where nblock_rad is the number of blocks for radiation (is different between using the full grid or a coarse grid).
  • The interface module computes all input variables for the radiation scheme on this new data structure. If a coarse grid is used, an additional subroutine ( average_to_coarse_grid ) is called, which computes the averaging of nradcoarse*nradcoarse to one coarse grid point.The results of these averaging are given to the driving routine fesft of the RG radiation.
  • The decision that we want to support the coarse grid for the radiation and also the fact that the input variables for the radiation scheme are different ones than for all other parameterizations, lead to the decision, that we do not use the "copy-in/copy-out" that we use for the other blocked versions of the physics, but the method described above for the computations.
  • A more detailed documentation of the "Radiation in blocked data structure" is in preparation.
  • The results of the new blocked version are bit-identical to the old version of the RG radiation.

Technical Issues (Coding Standards, Technical Test Suite, 4-eyes Assurance)

MCH developed the "copy-to-and-from block data structure" environment and most of the interfaces for the different parameterizations, when porting the code to the GPUs. The work has been followed and monitored by DWD. When updating the parameterizations to the new ICON versions, the still missing interfaces will be developed.

Testing (Single Test Cases, Experiments)

Microphysics:

The modifications to the microphysics have been tested in several experiments at DWD. A first experiment for COSMO-EU has already been done in Summer 2013 based on model version 4.26. In May / June 2014 more experiments have been conducted based on model version 5.0.2. Some basic verification results are summarized here.

Radiation:

Since results are bit-identical to old version, only the technical test suite has been run, which confirms the bit-identity.

Documentation (Presentation of Results, Model Documentation, External Documentation)

Extensions for the documentation of the microphysics in the "Physical Parameterizations Documentation" is available and will be incorporated soon.

2014-06-30 read / process GPS slant path delay data KENDA finish Bender (DWD)

Description

Observation operator for the use of GNSS zenith (ZTD) and slant total delay (STD) data in KENDA. This includes the writing of NetCDF feedback files by the COSMO model which can then be read by the LETKF.

The current version can read two types of data:

  • ZTD data from NetCDF observation input files with the same template as already used for the nudging of GNSS IWV (integrated water vapour) data, and
  • STD data only from special ASCII input files, which are produced by the GNSS processing centre GFZ, plus an additional file with a list of stations. A standard BUFR template for slant path delay data does not yet exist: In the future, this ASCII interface will have to be replaced by a BUFR-to-NetCDF interface with an template that is yet to be defined.

In addition, a file is read containing the geoid undulation which is required to convert the heights above the geoid (used for the observations) into ellipsoidal heights (used by the model).

The inclusion of the current version of this observation operator into V5.05 is important for DWD, because DWD requires to run this in passive mode as soon as possible in the pre-operational suite to prepare a meeting with GFZ delegates in December.

Status

The code is ready and sent to Uli.

Technical Issues

Coding Standards are fulfilled, some technical tests have been performed (code was running stably in BACY for short period (few days) with STD and/or STD or without), the interface has been cross-checked briefly.

Testing

Single observation sensitivity experiments showed expected behaviour, and BACY trials using the full data set showed some positive impact of precipitation forecasts compared to a control with use of only conventional obs (both in comparisons with and without LHN).

Some plots should be available here before end of August.

Documentation (Presentation of Results, Model Documentation, External Documentation)

Availability of the following documentation required by the COSMO source code management rules:

  • User Guide: updated User Guide , and added parts to the User Guide as a separate file for a quick look
  • The observation operator is described in a manuscript for a peer-reviewd paper, and a first version of the scientific documentation is included in the DACE documentation of which the added parts can be seen here.
  • process documentation: documentation of the chages to the existing software for inclusion to the version history and the changes log-file: sent to Uli.
2014-07-31 Providing COSMO-SC for general application WG3a submit Raschendorfer / Schättler

Description

The single column test bed (COSMO-SC) had been developed years ago by M. Raschendorfer and consists of a couple of additional modules facilitating SC-runs with the parameterizations schemes used in the COSMO model. The framework provides a flexible configuration of a SC model run that can be forced by various SC measurement data (e.g. from meteorological observatories) in order to perform a kind of component testing of singular parameterization schemes. In order to perform SC runs, these modules need to be compiled with a sub-set of COSMO modules that branches from module organize_physics and includes also the related NAMELIST settings. As we want to produce a common library of physical parameterizations for COSMO and ICON, the SC framework automatically would be a test-bed for future ICON development. Nevertheless, the framework modules can also be linked to a subset of ICON modules in principal, what however would require some major adaptions.

The last running SC configuration was based on COSMO version 4.24. In particular the new tracer module is not yet compatible to the SC framework, which involves some major modifications in these modules and some minor ones in the original COSMO code.

We aim to prepare a running SC configuration based on version 5.0 and to include the modules of the SC framework to the official COSMO code, what means that the SC test-bed is available for all COSMO users, and that modifications of the original COSMO code need to guarantee the functionality of the SC runs.

Status

The SC modules have been adapted to COSMO version 5.03_beta and a few related modifications have been implemented into the test version including the modifications related to "Turbulence: Implementing and extending the restructured ICON-version of TURBDIFF", "Implementing TKE-advection for TURBDIFF" and "Implementing TKE-advection for TURBDIFF".

The standard workbench and makefile of Uli Schättler has been extended, so that the additional SC-code is always included now. Optionally either the paralles binary for the full 3D COSMO or a sequential binary for the COSMO-SC can be compiled. In particular all common physic schemes already implemented in COSMO can be tested by SC-runs, which includes component testing by means of an accordingly designed measurement forcing of SC-runs.

Technical Issues (Coding Standards, Technical Test Suite, 4-eyes Assurance)

The code of the additional SC-framework itself is rather comprehensive and its complete inspection is impossible. Moreover, this code is purely sequential and is not optimized with respect to performance, as it has been designed as a tool for testing and developing physical parameterizations only. However it written in rather modular and the code-lines are very inensively commented. It has been used intensively for various component testing experiments.

Testing (Single Test Cases, Experiments)

The functionality of the SC-framework in combination with COSMO-5.0 has been tested by some users at DWD and I. Cerenzia at ARPA-SIMC. A previous version has been tested also by M. Buzzi (MeteoSwiss).

Documentation (Presentation of Results, Model Documentation, External Documentation)

A documentation of the SC-framework is already available. However, it is not completely up to date.

2014-08-30 Turbulence: Implementing and extending the restructured ICON-version of TURBDIFF WG3a finish Raschendorfer

Description

The standard turbulence scheme of the COSMO (TURBDIFF) is the default scheme for ICON as well and a lot of adaptations have been introduced to the ICON-version including a major reorganization of the code.

  • It contains common subroutines for solving the turbulent 2-nd order equations and the related thermodynamics that are called also by the surface-to-atmosphere transfer (SAT) scheme (TURBTRAN).
    • with the full moist turbulence statistics applied also for the surface layer
      • allowing for consistent interpolation of vertical profiles at the 2m- and 10m-levels in terms of conserved variables
      • allowing the simulation of clouds at 2m-level = fog
    • with a modified definition of specific humidity at saturation, based on partial pressure of dry air, which can be applied even at levels with very small pressure.
    • with a new version of a positive definite prognostic TKE-eqaution
    • with a less restrictive correction of potential singularies in the solution of stability functions
  • It also employs a different treatment of numerical security limits that can be gradually decreased, which may have consequences not only for the stable boundary layer:
    • They are related some smothing routines or the introduction of security factors
    • and are related to the solution of the TKE-equation, the treatment of the linear system resulting into the stability functions, the calculation of forcing terms and the finally derived variable tendencies.
  • Further, a new subroutine for calculation of vertical diffusion has been introduced:
    • This subrougtine can be called for arbitrary tracers and prognostic half-level variables (like TKE) as well.
    • It also allows for the treatment of non-gradient diffusion, which is particularly a matter
      • for the moist corrections (due to condensation and evaporation related to turbulent fluctuations),
      • for non-local extensions (e.g. when treating scalar turbulent variances prognostically) or
      • for calculating the buoyant near surface circulation term
    • The subroutine also allows for explicit forcing by pre-described surface flux densities (explicitly calculated or contained in a variable field)
    • Optionally a dynamical calculation of implicit weights and a preconditioning of the (tridiagonal) matrix can be selected.
  • Moreover some additional development has been implemented:
    • Some modification for TKE-initializations required for a restart, which is based on the usual model output.
    • Optional restriction of the smoothing of TKE-forcing terms to the tropics.
    • Introduction of a Ri-dependent corrections for
      • minimal diffusion coefficients
      • minimal velocity scale of the transfer layer
      • the length scale used for calculating the additional shear production of TKE generated by non-isotropic separated horizontal shear eddies.
    • Introduction of a wind-dependent Charnock-Parameter for estimation of sea-surface roughness
    • Making the so far constant pattern-length-scale (of the "circulation-term") dependent on SGS orography
    • Allowing an optional free-slip condition for idealized test runs
  • On the other hand horizontal operations (like the interpolation of wind components to mass positions and the complete calculation of horizontal shear (cf. "3D-extensions of TURBDIFF") are not present in the ICON version, which employs only one horizontal dimension of variable arrays subscripting independent vertical columns.
  • Finally, some other development (e.g. the treatment of vertical diffusion for conservative variables with a subsequent statistical saturation adjustment) has been implemented in a side-branch of the TURBDIFF-development for ICON (still using 2 horizontal coordinates).

This task aims to merge the different development into a common TURBDIFF module valid for COSMO and ICON:

  • For that purpose all horizontal calculations (which are different in both models due to the different model grid) have to be separated from the TURBDIFF module and to be displaced e.g. to the calling interface.
  • Further we are aiming to substitute the calculation of vertical diffusion in COSMO, which consists of different code for diffusion of momentum, temperature, passive tracers and TKE, which is located in different subroutines and modules (also dependent on the selected dynamical core), by a single generalized subroutine, which is included in the TURBDIFF-module of the ICON-version.
  • The upcoming TURBDIFF-version will also contain a more consistent controlling of optional extensions or alternatives.
  • The new version will require a modified the turbulence interface and the new module will contain all code related to TURBDIFF, which is currently split into different modules in COSMO.
  • The non-formal extensions compared to the currend COSMO-version, which have a major impact on the results, should be reformulated in a way to allow for a successive activation.
  • This code should also be the one to be extended by further development, e.g. the optional prognostic equations for scalar variances (cf. "Extension of TURBDIFF to TKESV configuration").

Status

December 2016:

  • An additional test for a winter-period with the new blocked TURBDIFF version using the oprational ICON settings is currently running. If the results of the winter-period are convincing, the official activation at DWD will be done after the start of KENDA and a quasi operational parallel experiment, already using KENDA for data assimilation.

June 2016:

  • The verification results based on the new blocked TURBDIFF version using the operational ICON settings are promising. However the run with “itype_vdif=0” (calling blocked vertical diffusion just after the turbulence model, where diffusion of horizontal wind is applied to mass centered profiles, crashed for COSMO-DE after about 3 weeks of simulation. The tests using “itype_vdif=-1/+1” are stable.

  • Development implementation based on COSMO_5.03_beta integrated into official version 5.4a by using the copyToFromBlock faclity for array blocking together with some restructuring of the interfaces.

  • By this, the possibility of calling the common blocked vertical diffusion routine after the physics section, integrating other physical tendencies into the implicit diffusion equation and allowing for diffusion of the staggered horizontal wind components directly “itype_vdif>0” is deactivated. Further, combinations of the blocked routines with alternative turbulence or surface-transfer schemes are not possible and SC-runs are no longer possible,

  • A cleaned implementation has been prepared based on COSMO_5.04a facilitating “itype_vdif>0” and combinations with alternative turbulence parameterizations, going to be implemented into a sub-version of 5.05.

  • Parallel tests based on this implementation are being run with “itype_turb=-1/+1”

December 2015:

  • A new common version of the module TURBDIFF (turbulence_turbdiff) has been developed, which needs to be combined with a configuration module (turbulence_data).
  • The code is written in block-data structure and has been substantially rearranged and extended in order to merge all COSMO and ICON developments as switchable options.
  • By means of parameter settings in turbulence_data it is possible to configure TURBDIFF as it is currently used in ICON (ICON-config) or similar to the current (older) formulation in operational COSMO (COSMO-config). Some of these settings are also NAMELIST parameters taking their defaults from turbulence_data.
  • New TURBDIFF is already operational in ICON since mid-November 2014.
  • It is also available in COSMO_5.03_beta
    • together with a new interface containing all necessary horizontal operations that are no longer part of the TURBDIFF code.
    • Array blocks are provisionally realized by partial arrays at a fixed horizontal j-index.
    • COSMO_5.03_beta can be run either with the previous TURBDIFF (itype_vdif=-2) or wiht the new common TURBDIFF (itype_vdif>=-1)
    • Vertical diffusion can either been calculated by the previous routines in slow_tendencies_rk (itype_vdif=-1) or by the common routine contained in TURBDIFF (itype_vdiff>=0), which is used in ICON as well.
    • Common vertical diffusion is either called together with the turbulence model as in ICON (itype_vdif=0), where horizontal wind is diffused on horizontal mass positions, or it is called at the end of the physics-section using already calculated physical tendencies in the semi-implicit diffusion equation (itype_vdif>0). If called at the end of physics section, vertical diffusion of horizontal wind is
      • either calculated for the mass-point interpolated wind-compenets and the diffusion tendencies are back-interpolated onto the staggered positions (imode_mdif<=0), which is the the procedure in ICON, and possibly present wind-tendencies are considered in the imlicit equation (imode_mdif=-1)
      • or the original staggered horizontal wind components are diffused directly (imode_mdif=1), as it is currently done in slow_tendencies_rk
  • The meaning of some namelist parameters has been modified in the sense of a more systematic definition (imode_turb, imode_tran, itype_sher, ltkeshs, lsflcnd, ...)
  • The code has been used for case studies as well as for parallel experiments with COSMO.
  • The code contains also additional options related to further development, in particular some modifications of the surface-to-atmospher (SAT) scheme.
  • The new code is being integrated into COSMO_5.4 by Uli Schättler by empoying the copy-in-out facility for array-blocking.

August 2014:

After a first attempt has been introduced into the single column (SC) test-bed (COSMO-SC) based on version 4.29, which didn't contain all the different development completely and was still based on 2 horizontal dimensions of variable arrays,

  • the current ICON-version has been formally adapted by some reformulations
    • allowing to switch-on and -off the most significant non-formal extensions
    • avoiding some not necessary code duplications that had been introduced in order to speed up the code
    • introducing some extensions that had been implemented in COSMO but not in ICON (mainly 3D-turbulence options)

Based on COSMO version 5.1a

  • a new COSMO-interface for calling TRUBDIFF 'turbulence_interface' has been written, containing
    • all the necessary horizontal calculations:
      • interpolation of all variables onto horizontal mass-positions of staggered wind and vice versa for wind-tendencies
      • calculation of horizontal shear fields as input variables
      • precalculation of 3D-metric corrections for vertical diffusion [to be adapted later <=> ConSAT]
    • a collection of all needed parameters and some specific settings for COSMO

Comments:

  • By the control-parameter 'imode_vdif' it can be selected, whether vertical diffusion is calculated
    • utilizing the new vertical diffusion routine
      • together with the turbulence model (not using explicit physical tendencies in the implicit equation) as it is currently done in ICON: "imode_vdif=0"
      • after the explicit physical tendencies have been calculated (using the collected physical tendencies in the implicit equation): "imode_vdif>0"
        • [in the test version the call of the common vertical diffusion routine is located in 'slow_tendencies_rk', where (in this case) the previous code is disabled]
    • running vertical diffusion as before (using the respective code in 'slow_tendencies_rk': "imode_vdif=-1"
  • It is possible to configure the turbulence model by parameter settings in 'turbulence_interface' nearly reproducing the behavior of the current scheme:
    • So far, this has been verified by some test runs only
  • The test version needs to be integrated into the official version
  • The final version needs to be tested thoroughly, since it represents a rather strong modifications:
    • We want to start 2 experiments with a configuration, which are expected to represent
      • the current COSMO-version
      • the current ICON-version
  • If the ICON-configuration is acceptable, we stay with this
  • Otherwise, we start with the COMSO-configuration and try to find a compromise later

Technical Issues (Coding Standards, Technical Test Suite, 4-eyes Assurance)

  • Coding standards are fulfilled.
  • The TURBDIFF code hase been further optimised compared to the previous ICON- or COSMO-version.
  • Correctness of the code is assured by
    • 4-eye inspection: together with Günther Zängel (TUBDIFF code) and Uli Schättler (COSMO-interface)
    • evidence that all formal modifications applied to the forme ICON-version produce bit-identical results comapred to a test version containing only those modifications, which really effect the results.

Testing (Single Test Cases, Experiments)

  • Single test case experiments showed that
    • COSMO_config
      • shows rather comparable results to the current operational TURBDIFF version
      • is rather independent on how vertical diffusion is organized
    • ICON_config seems
      • to reduce positive nocturnal bias for T2m to some extend => presentation by A. Steiner and J. v.Schumann)
      • to show a better representation of the low level jet (important for wind energy forcast for wind generators) => presentation by A. Steiner and J. v.Schumann
  • Parallel experiments for COSMO-DE with lateral BC provided by ICON-EU
    • for November 2014 are finished togeth with operational verification
      • Reference: itype_vdif=-2 (currently operational TURBDIFF)
      • Test1: COSMO_config and itype_vdif=-1 (only new turbulence model configured similar to operational TURBDIFF)
      • Test2: COSMO_config and itype_vdif=0 (also new common vertical diffusion)
      • Test3: ICON_config and itype_vdif=0 (new turbulence mode configured as in ICON and new common vertical diffusion)
    • for August 2014 are finished togethr with operationa verification
      • Reference: itype_vdif=-2 (currently operational TURBDIFF)
      • Test3: ICON_config (crashed with ityp_vdif=0!!, runs with itype_vdif=-1/+1)
  • NWP-test suite (2.8 and 7) Km running with COSMO_5.4a as Test3 (itype_vdif=0) but with a accidental parameter variation.
  • Comment:
    • "itype_vdif=0" seems to be not stable.
    • Test3 was promising (already shown), but "itype_vdif=0" seems not to be stable!
    • Test3 (itype_vdif=-1/+1) will be repeated with COSMO_5.4_beta as a parllel experiment at DWD and NWP-test suite (also possibly with further parameter variations)

Documentation (Presentation of Results, Model Documentation, External Documentation)

  • Recent results (presented 14 December 2015) by Andrea. Steiner and Jonas. v. Schumann are uploded.
    • more experiments will follow and the results are going to be presented at the CUS
  • Results of the parallel experiments are uploaded on this page.
  • Publications (first of all about the transfer-scheme and about Ines Cerenzia's related diagnostics) are in preparation as well.
    • The positive effect of the implemented (optional) updated derivation of transfer coefficients for stable stratification has been presented by Ines at the CUS 2016
  • An updated user-descricption of new or redefined NAMELIST parameters and of the configuration paramers in turbulence_data will be provided as soon as the introduction of the new COSMO-version containing the common TURBDIFF (5.04) is ready.
  • The preparation of a scientific documentation about the complete parameterization (turbulence scheme including turbulent saturation adjustment and surface-to-atmosphere transfer) has started based on existing manusscripts and presentations. It should possibly become ready within the current ConSAT task.
2015-08-31 Revision of TERRA to support HWSD data WG3b finish J.Helmert (DWD)

The COSMO model uses operationally soil type data from the FAO Digital Soil Map of the World (DSMW) with a rather coarse resolution of 5 arc minutes compared to other external parameters (e.g., land use, orography). With the advent of the Harmonized World Soil Database (HWSD), a new global data set is available that provides a resolution of about 1 km (30 arc seconds by 30 arc seconds) and allows characterization of selected soil parameters (e.g., organic carbon, water storage capacity, soil depth, textural class and granulometry) [1]. Using recent database extensions in COSMO-CLM [2], the aim of the task is to use the HWSD in the EXTPAR system and adapt the soil model TERRA for the use of the high-resolution soil types. The benefit for the COSMO model is the advanced consideration of surface heterogeneities that can be used in future versions of TERRA.

The implementation in the COSMO model uses pedotransfer functions to translate the fractions of sand, silt, clay and bulk density in physical properties used by TERRA. In the current implementation, only the shallow soil layer (0-30cm) is considered. This behaviour is controlled by the new namelist switch itype_soil (itype_soil=2).

[1] http://www.iiasa.ac.at/Research/LUC/External-World-soil-database/HWSD_Documentation.pdf
[2] Smiatek, G. et al.,Time invariant input parameter processing for applications in the COSMO-CLM Model., http://bibliothek.fzk.de/zb/veroeff/75885.pdf

The HWSD data are ready to be used as TERRA soil types. They are already used in the ART scheme for dust emission.

N/A

2015-09-30 Consolidation of surface-to-atmosphere transfer ConSAT WG3a finish Raschendorfer

ConSAT is a coordinated and planned, sequential as well as partly interactive and dynamicaly adapted list of measures aiming to generally improve the description of Surface-to-Atmosphere Transfer (SAT), through which particularly the simulated diurnal cycle of near-surface variables can be strongly influenced.

From 2013 till 2016 ConSAT was organized as sequence of PTs. More details about the aims, measures and results during this phase can be found in the related documents of the PTs. Currently ConSAT is continued at the level of WG tasks.

The focus of ConSAT is the coupling between the rigid surface and the atmosphere and thus refers to the numerical simulation of atmospheric and non-atmospheric processes near the surface, which mainly are represented by the modules TURBDIFF (boundary layer turbulence), TURBTRAN (calculation of bulk atmospheric resistances between surface and the lowermost atmospheric model level) and TERRA (physical processes at the rigid surface). Since a consistent numerical description of this complex requires the consideration of each of these domains, ConSAT tasks necessarily are also dealing with surface processes being represented in TERRA.

The work started in the framework of the COSMO-model, where the Single-Column framework (COSMO-SC) was an important working tool. Within 2017 the ConSAT-development moved to the ICON model, since COSMO could not realy be upgraded so as to contain the same treatment of surface processes (at least as far as TERRA is concerned). Furthermore, some related methodological development in ICON (such as surface tiles and dynamical snow tiles) have not been transferred to COSMO. Nevertheless, COSMO-SC will be used again, as soon as modules containing the related physical parameterizations can really be interchanged without further adaptations between COSMO and ICON. So far, the ConSAT-work takes place completely in ICON.

ConSAT is related to the following implementation taks:

  1. Reformulation of the surface-to-atmosphere transfer scheme at least in those aspects promising to improve its behaviour for stable stratification (particularly over snow in connection with large values of roughness length) and to reduce the present systematic overestimation of T2m during night time situations.
  2. Improving the numerical stability and efficiency of the turbulence scheme and the diffusion calculation by optimisation of the algorithms, by introducing some matrix conditioning, by modification of the positive definite prognostic TKE equation and by implementing better strategies of avoiding possible singularities in the solution of stability functions without undesired artificial constructions like minimal diffusion coefficients.
  3. Revision of scale interaction terms of the scale separated turbulence scheme, in particular with regard to thermal SSO effects (thermal circulation term).
  4. Reformulation of implicit vertical diffusion within one general subroutine called for each transported species, including tracers and half level variables like TKE.
  5. Reformulation of the whole boundary layer scheme (transfer, turbulence, turbulent clouds, turbulent diffusion) towards an more modular structure with regard to the coupling with surface tiles and the use in other models like ICON. Adoptions for the use in ICON include the separation of calculations using horizontal operators from the turbulence scheme and the use of only one horizontal loop.
  6. Resvision of turbulent saturation adjustment (statistical cloud condensation) with respect to its application in the transfer layer as well as physic-dynamic coupling and scale separation.
  7. Introducing the vertically resolved roughness layer with roughness terms in the turbulence scheme including a clear concept how to aggregate surface roughness parameters of a grid box surface from those of the tiles it is composed of.
  8. Implementation of an extra, massive roughness layer, which is imlicitly coupled to the soil and semi-implicitly coupled to the atmosphere via the temperature of rouhness elements. This includes the parameterization of transfer of heat, moisture and radiation through this layer as well as the heat storage of elevated roughness layer elements (canopy), which coveres the surface of the dense soil. For that purpose, the surface scheme of TERRA needs to be modified considerably, in particular with respect to the effect of evaporating or tranpirating surface fractions and the upper boundary condition for the implicit solution of the soil heat conduction equation. This should reduce the currently too excessive soil heat fluxes and possibly help to increase numerical stability related to near surface processes. That measure is also closely related to the treatment of snow in general and particularly with regard to snow-interception by roughness elements.

Status

Some of the mentioned work (issues 1 to 6) have already been picked up in the development of the ICON-version of TURBDIFF (cf. "Implementing and extending the restructured ICON-version of TURBDIFF"). The full ICON-version of TURBDIFF is used now in COSMO exclusively (since version 5.04e). However, at DWD, TURBDIFF is still configured in order to provide similar results as compared to the previous TURBDIFF-version. This is realized by a couple of parameter settings. Most of them are activated by the NAMELIST-setting "loldturb=T", which can be used since COSMO-version 5.04f.

July. 2019: In a particular development branch for ICON more recent development is being implemented and tested (see issue 3 and 8)

Issue 1: An extended interpolation of the vertical profile function of turbulent velocity scale through the transfer layer (with a new hyperbolic branch for stable stratification) has been implemented in the common TURBDIFF version as well as an option to run the surface scheme without the input of turbulent diffusion coefficients from the lowermost model half level. The first implementation has been intensively inspected by Ines Cerencia based on SC-simulations and tower measurements and evidenced that the scheme is now also able to reproduce the strong decoupling of the homogeneous surface under strongly stable conditions, if minimal diffusion coefficients can be reduced accordingly. The second implementation needs some more inspection.

Issue 2: Already included in the common TURBDIFF version. Not all measures are switched on operationally, even in ICON. A modified calculation of stability function is active, but the matrix conditioning seems to be dispensable. The new positive definete semi-implicit solution of the TKE-equation is not yet active. It promises to reduce some further security measures for stable stratification and will be tested in near future. A Ri-number dependent correction-factor for our minimal diffusion coefficients reduces their impact in the boundary layer and is already active in ICON.

Issue 3: Already included in the common TURBDIFF as far as the separated horizontal shear interaction is concerned. In contrast to COSMO this interaction term is already active in ICON and produces more turbulence along frontal zones throughout the whole troposphere. The near surface interaction with non-turbulent thermal circulations is now dependent on the standard deviation of SSO and reduces nocturnal SAT for flat terrain.

July. 2019: A new formulation of the circulation term is ready in a private development branch for ICON, which needs to be further tested and validated.

Issue 4: Implemented in the common TURBDIFF and active in ICON.

Issue 5: Already included in the common TURBDIFF version and runnin in ICON. In order to ease surface tiling, all input of the turbulence scheme from the transfer scheme schould be formulated in terms of fluxes in future. An according reformulation is planned for the next COSMO years.

Issue 6: Is implemented in the common TURBDIFF version and running in ICON (as far as the application in the transfer layer is concerned). It remains to substitue the grid scale saturation adjustment by the turbulent adjustment, providing a possibly important additional heat source that is not yet considered.

Issue 7: A generalized boundary layer approximation has been formulated and a related extension of the turbulence scheme has been developed. An implementation is planned for a medium time range.

Issue 8: A first working version of the elevated roughness layer (canopy) has been implemented into the previous (non-blocked) version of TERRA and the new (blocked) version of TURBDIFF. In this version, however, a full implicit thermal coupling between roughness-elements, soil and (particularly) a fractional snow-cover is not yet considered. With this prototype the presence of snow is still excluded. The canopy-extension has ability to simulate the mean diurnal cycle of T_2m and Td_2m for a clear-sky summer day almost perfectly.

Technical Issues (Coding Standards, Technical Test Suite, 4-eyes Assurance)

All implementations of official code are part of the common TURBDIFF. Thus the related notes in task "Implementing and extending the restructured ICON-version of TURBDIFF" apply here as well.

The prototypic canopy-extension is still present only in a test-version of COSMO!

Testing (Single Test Cases, Experiments)

All implementations are being tested with the new common TURBDIFF version. All those being operational active in ICON have already been verified there. Mainly the extended formulation of vertical profile functions (Issue 1) the new positive definite solution of the TKE equation (Issue 2) and the prototypic canopy extension (Issue 8) have been tested by SC simulations and 3D test cases only.

Documentation (Presentation of Results, Model Documentation, External Documentation)

A full documentation of the TKE-based transfer scheme has started as well as the preparation of publications.

2015-12-01 Shallow convection: new closure based on conv. vertical velocity scale, modified entrainment, modified shallow conv. cloud cover WG3a finish Boeing / Blahak

Description

Modifications of the shallow convection parameterization based on the work of S. Boeing at MeteoSwiss. Cloud base muss flux now based on convective velocity scale instead of moisture convergence. Modified entrainment parameterization and modified shallow cloud cover.

Status

Code provided by S. Boeing and transferred from the GPU-implementation of MeteoSwiss to a Cosmo 5.3 test version by U. Blahak. New namelist switch y_conv_closure with the 2 possibilities "standard" and "Boeing" to activate the changes.

Technical Issues

Coding Standards are fullfilled, but additional nested IF branches are introduced within several outer loops over gridpoints in src_conv_shallow.f90 and make the code not very readable and perhaps also inefficient due to vectorization problems. Has to be re-checked. In cosmo-prerelease the SELECT CASE is now used and with OPENACC the performance of standard is the same.

Technical Test Suite: Ok.

4-eyes Assurance: By Ulrich Blahak.

Testing

Experiments made with COSMO-1 for 2 periods (Winter 2014-20159 and May/June 2015) show little impact. Results in Verification_shallow_convection.pdf

Documentation

Presentation of Results, Model Documentation, External Documentation

A short description of by S. Boing in LaTeX is available.

Talk at COSMO GM 2014: Evaluation of kilometer scale COSMO simulations using LES and observations. Latest results from Turb-i-sim. (p.19-33 of GMtkesv.pdf)

External Doc: shcu.pdf

2016-01-01 changes to SPPT scheme in order to improve stability WG1 finish Walser (MeteoSwiss)

Documentation (Presentation of Results, Model Documentation, External Documentation)

Provide specific information on availability of the following documentation required by the COSMO source code management rules:

  • internal product documentation within properly structured code
  • external product documentation: scientific documentation, User Guide and (possibly) implementation documentation
  • process documentation: documentation of the chages to the existing software for inclusion to the version history and the changes log-file.
2016-06-15 Code refactoring and bugfixes in Fortran for 5.5 POMPA finish Pascal Spoerri

Description

While porting the Fortran dynamical core to C++, some bugfixes or refactorings to improve clarity have been introduced in the Fortran dynamical core.

Impact on code:

  • Change of handling of density and lateral boundary conditions in positive definite advection.

Impact on build process:

  • None

Impact on results:

  • Results change for bugfixes and some refactorings
  • Verification shows neutral impact w.r.t. original code

Involved code owners (with effort):

  • Michael Baldauf (2 days)

Documentation (Presentation of Results, Model Documentation, External Documentation)

Provide specific information on availability of the following documentation required by the COSMO source code management rules:

  • internal product documentation within properly structured code
  • external product documentation: scientific documentation, User Guide and (possibly) implementation documentation
  • process documentation: documentation of the chages to the existing software for inclusion to the version history and the changes log-file.
2016-08-23 technical options for LETKF/MEC: UV10M station selection; reader of DWD national stations; simple IAU; analysis as initial LBC; extrapolation of lateral boundary fields KENDA finish Schraff (DWD)

Description

All changes are new options, or relate to options that are currently not used operationally:

  • option(s) for revised station selection for use of 10-m wind data; addtional criteria depend on roughness length and on 2nd derivative of orography
  • reading routine / option for processing DWD national synop reports; these reports contain 1-hourly precip and wind gust data as opposed to the DWD standard synop reports and are therefore required for the MEC / standard surface verification
  • simple IAU (incremental analysis update), to add analysis increments over a certain period at the beginning of the model forecast instead of adding the analysis increments at analysis time
  • use of analysis as lateral BC at time zero, to reduce noise
  • option to integrate the model past the time of the last available lateral BC (linear extrapolation of lateral boudary fields), by typically <= 1 hour (for LETKSmoother)
  • a minor modification to cope with incorrect coding of relative humidity (variable MUUU defined as float instead of integer) in Mode-S aircraft NetCDF observation input files.

Status

  • UV10M station selection: implemented
  • DWD national reports: to be done
  • IAU: implemented
  • Analysis as LBC: implemented
  • extrapolation of lateral boundary fields: implemented (and used in LETKSmoother experiment)
  • fix for Mode-S humidity variable: implemented

Technical Issues

Coding Standards: YES

Technical Test Suite: By Uli.

4-eyes Assurance: By Uli for IAU / LBC

Testing

(Single Test Cases, Experiments:)

Short technical tests have been performed to make sure that the code run properly.

Documentation (Presentation of Results, Model Documentation, External Documentation)

Provide specific information on availability of the following documentation required by the COSMO source code management rules:

  • internal product documentation within properly structured code: YES (with rather extensive descriptions e.g. on IAU)
  • external product documentation: User Guide: updating of namelist parameters being done. Scientific (and possibly some) implementation documentation will be done later in autumn (after EWGLAM meeting).
  • process documentation: documentation of the chages to the existing software for inclusion to the version history and the changes log-file: YES
2016-08-23 technical options for LETKF/MEC: UV10M station selection; reader Schraff (DWD) of DWD national stations; simple IAU; analysis as initial LBC; extrapolation of lateral boundary fields KENDA finish Schraff (DWD)

Description

All changes are new options, or relate to options that are currently not used operationally:

  • option(s) for revised station selection for use of 10-m wind data; addtional criteria depend on roughness length and on 2nd derivative of orography
  • reading routine / option for processing DWD national synop reports; these reports contain 1-hourly precip and wind gust data as opposed to the DWD standard synop reports and are therefore required for the MEC / standard surface verification
  • simple IAU (incremental analysis update), to add analysis increments over a certain period at the beginning of the model forecast instead of adding the analysis increments at analysis time
  • use of analysis as lateral BC at time zero, to reduce noise
  • option to integrate the model past the time of the last available lateral BC (linear extrapolation of lateral boudary fields), by typically ≤1 hour (for LETKSmoother)
  • a minor modification to cope with incorrect coding of relative humidity (variable MUUU defined as float instead of integer) in Mode-S aircraft NetCDF observation input files.

Status

  • UV10M station selection: implemented
  • DWD national reports: to be done
  • IAU: implemented
  • Analysis as LBC: implemented
  • extrapolation of lateral boundary fields: implemented (and used in LETKSmoother experiment)
  • fix for Mode-S humidity variable: implemented

Technical Issues

Coding Standards: YES

Technical Test Suite: By Uli.

4-eyes Assurance: By Uli for IAU / LBC

Testing

(Single Test Cases, Experiments:)

Short technical tests have been performed to make sure that the code run properly.

Documentation (Presentation of Results, Model Documentation, External Documentation)

Provide specific information on availability of the following documentation required by the COSMO source code management rules:

  • internal product documentation within properly structured code: YES (with rather extensive descriptions e.g. on IAU)
  • external product documentation: User Guide: updating of namelist parameters being done. Scientific (and possibly some) implementation documentation will be done later in autumn (after EWGLAM meeting).
  • process documentation: documentation of the chages to the existing software for inclusion to the version history and the changes log-file: YES
2016-09-15 Block module POMPA finish Xavier Lapillonne (MeteoSwiss)

Description

Block module need to be extended to handle tracers and fields of different types (int/bool) as well.

Technical Issues

Work is ongoing

Technical Issues

Coding standards will be respected.

Technical testsuite will be applied using 3 compilers, 5 systems and in single/double precision.

4-eyes assurance will be done by Oliver Fuhrer

Testing

Results are bit-identical with respect to a reference version.

Testing in regular COSMO-1 runs of MeteoSwiss.

Documentation

Only process documentation required.

Block module is documented by a PowerPoint presentation.

2016-12-15 C++ Dycore POMPA finish Pascal Spoerri (C2SM)

Description

Update for 12/2016:

* New error handlig

* Completed missing ftues

* Dycore documentaton

--

C++ dynamical core is integrated into the code via a library (libDycore.a).

Impact on code:

  • New source file src_cpp_dycore.f90 (1700 lines of code)
  • Eight new #ifdef CPP_DYCORE in lmorg.f90 and organize_dynamics.f90 calling the public src_cpp_dycore.f90 interface routines (cpp_dycore_*)
  • Some new code checking whether setup of dynamical core is consistent with C++ Dycore features
  • New namelist switch lcpp_dycore

Impact on build process:

  • If CPP_DYCORE is defined, C++ dycore library is required for successful linking

Impact on results:

  • None

Involved code owners (with effort):

  • Oliver Fuhrer (owner of src_cpp_dycore.f90)
  • Ulrich Schaettler (1 day)
  • Michael Baldauf

Technical Issues

This development is ready for integration.

Technical Issues

Coding standard have been observed.

Technical testsuite is being passed on 3 compilers, 5 systems and in both single/double precision every day.

4-eyes principle is assured by Xavier Lapillonnne and Andrea Arteaga.

Testing

This development does not change results of standard model setup (bit-reproducible).

The results when lcpp_dycore=T are within rounding error as compared to the Fortran dycore (ensured via testsuite).

The code runs on CPU and GPU since over one month and a standard verification will be done by MeteoSwiss beginning of January 2015.

Documentation

The C++ dynamical core implements _exactly_ the same numerics as the Fortran dynamical core and thus the documentation already exists.

2016-12-15 Change of application domain in relaxation POMPA finish Oliver Fuhrer (MeteoSwiss)

Description

Relaxation currently also sets lateral boundary conditions (BCs) on prognostic variables (time interpolated values from _bd fields). This is a bugfix since the dynamical core destroys the lateral BCs. If correct BCs are set in the dynamical core, this is no longer required.

Impact on code:

  • Impose correct BCs using src_lbc.f90 in dynamical core (see Section 7. New BC module)
  • Change compute domain in sardass() from istartpar:iendpar to istart:iend

Impact on build process:

  • None

Impact on results:

  • None

Involved code owners (with effort):

  • Michael Baldauf (1 day)
  • Ulrich Schaettler (0.25 days)

Technical Issues

The work is done. Implemented in Version 5.0 of COSMO.

Technical Issues

Coding standards have been respected.

If correct BCs are applied after the dynamical core (see dynamics refactoring task further up in the list), the results are bit-reproducible.

The technical testsuite has been run using 3 different compilers, 5 different systems, in single/double precision, on CPU/GPU.

The 4-eyes principle has been assured by Carlos Osuna.

Testing

Tests show an improvement in the fields at the boundary of the model domain. This is likely due to the changes in BCs in the dynamical core.

Since results are bit-reproducible once correct BCs are applied after the dynamics, no further testing is required.

The modified version of the code is used for the regular COSMO-1 runs which have been validated and proven to give neutral verification scores with respect to the reference version.

attached presentation

Documentation

Process documentation is available.

5.04 develop 2015-09-30 2016-01-31 2016-03-10

The version 5.04 is a development version, which means that it is not distributed officially. There are no changing of results for the operational applications compared to version 5.03, but there are some changes in the Namelists. Take a look to the

Release Notes

2014-12-31 Tracking and copying of boundary fields POMPA finish Oliver Fuhrer (MeteoSwiss)

Description

Fields which are read from the BC files (lbff*) have to be tracked and copied to GPU

Impact on code:

  • Three additional varibles in data_io.f90 to track _bd fields being read
  • 30 lines of code in src_input.f90
  • 30 lines of code in initialize_loop() of lmorg.f90 to copy _bd fields to GPU
  • Files touched: data_io.f90, src_input.f90, lmorg.f90

Impact on build process:

  • None

Impact on results:

  • None

Involved code owners (with effort):

  • Ulrich Schaettler (1 day)

Technical Issues

Work done and implemented in COSMO 5.0

Technical Issues

Coding standard are observed.

Technical testsuite passed using 3 different compilers, 5 different systems, in single/double precision, on CPU/GPU.

4-eyes assurance done by Xavier Lapillonne.

Testing

Results are bit-reproducible.

Version of code with modifications runs for COSMO-1 regular runs and nightly in the Jenkins suite of tests.

Documentation

Small technical change. No further documentation except process documentation required.

2015-12-01 DFI: Better treatment of clouds / precipitation WG6 finish Lucio Torrisi

Description

The subroutine dfi_initializations.f90 has been modified to have a better treatment of clouds / precipitation during the diabatic DFI step. Filtering the qx-variables tends to smooth the structure of the initial state clouds. To mitigate this problem, two new namelist parameter have been introduced (working with the option ndfi=1):

  • itype_dfi_qx: treatment of qx-variables in DFI (active only for ndfi=1)
    • =0: all qx-variables are filtered in the forward stage (default)
    • =1: qv is filtered, other variables are initialized with instantaneous values valid at nhalf step of forward stage
    • =2: qv is filtered but corrected to maintain saturated points at nalf step of forward stage, other variables are initialized with instantaneous values valid at nhalf step of forward stage

For consistency with clouds / precipitation treatment also another namelist variable has been introduced:

  • itype_dfi_soil: treatment of soil variables in DFI (active only for ndfi=1)
    • =0: all soil variables are derived from the average of values at the initial and final step of forward stage (default)
    • =1: all soil variables are initialized with instantaneous values valid at nhalf step of forward stage

If the default values are used, the results will not be changed.

The recommended settings that were tested (results shown at COSMO-GM 2015) are:

  • itype_dfi_qx = 2
  • itype_dfi_soil = 1

Technical Issues

Code has been modified and tested in Version 5.01

Technical Issues

Coding Standards: fulfilled

Technical Test Suite:

4-eyes Assurance: will be checked by the SCA

Testing

Presentation from GM 2015

Documentation (Presentation of Results, Model Documentation, External Documentation)

Provide specific information on availability of the following documentation required by the COSMO source code management rules:

  • internal product documentation within properly structured code
  • external product documentation: scientific documentation, User Guide and (possibly) implementation documentation
  • process documentation: documentation of the chages to the existing software for inclusion to the version history and the changes log-file.
2016-01-15 removal of AOF reading WG1 finish Schraff (DWD)

Description

  • removal of option to read observations from AOF files

to be done when AOF reading is not used any more by any of the COSMO members / partners

Testing (Single Test Cases, Experiments)

Fill information about testing

Documentation (Presentation of Results, Model Documentation, External Documentation)

Provide specific information on availability of the following documentation required by the COSMO source code management rules:

  • internal product documentation within properly structured code
  • external product documentation: scientific documentation, User Guide and (possibly) implementation documentation
  • process documentation: documentation of the chages to the existing software for inclusion to the version history and the changes log-file.
2016-01-30 Code refactoring and bugfixes in Fortran dycore 5.4 POMPA finish Oliver Fuhrer (MeteoSwiss)

Description

While porting the Fortran dynamical core to C++, some bugfixes or refactorings to improve clarity have been introduced in the Fortran dynamical core.

Impact on code:

  • Additional halo-exchange of suten and svten and handling of divergence in (old) fast waves solver. [done in new version of code in src_runge_kutta.f90]
  • [?] Re-computation of precipitating water species (qrs), density (rho), surface pressure (ps) and other diagnostics after dynamical core.
  • Implementation of simple clipping for semi-Lagrangian scheme (SL3_SC)
  • [?] Move of computation of dt0dz from src_runge_kutta.f90 to initialization of dynamics (init_dynamics() in organize_dynamics.f90) à move directly into init_runge_kutta() in src_runge_kutta.f90
  • [?] Add Runge-Kutta stage (irk) to argument list of complete_tendencies_uvwtpp()
  • Hardcode number of saturation adjustment iterations to 3 in case of CPP_DYCORE (since we haven’t implemented the reduce on the C++ side)
  • Clean up computation of sponge zone (use r_earth for zi/jfac) [already implemented by MB]
  • (Other bugs already reported to MB)

Impact on build process:

  • None

Impact on results:

  • Results change for bugfixes and some refactorings
  • Verification shows neutral impact w.r.t. original code

Involved code owners (with effort):

  • Michael Baldauf (2 days)

Technical Issues

Developments are ready and have been implemented into 5.0.

Technical Issues

Coding standards have been observed.

Technical testsuite passes using 3 compilers, 5 systems and in single/double precision.

4-eyes assurance has been done by Andrea Arteaga.

Testing

The modifications are used in regular COSMO-1 runs and visual feedback is that the boundaries of the model look much beter as compared to the standard version.

Standard verificiation has been done by MeteoSwiss and scores are neutral.

Documentation

Modifications have been discussed with Michael Baldauf and various occasions.

Model documentation does not require modification.

2016-01-31 Serialization POMPA finish Oliver Fuhrer (MeteoSwiss)

Description

In order to validate the C++ dynamical core against the Fortran version and in order to ensure that the two versions are in-synch (and to rapidly identify code regions which are no longer in-synch) we need to introduce a small set of comments that help serialize data for unit-test validation.

Impact on code:

  • New source file m_serializer.f90 (2500 lines of code)
  • Approximately 600 !$ser lines in code
  • 300 of these are in a separate subroutine in lmorg.f90 at the very bottom of the file
  • Files touched: fast_waves_rk.f90, fast_waves_sc.f90, hori_diffusion.f90, lmorg.f90, src_advection_rk.f90, src_relaxation.f90, src_runge_kutta.f90, src_slow_tendencies_rk.f90

Impact on build process:

  • If serialization is requested, source files require pre-processing with Python script

Impact on results:

  • None

Involved code owners (with effort):

  • Ulrich Schaettler (0.25 days, only inserting comments)
  • Michael Baldauf

Technical Issues

Finished and ready for delivery to SCA.

Technical Issues

These are only comments, so coding standard are fulfilled.

No technical testsuite necessary, since only comments.

4-eyes assurance trivial and done by SCA when integrating the comments.

Testing

Not required.

Documentation

Changes have been discussed and accepted by Ulrich Schaettler.

5.03 release 2015-06-01 2015-09-30 2015-12-02

The modifications in this version are grouped in the following categories and are documented in more detail in the Release Notes.

  • Changed Calling Sequence of Assimilation and Relaxation
  • Technical Changes in the Assimilation
  • Redesign of the 3D diffusion to improve stability
  • Implemented Interface to C++ dynamical core and serialization
  • Further Changes in the Dynamics
  • COSMO-ICON Physics
  • Technical Changes
  • Bug Fixes

More information to special tasks can be found below.

2015-01-31 Re-ordering of assimilation / relaxation POMPA finish Oliver Fuhrer (MeteoSwiss)

Description

Relaxation is part of C++ dynamical core. In the Fortran code the assimilation is done in between the dynamics and the relaxation. The reason for this is historical, since time-filtering – which is only used for LF dycore – is done in the same call as relaxation.

Impact on code:

  • Split organize_dynamics(yaction=’relaxation’) into organize_dynamics(yaction=’relaxation’) and organize_dynamics(yaction=’time-filter’)
  • New subroutine timefilter() in src_relaxation.f90 (which contains code for time-filtering)
  • Move section “Section 6.4: nudging” and “Section 6.4a: latent heat nudging (LHN)” and “Section 6.5: water budget” to after relaxation in lmorg.f90

Impact on build process:

  • None

Impact on results:

  • Results change
  • Verification is neutral w.r.t. original code

Involved code owners (with effort):

  • Ulrich Schaettler (0.5 days)
  • Michael Baldauf (0.5 days)
  • Christoph Schraff
  • Klaus Stephan

Technical Issues

Work done. Implemented in version 5.0.

Technical Issues

Coding standards have been observed.

Technical testsuite has been run using 3 different compilers on 5 different systems. It has been run in single/double precision and in CPU as well as GPU mode.

4-eyes assurance has been done by Xavier Lapillonne.

Testing

It is not expected that switching the assimilation and relaxation leads to huge differences in the results, since both are simply relaxing the fields against a reference on each timestep and switching the order of operations is only a second order effect.

The version with switched assimilation and relaxation is being used for the regular COSMO-1 runs at MeteoSwiss.

Verification results between the pompa code and the offfical COSMO 5.0 have shown neutral effects of these changes.

Documentation

The switch of order is only a very small change in lmorg.f90. Since the order of operations is not documented anywhere in the already existing documentation, there is no documentation to update.

The process documentation is ready for delivery.

2015-07-01 Increase of stability of the numerical diffusion scheme for 3D turbulence WG2 finish Baldauf (DWD)

Description

The 1D vertical diffusion (i.e. our standard diffusion scheme for T, p, qx and the velocity components) is unconditionally stable by the vertically implicit treatment.

However, the 3D extension for terrain-following coordinates suffers from numerical instability of the metric terms in tilted terrain as was pointed out by W. Langhans and O. Fuhrer.

A recent stability analysis by M. Baldauf indicates that a significant increase in stability may be achieved by using more terms in the vertically implicit scheme and by use of some off-centering for them.

3D diffusion (or 3D turbulence) is not relevant for the currently operational model applications in the COSMO consortium with resolutions in the range 2 ... 14 km. It is probably even not relevant for dx ~1 km (e.g. COSMO-1 at MeteoCH). But it is expected that 3D turbulence becomes important for sub-km model runs.

Status

The stability analysis for both the scalar and the vector diffusion is ready. A reviewed publication is under progress.

The coding work has been finished and mainly consists in
the completely rewritten subroutines 'explicit_horizontal_diffusion' and 'implicit_vert_diffusion_uvwt_3D' and updates of the subroutines 'complete_tendencies_tke', 'complete_tendencies_trcr' in 'src_slow_tendencies_rk.f90'.

The validity of this new discretization has been tested by comparisons with exact analytic solutions over steep terrain (see 'Documentation').

The new code is based on the current version COSMO 5.2 and is ready for implementation in COSMO 5.3.

Technical Issues

code written according to standards: fulfilled

4-eyes assurance: by ???

responsible person: Michael Baldauf

Testing

The main testing consists in comparisons with analytically available solutions (see 'Documentation'). These tests have been successfully performed.

Furthermore, single standalone runs with the operational COSMO-DE setup (2.8. km resolution) have been made. As expected, effects of 3D diffusion are quite small on this scale and will only be more prominent for much finer model resolutions. Nevertheless, the runs didn't show unusual behaviour of the new implementation.

Documentation

The theory of 3D diffusion is documented in
M. Baldauf (2005): The Coordinate Transformations of the 3-dimensional Turbulent Diffusion in LMK, COSMO-Newsletter no. 5.

The new development is described in the presentation
M. Baldauf: "Around the 3D diffusion: stability and testing",
given at the WG2/CELO meeting during the COSMO User Seminar, 05 March 2015 in Offenbach.

The newest test results, which show a very good agreement for the above mentioned code version, can be found in the document tests_of_3D_diffusion_Baldauf_v2.pdf.

2015-07-31 Consolidation of GRIB2 and usage at other centers WG6 finish Dörte Liermann, Ulrich

Description

With the earlier implementation of grib_api (use of local shortname concept, local use sections) it was not possible for centers /= DWD (WMO Code 78) to use GRIB2.

Modifications have been implemented therefore, which now allow all centers to run with grib_api (in io_metadata.f90):

  • remove local section before changing the center and set it again afterwards
  • set localInformationNumber in local section also for other centers
  • use key "backgroundProcess" instead of backgroundGeneratingProcessIdentifier

Also there have been changes to the grib2 definition files that have to be used together with grib_api. These changes are first implemented for the DWD definition files (definitions.edzw) of grib_api-1.13.1.

Some of these definition files are especially written for center=78 (DWD), e.g. local.78.def or grib2LocalSectionNumber.78.table. For other centers we provide a script, which creates links with the centers WMO number to the DWD files, e.g. for the center COSMO=250:

grib2LocalSectionNumber.250.table -> grib2LocalSectionNumber.78.table

local.250.def -> local.78.def

In this way all centers can use INT2LM (and COSMO-Model) together with grib_api and the DWD definition files.

Technical Issues

The modifications have been implemented in a pre-release of version 5.03, which has been given to MeteoSwiss for testing. This pre-release version has to work with grib_api-1.13.1 and the corresponding definition- and sample-files.

Technical Issues

Coding Standards: are fulfilled

Technical Test Suite: runs every day now by Mr. Jenkins at MCH for a GRIB2 MCH case.

4-eyes Assurance: implemented by D. Liermann, checked by U. Schättler

Testing

MeteoSwiss made tests with INT2LM and the COSMO-Model. Other centers can now also test with this version.

Documentation

A special COSMO Web Page for documenting GRIB2 and its implementation in INT2LM and the COSMO-Model is (still) under development.

2016-01-15 Radiation to GPU POMPA finish Xavier Lapillonne (MeteoSwiss)

Documentation (Presentation of Results, Model Documentation, External Documentation)

Provide specific information on availability of the following documentation required by the COSMO source code management rules:

  • internal product documentation within properly structured code
  • external product documentation: scientific documentation, User Guide and (possibly) implementation documentation
  • process documentation: documentation of the chages to the existing software for inclusion to the version history and the changes log-file.
2016-01-15 Re-ordering of microphysics POMPA finish Xavier Lapillonne (MeteoSwiss)

Description

In order to move all physical parametrizations into a single block (in order to increase memory locality) the microphysics should be shifted to the beginning of the timeloop.

In order to avoid multiple copies of field used in the physics an optional compile switch (#idef GSP_FIRST) is introduced to call the microphysics at the beginning of the physics. If at all possible, an additional namelist switch (instead of the macro) would be preferable for testing purposes.

Technical Issues

Done. Implemented in COSMO v5.0

Technical Issues

Coding standard have been respected.

Technical testsuite has been run using 3 different compilers and 5 different systems. It has been run in single/double precision and on CPU/GPU.

4-eyes principle assured by Oliver Fuhrer

Testing

The switched order version is used for the regular runs of COSMO-1.

The standard verification has been done by MeteoSwiss and has shown neutral results.

attached presentation

Documentation

No further documentation than process documentation is required. The move of the microphysics is simply a cyclic permutation of the operations that are being done on a timestep of the model.

5.02 develop 2015-02-01 2015-05-01 2015-05-21

This version contains mainly bug fixes and an update of the code to process radiances. More details can be found in the Release Notes.

This is only a DWD-internal development version, which will not be released.

5.01 release 2014-06-01 2014-09-30 2014-11-30

The following contributions have been implemented in COSMO-Model 5.1. More details can be found in the Release Notes

  • Dynamics (by M. Baldauf)
    • Targeted diffusion to avoid cold pools
    • Reformulation of divergence damping coefficients in the new fast-waves solver
    • Adaptation of Runge-Kutta dynamical core to SPPT (stochastic perturbation of physics tendencies)
    • Lateral Davies Relaxation
    • Cache-Optimization for fast_waves_sc.f90
  • Advection and Horizontal Diffusion of TKE (by U. Blahak)
  • COSMO-ICON Microphysics (by X. Lapillonne, U. Schättler, C. Köhler)
  • Stochastic Perturbation of Physics Tendencies: SPPT (by. L. Torrisi, C. Schraff)
  • Assimilation (by. C. Schraff, K. Stephan)
    • New option to assimilate Mode-S aircraft observations
    • Porting to Cray XC30 system
    • Changes to Latent Heat Nudging
  • Changes in the I/O (by. U. Schättler)
    • Modifications to read HHL and P from the initial file in GRIB2
    • Modifications because of missing vertical coordinate parameters in GRIB2
    • Modifications because of missing reference atmosphere parameters in GRIB2
    • Other GRIB2 and grib_api adaptations
  • Interface to the Radar Forward Operator EMRADSCOPE (by. U. Blahak)
  • Removal of Inconsistencies for the Tracers (by A. Roches, O. Fuhrer)
  • Single Precision Version (by S. Rüdiühli, O. Fuhrer)
  • Online Trajectory Module (by. A.K. Miltenberger, A. Roches, S. Pfahl, H. Wernli)
  • Technical Adaptations
    • Use of t_g instead of t_s for computing the modified transfer coefficients in the dynamics (by U. Blahak)
    • Checks for NaN in the main program (by O. Fuhrer)
    • hanges in the Restart Functionality (by U. Blahak)
    • Changes in reading Namelist Input (by U. Blahak)
    • Use of Single Column Model (by M. Raschendorfer)
  • Technical Changes and Bug Fixes
2013-12-20 GRIB2 and general vertical coordinates WG6 finish U. Schaettler

Description

INT2LM 2.0 and COSMO-Model 5.0 are now able to read and write model data with the GRIB2 format using the ECMWF grib_api.

Another change we plan when going to GRIB2, is the introduction of the new general vertical coordinate. This brings some changes in the way we run our operational models:

  • Instead of exchanging vertical coordinate (and reference atmosphere) between programs by using GRIB meta data, a 3D field has to be used by all programs. This field contains the information about the height of the model levels and we call it the HHL-field (height of half levels). This field could be considered as external parameter, but it changes, when the number of levels or their position in space is changed. It also changes, when the underlying orographie is changed.
  • The vertical coordinate parameters, which are necessary to compute the HHL field, are now available only in the INT2LM (which generates the HHL field), but not in the COSMO-Model or in postprocessing programs. But still these programs rely on the knowledge of these parameters.
  • Dealing with the "exchange" of the HHL field using an extra file is cumbersome in an operational production environment. And if also archiving of data is used, it is even more difficult to keep track of which HHL-field was used at which time.
  • In GRIB1, also the reference atmosphere parameters were coded as "vertical coordinate parameters" in the grid description section. In this way, every program reading these "vertical coordinate parameters" could compute the reference atmosphere (mainly the 3D field p0). In this way we only needed to exchange the pressure deviation (PP) between INT2LM and the COSMO-Model or within a COSMO Nudging cyle. Because of the grib packing (in GRIB1 we used a packing to 16 bits) and the corresponding precision loss, it was better to exchange this field than exchanging the whole pressure. But these reference atmosphere parameters are not available any more.

There are now some ideas how these problems can be handled. These ideas were discussed within WG 6:

  • About the usage of vertical coordinate parameters:
    After discussing the usage of the vertical coordinate parameters, it seems to be possible to remove them from the COSMO-Model (and also from other programs which still use them). It really seems to be that their usage up to now is not correct. Especially when they are used for example to define the index k of the layer which is in about 850 hPa. Because this would be related to height above sea level. But the index k is also used above the mountains. So these things really have to be replaced by using the height information in hhl.
  • About the usage of reference atmosphere parameters:
    The computation of the reference atmosphere p0 is necessary, if we transfer only the pressure deviation between programs (e.g. from INT2LM to COSMO-model or within the data assimilation cycle). This can be avoided, if we would transfer the full pressure. This has not been done up to now, because of the grib-packing to 16 bits. For the full pressure this is not enough precision. But if we would pack the full pressure to 24 bits, this would be ok. This is now used between ICON model and the corresponding data assimilation without problems. So our suggestion here would be to replace the pressure deviation in all cases by full pressure, but packed with 24 bits at least between INT2LM and COSMO and within the COSMO data assimilation. COSMO forecast outputs still could be packed to 16 bits. Of course the COSMO-Model still would need to compute the reference pressure, because it works with the prognostic variable pressure deviation. For that we have to implement new Namelist parameters to specify the reference parameters also in the COSMO-model (as is done in INT2LM). Please note that also in INT2LM we have to use a reference atmosphere, because we only want to do interpolations on the pressure deviation. But it is not necessary to have the same reference atmosphere in INT2LM and in the COSMO-Model, when transferring the full pressure. Also other postprocessing programs could construct a reference pressure "of their own", if necessary.
  • About the usage of HHL:
    With the new general vertical coordinate it is necessary to transfer the HHL field between the programs (INT2LM => COSMO, within COSMO assimilation, COSMO => postprocessing), because this cannot be done any more, when the vertical coordinate parameters are no more available. The possibility to do this is implemented in INT2LM 2.0 and COSMO-Model 5.0. The 3D HHL field can be stored (and read) from an external GRIB file, even in full (64 bit) precision right now. For operational productions it is a challenge to take care of different HHL fields, if you (for example) modify the horizontal or vertical grid or the underlying orography of an application. And with all the licence takers there are very many of different applications now. Therefore there is a wish for a more easy way of handling that. Here we are considering the following solution (as an alternative to external HHL files): The HHL file can also be written to the laf-files to be transferred between INT2LM and COSMO-Model and within the data assimilation cycle. It is already written to the constant file lfff00000000c for every forecast. But in order to let the data amount not grow to infinity, it must be packed. Again, a packing rate of 24 bits would be enough, while 16 bits would be too low. In this way the size of the laf-files would be larger, but the handling of operational forecast chains would be easier.

This is something we will implement and test here at DWD during November / December

Status of the work

08. November:

  • INT2LM 2.0 and COSMO-Model 5.0 have been implemented but the possibility to use GRIB2 with the new general vertical coordinate is very difficult to use.

15. November:

  • The issues have been discussed within WG 6 and some ideas were formulated to implement a better approach (see Description)
  • Work has started to implement and test these ideas
  • Tests should be finished during December 2013

06. December:

  • The vertical coordinate parameters have been eliminated from the dynamics and the diagnostics
  • An alternative has been implemented to determine the levels klv950, klv800, etc. (index of the level near the 950 hPa, 800 hPa, etc)
  • Work on the assimilation and the physics (radiation, convection) is still ongoing
  • At DWD, the decision has been taken to introduce GRIB2 only after the migration to the new computing system, somewhen in early Summer 2014. Therefore work on the GRIB2 issues will be delayed to next year.

14. April 2014:

  • INT2LM and the COSMO-Model have been adapted to exchange the HHL-field with the laf-files and the full pressure P with the lbff-files in a higher precision. Also the usage of the vertical coordinate parameters has been re-visited. The "real" vertical coordinate parameters are now passed in GRIB2 using the "typeOfSecondFixedSurface" scaledValue and scaleFactor meta data. The modified code will be put to the parallel production suite at DWD early May.
  • The new versions are still special DWD versions: INT2LM 2.0.2 and COSMO-Model 5.0.2
  • Most of the work still has to be documented.

12. May 2014

  • The new versions of INT2LM and the COSMO-Model are running in the parallel production suite of DWD using GRIB2
  • These new versions are running in a pre-operational suite of DWD on the new computer system of Cray still using GRIB1. They will run operational, when the new computer system goes "into production" (end of May).

Technical Issues

Coding Standards: Coding standards are fulfilled

Technical Test Suite: the new versions passed technical tests.

4-eyes Assurance: The changes have been implemented by Uli Schaettler and have been cross-checked by DWD colleagues also involved in grib_api and GRIB2 implementation (Helmut Frank, et al.)

Testing

The new (DWD special) versions INT2LM 2.0.2 and COSMO-Model 5.0.2 are running in the parallel production suites. Verification results will be available end of May / beginning of June.

There were 2 different parallel runs, where DWD special versions (COSMO-Model 5.0.1.1, 5.0.2.1 and INT2LM 2.0.1.1, 2.0.2.1) were tested. These versions contain the changes necessary for working with grib_api using GRIB1 and / or GRIB2.

  1. Parallel run from 06.02.2014 - 05.03.2014:
    • Operational: COSMO-Model 5.0 and INT2LM 2.0 running with DWDLIB, input and output in GRIB1
    • Parallel Suite: COSMO-Model 5.0.1.1 and INT2LM 2.0.1.1 (DWD special versions) running with grib_api, input and output in GRIB1

The following pictures show the COSI Index for forecast days 1, 2 and 3: It can be seen that the two different runs are nearly identical. The differences that occur are due to different start times (and different cut-off times) for the operational and the parallel suite at DWD.

  1. Parallel run from 06.06.2014 - 11.06.2014:
    • Operational: COSMO-Model 5.0.2.1 and INT2LM 2.0.2.1 (DWD special versions) running with grib_api, input and output in GRIB1
    • Parallel Suite: COSMO-Model 5.0.2.1 and INT2LM 2.0.2.1 (DWD special versions) running with grib_api, input and output in GRIB2

Again, the COSI index for forecast days 1, 2 and 3 is shown and it can be seen that there is no significant difference.

Documentation

A special web page for the COSMO Web is under construction. It will be extended in the next weeks.

2014-01-01 Microphysics: Improved supercooled liquid water content WG3a finish A. Seifert / U. Blahak

Description

To improve the forecast of aircraft icing, it is helpful that the microphysics schemes have some predictive skills concerning the super-cooled liquid water content in mixed-phase clouds. Currently, this is drastically underestimated in the operational COSMO 1-moment schemes (at the same time overestimating ice and snow content), and model based super-cooled liquid cannot be used for predictive purposes.

The aim of this work is therefore to identify the cause(s) of the underestimation and, if possible, improve the situation, without degrading the precipitation forecasts.

A better prediction of supercooled liquid can also influence the cloud radiative feedback, because water droplets have very different optical properties compared to ice particles.

Status

The cause for underestimation of super-cooled liquid within the framework of the COSMO 1-moment schemes has been identified and it is a too efficient Bergeron-Findeisen-process. The reasons behind this are:

- Too aggressive ice initiation at comparatively warm temperatures T > -10 deg C: IN are a simple function of temperature, and too much IN are assumed at these temperatures

- Quite aggressive drop freezing, initiating even more ice.

- Too coarse vertical resolution in operational setups within cloud layers, therefore no ability to simulate the often observed super-cooled liquid water layers at the top of stratus clouds.

These problems could be mitigated by reducing the IN(T)-function at higher temperatures, by reducing the freezing probability function for droplets at higher temperatures, and by introducing the new parameterization of Richard Forbes (ECMWF) of super-cooled liquid layers at the top of stratus clouds.

Technical Issues

Methodology and code has been developed by F. Rieper (DWD) and is available in a test version.

The code has been cross-checked by Carmen Köhler and has been implemented in Version 5.01

Testing

The effects of the changes have been tested by approx. 20 case studies using COSMO-EU and observational data (retrievals of cloud phase and SLWC) from the Lindenberg cloud-net facility. All cases showed more or less improvement of SLWC in the model, some of them very clear. Overall, the changes were beneficial.

Month-long experiments (Jan. 2013, June 2013) have been conducted and showed somewhat positive impacts (reduction of RMS) in the winter period for pressure and temperature, and slight improvements of precipitation scores. The summer period (convective precipitation) behaved more or less neutral in COSMO-EU. Note that there have been no model changes in the convection parameterization! All in all, the long-term tests demonstrated that there are no negative side-effects on the operational COSMO-EU NWP at DWD, on the contrary, there is an improvement especially in winter time.

Documentation

The methodology and the results of the case studies and long-term tests have been presented at the COSMO General Meeting 2013. The presentation is available from Ulrich Blahak (DWD).

Model Documentation: has to be adapted.

External Documentation: the parameterization of Richard Forbes is documented in a journal paper.

The implementation and testing of the supercooled liquid water representation in COSMO-EU has been submitted by Felix Rieper and Uli Görsdorf (DWD).

2014-02-05 Single precision version of COSMO (WG6) POMPA finish Oliver Fuhrer

Description

  • The COSMO Model performs all computations in double precision and has been developed solely in double precision over the past years. Due to the fact, that the model is severly memory bandwidth limited on several hardware architectures, switching to single precision has been shown to speed-up critical parts of the code to up to a factor of x2. It is thus very attractive to re-consider whether using double precision for all computations is a strict requirement and provide a single precision version of the model to interested users.
  • In principle the model can be switched to single precision using the constant ireals. Since this has not been used for many years now, careful testing is required to ensure the correctness of results in all parts of the code in case ireals is swichted to single precision
  • It is the goal of this development to deliver the modifications required to run the model in single precision and integrated them into an official version, so that any interested user can use the single precision option.

Status

The single precision version is on the desk of the SCA and is pending for introduction into model version 5.1

  • Introduction into 5.1 proposed to SMC
  • Version based on 5.0 official version delivered to SCA
  • Verified on a module-per-module basis as well as with 3 months of COSMO-7 and COSMO-E forecasts
  • Used for PhD thesis of Sebastian Schemm for production runs (with dynamics and microphysics only)

Technical Issues

The code modifications are documented in the COSMO Newsletter 14 (Chapter 5.1).

  • Coding standards respected (mostly local modification of "5.0" to "5.0_wp")
  • Technical testsuite passed
  • 4-eyes assurance by Oliver Fuhrer and SCA (original code developed by Stefan Ruedisuehli)
  • Code responsible person Oliver Fuhrer

Testing

The results of all testing is documented in the COSMO Newsletter 14 (Chapter 5.1). Difference in double precision mode are only allowed within rounding errors of the calculations. But they are expected due to reordering/rewriting of certain operations to be safer in single precision mode. Results in single precision mode have been be verified extensively on a module-per-module basis and for real-case applications (3 months of COSMO-7 and COSMO-E). It is not guaranteed that single precision will work for all model setups and users and each user will have to carefully consider the precision requirements of his/her application.

Documentation

Presentation at the General Meeting in Sibiu (2013) and at previous POMPA parallel sessions and COSMO User Seminars.

The Article in the COSMO Newsletter n°14 documents how to use the single precision version for users who are interested. For users which will remain with double precision, there are no implications.

2014-02-05 Online Trajectory Module WG6 finish Annette Miltenberger (ETH) et

Description

A module to calculate online trajectories has been implemented into the nonhydrostatic limited-area weather prediction and climate model COSMO. Whereas offline trajectories are calculated with wind fields from model output, which is typically available every one to six hours, online trajectories use the simulated resolved wind field at every model time step (typically less than a minute) to solve the trajectory equation. As a consequence, online trajectories much better capture the short-term temporal fluctuations of the wind field, which is particularly important for mesoscale flows near topography and convective clouds, and they do not suffer from temporal interpolation errors between model output times.

Status

21. November:

the WG6 coordinator has been informed about the ongoing activity

28. November:

the proposed activity has been accepted by TAG

11. December:

presentation to SMC

Technical Issues

  • The COSMO standards are respected
  • This development is a simple diagnostic tool and doesn’t affect the prognostic equations of the model. The code passes the MeteoSwiss technical test suite
  • The code has been developed by Annette Miltenberger and colleagues. Anne Roches reviewed the code in details. She also has rewritten some parts to ensure â€ÂCOSMO quality levelâ€Â. These parts have been re-examined by Annette Miltenberger and Stephan Pfahl
  • Stephan Pfahl, senior scientist at ETH in the Atmospheric Dynamics group and co-author of Miltenberger et al. (2013), will be the responsible person

Testing

As a first application of the new COSMO-model module, an Alpine north foehn event in summer 1987 has been simulated with horizontal resolutions of 2.2, 7 and 14 km.

Documentation

2014-03-31 Optional targeted diffusion to avoid cold pools in narrow valleys WG2 finish Baldauf (DWD)

Description

Around 06. Dez. 2013, a strong and unrealistic cool down in a narrow Alpine valley occured in the COSMO-DE model setup at DWD.

(this caused even a model crash in one of the COSMO-DE ensemble members in the parallel routine)

Similar problems have been reported by MeteoSwiss, too.

The upwind advection operator of 5th order causes such cold pools.

There exist several solutions for this problem:

1.) use the 3rd order advection operator (but this probably not accurate enough for convection-permitting runs (?))

2.) It seems to occur less frequently with the dynamical bottom boundary condition (ldyn_bbc=.TRUE.) (but the reason is not clear)

3.) avoid this undershooting by a targeted diffusion like in ICON (G. Zaengl) (which exactly cures the artificial behaviour of the advection operator)

4.) the current available limiter in the horizontal advection operator could be used, too. However, in the current form it takes more computation time

and (as reported by MeteoCH) it cannot cure every cold pool problem.

The 3rd item in fact cures the problem and changes only the few grid cells where a cold pool occurs.

It is highly a efficient method (acts at most in the lowest 3 layers)

This targeted diffusion may have a very small impact to results. However, in most simulations, no critical grid cell will be found and consequently results will not be changed.

Status

The targeted diffusion to avoid cold pools has been implemented and is ready for COSMO 5.1.

Technical Issues

code written according to standards: fulfilled

4-eyes assurance: by Oliver Fuhrer

responsible person: Michael Baldauf

Testing

The 'targeted diffusion' cured the above described cold pools.

Extensive numerical experiments at DWD for both COSMO-DE (2.8 km) and COSMO-EU (7 km) setups have been done.

In the attached presentation, verification results of this action (together with the 'reformulation in the calculation of the divergence damping coefficient' and the 'adaptation of RK for stochastic physics')

are shown: the results are neutral (as expected).

Documentation

A new section 8.4.3 is ready for the COSMO Sci. Doc part I.

(it will be available with the next release of this document).

User's guide: no adaptation necessary

process documentation (history/changes log file): is updated

2014-03-31 Remove hacks in the tracer module WG2 finish Fuhrer, Roches (MeteoCH)

Description

When implementing the new Tracer Module (Roches, Fuhrer (2013) COSMO Tech. Rep.) several decisions had to be made concerning specialized treatment of tracer species. In the first implementation of the Tracer Module, those had been treated with the Metadata functionality of the Tracer Module. However the question arises, if some (or the most) of these special treatments are still necessary.

In particular, the following special treatments (‘hacks’) should be removed (from Roches, Fuhrer (2013) COSMO Tech. Rep.):

Fixes concerning the Leapfrog dynamical core:

CLP_10E-12: clip qi to zero, if qi < 10-12

Fixes concerning the Runge-Kutta dynamical core:

ADD_CLP_ADV: add clipping for sedimenting moisture species (qr, qs, qg) at the end of the advection routine.

BD_0GRAD_FORCED: for the species qi, qr, qs, qg either boundary values are read from a file or the boundary condition (BC) grad=0 is used. In the original code version one of these is done in any case despite the fact, that one can prescribe also other boundary conditions.

DAMP_FORCED: For precipitating species, Rayleigh damping is done in any case, even when a grad=0 BC is prescribed.

It is quite difficult to decide, if these measurements are still necessary (they have often been implemented during the development phase and sometimes accidentally remained in the code, even when they are not longer necessary). This is in particular the case if the original developer of the code is not longer available.

Therefore, one needs real case test runs to decide, if anything strange happens or if the forecast quality suffers.

Status

hacks which should be removed are identified.

Code is ready for COSMO 5.1

Technical Issues

4-eyes Assurance: Oliver Fuhrer, Anne Roches

Testing

Tests during a longer period have been done at MeteoCH (Roches, Fuhrer).

The documentation of these tests is available. Results are neutral.

Documentation

The test results are documented in a report

A. Roches, O. Fuhrer: SYNOP verification of the inconsistencies ("hacks") present in COSMO for the mcirophysics tracers, 26 Nov. 2013

The whole tracer module is described in A. Roches, O. Fuhrer (2012) COSMO technical report no. 20.

Sci. Doc. part I: no changes necessary

User's guide: no adaptation necessary

Process documentation (history/changes log file): not yet available

2014-04-16 stochastic physics KENDA finish Torrisi (CNMCA)

Description

Introduction of stochastic perturbation of the physics tendencies (SPPT).

Its application will be optional, selectable by a namelist switch.

For an outline of the basic method, see also:

../../consortium/generalMeetings/general2012/wg1-kenda/torrisi_stochastic_physics.pdf

Status

Previous questions on how to perturb which tendencies (e.g. microphysics) have been sorted out.

Namelist switches have been added to also perturb qc, qi resp. qs, qr tendencies

Revised SPPT version (with i.e. removal of erroneous perturbations of Coriolis term) has been tested over 1 month; SPPT gives positive results

In order to allow for applying SPPT in a (rapid) DA cycle without destroying the temporal correlations of the random fields: an option has been implemented recently to make all random fields in subsequent model runs reproducible.

Originally, a minor technical modification to avoid using vertical coordinate parameters (which are not available any more with Grib-2 input) has been planned. However, recent communication with Uli Schaettler revealed that a modification is going to be implemented in propriety DWD Version V5.0.2. in mid / end of May which makes the vertical coordinate parameters available even for Grib-2 input. A more uniform approach will be implemented thereafter nevertheless to avoid the use of these parameters everywhere in the (physics and data assimilation parts of the) code.

The bottom line is that the current code of SPPT is the final candidate to enter in V5.1 without any further changes.

Technical Issues (Coding Standards, Technical Test Suite, 4-eyes Assurance)

  • 4-eyes principle: written by Lucio Torrisi (CNMCA), checked by Daliah Maurer (MCH), partly checked by Christoph Schraff (DWD)
  • Coding standards fulfilled

Testing (Single Test Cases, Experiments)

Testing has shown small, but positive impact:

- ../../consortium/generalMeetings/general2013/wg7-kenda.htm : talk by Andre Walser, for COSMO-E forecasting component, showing small but positive impact (larger positive impact than from using perturbed parameters, as done in COSMO-DE-EPS)

- ../../consortium/generalMeetings/general2013/wg1.htm : talk by Daniel Leuenberger, in LETKF assimilation with COSMO-2, showing small but positive impact

- ../../consortium/generalMeetings/general2012/wg1-kenda/torrisi_stochastic_physics.pdf : talk by Lucio Torrisi, in COSMO-ME forecasting component, showing small but positive impact

Recent Testing has been performed at MeteoSwiss for COSMO-E and has been reported at the COSMO-User Seminar.

Documentation (Presentation of Results, Model Documentation, External Documentation)

Inline version history is written.

Changes log-file is availableThis includes a description of all the new namelist parameters.

Update of the COSMO User's Guide: Shall be postponed, since Uli Schaettler is going to change the format of the namelist tables in this document. When the new format is being implemented, the new namelist parameters will be added, based on the changes log-file. This is planned to be done before V5.1 will be available.

Scientific documentation: A short section has been written (Lucio Torrisi)

The scheme has been outlined in a talk by Lucio Torrisi held at a 'Stochastic Physics' workshop at DWD on 26 Nov. 2013.

2014-04-16 interface for radar obs operators KENDA finish Blahak (DWD)

Description

Only technical changes:

Add interface to radar observation operators; this in particular includes the calls for the cpu time measurement.

Use of ifdef e.g. for the call to the radar obs operator and even the cpu time measurement.

Status

All is ready, code has been handed to Uli Schaettler

Technical Issues

  • 4-eyes principle: written by Uli Blahak, partly checked by Christoph Schraff and Yuefei Zeng (DWD)
  • Coding standards fulfilled

Testing

Works technically.

Documentation

Modification comments included in code;

no external documentation required.

2014-06-30 Adaptation of the RK dynamical core for stochastic physics WG2 finish Torrisi (CNMCA), Baldauf (DWD)

Description

In the current development of the stochastic physics packages, it his desired to perturb only physical tendencies and not dynamic tendencies

(i.e. no perturbations of advection, fast waves or Coriolis forces).

Furthermore, one targets at a proper perturbation of terms, which are a the border between physics and dynamics (in particular latent heating).

This development probably must be done in several steps.

The first step is a simple shift of the call of the Coriolis term in src-runge_kutta.f90.

This will be go into COSMO 5.1.

Other steps concerning the latent heating will follow.

Status

Programming work for COSMO 5.1 is done.

Technical Issues

code written according to standards: fulfilled

4-eye principle: Lucio Torrisi

responsible person: Michael Baldauf

Testing

From a theoretical viewpoint there is no objection in shifting the call of the Coriolis term from the current position behind the call of the vertical implicit diffusion (neither in changing stability nor accuracy properties).

Several stand alone runs have shown that the position of the 'call coriolis' has a negligible influence on the results, as expected (Baldauf).

Tests in two longer standing tests with COSMO-DE and COSMO-EU didn't show any significant influence to the scores

(tested together with the 'targeted diffusion to avoid cold pools' and 'Reformulation in the calculation of the divergence damping coefficient').

Documentation

Change of position in 'call coriolis': this very small change needs no extra documentation.

(Possibly there will be a larger common documentation on the whole stochastic physics model changes)

Sci. Doc part I: update of section 8.1.1 done (available with the next release)

User's Guide: no change necessary

process documentation (history/changes log file): is updated

2014-06-30 Turbulence: Implementing TKE-advection for TURBDIFF WG3a finish Blahak

Description

TKE-advection can be activated by choosing lprog_tke=.TRUE.. This is being working for years in the framework of the Runge-Kutta Core (l2tls=.TRUE.), if one of the alternative turbulence schemes are selected, which had been introduced mainly for LES purposes (itype_turb=5...8). In the course of a stepwise generalization of the standard Raschendorfer scheme (TURBDIFF, active for itype_turb=3) TKE-advection should be possible for this scheme as well. Thus this task can be regarded as a part of "Implementing 3D-extionsions for TURBDIFF". The implementation should be along the lines of tracer advection and thus be applicable for semi-Lagrangian advection, flux-form density based advection (Bott et al.) or the traditional formulation with divergence correction. Since the standard turbulence scheme employs a prognostic equation of the turbulent velocity scale q (square root of the turbulent stress tensor trace) and not of TKE (being half of the squared q), q is going to be advected, where it is TKE for the LES schemes. Both of them are contained in the array 'tke', which is defined on half levels. In case of the flux form advection, we do it without a separate density advection performed at half levels for the time being. In order not to apply the optional exponential time filter for q (controlled by the parameter 'tkesmot') not to the advection tendencies, an additional array for the advection tendencies of q is used.

We expect benefits mainly for higher horizontal resolution. Regarding to the forecast of eddy dissipation rate (EDR) for aviation some further benefit is possible, in particular if the additional scale interaction terms related to SSO wake production, separated horizontal shear eddies or convective currents are considered in the prognostic TKE equation.

Status

First implementation ready in a test code including also horizontal shear production and horizontal diffusion (applicable for the standard scheme). The test code is based on COSMO version 5.0 and has been tested to work formally correct. The modifications are going to get part of version 5.1 to be available for more rigorous testing for high resolution model runs within the whole WG3a community.

Technical Issues (Coding Standards, Technical Test Suite, 4-eyes Assurance)

The code modifications are along the coding standards and they have been inspected by M. Raschendorfer and J. Förstner. The implemented extensions are optional and allow for a more stringent selection of 3D-aspects for the standard turbulence scheme. Their operational benefit will be tested afterwards.

Testing (Single Test Cases, Experiments)

The extensions have been tested by U. Blahak. Technical correctness was confirmed by a simple idealized test. Meteorological tests have been performed for a single real test case (COSMO-DE) and for an idealized LES-like setup with a much smaller grid spacing. Longer experiments are needed for investigating possible positive impacts already with the currently operational model resolution, but not undertaken so far. All tests are documented in tkeadv.pdf.

Documentation (Presentation of Results, Model Documentation, External Documentation)

A draft documentation of the implementation and preliminary results are described in a LaTeX document: tkeadv.pdf

Longer experiments are needed for investigating possible positive impacts already with the currently operational model resolution, but not undertaken so far.

2014-06-30 Implementation of a unified COSMO-ICON microphysics WG3a finish Köhler / Fuhrer / Lapillonn

Description

The unified COSMO-ICON model microphysics includes different changes conducted by Felix Rieper and Günther Zaengl: Cloud ice sedimentation, an alteration in the sticking efficiency of cloud ice, the treatment of supercooled liquid water vapor, the reduction in the freeezing rate of rain and some bug fixes related to the values of physical parameters. These changes have been implemented and can be controlled by switches in the code. Default is false. The code will be adopted from ICON, where it is already written in the block data sturcture.

Status

The code is ready in a test version and is being tested for real cases.

Technical Issues

Coding Standards, Technical Test Suite, 4-eyes Assurance

The code has been implemented along the coding standards and all modifications have been checked by at least one additional persson.

Testing

Single Test Cases, Experiments

The new common microphysics module has been tested within the ICON framework with some remaining problems in the ICON stratosphere, when running the supercooled liquid water version. A comparison using the operational setup at MeteoSwiss along a 15 days period showed only minor differences.

Documentation

Presentation of Results, Model Documentation, External Documentation

A short description of the main modifications and the related NAMELIST-switches is in cluded in a document of C. Köhler. A 1st-verification of the new code has been performed by MeteoSwiss for a 3-week period starting at April 12 2014. In this parallel experiment all the new development (except some bug fixes) has been switched off. Thus mainly the technical adaptations (e.g. the code in block-data structure) has been inspected. As expected, the verification results are neutral.

Now also verification results from DWD's experiments with COSMO-EU and COSMO-DE are available.

2014-12-31 Turbulence: 3D-extensions for TURBDIFF within the concept of scale separation WG3a finish Raschendorfer / Blahak

Description

So far, the standard Raschendorfer-scheme (TURBDIFF, active for itype_turb=3) is based on the closed 2-nd order equations for turbulent statistical moments, which uses a prognostic equation for TKE (and in future also optional prognostic equations for scalar variances - cf. "extension to the TKESV configuration") and a system of diagnostic linear equations for the remaining 2-nd order moments. This all together is solved in horizontal boundary approximation HBLA similar to the classical Mellor/Yamada scheme, what makes it to be a pure single column (SC) scheme. We are now aiming to extend this scheme towards a 3D-scheme that can be applied for the targeted convection-permitting model resolution without losing its applicability for coarser model resolution.

For a first step we want to treat the prognostic TKE-equation as a 3D-equation, considering full 3D shear-production, advection and diffusion of TKE, where the remaining linear system is still solved in HBLA except the fact that the vertical shear forcing term is substituted by the 3D-term. The arising horizontal momentum flux densities are expressed by extending the flux gradient representation of the SC solution to the horizontal directions employing the resulting diffusion coefficients as isotropic properties. The same representation is also used for horizontal diffusion of prognostic variables (including TKE).

In a second step we want to include the separated horizontal shear mode that has been introduced before as an optional scale-interaction production term in our TKE-equation. For that purpose, this production term is treated as an sink term for the separated horizontal shear mode being balanced by horizontal shear related to horizontal grid scales. A derived additional horizontal diffusion coefficient can be added to the isotropic turbulent one for calculation of the overall horizontal diffusion.

We further want to modify the parameterization of the turbulent master length scale to be valid also for grid cells with a vertical dimension larger than the horizontal one.

For controlling the options, we use the NAMELIST switch l3dturb that has already been introduced for the alternative turbulence schemes for LES purposes (itype_turb=5...8) and the selector itype_sher:

l3dturb=.TRUE.: horizontal shear and horizontal diffusion active (also for itype_turb=3)

itype_sher=1: using isotropic turbulent diffusion coefficients and related shear production only

itype_sher=2: using the separated horizontal shear as an additional TKE source

itype_sher=3: considering also the additional horizontal diffusion by the separated horizontal shear mode

The activation of TKE-advection is controlled by the switch lprog_tke, similar as for the LES turbulence shemes (cf. "Implementing TKE-advection for TRUBDIFF"). Note that both, TKE-advection and horizontal diffusion of all prognostic variables (including TKE) is only provided, if the Runge-Kutta Core (l2tls=.TRUE.) is active.

We expect benefits along frontal zones and along steep orography with increasing significance for increased horizontal model resolution.

Status

First implementation ready in a test code including also TKE-advection (applicable for the standard scheme). The test code is based on COSMO version 5.0 and has been tested to work formally correct. The modifications are going to get part of version 5.1 to be available for more rigorous testing for high resolution model runs within the whole WG3a community.

Technical Issues (Coding Standards, Technical Test Suite, 4-eyes Assurance)

The code modifications are along the coding standards and they has been inspected by U. Blahak. The implemented extensions are optional and allow for a more stringent selection of 3D-aspects for the standard turbulence scheme. Their possible operational benefit (even for the currently operational model resolution) will be tested afterwards.

Testing (Single Test Cases, Experiments):

Technical correctness has been checked by U. Blahak (cf. tkeadv.pdf). Further meteorological testing is required with special attention to higher horizontal resolution. An additional uncertain scaling parameter for the description of the separated horizontal shear mode can perhaps be estimated by fitting kinetic energy spectra for high resolution runs.

Documentation

Presentation of Results, Model Documentation, External Documentation

The whole extended scheme will be documented as soon as the common turbulence module for COSMO and ICON is ready. The 3D-extension will not yet be used operationally and has been implemented in order to facilitate test runs with this 3D-extionsion of the operational scheme. Explainations of the needed NAMELIST-switches can be taken form the "descrciption" section.

5.00 refVersion 2012-07-01 2012-12-21 2013-11-08

The contents of COSMO-Model 5.0 has been accepted and approved by the COSMO Steering Committee at its meeting during the COSMO General Meeting in Sibiu in September 2013. Since then there have been only some technical changes and updates.

COSMO-Model 5.0 now is the Reference Version of the COSMO Consortium.

COSMO-Model 5.0 will be distributed to all COSMO-partners during November 2013.

4.30 test 2013-10-11 2013-11-01 2013-11-08

This version contains the very last technical changes and fixes for the new release COSMO-Model 5.0.: Release Notes

This version has been distributed to all COSMO-partners, the CLM Community and the COSMO-ART group for further testing on November 08th.

It will be distributed to all Licence takers and other partners in the next weeks.

4.29 test 2013-08-12 2013-09-30 2013-10-02

This version contains a unification of the COSMO and the MESSy tracer structures. Many of the "ifdef MESSY" constructs could be avoided now.

In addition, there are a few other technical changes and bug fixes (see Release Notes)

This version has been distributed to all COSMO-partners, the CLM Community and the COSMO-ART group for further testing on September 26th

4.28 test 2013-03-01 2013-06-14 N/A

The major developments of this version are documented in extra entries below.

Besides there have been the following adaptations (see the Release Notes for further documentation):

  • Again, a bug had to be fixed in the Runge-Kutta dynamics, option itype_fast_waves=2: Use of time level nnow (instead of nnew) for the moisture variables in the water loading contribution of the buoyancy.
  • Exchange of wadvt in the case ldyn_bbc=.TRUE.
  • Dynamics:
    • 3D divergence damping should work properly now due to the correct calling of the subroutine l_calc_lhs_at_1st_RKstep.
    • Adaptation of the dynamical bottom boundary condition to the newer formulation of the buoyancy term and a small bug fix in the use of dw_dt_slow (changes in the results are only expected, if ldyn_bbc=.TRUE. or the internal switch l_3D_div_damping is set to .TRUE.)

This new version has been distributed to all COSMO-Partners, the CLM Community and the COSMO-ART group for further testing on July 15th.

2012-12-13 optional new QC check for surface pressure against lateral BC fields WG1 finish Schraff (DWD)

Description

New option to add a quality control check for surface pressure obs against the fields that provide the lateral boundary fields. At DWD, this means checking against interpolated GME fields.

New namelist parameter 'qcflbcp': scales QC theshold for check against COSMO fields to obtain threshold for new check.

Technical Issues

It is coded and tested in V4_22, and ported to V4_27.

It is part of the task 'modular observation operators for existing obs types' (see KENDA list), and is being submitted together with that task.

Technical Issues

Coding Standards : fulfilled.

Technical Test Suite : -

4-eyes Assurance : together with task 'modular observation operators for existing obs types' (see KENDA list), partly Andreas Rhodin and Uli Schaettler

Testing

Single Test Cases :

- target met: very positive results in 3 cases with series of erroneous pressure obs from a single buoy

- target met: no negative impact in first Christmas storm 1999 (no further rejection of good data)

Experiments:

- target met: 1-month test period (April 2012) with neutral results.

Documentation

Presentation of Results : see talk at COSMO GM 2013 in Lugano, WG1 Parallel Session

Additional results because of recent problems in operational COSMO-EU.

Model Documentation : in-line documentation

External Documentation : being written

2013-05-31 Implementation of grib-api WG6 finish Schaettler (DWD)

Description

Since some years, the new GRIB standard (GRIB2), defined by WMO, is ready to be used. ECMWF developed an application programmers interface (grib_api), which can be used within programs to read, create and manipulate grib messages for GRIB2, but still also for GRIB1. At DWD it has been decided to use grib_api as the official GRIB library in the future. Also the COSMO partners agreed to use grib_api. Therefore, grib_api will be implemented in the COSMO-Model and the INT2LM in the next few months.

At DWD the implementation is based on using the concept of the shortnames and the tables and definitions provided by grib_api. These tables and definitions have to be coordinated with the COSMO-partners.

Status

Work has started with delay in March 2013 to implement grib_api. It is implemented in addition to the DWD Grib-library, so the user can choose, whether Grib1 shall be written using the DWDLIB or whether the grib_api (for Grib1 or for Grib2) shall be used.

27.05.13: First implementation finished, Functionality tests started; General vertical coordinate still missing.

28.06.13: Added general vertical coordinate (new level type 150). But there are still issues with grib_api. Need Version grib_api 1.11.0 to process the new keys for the general vertical coordinate.

12.07.13: Several tests have been done and finished. There are still problems with writing the general vertical coordinate in ensemble mode; but new model version released now anyhow (for testing)

Technical Issues (Coding Standards, Technical Test Suite, 4-eyes Assurance)

Coding Standards: have been met

Technical Test Suite: a DWD-pre-implementation of the test suite has been run.

  • Restart runs: are ok
  • Reproducibility:
    • COSMO-EU: results can be reproduced with different domain decompositions
    • COSMO-DE: results are NOT reproducible on the NEC-SX9, but on the IBM. This seems to be a compiler problem on the NEC-SX9

4-eyes Assurance: code is cross-checked by DWD colleagues with grib_api experience

Testing (Single Test Cases, Experiments)

27.05.13: Functionality tests started, but will go on during June 2013.

28.06.13: Functionality tests using grib_api are positive.

16.07.13: The new releases of INT2LM and the COSMO-Model are put to DWD's parallel suite.

Experiments will be started soon using grib_api and GRIB2

Documentation (Presentation of Results, Model Documentation, External Documentation)

A COSMO-web page has been set up to document the implementation and GRIB2 usage. This page is not yet visible (still work in progress). It will be enhanced in the next few weeks.

User Guide has been updated.

2013-11-08 modular observation operators for existing observation types KENDA finish Schraff (DWD)

Description

  • observation operators and quality control in separate modules with clean interfaces, in order to be included in the 3DVAR/ LETKF package
  • this is for existing obs types: synop, aircraft, buoy, radiosonde, PILOT (including wind profiler, RASS, radar VAD), GPS ZPD/IWV

Status

It is coded and tested in V4_22, and ported to V4_27.

It is part of the task 'optional new QC check for surface pressure against lateral BC fields' (see WG1 list), and is being submitted together with that task.

Technical Issues (Coding Standards, Technical Test Suite, 4-eyes Assurance)

Coding Standards : fulfilled.

Technical Test Suite : -

4-eyes Assurance : together with task 'modular observation operators for existing obs types' (see KENDA list), partly Andreas Rhodin and Uli Schaettler

Testing (Single Test Cases, Experiments)

1-month test with V4_22 and only some of these technical modifications

A new test is being started

Documentation (Presentation of Results, Model Documentation, External Documentation)

IModel Documentation : improved in-line documentation

External Documentation : no changes required for scientific documentation, User's Guide

2013-11-08 for OSSE capability: read obs from feedback files KENDA finish Schraff (DWD)

Description

Develop option to read observations from feedback ('fof') files instead of (or in addition to) 'cdfin' files, to use the simulated observation values from the feedback files as observations (from the nature run of an OSSE), and to perturb them randomly.

Status

It is coded and tested in V4_22, and ported to V4_27.

It is part of the task 'optional new QC check for surface pressure against lateral BC fields' (see WG1 list), and is being submitted together with that task

Technical Issues

Coding Standards : fulfilled.

Technical Test Suite : -

4-eyes Assurance : together with task 'modular observation operators for existing obs types' (see KENDA list), partly Andreas Rhodin and Uli Schaettler

Testing

1-month test with V4_22 and only some of these technical modifications

Single test runs with all modifications based on V4_27 done, a longer test period is about to start

Documentation

Model Documentation : improved in-line documentation

External Documentation : no changes required for scientific documentation, User's Guide

4.27 test 2012-12-01 2013-02-28 2013-03-21

Besides the consolidation work in the new fast-waves solver and the MESSy interfaces, version 4.27 now contains:

  • Advection in the Runge-Kutta scheme:
    • bug fix in Runge-Kutta advection for the earth curvature term
    • implementing a limiter for density values instead of clipping in case of finite volume advection schemes
  • bug fix in the microphysics (this bug was already provided to users in an intermediate sub-version 4.26.1
  • additional adaptations in the Nudging Code to the 14-digit date format
  • fixed some problems with conditional compilation
  • changes to default values of Namelist parameters to reflect now the standard usage of the Runge-Kutta dynamical core

Also there are few technical modifications.

More information on all the changes can be found in the Release Notes

The new version has been distributed to all COSMO-Partners, the CLM Community and the COSMO-ART group for further testing on January 21st.

2013-04-30 Consolidation work in the New fast waves solver WG2 finish Baldauf (DWD)

Description

Add features in the New fast waves solver (see item 0.1 'Revised Runge-Kutta Core') which are contained in the old fast_waves_rk:

1.) Upper sponge Layer of Klemp et al (2008)

2.) Radiation Condition (with an additional switch for the selctive use of x- and/or y-direction)

3.) lw_freeslip functionality

These are switchable functionalities (the NAMELIST switches exist already)

Documentation (Presentation of Results, Model Documentation, External Documentation)

Provide specific information on availability of the following documentation required by the COSMO source code management rules:

  • internal product documentation within properly structured code
  • external product documentation: scientific documentation, User Guide and (possibly) implementation documentation
  • process documentation: documentation of the chages to the existing software for inclusion to the version history and the changes log-file.
2013-04-30 Modular Earth Submodel System (MESSy) Ext finish N/A

Documentation (Presentation of Results, Model Documentation, External Documentation)

Provide specific information on availability of the following documentation required by the COSMO source code management rules:

  • internal product documentation within properly structured code
  • external product documentation: scientific documentation, User Guide and (possibly) implementation documentation
  • process documentation: documentation of the chages to the existing software for inclusion to the version history and the changes log-file.
4.26 test 2012-10-29 2012-12-01 2012-12-12

This version is mainly a consolidation version. Several problems have been detected in the developments of the former versions, which have been fixed now. But also new issues have been added:

The new issues:

  • Saving scale interaction TKE source terms for output
  • Modified RTTOV-interface to also work with RTTOV10
  • Radiance Processing in the COSMO-Model

And several things have been modified / adapted:

  • Multi-layer snow model
  • Several problems for the restarts have been solved
  • CLM changes for NetCDF I/O
  • Update of the Tracer Module
  • several (small) bug fixes

More information can be found in the Release Notes. The updated User Guide is available on the COSMO Web Page.

The new version has been distributed to all COSMO-Partners, the CLM Community and the COSMO-ART group for further testing on December 12th.

2012-12-13 RTTOV obs operator + read / write satellite radiances KENDA finish Messer (DWD)

Description

  • Implement RTTOV-10
  • Implement reading of satellite radiances from polar orbiting satellites (e.g. IASI radiances) from NetCDF files as produced by satellite pre-processing program 'sat-pp' of DWD
  • Implement reading of Meteosat SEVIRI radiances (probably from HRIT files, but this has to be checked) --> postponed to following task
  • Implement processing of satellite radiances and application of RTTOV-10 observation operator
  • Implement writing of observed and model-derived satellite radiances onto NetCDF feedback files

Status

The modifications have been implemented in Version 4.26 (using ifdef RTTOV10). With setting -DRTTOV10 it is now possible to use the RTTOV10-library for producing the synthetic satellite images and to perform satellite observation processing.

Technical Issues (Coding Standards, Technical Test Suite, 4-eyes Assurance)

Coding Standards: are fulfilled

Technical Test Suite: Not yet available, but technical functionality has been tested with DWD COSMO-EU and COSMO-DE setup.

4-eyes Assurance: by Messer and Schaettler.

Testing (Single Test Cases, Experiments)

The use of RTTOV10 is optional and could be tested now. Because of performance problems with the vectorization of the RTTOV10 library on the SX-9, it is not yet used operationally at DWD. See some pictures from runs with the different versions.

Documentation (Presentation of Results, Model Documentation, External Documentation)

Offline documentation is available from DWD, FE12.

The implementation is documented in the Release Notes of 4.26.

The User Guide has been updated accordingly.

4.25 test 2012-07-01 2012-08-31 2012-09-28

The Version 4.25 again contains many different changes. Despite of the planning, there have again been some bug fixes, which do change the results of all model applications.

Besides the items that are listed in the development table, the following issues have been implemented:

  • Usage of the field soiltyp
  • Limiting the ntag-value for the boundary exchange
  • IFS Convection scheme for the CLM (implemented with ifdef)
  • More technical changes and bug fixes

More information can be found in the Release Notes.

This version has been distributed to all COSMO-Partners and the CLM Community at the end of September. In October / November there was a longer debugging and consolidation phase, because problems have been reported for the restart functionality and also for both asynchronous I/O modules.

2012-09-01 Reconstruction of mpe_io.f90 WG6 finish Prill (DWD)

Description

The module mpe_io.f90 is a stand-alone module of the NWP suite, containing an asynchronous parallel implementation for reading and writing GRIB1 data from / to disk. It is used in the COSMO-Model and also in INT2LM. At DWD it is also used in the GME. Lately, a bug has been detected for writing the ready-files (see below) in asynchronous mode. At the same time, some other optimization issues treated.

  • Write operation: In a traditional operation mode, the IO is actually performed by the first compute process. Besides, there also exists a truly asynchronous mode, where dedicated IO processes receive data from the compute PEs and perform writing without blocking the compute process.
  • Read operation: The reading of GRIB1 files is inherently sequential, thus it is always conducted by a single I/O process. If there are multiple I/O PEs in use, then I/O PE #0 opens, reads and closes the input file. In principle, the reading process is a non-blocking operation for the compute PEs. However, it may constitute a barrier when input data is actually required for the next compute step.
  • Pre-fetching mode: Pre-fetching strives to avoid blocking of the compute PEs due to reading of boundary data. The term denotes the reading of files ahead of time, i.e. when the forthcoming I/O operation will be the input of a GRIB file, then this will be performed simultaneously with the preceding compute steps.
  • Ready files: The mpe_io implementation supports the use of ready files, i.e. small files indicating the completion of a write operation. Ready files are used within DWD's NWP suite to handle inter-programs dependencies.

Current implementation work:

  • Fix a bug when writing ready files. In truely asynchronous mode these have been written too early up to now.
  • Eliminate the usage of the database interface.
  • Fully implement the pre-fetching mode.
  • Implement non-blocking communication between compute PEs and I/O PEs (has been blocking up to now).

It turned out, that some interfaces of mpe_io had to be extended.

Side Note:

Within HP2C and the PP POMPA, work on a scaling, asynchronous I/O not only for GRIB, but also for NetCDF is ongoing. This work on mpe_io.f90 is not an extra parallel work, but just to fix the bug with ready files and to improve I/O of GRIB1 files immediately. The work is coordinated within PP POMPA.

Status

All above mentioned items have been implemented into a new module mpe_io2.f90. In this way we can adapt the single programs (INT2LM, GME) one after the other to the changes in the asynchronous GRIB I/O.

The modifications have been implemented in Version 4.25 and functionality has been tested successfully.

Technical Issues (Coding Standards, Technical Test Suite, 4-eyes Assurance)

Coding Standards: are fulfilled

Technical Test Suite: technical tests have been performed to prove functionality.

4-eyes Assurance: All above mentioned items have been implemented into mpe_io2.f90 and will be cross-checked by Uli Schaettler.

Testing (Single Test Cases, Experiments)

The reconstructed module has been tested with the COSMO-Model in the experimentation system of DWD. A problem when using many compute processors has been reported by DWD and by MeteoSwiss and could be fixed in Version 4.26.

Documentation (Presentation of Results, Model Documentation, External Documentation)

A LaTeX documentation of mpe_io2.f90 is available. Together with a (still to be developed) similar documentation for the asynchronous NetCDF I/O this should be published as a COSMO Technical Report to serve as technical documentation of (asynchronous) I/O.

2012-12-01 I/O Optimization with MPI_ALL2ALL WG6 finish Fuhrer (MCH)

Description

An additional method has been implemented for gathering the subdomains of a field from all other processors using MPI_ALLTOALL. A Namelist switch itype_gather has been implemented to choose the special method. Which method behaves might depend on the computer used.

Status

The modifications have been implemented in Version 4.25 and functionality has been tested successfully.

Technical Issues (Coding Standards, Technical Test Suite, 4-eyes Assurance)

Coding Standards: are fulfilled.

Technical Test Suite: The MeteoSwiss prototype of the technical test suite has been run successfully.

4-eyesAssurance: done by the Source Code Administrator (Uli Schaettler).

Testing (Single Test Cases, Experiments)

Functionality has been tested successfully.

Documentation (Presentation of Results, Model Documentation, External Documentation)

User Guide has been updated accordingly.

2012-12-01 Asynchronous NetCDF I/O Strategy WG6 finish Carlos Osuna (C2SM, ETH Z�

Description

An asynchronous solution for output of Netcdf files will be implemented similar to the asynchronous Grib I/O. The focus will first be on Output. Depending on the available time and resources, also prefetching of input will be considered.

Status

A new module netcdf_io.f90 has been implemented in the source code of the COSMO-Model and existing modules (src_input.f90, src_output.f90, organize_data.f90) have been adapted to properly use that module. All changes have been implemented in Version 4.25. When I/O is done without asynchronous processors, nothing has been changed in the behaviour of the model. In that way, the new strategy can now be tested by the CLM community (or NetCDF users).

Technical Issues (Coding Standards, Technical Test Suite, 4-eyes Assurance)

Coding Standards: have been met

Technical Test Suite: the prototype suite at MeteoSuisse has been used to test the developments

4-eyes Assurance: The code has been reviewed and checked by the CLM Source Code Administrators.

Testing

Functionality tests have been performed. Now the users of the model should test with their configurations.

Documentation

A presentation on the implementation and results has been given at a COSMO User Workshop in January 2012.

2012-12-01 Microphysics: 2-Moment Scheme WG3a finish Seifert / Blahak

Description

Two-moment microphysical parameterization for mixed-phase clouds to improve the explicit representation of clouds and precipitation. The scheme predicts the evolution of mass as well as number densities of the five hydrometeor types cloud droplets, raindrops, cloud ice, snow and graupel.

The working implementation is based on a COSMO 4.20 test version.

Long term tests, presented at previous COSMO General Meetings, show a slightly positive overall impact and more positive impact on deep convective cells.

Status

Only the interfaces for the 2-moment microphysics have been implemented in COSMO Version 4.25. This facilitates the implementation of the code itself into a COSMO-Model version considerably. As this is only a technical change, only moderate tests have been necessary.

The interfaces have been implemented with ifdef TWOMOM_SB

Technical Issues (Coding Standards, Technical Test Suite, 4-eyes Assurance)

The code of the 2-moment microphysics is currently not according to the COSMO standards (more than 1 module per source code file; comments partly in German) and needs polishing. This is the reason why it has not been taken over to the official version at the moment.

For the interfaces, all requirements are fulfilled:

Coding Standards: are fulfilled

Technical Test Suite: not yet available, but functionality of code without 2-moment microphysics has not been touched.

4-eyes Assurance (only for interfaces): done by SCA Uli Schaettler.

Testing (Single Test Cases, Experiments)

The scheme has been developed now since several years and has been tested extensively. It has lately been presented to a workshop at ETH Zürich.

Further optimization to run on the SX9 machines has been done. On this machine the scheme runs faster by a factor of 4 - 5 compared to the previous code, and it is slower by "only" a factor of 4 compared to the standard graupel scheme. It needs about half the time of the dynamical core.

For non-vector machines, we would expect similar behaviour but this needs to be tested.

Documentation (Presentation of Results, Model Documentation, External Documentation)

There are already 5 published papers (peer review and conferences), more are in preparation.
COSMO documentation could be condensed from the Latex-sources of these papers, but does not exist at the moment.

2012-12-01 Implementation of a tracer module WG6 finish Roches / Fuhrer (MeteoSwiss)

Description

Currently, every module that uses passive tracers (e.g. COSMO-ART, microphysics) handles this individually. This detoriates the maintainability of the code (there is a lot of redundant code) and makes the introduction of a new tracer field tedious. Therefore, a general implementation of tracers is developed. There will be 2 new source files (data_tracers.f90 with constants and type definitions, src_tracers.f90 with the methods to implement the framework for handling tracers).

The tracers will be stored in a contiguous memory block of the form trcr(i,j,k,ntracer,nt). The memory structure of current tracers in the model is not consistent. Therefore a choice has to be made about the data layout. The tracer module will keep as much information private as possible, in order to allow future changes to the internal data structure. Additional metadata may be added to the above strucutre as needed.

The functionality of the tracer module will contain

  • initialization of tracer variables (src_input.f90, src_tracer.f90)
  • application of boundary conditions (src_relaxation.f90)
  • correct checkpointing in the restart files (organize_data.f90)
  • advection (src_leapfrog.f90, src_advection_rk.f90)
  • explicit horizontal diffusion (hori_diffusion.f90)
  • turbulent mixing (slow_tendencies.f90, slow_tendencies_rk.f90)
  • output (src_output.f90)

Status

The new tracer module is available in COSMO-Model Version 4.25. All humidity variables are now treated as tracers, which led to a significant reduction in source code of the dynamics (instead of re-writing code for every qx-Variable, there now is a loop over the tracers). All modifications have been done in a way that the code gives bit-identical results.

The new version has already been given to the COSMO-ART group and they started to adapt their codes to that new structure. Feedback and some necessary adaptations of the new tracer module have already been implemented in Version 4.26.

Technical Issues (Coding Standards, Technical Test Suite, 4-eyes Assurance)

Coding Standards: are fulfilled

Technical Test Suite: The new version has been tested with the MeteoSwiss Technical Test Suite

4-eyes Assurance: the code has been checked by Uli Blahak and Uli Schaettler.

Testing (Single Test Cases, Experiments)

Only functionality tests are necessary, as the code gives bit-identical results.

Documentation (Presentation of Results, Model Documentation, External Documentation)

A COSMO Technical Report on the new Tracer Module, which serves as technical documentation, is in preparation. It is expected in December.

4.24 test 2012-05-01 2012-06-22 2012-06-22

Besides the changes listed in the Model development list, the following technical issues have been implemented. More information can be found in the Release Notes.

  • Changes to subroutines computing the reference atmospheres (related to Revised Runge-Kutta core); by Michael Baldauf
  • Problems in FLake with Grib packing; by Dmitrii Mironov
  • Technical Changes and Bug Fixes.

This version contains all (foreseen) modifications for the new unified release COSMO-Model 5.0, which do change the results of the simulations. All outstanding modifications for Version 5.0 are purely technical (or should at least be).

It has been distributed to all COSMO-Partners and the CLM-Community for testing at the end of June. Feedback from Roshydromet, MeteoSwiss and the CLM Community has already been incorporated to Version 4.25.

2012-12-01 adaptions for sub-hourly analysis update with LETKF KENDA finish Reich (DWD)

Description

  • extension of file names to include minutes and seconds , e.g. for the (analysis) GRIB files (and extension of internal computations by minutes / seconds
  • temporal interpolation of lateral boundary fields to initial time
  • option for initial lateral boundary condition (LBC) from the local analysis itself (to avoid imbalances near the LBC at the beginning of the model runs)

Status

The modifications have been implemented in Version 4.24. The extension of file names has been implemented in a way that it is backward compatible:

  • If ydate_ini is specified without minutes and seconds, file names and dates are treated as before. So there is no change in the behaviour
  • If ydate_ini is specified including minutes and seconds, file names for output files do include minutes and seconds (applicable for analysis files or for ytunit='d'). Input files will be recognized with or without minutes and seconds.

Introducing the new file names can therefore be done smoothly by every partner.

Technical Issues (Coding Standards, Technical Test Suite, 4-eyes Assurance)

Coding Standards: are fulfilled

Technical Test Suite: not yet available, but technical functionality has been tested by running LETKF experiments and for the old file names by running the DWD COSMO-EU and COSMO-DE setup.

4-eyes assurance: done by Christoph Schraff and Uli Schaettler

Testing (Single Test Cases, Experiments)

  • only technical tests required: basically done by running the code for LETKF experiments

Documentation (Presentation of Results, Model Documentation, External Documentation)

New way of specifying ydate_ini has been documented in the COSMO User Guide

The implementation of the modifications has been documented in the Release Notes.

2013-01-31 New Fast Waves Solver for RK dynamical core WG2 finish Baldauf(DWD)

Description

Most of the operational setups of the COSMO model now use the so-called Runge-Kutta time integration scheme (Wicker, Skamarock, 2002).
The basic idea of this time-splitting procedure is to treat the slow parts like advection or Coriolis force with a large time step, whereas the 'fast waves' modes
sound and gravity wave expansion are treated with a small time step.

As in the original proposal of Wicker, Skamarock (2002, 1998) the fast waves are treated horizontally with a backward-forward scheme and vertically implicit to allow larger values for the small time step. An additional filter process must stabilize this whole time-splitting procedure;usually a divergence damping is used (e.g. Skamarock, Klemp, 1992) in the fast waves solver.
Properties of the new fast waves solver compared to the current one are:

1. Improvement of the accuracy of all vertical derivatives and averages.
During the evaluation of the Runge-Kutta dynamical core for the COSMO-EU (7km)-setup it became obvious that the proper treatment of the vertical discretizations in strongly vertically stretched grids in particular improves the behavior of the pressure bias. Now all explicit and implicit terms are discretized in a consistent way with appropriate weights to take into account the grid stretching.

2. Use of the divergence operator in strong conservation form
Possible benefits of this form of the divergence are inspected in particular in combination with the lower boundary condition for the vertical velocity w.

3. Isotropic treatment of the artificial divergence damping
The current divergence damping considers only the horizontal gradients of the 3D-divergence in the momentum equations. This seems appropriate in the vicinity of the lower boundary, where the grid is highly anisotropic, too. But for smaller scale setups of COSMO (e.g. COSMO-DE with 2.8 km grid mesh size) the grid becomes more isotropic in the troposphere. Therefore an isotropic treatment of the artificial divergence damping seems to be reasonable. Due to high 'divergence damping Courant numbers' near the ground, this process must be also treated vertically implicit like the sound and buoyancy terms. The stability of this treatment is shown in Baldauf (2010).

References:

M. Baldauf (2010): Linear stability analysis of Runge-Kutta based partial time-splitting
schemes for the Euler equations, Mon. Wea. Rev., 138, 4475-4496

W. C. Skamarock, J. B. Klemp (1992):
The stability of Time-Split Numerical methods for the Hydrostatic
and the Nonhydrostatic Elastic Equations},
Mon. Wea. Rev., 120, 2109-2127

L. J. Wicker, W. C. Skamarock (1998):
A Time-Splitting Scheme for the Elastic Equations
incorporating Second-Order Runge-Kutta
Time Differencing, Mon. Wea. Rev., 126, 1992-1999

L. J. Wicker, W. C. Skamarock (2002):
Time Splitting Methods for Elastic Models using Forward Time Schemes},
Mon. Wea. Rev., 130, 2088-2097

Status

The modifications have been implemented in Version 4.24. The new solver now runs in the parallel suite of DWD for COSMO-EU and COSMO-DE.

Technical Issues (Coding Standards, Technical Test Suite, 4-eyes Assurance)

Coding Standards: are fulfilled (checked by SCA Ulrich Schaettler)

Technical Test Suite: not yet available, but functionality has been checked:

fast waves part of the code runs 30% slower on NEC (increase in total runtime is 5%), no numbers yet for other platforms; numbers to be confirmed when code is finalised. Also on scalar x86-platforms the code runs slower. Only on Itanium platform (SGI Altix) it is nearly twice as fast as the old fast waves solver (reported from tests by RosHydromet).

4-eyes Assurance: done by Andreas Will

Code Responsibility: M. Baldauf

Testing (Single Test Cases, Experiments)

All Standard idealised test cases look fine (linear gravity wave in channel (Skamarock, Klemp (1992)), several Mountain flows (Bonaventura (2000)), cold bubble (Straka et al (1993)) test, moist warm bubble (Weisman, Klemp (1982)) test, ...)

Real-case stand-alone test runs for several COSMO-EU (7 km), COSMO-DE (2.8km), and high-resolution COSMO-DE (2.2 km, 2km) are performed.

Synoptic and upper air verification for winter and summer periods are available for COSMO-DE (2.8 km) runs.

Documentation (Presentation of Results, Model Documentation, External Documentation)

Baldauf (2013): COSMO Technical Report No. 21 is available

Results for several idealised test cases were presented at the COSMO user seminar 2011, Langen and the SRNWP-workshop, 2011, Bad Orb.

Results for realistic simulations and time periods were presented at the COSMO User Seminar 2012

The User Guide (documentation of new switch itype_fast_waves) has been updated.

4.23 test 2012-03-17 2012-04-30 2012-04-30

In this version many developments have been incorporated that are planned for Version 5.0. Besides the items from the model development list, the following technical issues have been implemented:

  • Some obsolete Fortran features have been eliminated
  • Additional ASCII output can now be written which is processed by the technical test suite
  • time_utilities.f90: The memory problem has been solved that lead to a crash when long-term simulations with many processors have been done

From the CLM Community, the following contributions have been added:

  • Changes to spectral nudging
  • introduction of a pre-scribed soil albedo
  • new GHG concentration scenarios
  • time dependent aerosol optical depth
  • climatological year with 365 days
  • additional diagnostic variables
  • changes for restart and NetCDF I/O

More information can be found in the Release Notes.

Version 4.23 has been implemented and distributed to the CLM-Community beginning of May. There was some technical feedback, which has been incorporated in Version 4.24

2012-09-01 Additional values in (long) meteograph output WG6 finish Reinhardt (DWD)

Description

Additional values, which are calculated in the radiation, should be written to the (long) meteograph output to enhance the diagnostic output of the model.

This will change the format of the long meteograph output, therefore all users have to be informed before.

The new values are:

  • SWDIR_S: direct component of solar radiative flux at surface
  • SWDIFD_S: diffuse downward component of short wave radiative flux
  • SWDIFU_S: diffuse upward component of short wave radiative flux
  • SNOW_MELT: snow melt amount

Status

The modifications have been implemented in Version 4.23 and could be tested by everybody. No complaints up to now.

Technical Issues (Coding Standards, Technical Test Suite, 4-eyes Assurance)

Coding Standards: fulfilled. This is a pure technical change. It is only necessary to check the functionality.

Technical Test Suite: not yet available; Functionality tested with DWD COSMO-EU and COSMO-DE setup.

4-eyes assurance: done by the Source Code Administrator (Uli Schaettler).

Testing (Single Test Cases, Experiments)

Only functionality tests are needed.

Documentation (Presentation of Results, Model Documentation, External Documentation)

There was no need to update the User Guide, because the additional soil and surface variables are not explained in detail.

2012-09-01 Smoothing of fields on p-/z-levels WG6 finish Uli Blahak

Description

At the moment it is only possible to smooth all fields in the output list for p- or z-levels, or none of them. Because some of the output fields should not be smoothed (e.g. W), the smoothing should only be done for the fields, that need it (e.g. PMSL)

Up to now, the following means were available to smooth special fields:

  • l_p_filter = .TRUE.: smooth all fields that are written on p-levels
  • l_z_filter = .TRUE.: smooth all fields that are written on z-levels and also smooth PMSL, PMSL_ANAI
  • l_fi_ps_smooth = .TRUE.: special smoothing of PMSL and FI in mountaineous terrain


First modification:
The switch l_fi_ps_smooth has been renamed to l_fi_pmsl_smooth, because not ps but pmsl is smoothed in that case.

The actions done are now:

Two new switches have been introduced in Namelist group /GRIBOUT/, to independently smooth FI and PMSL:

  • l_pmsl_filter: if .TRUE., PMSL is smoothed, independently from the setting of l_z_filter; Default: .TRUE.
  • l_fi_filter: if .TRUE., FI is smoothed, independently from the setting of l_[p/z]_filter; Default: .FALSE.


The actions of l_z_filter / l_p_filter are the same as before

Status

The modifications have been implemented in Version 4.23 and could be tested by everybody. No complaints up to now.

Technical Issues (Coding Standards, Technical Test Suite, 4-eyes Assurance)

Coding Standards: fulfilled. This is a pure technical change, but needs additional Namelist switches.

Technical Test Suite: not yet available; Functionality tested with DWD COSMO-EU and COSMO-DE setup

4-eyes assurance: done by the Source Code Administrator (Uli Schaettler)

Testing (Single Test Cases, Experiments)

Only functionality tests needed.

Documentation (Presentation of Results, Model Documentation, External Documentation)

The User Guide has been updated accordingly.

2012-09-01 Bug fix in advection operators (Bott-scheme) and cloud diag WG2 finish Fuhrer (MeteoCH)

Description

The use of the same field for more than one formal parameters in subroutine arguments can cause compilation errors with some compilers.

(not clear if this is a compiler bug or a program bug)

This issue must be combined with item "New tracer advection ..."

Status

The modified interfaces have been implemented into the official version (4.23). This version has been provided for testing to the COSMO testing partners and to the CLM Community. No problems have been reported.

Technical Issues (Coding Standards, Technical Test Suite, 4-eyes Assurance)

Coding Standards are fulfilled.

4-eyes assurance has been done by Michael Baldauf and also by Uli Schaettler.

Technical Test Suite: The MeteoSwiss Version of the Technical Test Suite has been applied successfully.

Testing (Single Test Cases, Experiments)

The modified code gives bit-identical results (only the interfaces of certain subroutines have been changed). This has been tested using the operational COSMO-2 and COSMO-7 model runs. For certain compilers (NAG, Lahey Fujitsu) differences may appear when strongly optimizing the code, the new version should be correct. For the Cray XT4 the model performance was not significantly influenced by the bugfix and was within the measurement uncertainty.

Code responsible: Michael Baldauf

https://cosmo.cscs.ch/cosmo/branch/mch/olifu/bugs/bug01_arguments/results/.

Documentation (Presentation of Results, Model Documentation, External Documentation)

Presentation of results: N/A (bug)

Provide extensions / modifications for the Documentation System: N/A (bug)

Future Code responsible: Michael Baldauf

2012-09-01 calculation of the moisture divergence WG2 finish Fuhrer (MeteoCH)

Description

The diagnosis of dqvdt was intermixed with the computation of vertical diffusion of qv and qc in the subroutine complete_tendencies_qvqcqi_tke (and the subroutine slow_tendencies for the Leapfrog core). This should be separated into two different subroutines (for Runge-Kutta) or different code blocks (for Leapfrog) in order to make the code more modular and extensible in the future. This requires changes to the source files slow_tendencies.f90, src_runge_kutta.f90 and src_slow_tendencies_rk.f90. The changes are of pure technical nature and do not influence the model results.

Status

The changes have been implemented in a private version at MeteoSwiss and tested with the operational MeteoSwiss setup.

The modified code has been submitted to the Source Code Administrator and has been implemented in Version 4.23

Technical Issues (Coding Standards, Technical Test Suite, 4-eyes Assurance)

Coding Standards: are fulfilled

Technical Test Suite: not yet available; operational MeteoSwiss setup has been tested

4-eyes Assurance: code has been reviewed by Michael Baldauf and Uli Schaettler

Testing (Single Test Cases, Experiments)

3) Testing of the changes according to the Quality Control System of the COSMO partner or of the external partner that implements them.

Testing: The modified code has been checked for the MeteoSwiss operational setup (COSMO-2 and COSMO-7) and proven to give bit-reproducible results. If an optimization is made in the LF core (removal of "+qvtens-qvtens") rounding errors can lead to differences in the range of the numerical precision. These changes only influence the computation of dqvdt and thus are only visible if the convection scheme is active (COSMO-7) or in the DQVDT diagnostic output. The impact on model performance is negligible (timings of LF and RK simulations attached) and cannot be discerned from the jitter on the machine. In the results, the modified version of the code consistenly ran slightly faster than the original version, which is not understood and probably not statistically significant. The 4-eyes principle has been applied (Oli and Anne) but a review of the code responsible and WG2 chair (Michael) would nevertheless be optimal. In summary, no significant changes are expected, bit-reproducibility can be achieved (always for RK, but only with non-optimal code version in the LF case).

Documentation (Presentation of Results, Model Documentation, External Documentation)

Presentation of results: not applicable

Changes to Model Documentation: not applicable

Changes have been documented in the Release Notes

Future Code responsible: Michael Baldauf

2012-09-01 Removal of (dead) code WG6 finish Schaettler, et al

Description

There are several parts in the model. which are not used and not maintained any more. These parts should be removed from the code. The following items could be removed soon:

  • old Runge-Kutta implementation in src_2timelevels.f90
  • Non-prognostic versions of microphysics (and switch lprogprec)
  • Kain-Fritsch convection scheme. This was never fully working
  • fast_waves: there are several internal switches that are of no interest any more and will be deleted

Status

The items listed above have been removed in Version 4.23.

Technical Issues (Coding Standards, Technical Test Suite, 4-eyes Assurance)

Not applicable; Just make sure that nobody is using that any more

Testing (Single Test Cases, Experiments)

Working configurations must not be touched. Up to now, nobody complaint.

Documentation (Presentation of Results, Model Documentation, External Documentation)

The User Guide has been updated accordingly.

2012-09-01 Changes in parameterization for ice cloud cover in radiation WG3a finish Seifert

Description

The code in src_radiation to reduce the cloud cover of ice clouds in the upper troposphere has been modified:

  • The branch for k <= klv500 has been eliminated. It is also not used in the GME and can lead to spurious artifacts. It does not make sense here.
  • The empirical relation has been re-tuned using data from the Lindenberg cloud radar. Now the model can really achieve 100% cloud cover for cirrus clouds. Before the maximal cloud cover has been at about 80%, which is not realistic.

Status

Code has been tested in 2011 by Axel Seifert in private experiments with neutral / good results. The modifications have been implemented in Version 4.23.

Technical Issues

Coding Standards: are fulfilled

Technical Test Suite: not yet available

4-eyes Assurance: has been reviewed by Uli Blahak

Testing

Longer experiments have been conducted at DWD with neutral verification results.

Documentation

The problems and the code changes have been discussed in a (draft) paper.

The implementation has been documented in the Release Notes.

No changes of documentation necessary.

2012-09-01 CLM Contributions to Unified Version 5.0 Ext finish Hans-Jürgen Panitz

Description

For the next unified version of the COSMO-Model there are some contributions from the CLM Community. All these contributions are either of a pure technical nature or are optional (for the NWP mode) and can be switched on/off by Namelist parameters. Therefore the results of NWP applications are not affected by these contributions. This is a short summary of the contributions:

  • Introduction of new GHG concentration scenarios
  • Introduction of prescribed soil albedo values based on MODIS
  • Spectral Nudging
  • Technical Changes
    • FLake
    • Diagnostic Variables
    • Support for a climatological year with 365 days
    • Treatment of variables for multi-layer snow model
  • Miscellaneous
    • ifdef GRIBDWD
    • mpe_io.f90
    • NetCDF I/O
    • Restarts

The changes are documented and described in more detail in the Release Notes of Version 4.23

Status

The change has been implemented into Version 4.23 and has been given to the CLM Community for further testing. Additional feedback has been implemented in Versions 4.24 / 4.25.

Technical Issues (Coding Standards, Technical Test Suite, 4-eyes Assurance)

Coding Standards: fulfilled

Technical Test Suite: not yet available, but changes could be tested by all COSMO Partners

4-eyes Assurance: done by Uli Schaettler

Testing (Single Test Cases, Experiments)

All changes have been tested by the CLM Community and in addition by the COSMO partners. No complaints were raised.

Documentation (Presentation of Results, Model Documentation, External Documentation)

The COSMO User Guide has been updated accordingly.

The changes have been described in detail in the Release Notes of Version 4.23

2012-09-01 Time measurement for long simulations: Problems with memory WG6 finish Uli Schaettler

Description

Problems have been reported with the memory usage, when running long simulations. The model crashes at the end of the forecast, when the timing informations from the processors are gathered for output. This is due to the fact, that all hours are gathered separately, so the amount of memory can be too big then.

Solution:

For itype_timing = 1/3: A loop over all hours has been implemented to gather values only from one hour and process them in PE 0

For itype_timing = 2/4: The sum over all hours is computed in the PEs and only the sums are gathered from the different PEs.

Status

The change has been implemented into Version 4.23 and could be tested by all COSMO Partners and the CLM Community. No complaints were raised.

Technical Issues (Coding Standards, Technical Test Suite, 4-eyes Assurance)

This is a pure technical change. The functionality has been tested with some standard runs.

Testing (Single Test Cases, Experiments)

Only check the functionality.

Documentation (Presentation of Results, Model Documentation, External Documentation)

No need to update existing documentations.

The change has been documented in the Release Notes.

2012-09-01 Use SST forecast from an ocean model as boundary condition WG6 finish Lucio Torrisi

Description

The usual procedure for numerical weather prediction for few days is

Usually in numerical weather prediction for few days, the Sea Surface Temperature (SST) is held constant over the ocean. Only in climate runs, it is updated as are all the other slowly varying external parameters (as leaf area index, root depth, etc.). But sometimes it is useful to have an updated SST without updating the other external parameters. Therefore a new logical switch is implemented in the group /IOCTL/, to update only the SST over the ocean during a NWP simulation.

Status

  • The new switch has been implemented and its functionality has been checked successfully.
  • With lbdsst=.FALSE., the results are not changed

The change has been implemented into Version 4.23 and could be tested by all COSMO Partners and the CLM Community. No complaints were raised.

Technical Issues (Coding Standards, Technical Test Suite, 4-eyes Assurance)

Coding Standards: fulfilled

Technical Test Suite: not yet available, but some standard tests have been conducted without problems

4-eyes Assurance: done by Uli Schaettler

Testing (Single Test Cases, Experiments)

No changes of results. Only some functionality tests are necessary.

Documentation (Presentation of Results, Model Documentation, External Documentation)

User Guide has been updated.

2012-09-01 Physics-Dynamics Coupling WG6 finish Oliver Fuhrer (MCH)

Description

Move computation of total physical tendencies to the physics.

Up to now this has been done seperatly in the different dynamical cores. But the proper place is in the module organize_physics.f90, after all tendencies have been computed.

This is a pure technical change without changing of results.

Status

The change has been implemented into Version 4.23 and could be tested by all COSMO Partners and the CLM Community. No complaints were raised.

Technical Issues (Coding Standards, Technical Test Suite, 4-eyes Assurance)

Coding Standards: fulfilled

Technical Test Suite: The prototype of the Test Suite by MeteoSwiss has been run without problems.

4-eyes Assurance: done by Uli Schaettler

Testing (Single Test Cases, Experiments)

As there are no changes to the results, only the technical Test Suite was necessary.

Documentation (Presentation of Results, Model Documentation, External Documentation)

Change is documented in the Release Notes. No other change of documentation necessary.

2012-09-01 New tracer advection schemes: MPDATA and 'Bott2_Strang' WG2 finish deMorsier (MeteoCH), Baldauf (

Description

MPDATA is currently developed in the PP 'Conservative dynamical core'.

It has the advantage of combinig tracer mass conservation and to be a fully 3-dimensional advection scheme; however

the order of accuracy is less than that of the existing schemes 'Bott' (direction splitted scheme) and Semi-Lagrange (non-conservative).

The Strang-splitting version of Bott is more stable than the 'standard' Bott version, but for the price of about 60% more computing time. This could be avoided by applying Strang-splitting only in the lowest levels.

To this purpose some reprogramming of the calling routines of the Bott-scheme seems to be advisable. Currently almost the same (large!) piece of code is contained 4 times in src_advection_rk.f90. This almost identical code can be reduced to one subroutine.

Status

This technical rewriting and a preliminary version of the more efficient Strang-splitting version is implemented now in COSMO 4.23.

MPDATA must be extended into a fully 3D-version before it can go into the official version.

Technical Issues (Coding Standards, Technical Test Suite, 4-eyes Assurance)

Coding Standards: are fulfilled

Technical Test Suite: not yet available; technical tests have been performed to prove functionality.

4-eyes: for MPDATA by M. Baldauf (DWD)

for revised Bott2_Strang: by G. deMorsier (MeteoCH)

code responsibility: M. Baldauf

Testing (Single Test Cases, Experiments)

At DWD an experiment is ongoing, where the efficient Strang-splitting version is tested.

Documentation (Presentation of Results, Model Documentation, External Documentation)

Current state of MPDATA: see presentation at COSMO GM 2011 by G. deMorsier

2012-09-01 Reorganisation of metrics stuff WG2 finish Baldauf (DWD)

Description

concentrate metric terms for the spherical, terrain following grid in an own module.

This will facilitate the coupling of other dynamical cores (EULAG, ...).

Technical Issues (Coding Standards, Technical Test Suite, 4-eyes Assurance)

Coding Standards: are fulfilled. The developers of FieldExtra have been consulted to discuss the interfaces.

Technical Test Suite: not yet available; technical tests have been performed to guarantee functionality.

4-eyes: U. Schaettler (DWD)

code responsible: M. Baldauf

Testing (Single Test Cases, Experiments)

This is only a collection of subroutines from a diversity of files into one common file.

Therefore no change of results

Documentation (Presentation of Results, Model Documentation, External Documentation)

Provide specific information on availability of the following documentation required by the COSMO source code management rules:

  • internal product documentation within properly structured code
  • external product documentation: scientific documentation, User Guide and (possibly) implementation documentation
  • process documentation: documentation of the chages to the existing software for inclusion to the version history and the changes log-file.
4.22 release N/A N/A 2012-01-31

Release Notes

2012-01-31 Radiation: Zenith Angle Corrections WG3a finish Reinhardt (DWD/AGeoBw)

Documentation (Presentation of Results, Model Documentation, External Documentation)

Provide specific information on availability of the following documentation required by the COSMO source code management rules:

  • internal product documentation within properly structured code
  • external product documentation: scientific documentation, User Guide and (possibly) implementation documentation
  • process documentation: documentation of the chages to the existing software for inclusion to the version history and the changes log-file.
2012-03-31 new modular nudging code (with many new options) KENDA finish Schraff (DWD)

Description

  • re-structuring of code:
    • modules for reading NetCDF obs input files + obs pre-processing
    • (preliminary) preparations on modular observation operators for multi-level reports
  • more flexible observation input:
    • several files for the same observation type
    • more variables optional instead of mandatory
  • optimisations for speed-up on NEC-SX9: nudging part by > 25 % , whole nudging run by > 15 % (speed-up)
  • option for writing NetCDF feedobs files (for LETKF / for verification; includes additional flags and elements (e.g. solar zenith angle)
  • revised format of the VOF (YUVERIF) file
  • height differences betw. station / model orography considered in a more consistent way (for grid point assignment, station selection, obs errors, etc.)
  • new flag words, more consistent setting of flags / monitoring statistics (for a passive obs / report, the reason for rejection is now always indicated)
  • after checking for redundancy, the redundancy check loop is re-run with different settings to put TEMP or PILOT parts A, B, C, D together
  • no redundancy any more between 1 RASS + 1 wind profiler , or between 2 different ships (this help the verification / monitoring)
  • quality control: no temporal consistency check (within the 'spatial consistency check'), this greatly improves 1 case with severe analysis errors
  • latitude dependent reduction of geostrophic wind correction introduced, in order to get reasonably small geostrophic increments near the equator
  • bug fixes, e.g.
    • prevent vertically collocated levels after redundancy check
    • condition to reject AMDAR obs with reported height below model orography: replaced by pressure condition, because reported height is ficticious
    • avoid array bound violations, etc.
  • new option for mobile TEMP / PILOT
  • new option of GPS ZTD (IWV) obs from NetCDF obs input files (preference of processing centers can be selected)
  • new option for scatterometer 10-m wind (using a simple NetCDF file obtained by an offline pre-processing tool)
  • new option for a new balancing: pressure increments balancing wind analysis increments geostrophically (for scatterometer wind, and optionally for in-situ 10-m wind obs)
  • new options for new weighting for multiple observations / observation types (net increments and weights can be computed separately for different pre-specified sets of observing systems; this helps improving the relative influence of e.g. sparse radiosonde data and high-resolution data such as surface obs, GPS obs, future satellite retrievals or radar radial winds

Technical Issues (Coding Standards, Technical Test Suite, 4-eyes Assurance)

  • technical: 1 month experiment is run without technical problems, code is robust
  • coding standards mostly fulfilled (and improved compared to the previous code)
  • compilation with full debug options (e.g. incl. array bound checking): binary produced and tested successfully
  • reproducibility with vastly different domain decomposition tested successfully
  • testing on an other platform at MeteoSwiss done successfully, including test for capability of reading observations from AOF files instead of NetCDF files
  • 4-eyes assurance partly done

task completed, except (as at end April)::

completion of 4-eyes assurance (Daniel Leuenberger, MeteoSwiss: check interfaces first, and based on the results, decide on what other parts of the code should rigorously be check by means of the 4-eyes principle)

Testing (Single Test Cases, Experiments)

  • single case with large analysis error has been greatly improved (because temporal consistency checking has been removed in spatial consistency check)
  • 1-month experiment: neutral results
  • 1-week test at MeteoSwiss done successfully
  • COSMO-EU / -DE parallel suite with V4_22 completed: > 2 months run without problems, verification neutral
  • (V4_22 introduced operationally at DWD on 28 March 2012.

task completed.

Documentation (Presentation of Results, Model Documentation, External Documentation)

  • results (of single test case related to qualtiy control + a 1-month experiment) : presented at GM Rome, 5 Sept. 2011
  • comprehensive documentation on observation file input available, integrated into updated COSMO User's Guide
  • comprehensive documentation on NetCDF feedback file format available
  • COSMO User's Guide fully updated with the V4.22 and all past modfications from the recent years (April 2012)
  • scientific documentation available (COSMO Documentation Part III, Nudging part fully updated with the V4.22 and all past modifications from the recent years) (29 Feb. 2012)
  • in-line documentation of all changes

task completed

4.21 release N/A N/A 2011-12-06

Release Notes

2011-12-06 Horizontal nonlinear Smagorinsky diffusion WG2 finish Baldauf (DWD)

Description

Sometimes the COSMO model aborts due to horizontal shear instabilities. Some of these crashes can be avoided by the 4th order 'artificial horizontal diffusion' with a prescribed constant diffusion coefficient.

But in rare events this diffusion is not strong enough and a more physically based diffusion mechanism is necessary. The nonlinear Smagorinsky diffusion (Smagorinsky (1963) MWR) determines the diffusion coefficient by the horizontal shear (and tension) strain and therefore acts in particular to reduce too strong horizontal shear.

It is switched on by the DYNCTL namelist parameter 'l_diff_Smag=.TRUE.' (otherwise it has no impact to the results). An internal parameter, the Smagorinsky constant, is currently set to c_smag=0.03. This value is chosen to prevent shear instabilities in COSMO-DE applications, but otherwise to influence as less as possible the verification scores.

Technical Issues (Coding Standards, Technical Test Suite, 4-eyes Assurance)

4-eyes: Uli Schaettler

Code responsibility: M. Baldauf

Testing (Single Test Cases, Experiments)

Experiments with COSMO-DE during 01.-28. Feb. 2011 and 01.-31. Aug. 2011 were performed.

Verification results are mainly neutral as expected.

Documentation (Presentation of Results, Model Documentation, External Documentation)

Powerpoint-presentation with verification results held at 08. Nov. 2011 at 'Routine meeting' at DWD.

New section 8.4.2 in COSMO Sci. Doc. part I

Article by M. Baldauf and G. Zaengl in COSMO-Newsletter no. 12 (2012)

4.20 release N/A N/A 2011-08-31
Release Notes
2011-08-31 Digital Filter Initialization WG6 finish Schaettler

Description

In tests for historical storm events, driven by ERA Reanalyses, it turned out that the digital filter initialization used together with the Runge-Kutta scheme did not deliver reproducible results.

But for the Runge-Kutta scheme an adiabatic backward integration is not possible at all. So the option ndfi=2 (backward-forward initialization) has been disabled, if the Runge-Kutta scheme (l2tls=.TRUE.) is used (in Version 4.20).

To run the forward initialization (ndfi=1) with the Runge-Kutta scheme, some technical adaptations were necessary. These have been implemented in Version 4.18.

Status of work: This issue has been fully implemented in Version 4.20:

  • When using the Runge-Kutta scheme, only ndfi=1 is possible now.
  • Necessary modifications have been implemented in Version 4.18, when using ndfi=1. See the version history documentation for further details.

Technical Issues (Coding Standards, Technical Test Suite, 4-eyes Assurance)

The changes are still evaluated and tested by colleagues from the Bundeswehr.

Testing (Single Test Cases, Experiments)

See Technical Issues.

Documentation (Presentation of Results, Model Documentation, External Documentation)

Still missing: update User Guide to explain that no backward filtering can be done with Runge-Kutta dynamical core.

2011-08-31 OASIS3 coupling WG6 finish N/A

Description

An interface to the OASIS3 coupler is implemented to couple the Community Land Model (CLM) and an ocean model.

Status of work:
The interface has been implemented using conditional compilation with -DCOUP_OAS. Sources from applications that should be coupled with the cosmo-model or the coupler itself are NOT part of the cosmo-model package. Such sources have to be obtained elsewhere. The cosmo-model provides the interface only.

Necessary changes in the cosmo-model:

  • lmorg.f90:
    Call to OASIS routines for initialization (at the beginning) and for update (during the timeloop).
  • src_setup.f90:
    Added icomm_world to the argument list of init_procgrid (up to now this routine started with MPI_COMM_WORLD)
  • environment.f90:
    Changed definition of icomm_world: in case of coupling, this communicator is defined by OASIS; only in case of un-coupled runs, it is MPI_COMM_WORLD. Therefore some uses of MPI_COMM_WORLD have to be replaced by icomm_world.

Technical Issues (Coding Standards, Technical Test Suite, 4-eyes Assurance)

The changes have been implemented by colleagues from ETH Zürich and have been cross-checked and implemented by the Source Code Administrator.

Testing (Single Test Cases, Experiments)

Few single test cases have been performed to ensure that the results have not been changed.

Documentation (Presentation of Results, Model Documentation, External Documentation)

Provide specific information on availability of the following documentation required by the COSMO source code management rules:

  • internal product documentation within properly structured code
  • external product documentation: scientific documentation, User Guide and (possibly) implementation documentation
  • process documentation: documentation of the chages to the existing software for inclusion to the version history and the changes log-file.
4.19 release N/A N/A 2011-08-01
Release Notes
2011-07-29 Conditional compilation for external libraries WG6 finish Schaettler (DWD)

Description

The cosmo-model and the int2lm use several external libraries: DWD Grib1 library, NetCDF library, a miscellaneous library, RTTOV libraries. Up to now, "dummy"-routines have been provided to satisfy external references, if these libraries are not available.

The following conditional compilations have been provided, to get rid of these dummy-routines:

-DNETCDF
To switch on/off the usage of NetCDF library.
Note, that usage of NetCDF can only be switched off, if also the Nudging scheme is disabled, because the Nudging needs NetCDF to read the observation files.
-DNUDGING
To switch on/off the Nudging scheme. Switch off the nudging also avoids the usage of the miscellaneous library libmisc.a
-DGRIBDWD
To switch on/off the usage of the DWD Grib1 library libgrib1.a
-DRTTOV7, DRTTOV9
To switch on/off the usage of the RTTOV libraries in the corresponding version

Status of Work:

  • 4.18: Implementation of -DNUDGING, -DRTTOV7, -DRTTOV9.
  • 4.19: Implementation of -DNETCDF, -DGRIBDWD.

Still missing: -DNOMPI (for creating a sequential binary without MPI)

Testing (Single Test Cases, Experiments)

Few single test cases have been performed to ensure that the results have not been changed.

Documentation (Presentation of Results, Model Documentation, External Documentation)

The User Guide has been updated accordingly.

Proper description of -DGRIBDWD still outstanding.

4.18 release N/A N/A 2011-05-25
Release Notes
4.17 release N/A N/A 2011-02-24
Release Notes
4.16 release N/A N/A 2010-12-06
Release Notes
4.15 release N/A N/A 2010-11-19
4.14 release N/A N/A 2010-06-14
Release Notes
4.13 release N/A N/A 2010-05-11
4.12 release N/A N/A 2010-05-11
Release Notes
4.11 release N/A N/A 2009-11-30
Release Notes
4.10 release N/A N/A 2009-09-11
4.09 release N/A N/A 2009-07-16
4.08 release N/A N/A 2009-02-16
4.07 release N/A N/A 2008-12-12
4.06 release N/A N/A 2008-09-24
Release Notes
4.05 release N/A N/A 2008-09-10
4.04 release N/A N/A 2008-07-16
Release Notes
4.03 release N/A N/A 2008-02-25
Release Notes
4.02 release N/A N/A 2007-12-05
Release Notes
4.01 release N/A N/A 2007-12-04
4.00 release N/A N/A 2007-07-26
Int2lm model releases
Target
version
Version status Development
start
Planned
delivery
Delivery
date
2.05 release 2017-02-24 N/A 2017-03-31

There were some technical changes and bug fixes without changing the results, apart from preventing crashes.

Release notes 2.05

This release also contains the major changes that have been introduced in the earlier test versions 2.02a, 2.02a1, 2.03. Please consult the release notes of these versions:

Release Notes 2.02a

Release Notes 2.02a1

Release Notes 2.03

Version 2.04 contains no changes compared to 2.03 and has been just re-named to be consistent with DWD internal version control, without changing the content.

There are some further slides documenting the changes and their effects of the vertical profile adaption (nonhydrostatic input models), the pressure computation (nonhydrostatic input models) and the soil temperature height correction bugfix (ICON-input):
changes_int2lm_170131_v203_blahak_forPDF.pdf

2017-06-01 Kinne (2015) climatology (AOT12,SSA12,ASY12 --> TAU_KINNE,SSA_KINNE,G_KINNE) WG3a finish Marina Shatunova (RHM)

Description

Implement new fields for the Kinne (2015) aerosol climatology, which are read from the external parameters and written to the analysis.

Status

Ongoing work. Various new external parameters have been obtained from Stefan Kinne by Natalia Chubarova (Moscow State Univ.), have been prepared to be used in COSMO by Marina Shatunova (RHMS) and have been submitted to EXTPAR as netcdf files. Once these are available from EXTPAR, final implementation in int2lm is possible.

Documentation (Presentation of Results, Model Documentation, External Documentation)

Provide specific information on availability of the following documentation required by the COSMO source code management rules:

  • internal product documentation within properly structured code
  • external product documentation: scientific documentation, User Guide and (possibly) implementation documentation
  • process documentation: documentation of the chages to the existing software for inclusion to the version history and the changes log-file.
2.04 test 2017-02-14 2017-02-14 2017-02-14

This version is just a re-naming of version numbers to be consistent with DWD internal version control, without changing the content.

Release notes 2.04

2017-02-14 This version is just a re-naming of version numbers to be consistent with DWD internal version control, without changing the content WG6 finish Ulrich Blahak (DWD)
2.03 test 2017-01-31 N/A 2017-01-31

The version 2.03 contains the changes of the two DWD-internal versions 2.02a and 2.02a1. Thus, the release notes of 2.03 consist of these three parts:

Release Notes 2.02a

Release Notes 2.02a1

Release Notes 2.03

There are some further slides documenting the changes and their effects of the vertical profile adaption (nonhydrostatic input models), the pressure computation (nonhydrostatic input models) and the soil temperature height correction bugfix (ICON-input):
changes_int2lm_170131_v203_blahak_forPDF.pdf

2016-08-22 Linear vertical interpolation as an option to splines WG6 finish Ulrich Blahak (DWD)

Description

Linear vertical interpolation for some variables can now be chosen more easily in the code (src_vert_inter_lm.f90) by new internal switch in subroutine call:

vert_interp (qr_lm, 'qr', ... --> vert_interp (qr_lm, 'qr', 'linear‘‚ … (or ‚ctspline‘)

but no actual change yet (I‘m thinking about changing it for moisture variables and tracers in the future).

No change of the results yet.

Technical Issues

Internally implmentet, but not activated so far. Would require an additional namelist parameter or a hardwired choice in

src_gribtabs.f90.

Testing

Technically tested for a single case, where it worked correctly.

Documentation (Presentation of Results, Model Documentation, External Documentation)

Provide specific information on availability of the following documentation required by the COSMO source code management rules:

  • internal product documentation within properly structured code
  • external product documentation: scientific documentation, User Guide and (possibly) implementation documentation
  • process documentation: documentation of the chages to the existing software for inclusion to the version history and the changes log-file.
2016-08-22 For GFS, possibility to use RELHUM instead of QV WG6 finish Ulrich Blahak (DWD)

Description

In case of GFS input data possibility for input of RELHUM data.

Previously only QV was read, but since 01/2015 GFS data has switched to RELHUM.

Huge change of results, because before, qv_lm was set to the value for 1 % relative humidity, if no QV present in input data!

Status

Finished

Technical Issues

None

Testing

Tested by Helmut Frank (DWD) and colleagues from RosHydromet.

Documentation (Presentation of Results, Model Documentation, External Documentation)

Provide specific information on availability of the following documentation required by the COSMO source code management rules:

  • internal product documentation within properly structured code
  • external product documentation: scientific documentation, User Guide and (possibly) implementation documentation
  • process documentation: documentation of the chages to the existing software for inclusion to the version history and the changes log-file.
2016-08-22 General 4D field to hold new 3D fields for easier integration into the code. WG6 finish Ulrich Blahak (DWD)

Description

General 4D field to hold new 3D fields for easier integration into the code.

Works a bit like the tracer structure in COSMO, but much more rudimentary.

It is meant only for the code developers to easily test and integrate new fields.

Purely technical, does not change results.

Status

Finished

Technical Issues

None

Testing

It was successfully used to implement the 11 CAMS aerosol mixing ratios from ECMWF in the framework of PP T2RC2.

Documentation (Presentation of Results, Model Documentation, External Documentation)

Provide specific information on availability of the following documentation required by the COSMO source code management rules:

  • internal product documentation within properly structured code
  • external product documentation: scientific documentation, User Guide and (possibly) implementation documentation
  • process documentation: documentation of the chages to the existing software for inclusion to the version history and the changes log-file.
2016-08-22 MACC (CAMS) aerosol data from ECMWF WG6 work Harel Muskatel (IMS)

Description

Implemented interpolation of MACC aerosol data to COSMO grid with the help of the new 4D field. 11 new fields.

Status

Finished

Documentation (Presentation of Results, Model Documentation, External Documentation)

Provide specific information on availability of the following documentation required by the COSMO source code management rules:

  • internal product documentation within properly structured code
  • external product documentation: scientific documentation, User Guide and (possibly) implementation documentation
  • process documentation: documentation of the chages to the existing software for inclusion to the version history and the changes log-file.
2016-08-22 TERRA_URB: new EXTPAR fields AHF and FR_PAVED/ISA WG6 finish Hendrik Wouters (KU Leuven)

Description

TERRA_URB needs the two new external parameter fields AHF and FR_PAVED/ISA from the COSMO external parameters. These have been implemented in int2lm.

New namelist switch lterra_urb.

New grib-codings have been implemented in the DWD grib_api in the local use section. They have also been submitted to WMO, but this will take time.

Status

Works technically , but grib codings are still local and preliminary. Int2lm uses shortnames 'aermrXX' (where XX stands for the number of the species, 01 to 11) for grib2 and local DWD-table 206, ee=101...111 for grib1.

In the COSMO, these fields are only usable in the PP T2RC2 test version of the code.

Technical Issues

grib coding of the CAMS aerosol fields 'AERMRXX'

Testing

Works correctly using our local preliminary grib coding.

Documentation (Presentation of Results, Model Documentation, External Documentation)

Provide specific information on availability of the following documentation required by the COSMO source code management rules:

  • internal product documentation within properly structured code
  • external product documentation: scientific documentation, User Guide and (possibly) implementation documentation
  • process documentation: documentation of the chages to the existing software for inclusion to the version history and the changes log-file.
2016-08-22 Field SSO_STDH needed for the new blocked COSMO turbulence code WG6 finish Ulrich Blahak (DWD)

Description

For the new blocked turbulence code, the field SSO_STDH is needed. This field is now required in any case and must be present in the external parameter files. Therefore, new external parameter files should be generated (from ASTER orography).

Status

Finished

Technical Issues

None

Testing

Works correctly

Documentation (Presentation of Results, Model Documentation, External Documentation)

Provide specific information on availability of the following documentation required by the COSMO source code management rules:

  • internal product documentation within properly structured code
  • external product documentation: scientific documentation, User Guide and (possibly) implementation documentation
  • process documentation: documentation of the chages to the existing software for inclusion to the version history and the changes log-file.
2016-08-22 ICON-nest, ICON-lam or ICON-sub input: domain checker WG6 finish Ulrich Blahak (DWD)

Description

For ICON input which is not a global dataset (ICON-LAM, ICON-NEST or ICON-SUB) the int2lm simply crashes with a segfault if some COSMO domain points are outside the ICON domain. Two different methods for domain checks have now be implemented:

1) A graphical ASCII-ART map showing the ICON and COSMO domains and their overlap. This is very handy to detect domain problems.
New ASCII output files: "YUICON_COSMO_DOMAINS_[suv]" (s=scalar, u=u-points, v=v-points) is output in any case to show the domains.
"YUERROR_ICON_COSMO_DOMAINs_MISMATCH_[suv]" is output in case of COSMO domain too big / ICON domain too small.

2) In case of ICON-SUB, a checker for the rotated lat/lon domain specifications of ICON-SUB and COSMO

Status

Finished

Technical Issues

None. 4-eyes pending.

Testing

Works as expected

Documentation (Presentation of Results, Model Documentation, External Documentation)

Provide specific information on availability of the following documentation required by the COSMO source code management rules:

  • internal product documentation within properly structured code
  • external product documentation: scientific documentation, User Guide and (possibly) implementation documentation
  • process documentation: documentation of the chages to the existing software for inclusion to the version history and the changes log-file.
2016-12-10 Option to blend the soil temperature profile from the "normal" adaption method to new orography to a climatological-only height correction for deeper levels WG6 finish Ulrich Blahak (DWD)

Description

New option for climatological height correction of deep soil temperatures for the multi-layer soil model

New switch "lmultlay_deepsoil_clim_hcorr" (logical, default: .TRUE.) to specify if blending to a climatological height correction of soil temperatures for deeper soil layers is desired. The normal method is to preserve the temperature differences to the lowest atmospheric temperature across the interpolation, and this method is then only applied in the upper soil levels with a decreasing weight with increasing depth. This should reduce the danger that, e.g., local extremes in near-surface air temperatures, which may have been artificially created by the PBL-profile adaption from coarse to fine orography, create also artificial extremes in deep-soil temperatures where they have a long memory.

The climatological height correction is based on a constant temperature gradient of 0.007 K/m with respect to orography difference coarse minus fine levels. In this respect it is similar to the already existing option "lt_cl_corr" for the climatological deep-soil temperature t_cl in the old 2-layer soil model.

Status

Implemented

Technical Issues

Coding Standards fulfilled, 4-eyes assurance pending

Testing

Not really possible at DWD. Should be investigated at a center where COSMO is started from interpolated analyses without DA on a daily basis.

Documentation (Presentation of Results, Model Documentation, External Documentation)

Provide specific information on availability of the following documentation required by the COSMO source code management rules:

2017-01-31 Hydrostatic pressure computation instead of PP interpolation for non-hydrostatic input models WG6 finish Ulrich Blahak

Description

For non-hydrostatic input models (ICON, COSMO, UM, CM), up to now the pressure deviation was vertically interpolated rather computed from the basic hydrostatic equation. Especially over mountaineous terrain this lead to very noisy pressure fields in the horizontal, which generated a lot of sound- and gravity waves after COSMO model start. To mitigate this, now the pressure is hydrostatically integrated based on the interpolated T and QV profiles in each grid column, so that this noise is considerably reduced.

Status

For the hydrostatic pressure computation, existing subroutines from COSMO src_artifdata.f90 have been implemented and used.

No technical problems and issues were encountered.

Work and implementation are finished.

Technical Issues

Coding standards are fulfilled.

Technical testing has been done at DWD and other COSMO centers and found no problems.

Testing

Tests at DWD showed that, when started from an interpolated analysis (ICONEU in this case) the initial noise in COSMO simulations (DPSDT, WA500) decreased by 15 % on average in the entire COSMO-DE domain. Most of this reduction comes from the Alpine region, which in turn means that in this region the noise reduction is even larger.

Small positive effects are also found through the boundary data alone, but COSMO-DE does not significantly "slice" through mountain ranges at its domain boundaries.

Documentation (Presentation of Results, Model Documentation, External Documentation)

Documentation:

2017-01-31 New methods for profile adaption from coarse to fine orography in case of non-hydrostatic input models WG6 finish Ulrich Blahak

Description

For non-hydrostatic input models, the methods for adapting the profiles from the coarse input orography to the fine orography are ok in general, but still there is room for improvement.

First, the PP profile is no longer needed (because of the new hydrostatic pressure computation instead of PP interpolation), second new methods to stretch/compress the other profiles into deeper valleys or over higher mountains have been developed. These produce less initial noise when COSMO model is started from an interpolated coarse model analysis over mountaineous regions.

Status

Finished

Technical Issues

None

Testing

Experiments at DWD showed that the initial noise in COSMO-DE is reduced over mountaineous regions.

Documentation (Presentation of Results, Model Documentation, External Documentation)

Documentation:

2017-01-31 Remove clipping of T_S and T_SO to -0.8 deg C below (partially) snow covered grid points WG6 finish Ulrich Blahak

Description

Previously the surface temperature T_S has been clipped to a maximum of -0.8 deg C for (partially) snow covered soil (W_SNOW > 0 and T_SNOW <= 2 deg C).

However, this clipping propagates also down into the soil via conservation of vertical differences when computing the grid-mean soil temperatures and may cause artificial cold patches of soil in situations with very little snow cover. Clearly this is not appropriate. Also, if there is an insulating effect of the snow on soil temperature, it should already be contained in the input soil temperatures.

Therefore, this artificial clipping has been removed.

Status

Finished

Technical Issues

None

Testing

Does what it should do. Removes unrealistic cold soil temperature patches in partial snow covered areas.

Documentation (Presentation of Results, Model Documentation, External Documentation)

Documentation:

2100-12-01 For ICON input: Interpolation of convective precip rates for moisture enhancement in COSMO WG6 work Ulrich Blahak (DWD)

Description

ICON has a very active convection scheme, which means that initial and boundary conditions derived from ICON have generally less moisture than for example COSMO-EU. This leads to a precipitation gap near the inflow boundary and a considerable spinup zone for precipitation. To reduce this effect in a practical way, the 3D convective rain and snow rates from ICON are interpolated and written to the analysis and boundary condition files so that the COSMO model will be able to convert these rates to mass densities (division by fall speed) and add them either to QR and QS or to QV.

Status

Implemented in int2lm. PRR_CON and PRS_CON can be interpolated either as 2D or 3D fields. But the corresponding COSMO development is still under testing.

Technical Issues

Requires ICON to write out two more 3D fields, which is a heavy burden on the disk space! Therefore, the COSMO part should rely on the 2D fields and use a climatological relative profile instead of the full 3D fields.

Documentation (Presentation of Results, Model Documentation, External Documentation)

Provide specific information on availability of the following documentation required by the COSMO source code management rules:

  • internal product documentation within properly structured code
  • external product documentation: scientific documentation, User Guide and (possibly) implementation documentation
  • process documentation: documentation of the chages to the existing software for inclusion to the version history and the changes log-file.
2.02 release 2014-10-01 2015-05-01 2015-06-30

Release Notes

2.01 release 2014-04-01 2014-09-01 2014-11-30

Release Notes

2014-05-30 Consolidation of GRIB2 and usage of grib_api WG6 finish Uli Schaettler

Description

After implementing the new ECMWF grib_api to read and write GRIB1 and GRIB2 data into INT2LM, tests have started at DWD to port all model I/O to GRIB2. These tests showed that still not all GRIB2 meta data are set properly to run a forecast suite, where INT2LM, data assimilation cycle, forecast model and ensemble mode have to be adjusted. Therefore the implementation has to be adjusted.

Also, changes in the source code of INT2LM and the COSMO-Model are necessary to deal with the non-existent vertical coordinates. It has been agreed that the height field HHL and the full pressure P are transfered from INT2LM to the COSMO-Model and also within the COSMO data assimilation cycle with higher grib packing rate (24 bits per value). Several modules have to be adapted to eliminate the usage of the vertical coordinate parameters.

Status

Nov 2013: Tests (and work) started at DWD

April 2014: Consolidated code has been implemented in DWD versions of INT2LM.

July 2014: DWD switched on operational use of GRIB2 in all models.

Technical Issues

The code has been implemented according to the COSMO-Standards.

Several colleagues at DWD, who were also involved in coding GRIB2 in other models, reviewed the code.

Since July, the code runs operational at DWD in a special DWD version.

Testing

The code has been technically tested in experiments and in the DWD parallel suite, before it was used operationally since July 2014.

Documentation

A special COSMO page for GRIB2 is in preparation.

2014-05-30 SLEVE2 coordinate WG6 finish Guy DeMorsier

Description

A generalized SLEVE (Smooth LEvel VErtical) coordinate with a modified vertical decay of the topographic signature with height is implemented as a new vertical coordinate type in INT2LM and in the COSMO-Model. It can be chosen with the parameter ivctype=4. For a detailed description see Leuenberger, D., M. Koller and C. Schaer, 2010: An improved formulation of the SLEVE coordinate. Mon. Wea. Rev., 138 (9), 3683-3689, DOI: 10.1175/2010MWR3307.1

Basic changes to the INT2LM are in the module vgrid_refatm_utils.f90, in the Subroutines reference_atmosphere_2 and reference_atmosphere_BVconst, where the vertical coordinate values zbk and zbk2 are computed according to the modified formulation:

zbk (k) = SINH( (vc_type%vcflat/svc1)**zn - (vc_type%vert_coord(k)/svc1)**zn ) / SINH( (vc_type%vcflat/svc1)**zn )
zbk2(k) = SINH( (vc_type%vcflat/svc2)**zn - (vc_type%vert_coord(k)/svc2)**zn ) / SINH( (vc_type%vcflat/svc2)**zn )

With zn=1, the original SLEVE coordinate is computed. For the modified SLEVE a value of zn=1.35 is chosen.

Status

Up to February 2014: The modified SLEVE coordinate has been implemented and tested in local MeteoSwiss INT2LM implementations.

March 2014: The code has been given to the Source Code Administrator and to Uli Schaettler for reviewing.

Technical Issues

The code has been given to Uli Schaettler (DWD) to review the implementation (4-eyes principle).

All coding standards are fulfilled.

Testing

The modified SLEVE coordinate is only activitated if the Namelist variable ivctype=4 is set. For other values the results are not changed.

Tests have been performed at MeteoSwiss.

Documentation

An update of the INT2LM User Guide has been provided.

2014-09-15 Implementation of ICON to COSMO interpolation WG6 finish Thorsten Reinhardt

Description

Interpolation of the data from DWD's new global model ICON to the COSMO-grid is implemented.

ICON uses a similar icosahedral grid as GME, but the implementation is rather difficult. GME still uses regular 2D Fortran arrays to store the variables, but ICON chose a full irregular approach using indirect addressing. Therefore, the computation of the ICON grid is rather complex, and it is not computed during model run, but only pre-computed grids are read when the program starts. INT2LM takes over the necessary routines from ICON to deal with this irregular grid and do the horizontal interpolations to the COSMO grid. A new module src_icon_interpol.f90 is implemented for that issue.

Status

ICON to COSMO interpolation has been implemented in the first half of 2014. Since then it is tested.

A preliminary version of INT2LM has been distributed to all COSMO partners mid of October, who whose GME as driving model, to test ICON to COSMO interpolation for their setups.

Technical Issues

The COSMO Coding standards are fulfilled.

The implementation has been cross-checked by U. Blahak and U. Schättler.

Testing

The interpolation is tested in DWD's parallel suite.

Documentation

Extension of INT2LM documentation: How to use ICON data for the COSMO-Model has been documented in a new chapter of the INT2LM User Guide: "Driving Models for the COSMO-Model"

2.00 refVersion 2013-10-12 2013-11-01 2013-11-08

INT2LM 1.24 has been renamed to INT2LM 2.1.

For the Release Notes just see Release Notes of 1.24

1.24 test 2013-10-12 2013-11-01 2013-11-01

Release Notes

This version will be renamed to INT2LM 2.0

1.23 test 2013-08-12 2013-09-30 2013-10-02

Release Notes

1.22 test 2013-04-01 2013-06-28 2013-07-11

Release Notes

2013-08-19 Implementation of grib_api for reading / writing WG6 finish Uli Schaettler

Description

Since some years, the new GRIB standard (GRIB2), defined by WMO, is ready to be used. ECMWF developed an application programmers interface (grib_api), which can be used within programs to read, create and manipulate grib messages for GRIB2, but still also for GRIB1. At DWD it has been decided to use grib_api as the official GRIB library in the future. Also the COSMO partners agreed to use grib_api. Therefore, grib_api will be implemented in the COSMO-Model and the INT2LM in the next few months.

At DWD the implementation is based on using the concept of the shortnames and the tables and definitions provided by grib_api. These tables and definitions have to be coordinated with the COSMO-partners.

In INT2LM, grib_api has been implemented in several steps:

  • First, only reading coarse grid data with grib_api has been implemented (version 1.18)
  • in a second step, also writing data with grib_api has been done (version 1.21)
  • and finally, writing the new general vertical coordinate is now possible (version 1.22)

Status

27.05.13: the new general vertical coordinate has been implemented, but there are still issues with grib_api. Version grib_api 1.11.0 is necessary to compile and link INT2LM with grib_api.

28.06.13: implementation finished; functionality tests ongoing

17.06.13: while restructuring the treatment of the vertical coordinate parameters, a bug in the module src_vert_inter_lm has been found:

  • while computing the boundary layer height, the vertical coordinate parameters akh_in, bkh_in were used to compute the reference pressure on the main levels and to compare it to 85000 Pascal.
  • But if incoming data have vertical coordinate type 2 (height based Gal-Chen coordinate), akh_in and bkh_in are not given in pressure values, but in height values.
  • This has been changed now, so that in all cases the pressure based values (sigm_coord) are used.

11.07.13: new version released as a test version

Technical Issues

Coding Standards: have been met

Functionality tests have been performed

4-eyes Assurance: will be done by DWD colleagues with grib_api experience

Testing

Single Test Cases: have been performed. For GME => COSMO-EU there are no changes of results.

The results for COSMO-EU => COSMO-DE, the results do change because of the bug fix in src_vert_inter_lm.f90

Documentation

A COSMO-web page has been set up to document the implementation and GRIB2 usage. This page is not yet visible (still work in progress). It will be enhanced in the next few weeks.

User Guide has been updated.

2013-08-19 Multi-layer treatment of IFS soil WG6 finish Davide Cesari

Description

With the current interpolation scheme for the IFS soil model, if you use l_multi_layer_lm=.TRUE. and yinput_model='IFS', the soil is first interpolated to the 2-layer soil model levels, and successively interpolated (actually extrapolated) to the multi-layer levels, so input temperature below the COSMO T_CL level gets lost and deep temperature is unrealistic. With a new direct interpolation all the input layers should influence the output, so higher precision and less extrapolation is obtained.

Status

A new direct interpolation scheme has been implemented.

Technical Issues

Coding Standards: are met

Technical Tests: have been performed

The new interpolation is activated when

  • yinput_model='IFS' and
  • l_multi_layer_in=.TRUE. (and of course l_multi_layer_lm=.TRUE.)

which was a forbidden combination before. When l_multi_layer_in=.FALSE. the old behaviour is retained.

So now the new version can be tested.

Testing

Single Test Cases, Experiments:

can now be done by all interested partners.

Documentation

See the release notes of Version 1.22

1.21 test 2012-12-01 2013-03-01 2013-03-22

Release Notes

1.20 test 2012-06-25 2012-08-31 2012-09-28

Release Notes

1.19 test N/A 2012-06-06 N/A

Release Notes

1.18 release N/A N/A 2011-03-11
Release Notes
1.17 release N/A N/A 2011-03-11
Release Notes
1.16 release N/A N/A 2010-12-20
Release Notes
1.15 release N/A N/A 2010-12-10
Release Notes
1.14 release N/A N/A 2010-11-19
Release Notes
1.13 release N/A N/A 2010-10-13
Release Notes
1.12 release N/A N/A 2010-06-14
Release Notes
1.11 release N/A N/A 2010-04-23
Release Notes
1.10 release N/A N/A 2009-12-17
Release Notes
1.09 release N/A N/A 2009-09-03
1.08 release N/A N/A 2009-05-29
Release Notes
1.07 release N/A N/A 2007-11-26
Release Notes
1.06 release N/A N/A 2007-09-07
1.05 release N/A N/A 2007-07-09
1.04 release N/A N/A 2006-01-03
1.03 release N/A N/A 2005-12-12
1.02 release N/A N/A 2005-07-22
1.01 release N/A N/A 2005-04-11