Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Jump to: ecCKDARTDECO-PyKdis | RRTMG | RRTMGP | KBIN | PSLACKD | SOCRATES | CMA

A Correlated K-Distribution (CKD) tool generates CKD gas-optics models in a number of steps, some which may require human intervention. One of the most interesting parts of the CKDMIP project will be to understand how differences in how each step is performed feed through to differences in the accuracy of fluxes and heating rates. The page is an attempt to gather the necessary information about the CKD tools participating in CKDMIP, specifically:

...

Other relevant information...

ecCKD

Reference: Hogan and Matricardi (JAMES 2022), building on ideas from Hogan (JAS 2010), although there have been several improvements since then such as extension to the shortwave.

Implementation details: ecCKD consists of a number of C++ programs called from shell scripts. Permission has been requested to release it to others under the Apache 2.0 open source license, although some tidying would be needed.

...

Choosing number of g points: The number of g points for a given gas depends on its transmission over the band for airmass = 2 computed for a test atmosphere (usually US62).

...

There are two different versions, "full" and "reduced" with the numbers of g points as shown in the table below:

Atmosphere transmission

Ng "full"

Ng "reduced"

0   < T ≤ 0.05

10

3

0.05

...

< T ≤ 0.5

...

20

5

0.5 < T ≤ 0.8

...

15

5

0.8 < T ≤ 0.9

...

10

5

0.9 < T ≤ 0.99

...

5

5

0.99 < T ≤ 0.999

...

3

2

0.999 < T ≤ 1.0

...

1

1

Partitioning g space for one gas: For each gas, the partition of g space is obtained by first setting a Gaussian quadrature grid over the log10(k) range for a reference pressure and temperature (most likely corresponding to an altitude where the absorption will be the most important in the atmosphere). This grid is then mapped to the g space and the corresponding g partition is then used for all other pressures and temperatures.

...

Computing Planck function for each longwave g point: The Planck function is not accounted for in computing the coefficients (i.e. not accounted for in computing g).Computing incoming solar radiation for each shortwave g point: The incoming solar spectral flux is accounted for in computing g as a weighting function of the spectral absorption coefficientsemission in a particular band and for a particular layer of the atmosphere is computed by considering the average Planck function over the spectral domain covered by the band (DISORT approach). Each g point in a band uses this Planck function in the radiative transfer, and then then a weighted average of the fluxes is computed according to the weight given to each g pointThe Planck function is not accounted for in computing the coefficients (i.e. not accounted for in computing g).

Computing incoming solar radiation for each shortwave g point: The incoming solar spectral flux is accounted for in computing g as a weighting function of the spectral absorption coefficients.

Other relevant information: Two versions of the CKD tool are considered. One is based on the spectral reordering scheme described above. The second method uses the Rank Transmutation Strategy described by Andre et al. (2018), in which case the power exponential germ with medium resolution mapping functions (1,000 points) is used.

KBIN

Reference: Doppler et al. (2014)

Implementation details: Code in Python (2-clause BSD license)

Selecting band boundaries: There are no restrictions on the width of a band.

Line-by-line model: LBLRTM version 12.8; in fact we use only the LBL calculations available from the CKDMIP FTP site. In-house version is CGASA (Doppler et al., 2014)

Reordering spectrum: The spectra of the “median” CKDMIP present-day profile are reordered. For the “climate” application we reorder the major gases H2O, O3, CO2, CH4, N2O and a composite gas of 02+N2. The mapping is unique for all pressure levels and done for all gases together. We use uncorrelated k-binning, where the mapping function is found by iteratively optimizing the reordering of a “layer and atmosphere absorption coefficient” (average of total atmosphere and layer absorption coefficient) at each layer by comparing the user-defined error tolerance for total atmosphere and layer transmission. This ensures that the final mapping function is a optimal mapping for total and layer transmission error tolerance.

Choosing number of g points: The number of g points is increased iteratively until either the specified accuracy conditions are met or a specified maximum number of g points is reached.

Partitioning g space for one gas: The partitioning of g space is optimized in our k-binning algorithm in order to satisfy the accuracy conditions.

Partitioning g space for multiple gases: Binning is done for all gases together. Same g points for all gases.

Computing absorption of one gas: The averaging per gas and g point can be specified by the user, default is to average the optical thickness/cross sections.

Computing combined absorption of multiple gases: The optical thicknesses of the individual gases are added according to their relative abundance. Thus the amount of foreign continuum absorption is related to the profile which is used for the k-binning.

Computing Planck function for each longwave g point: We are currently working on solar spectral range only, the longwave part is in revision. The plan is to calculate the Planck function exactly at the high resolution points and then average the radiance in the g space. But this not yet finalized.

