Coefficient File Overview and Usage
RTTOV Coefficients
Obtaining RTTOV coefficients
Coefficient downloads can be accessed from this link or the Downloads drop-down menu above.
If you read coefficients based on the platform and instrument IDs you may need the most recent version of rttov_const.F90 which contains an up to date list of all supported IDs. Place this in src/main/ and recompile. This is not required if you read coefficients by passing the filename to rttov_read_coefs which is the recommended method.
Glossary of terms pertaining to coefficient files
- Predictors – RTTOV v13 introduced a new optical depth parameterisation scheme based on “v13 predictors” (see the RTTOV v13 Science and Validation Report for more details). The v13 predictors support all variable gas combinations and solar radiation: the optional gases are now indicated in the rtcoef filenames, and can also be identified in the headers or by using the rttov_coef_info.exe tool. For the older v7/8/9 predictors, the predictor set determines the available optional trace gases for simulations and whether or not the coefficients support solar calculations and PC calculations. Note that v7 or v8 predictor files for IR instruments may be preferable to the solar v9 predictor files for the same instruments when only simulating IR channels (no solar). Note that the v13 predictor coefficients are recommended for use with RTTOV v13.
- Trace gases – water vapour is mandatory for all simulations. The more additional trace gases supported by the coefficients the slower the simulations, so if speed is a factor and extra gases are not required choose a coefficient file with fewer gases. If a gas is not variable then the gas is included in the “mixed gases” with a suitable reference profile. Reference profiles are provided on the coefficients download page.
- Levels – the RTTOV optical depth calculations are carried out on a fixed set of pressure levels. The majority of optical depth coefficient files are on 54 levels. Only hyperspectral sounders have coefficients on 101 levels. More levels give more accurate simulations at a cost in execution speed. You can provide input profiles to RTTOV on any set of pressure levels: the radiative transfer equation is integrated over the input pressure levels.
- Planck-weighting – the accuracy of simulations for very broad channels (e.g. SEVIRI channel 4 at 3.9 microns) is poor with significant biases noted (~1-2K). To mitigate this, the line-by-line transmittances in the coefficient generation are weighted with the Planck function across the instrument channel and the coefficients are computed for these Planck-weighted transmittances resulting in much reduced biases. Whether coefficients are Planck-weighted or not for a channel can be determined by examining the PLANCK_WEIGHTED section in the coefficient file (if it is not present there are no Planck-weighted channels). The tables on the coefficient download page indicate if coefficient files contain any Planck-weighted channels.
- Band-correction coefficients – these coefficients are used to apply a linear correction to temperature when computing the Planck radiances for the atmospheric layers and also in the conversion of radiances to brightness temperatures. This accounts for the finite spectral width of satellite sensor channels, and is particularly important for relatively broad channels. Band-correction coefficients are generated for all non-hyperspectral IR and MW channels. You can see the band correction coefficients in the FILTER_FUNCTIONS section in the coefficient file: if the offset and slope are 0. and 1. respectively then no band correction is applied.
- Solar simulations – the new v13 predictor optical depth coefficients support solar simulations for channels at wavelengths below 5 microns. When using the older predictors, solar simulations are only supported by the v9 predictors, not the v7/8 predictors.
- Visible/IR cloud/aerosol coefficents – the cloud and aerosol coefficient files must be used with optical depth coefficient files (“rtcoef_*“) containing coefficients for the same set of channels. Subsets of channels can be extracted from optical depth and cloud/aerosol files using the rttov_conv_coef.exe executable. The cloud and aerosol coefficients are independent of the predictor version of the rtcoef_* file. By default the new v13 predictor optical depth coefficient files support all channels (VIS+IR) and there are corresponding cloud/aerosol files are available for all supported sensors. Separate cloud/aerosol files are available for IR channels only for use with IR-only v13 predictor rtcoef_* and the old v7/v8 predictor rtcoef_* files.
- NLTE – the non-local thermodynamic equilibrium correction is only applicable to hi-res IR sounders. Note that the NLTE correction is a “simple” bias correction applied to the standard LTE RTTOV radiances and as such is entirely independent of solar calculations in RTTOV (see user guide).
- PC – Principal Components calculations are only applicable to hi-res IR sounders. There are two PC-based models in RTTOV. PC-RTTOV uses the RTTOV optical depth prediction scheme to compute radiances which are then used as predictors for the PC scores. PC-RTTOV coefficients can currently only be used with v9 predictor coefficient files. It is important to use the optical depth coefficient file with which the PC coefficients were trained. HTFRTC is a separate model which is available through the RTTOV interface and it uses separate coefficient files to RTTOV: see the user guide for details.
- Channel numbering – coefficients based on the v13 predictors by default support all channels for which we have spectral response functions for each sensor. IR-only files are available which are intended to make it easy to replace the older v7/8 predictor coefficients in your application. The channel numbering can be different for IR-only files compared to the all-channel files since channel numbers always start at 1 in RTTOV. Consult the second table on this page, the user guide, or the coefficient file headers for information on the channel numbering.
- SSU PMC shift coefficient files – coefficients are available for SSU which allow for variable CO2 cell pressure in the instrument: these are labelled “pmcshift”.
- “Shifted” coefficient files – coefficients have been produced for AATSR, HIRS and MODIS with modified spectral responses in some channels. These files are labelled with the keyword “shifted”. The changes are empirically determined small shifts in the central wavenumber of some of the channels. The aim of these coefficient files is to address observed biases in the affected channels, but note that the shifted files may not necessarily result in improved simulations compared to the non-shifted files. The shifts are described in the headers of these coefficient files.
Coefficient file format conversion
For MW and non-high resolution IR instruments the ASCII coefficient files can usually be used without any problem. That said, the following notes apply equally well to coefficient files for all instruments. The ASCII hi-res IR sounder coefficient files are typically very large and so HDF5 is the preferred format for distribution of these files. It may be necessary or convenient to convert a given file to a different format or to extract coefficients for a subset of channels to create a smaller file. For example, some users may prefer to use a binary unformatted or HDF5 version of a coefficient file as these are read much faster than ASCII versions.
Converting between file formats and extracting subsets of channels can be achieved using the rttov_conv_coef.exe executable which is found in the bin/ directory of your RTTOV build and is described in Annex A of the user guide. Some examples of usage are given below. Reading HDF5 coefficient files requires RTTOV to have been compiled against the HDF5 library. See the user guide for details on how to do this.
Usage examples
The simplest usage is to convert the format of a file. Note that you do not generally need to specify the input file format: RTTOV automatically determines the file format. For example, to create an ASCII version of an AIRS HDF5 file use the following:
$ rttov_conv_coef.exe --format-out formatted --coef-in rtcoef_eos_2_airs.H5 \ --coef-out rtcoef_eos_2_airs.dat
If you are running simulations for a limited subset of channels you can extract just these channels to a separate file which will naturally be much smaller and will be read in more quickly. For example, to extract channels 10, 25 and 37 from an HDF5 AIRS coefficient file use the following:
$ rttov_conv_coef.exe --format-out hdf5 --coef-in rtcoef_eos_2_airs.H5 \ --coef-out rtcoef_eos_2_airs_subset.H5 --channels 10 25 37
If you have a text file (say, chanlist.txt) containing a white-space-separated list of channel numbers to extract you can do the following:
$ CHANLIST=$(cat chanlist.txt) $ rttov_conv_coef.exe --format-out hdf5 --coef-in rtcoef_eos_2_airs.H5 \ --coef-out rtcoef_eos_2_airs_subset.H5 --channels $CHANLIST
When using cloud and aerosol coefficient files they must contain coefficients for the same channel set as the optical depth coefficient file. If you wish to extract subsets of channels or carry out file format conversions for aerosol and/or cloud coefficients then supply the corresponding aerosol and/or cloud files as input files when using rttov_conv_coef.exe as described above and supply appropriate output filenames. All input files must be of the same format. For example:
$ rttov_conv_coef.exe --format-out formatted --coef-in rtcoef_eos_2_airs.H5 \ --coef-out rtcoef_eos_2_airs.dat --sccld-in sccldcoef_eos_2_airs.H5 \ --sccld-out sccldcoef_eos_2_airs.dat
The same applies to PC coefficient files, but note that in this case any channel list supplied MUST correspond to the list of predictor channels you will use with PC-RTTOV: see the user guide for more details including how to obtain these predictor channel lists.
Another example is extracting IR-only channels from a coefficient file, and, optionally, from the associated cloud/aerosol coefficient files:
$ rttov_conv_coef.exe --format-out formatted \ --coef-in rtcoef_msg_4_seviri_o3co2.dat --coef-out rtcoef_msg_4_seviri_o3co2_ironly.H5 \ --sccld-in sccldcoef_msg_4_seviri.dat --sccld-out sccldcoef_msg_4_seviri_ironly.H5 \ --scaer-in scaercoef_msg_4_seviri_opac.dat --scaer-out scaercoef_msg_4_seviri_opac_ironly.H5 \ --channels 4 5 6 7 8 9 10 11
Important notes on channel numbering
If you read in a subset of channels from a coefficient file using the rttov_read_coefs subroutine with the channels argument, or you read in channels from a coefficient file which has been created by extracting a subset of channels from another coefficient file (as described above), then the N channels you read in will be denoted by the numbers 1, 2, …, N in the chanprof array, and not by the original channel numbers. This also applies to the reconstructed channel list for PC-RTTOV if you supply the channels_rec argument to rttov_read_coefs: the list of reconstructed channels you pass into rttov_direct/tl/ad/k will contain indexes into this list, not the original channel numbers.
When extracting a subset of channels, the channel list should be monotonically increasing in channel number. It is possible to supply channels out of order in some cases which usually results in a coefficient file with re-ordered channels, but this is not recommended (and hence not supported) usage and in particular it must not be applied to hi-res IR sounder files, polarimetric sensor files (e.g. Windsat) or to any MW coefficient files which are to be used with RTTOV-SCATT.
Coefficient file histories
A change log is now being kept of changes to coefficient files. Where files have changed their entries in this log are linked from the “Date of file creation” in the tables on the coefficient download page.