RTTOV v11 Code Updates
A new Python package pyrttov has been created which provides an object-oriented Python interface to RTTOV. This is very similar to the C++ classes provided with RTTOV v11.3. The package is available here in this file: rttov_wrapper_pyrttov_20191219.tar.gz. This should be extracted in the top level of your RTTOV v11.3 installation. The wrapper documentation in docs/rttov-wrapper.pdf has been updated. The pyrttov package is in wrapper/pyrttov/ and an example Python script wrapper/pyrttov_example.py has been included. The update also includes the two bug fixes in the wrapper Fortran source code (see the list of known bugs below) so you should recompile RTTOV after extracting this update to implement these bug fixes.
Known bugs and issues
Please report any bugs you find in RTTOV using the NWP SAF Feedback Form. The official release package for the latest version doesn’t contain the bug fixes or updates listed here under the latest version so you should apply any fixes provided below. Bugs in earlier versions have been fixed in the latest version.
|19/12/2019||Bug - fixed||Affects: RTTOV wrapper when running simulations simultaneously for multiple instruments.
Issue: the code will fail due to some variables being shared between instances in the main subroutines of the wrapper interface.
Fix: download this file to the src/wrapper/ directory, and recompile RTTOV (a clean compilation is not necessary).
NB This fix also includes the wrapper bug fix dated 21/01/2016 below.
|16/08/2017||Bugs - fixed||Array bounds errors occur with the BRDF atlas if the latitude is set to exactly -90 degrees or if the longitude is set to exactly 180 degrees.
In addition the ocean and coastal water reflectance spectra from the USGS Digital Spectral Library have been incorrectly sampled in wavenumber space leading to incorrect fixed reflectances for sea-surface profiles being returned by the BRDF atlas. The "old" (incorrect) and "new" (corrected) spectra can be seen in the following plots (note that the precision of the data has also been increased in the corrected spectra):
- ocean water spectrum
- coastal water spectrum
A code fix is available: copy this updated source file to src/brdf_atlas/ and recompile RTTOV.
|16/08/2017||Bug - fixed||An array bounds error occurs with the UWIRemis atlas if the latitude is set to exactly -90 degrees.
A code fix is available: copy this updated source file to src/emis_atlas/ and recompile RTTOV.
|21/04/2017||Bug - fixed||In the C++ wrapper there is a problem with some namespace specifications which cause compilation failures with newer versions of gcc/g++.
Code fixes are available: download the files Rttov.h and RttovSafe.h, replace the existing files in the top-level wrapper/ directory, and recompile.
|10/02/2017||Bug - fixed||There is an error in the code which converts gas units when the input profile uses kg/kg. This only affects simulations for which profiles(:)%gas_units=1 (i.e. the input profiles are in kg/kg) and where variable trace gases other than water vapour are input to RTTOV. MW simulations and IR simulations where all optional trace gases are omitted are not affected. For affected simulations, the impact generally increases as the water vapour content increases. The impact is generally of the order of a few hundredths of a Kelvin, but for extremely moist profiles the impact can be 0.1-0.2K.
A code fix is available: download the file rttov113_bugfix_20170210_gas_units_kgkg.tar, untar it from within the src/ directory and recompile RTTOV.
|16/11/2016||Bug - fixed||There is a memory leak when reading ASCII PC-RTTOV coefficient files.
A code fix is available: download the file rttov_read_ascii_pccoef.F90 to src/coef_io/ and recompile RTTOV.
|17/08/2016||Bug - fixed||There is a memory leak when running "clear-sky" MW simulations with cloud liquid water profiles (i.e. for opts%rt_mw%clw_data = .true.).
A code fix is available: download the file rttov_alloc_traj.F90 to src/main/ and recompile RTTOV.
|19/04/2016||Bug - fixed||There is a bug in the calculation of the dnclear radiances (downwelling radiance at the surface) in the secondary radiance structure when the do_lambertian option is enabled.
A code fix is available: download the file rttov_integrate.F90 to src/main/ and recompile RTTOV.
|02/02/2016||Bug - fixed||There is a bug which prevents the GUI running with matplotlib v1.5. This can be fixed by downloading (right click, "Save As...") wxmpl.python, rename it to "wxmpl.py" and replace the existing version in gui/rview/.|
|21/01/2016||Bug - fixed||The Python/C++ wrapper will seg fault when initialising the BRDF atlas for use with multiple instruments. There is no problem if initialising the atlas for a specific instrument.
A code fix is available: download this file to the src/wrapper/ directory and recompile RTTOV.
NB This fix also includes the wrapper bug fix dated 19/12/2019 above.
|30/09/2013||Bug - outstanding||There is a problem with the aggregate particle shape parameterisation (profile%ish = 2) when used with any of the four parameterisations for ice particle effective diameter (profile%idg = 1-4) or when the effective diameter is input explicitly in profile%icede. This results in erroneous simulations in the range 10-12 microns. This does not affect the hexagonal particle shape (profile%ish = 1) or the new Baran ice particle scheme. More details are available in this forum post which illustrates the impact on simulated BTs.
Users are recommended to use the Baran ice particle scheme for cloudy IR simulations. RTTOV v11.2 introduced an updated parameterisation which is selected by setting profile%ish = 4. It is planned to retire the older ice parameterisations based on effective diameter in RTTOV v12.