Computing incoming solar radiation for each shortwave g point: Can be specified by the user. Default method is to convolve the band with the solar irradiance spectra (Chance and Kurucs, 2010) and normalize after. This is equivalent to a band average over the g point. During the optimization of the number and width of g points the relative solar spectral irradiance is considered (wavenumbers with low intensities do contribute less).

RRTMG

Reference(s): Mlawer et al. (1997).  Also Iacono et al. (2008) has some useful information.

Implementation details: The scripts and code are in a combination of bash scripts and FORTRAN (including a Numerical Recipe sorting code). This software is not suitable to be used by others.

Selecting band boundaries: The main consideration is to keep the number of major absorbers to no more than two. The variation in the source function is also considered.

Line-by-line model: LBLRTM. The most recent version of RRTM_LW (3.3) uses LBLRTM_v6.0, an unreleased AER line file for H2O and HITRAN 1996 for other species, and the MT_CKD_2.5 continuum.  The most recent version of RRTMG_LW (5.0) uses the same, except it uses CKD_2.4. (An upcoming version (5.1) uses MT_CKD_2.5.)  RRTM_SW and RRTMG_SW use LBLRTM_5.21, HITRAN 1996, and CKD_2.1. 

Reordering spectrum: Reordering is done separately at each pair of pressure and temperature values.

Choosing number of g points: The number is fixed at 16 initially per band (RRTM) and then reduced manually for RRTMG to differing values in each band such that an integrated and per band clear-sky accuracy of about 1 Wm-2 for flux and 0.1 K/day for heating rate is retained relative to RRTM.

Partitioning g space for one gas: The partitioning is the same in each 16 g-point band. (See Table 2 in Mlawer et al. 1997.)  A partitioning into ~10 is chosen by Gaussian quadrature, and then the last segment is partitioned more finely to resolve the ‘elbow’ in k(g) that many bands have.

Partitioning g space for multiple gases: The g-values are the same for single and multiple gases. The major gases (max two) are combined into a single effective gas using the ‘binary species parameter’ and the contributions of minor gases are added to total using a similar mapping.

Computing absorption of one gas: Straight averaging of LBL optical depths is performed to obtain the absorption of one gas in one g point, then divided by column amount (effective column amount in the case of major species). The pressure/temperature/concentration dependence of absorption is handled in the gas-optics model as a look-up table.

Computing combined absorption of multiple gases: Major gases treated as one gas, minor gases added in using consistent mapping.

Computing Planck function for each longwave g point: A mapping consistent with the one that defines the k-distribution is applied to get the fraction of the band’s total Planck associated with each g-point. This is multiplied by the total Planck for the band (for that layer or level).

