RTE+RRTMGP's GitHub Pages site contains a mix of automatically-generated documentation and hand-written descriptions. The documentation is incomplete and evolving. Thanks to the folks at Sourcery Institute for help in setting this up.
For the moment the Wiki may also be useful.
This is the repository for RTE+RRTMGP, a set of codes for computing radiative fluxes in planetary atmospheres. RTE+RRTMGP is described in a paper in Journal of Advances in Modeling Earth Systems.
RRTMGP uses a k-distribution to provide an optical description (absorption and possibly Rayleigh optical depth) of the gaseous atmosphere, along with the relevant source functions, on a pre-determined spectral grid given temperatures, pressures, and gas concentration. The k-distribution currently distributed with this package is applicable to the Earth's atmosphere under present-day, pre-industrial, and 4xCO2 conditions.
RTE computes fluxes given spectrally-resolved optical descriptions and source functions. The fluxes are normally summarized or reduced via a user extensible class.
- Set environment variables
FC
(the Fortran 2003 compiler) andFCFLAGS
(compiler flags). Examples are provided in theCompiler-flags.md
file. - Set environment variables
RRTMGP_ROOT
to the top-level RTE+RRTMGP directory andRTE_KERNELS
toopenacc
if you want the OpenACC/OpenMP kernels rather than the default. make libs
in the top-level directory will make the RTE and RRTMGP libraries.- The examples and testing codes use netCDF. Set the variables
NCHOME
andNFHOME
to the roots of the C and Fortran netCDF installations, thenmake tests
to build and run these. (A few files need to be downloaded forexamples/rfmip-clear-sky
. The default is to download these withwget
but a Python script is also available.) - Evaluating the results of the tests requires
Python
and the packages described inenvironment.yml
. Comparisons can be made withmake check
in the top level directory. make
invoked without a target in the top level attempts all three steps.
Two examples are provided in examples/
, one for clear skies and one including clouds. Directory tests/
contains regression testing (e.g. to ensure that answers are independent of orientation) and unit testing (to be sure all the code paths are tested). See the README file and codes in each directory for further information.