Computing incoming solar radiation for each shortwave g point: A mapping consistent with the one that defines the k-distribution is applied to get the total solar irradiance associated with each g-point. This mapping is applied at a pressure level where ~10% of the incoming irradiance is absorbed (at surface layer if less than 10% is absorbed in the column. The Kurucz solar spectrum is used in all versions of RRTM_SW and versions of RRTMG_SW earlier than RRTMG_SW_v4.0, and the NRLSSI2 solar function, including the capability to represent solar variability through time-averaged or time-specific values of facular brightening and sunspot dimming, is included in all versions of RRTMG_SW_v4.0 and later.  

Other relevant information...

A very minor amount of hand-tuning of k’s was done in one or two bands.

RRTMGP

Reference(s): Pincus et al. (2019)Also, Mlawer et al. (1997) and Iacono et al. (2008) may have some useful information.

Implementation details: A series of bash scripts that execute FORTRAN code.  It is potentially suitable for others to use, but is in the process of being fixed up and archived so will be more useable in a few months.

Selecting band boundaries: The band boundaries were mostly inherited from RRTMG, with some minor tweaks. Therefore the criteria were the same as for RRTMG:  The main consideration is to keep the number of major absorbers to no more than two. The variation in the source function is also considered.

Line-by-line model: LBLRTM v12.8, line parameter file aer v 3.6 (itself based to a large extent on the HITRAN 2012 line file), and MT CKD 3.2.

Reordering spectrum: Reordering is done separately at each pair of pressure and temperature values.

Choosing number of g points: Fixed at 16 initially per band (RRTM) and then reduced (process underway) to as low as possible until accuracy is considered compromised.

Partitioning g space for one gas: The partitioning is the same in each 16 g-point band. (See Table 2 in Mlawer et al. 1997.)  A partitioning into ~10 is chosen by Gaussian quadrature, and then the last segment is partitioned more finely to resolve the ‘elbow’ in k(g) that many bands have.

Partitioning g space for multiple gases: The major gases (max two) are combined into a single effective gas using the ‘binary species parameter’ and the contributions of minor gases are added to total using a similar mapping.

Computing absorption of one gas: Straight averaging of LBL optical depths is performed to obtain the absorption of one gas in one g point, then divided by column amount (effective column amount in the case of major species). The pressure/temperature/concentration dependence of absorption is handled in the gas-optics model as a look-up table.

Computing combined absorption of multiple gases: Major gases treated as one gas, minor gases added in using consistent mapping.

Computing Planck function for each longwave g point: A mapping consistent with the one that defines the k-distribution is applied to get the fraction of the band’s total Planck associated with each g-point. This is multiplied by the total Planck for the band (for that layer or level).

Computing incoming solar radiation for each shortwave g point: A mapping consistent with the one that defines the k-distribution is applied to get the total solar irradiance associated with each g-point. This mapping is applied at a pressure level where ~10% of the incoming irradiance is absorbed (at surface layer if less than 10% is absorbed in the column.  The AER high-resolution solar spectrum is used, which has an envelope consistent with the NRLSSI2 medium-resolution solar spectrum, but has incorporated the high-resolution features of the Kurucz solar spectrum (in (roughly) the IR, visible, and UV) and the Toon solar transmittance spectrum (roughly NIR). The code includes the capability to represent solar variability through time-averaged or time-specific values of facular brightening and sunspot dimming.

Other relevant information...

Significant hand-tuning of k’s was done in many bands to increase the code’s accuracy. This is described further by Pincus et al. (2019).

PSLACKD

Reference: Kato, S., T. P. Ackerman, J. H. Mather, and E. E. Clothiaux, 1999: The k-distribution method and correlated-k approximation for a Shortwave Radiative Transfer Model, J. Quant. Spectrosc. Radiat. Transfer, 62, 109-121.

Implementation details: Fortran, C and IDL

Selecting band boundaries: There is no restriction on band width, except that the maximum band width is limited by the line-by-line code outputs that are used to generate k-distributions.

Reordering spectrum: Reordering is done separately at each pressure level. However, in order to select the same number of g points, determination of the number of g points is done using all pressure levels. 

Choosing number of g points: It is automated using a common threshold of transmission for all pressure and temperature, and water vapor concentrations. 

Partitioning g space for one gas: Gaussian quadrature is used for the shortwave and longwave.

Partitioning g space for multiple gases: We can handle both random overlap and separating major and minor gases. The submitted files used fixed minor gas concentrations. The concentration of minor gases is fixed in line-by-line computations to generate inputs. Two separate concentrations of the major gas are used so that the absorption cross section is computed by interpolation.

Computing absorption of one gas: Absorption cross sections are averaged in logarithmic space for pressure and concentration, linear for temperature. 

Computing combined absorption of multiple gases: Minor gas absorption is included in line-by-line computations. The k-table is built with additional dimension of minor gas concentrations to allow the variation of the minor gas concentration.

Computing Planck function for each longwave g point: The Planck function is first computed for the band and then partitioned amongst the g points.

Computing incoming solar radiation for each shortwave g point: The solar constant for the band is weighted by the gaussian weight. The Coddington Insolation Spectrum is used. 

SOCRATES

Reference(s): There is no definitive paper; the code was initially written by Mark Ringer and John Edwards for the simulation of satellite channel radiances (Ringer et al., 2003: http://dx.doi.org/10.1256/qj.02.61), but it was subsequently heavily modified by James Manners for use in the Met Office Global Atmosphere configurations (e.g. Walters et al., 2019: https://gmd.copernicus.org/articles/12/1909/2019/), and with David Amundsen for use in Exoplanet configurations (Amundsen et al., 2014: http://dx.doi.org/10.1051/0004-6361/201323169).

Implementation details: Fortran 2003, 3-clause BSD licence. Free to use/develop.

Selecting band boundaries: Band boundaries are chosen principally to minimize the number of major gases in each band (ideally one). Also, the surface, clouds, aerosols, Rayleigh scattering and the Planck emission all use band-average properties.

Line-by-line model: Line-by-line absorption coefficients are generated internally using HITRAN line-lists or cross-sections as input. It is also possible to use absorption data in an input netCDF file that has been generated externally by, for example, LBLRTM or ExoCross.

Reordering spectrum: An optimal mapping is done using the reordering of effective absorption coefficients from the top-of-atmosphere down to an optical depth of one. This is used for the g-space partitioning and calculation of weights. A new reordering is then done separately for each pressure and temperature in the look-up table to calculate the actual k-terms used for each g-point at a given pressure and temperature (P/T).

Choosing number of g points: Can be specified manually or automated to arrive at the number of g-points that will bring the error in transmission below a given tolerance for each gas and band separately.

Partitioning g space for one gas: g-space is partitioned using the effective absorption coefficients (see ‘re-ordering spectrum’ above). The points are determined to give an equal spacing in the log of the absorption, with extra consideration given to the first point (least absorption) where an assumption is made for the range that can be taken as ‘grey’. Points are combined if there are no data within a given interval. Optionally, this partitioning can be preceded by splitting the absorption coefficients into three groups according to whether their absorption peaks at the top-of-atmosphere, mid-atmosphere or surface (with groups being automatically combined where absorption is very weak). This is a way of overcoming the inaccuracies due to the 'correlated' assumption in the correlated k-distribution method.

Partitioning g space for multiple gases: Not done. Gas k-terms are kept separate in the configuration, but the ‘optimal mapping’ is saved to the spectral file for potential use within the radiative transfer solver for the method of ‘exact-major overlap’.

Computing absorption of one gas: The k-term for a given g partition at a given P/T is found by determining the absorption that would give the smallest error in transmission for a range of path-lengths up to a maximum path-length supplied. Pressure/temperature dependence of absorption is handled in a look-up table. The concentration dependence of the water vapour continuum and collision-induced absorption are handled separately (two methods are available, each assuming only a dependence on concentration and temperature, not pressure).

Computing combined absorption of multiple gases: . Gas overlap is assumed to be random for the method of Equivalent Extinction (see Edwards, 1996: http://dx.doi.org/10.1175/1520-0469(1996)053%3C1921:ECOIFA%3E2.0.CO;2, or more concisely Amundsen et al., 2017: http://dx.doi.org/10.1051/0004-6361/201629322, section 3.3, which also covers the shortwave treatment). A reference method of ‘Exact-major overlap’ is also available that considers the spectral overlap with the major gas exactly using the ‘optimal mapping’ for each gas.

Computing Planck function for each longwave g point: Planck function is computed for the band and applied according to the g-point weights.

Computing incoming solar radiation for each shortwave g point: g-point weights are calculated using a solar spectral weighting (the exact spectrum used depends on configuration – the GA7 configuration uses NRLSSI data meaned over the period 2000-2011). The solar flux per band and the g-point weights can be varied at runtime according to a varying solar spectrum.

CMA

Reference(s): Zhang et al., 2003: An optimal approach to overlapping bands with correlated k distribution method and its application to radiative calculations, J. Geophys. Res., 108(D20), 4641, doi:10.1029/2002JD003358; Zhang et al., 2005: A Comparison Between the Two Line-by-Line Integration Algorithms[J]. Chinese Journal of Atmospheric Sciences, 2005, 29(4): 581-593. doi:10.3878/j.issn.1006-9895.2005.04.09; Zhang et al., 2006: The effects of the choice of the k-interval number on radiative calculations, doi:10.1016/j.jqsrt.2005.05.090.

Implementation details: Coded in Fortran.

Selecting band boundaries: We have different narrow band schemes for various research purpose to balance the accuracy and speed of radiative transfer computations. In general, the number of major gases and the variation in the Planck function in each band are taken into consideration.

Line-by-line model: All the absorption coefficients are calculated by LBLRTM v12.8; They are put into LBLZS2000 (Zhang et al., 2005) radiative transfer model to calculate fluxes and cooling rates in our calculation.

Reordering spectrum: We have a unique mapping from wavenumber to g space. Reordering for the major gas in each band is done at a reference pressure and temperature level, while the absorption coefficients of other levels and other gases are following the reference reordering. See Zhang et al. (2003) for details.

Choosing number of g points: We have an automated procedure to choose g points for every band. See Zhang et al. (2006).

Partitioning g space for one gas: The partitioning of g space is optimized on the basis of Gaussian Quadrature in order to satisfy the accuracy conditions. We make following changes on each Gaussian Quadrature point:

  PN(IG)=2*WGT(IG)*XG(IG)

  PNUJ(IG)=XG(IG)**2

where XG(IG) and WGT(IG) are the initial abscissa and Gaussian weight respectively, PNUJ(IG) and PN(IG) are the abscissa and Gaussian weight we used.

Partitioning g space for multiple gases: The partitioning of g space is the same for every gas.

Computing absorption of one gas: The absorption coefficients computed from LBLRTM v12.8 are first reordered, and then the effective absorption coefficients are obtained by the above Gaussian Quadrature, i.e., they are averaged with about 100 absorption coefficients at each g point. These effective absorption coefficients are given as a look-up table in 22 pressure and 3 temperature, independent of concentration.

Computing combined absorption of multiple gases: We have three methods for overlapping band based on completely correlated, completely uncorrelated, and partly correlated, which depend on each band. See Zhang et al. (2003).

Computing Planck function for each longwave g point: The Planck function is first computed for the band mean and then partitioned amongst the g points.

Computing incoming solar radiation for each shortwave g point: The band-mean of incoming solar radiation is computed for every shortwave band, and the value for each g point is obtained by Gaussian weights. The solar spectrum is from ‘mean-ssi_nrl2.nc’ in the CKDMIP software.