Radiation models

PALM offers a built-in simple and fast radiation model for clear sky conditions. Moreover, an interface allows for using the RRTMG code.

Constant radiation

Not really being a radiation model, this option allows for prescribing the net radiation at the surface (e.g. as driving for the land surface model). The user has the possibility to modify the net radiation during the run via the user interface. For more information, see net_radiation. Note that this scheme limits several parameterizations in the land surface scheme that require shortwave and longwave radiative fluxes. However, the longwave outgoing radiative flux at the surface is estimated from the surface emissivity and skin temperature as in the clear sky model (see below).

Simple clear sky radiation model

A simple clear sky radiation model can be used for simulations without clouds and highly-parametrized radiation fluxes.

Radiation budget

The radiation budget at the Earth's surface reads

R_\mathrm{n} = SW_\mathrm{in} - SW_\mathrm{out} + LW_\mathrm{in} - LW_\mathrm{out}

with Rn, SWin, SWout, LWin, LWout being the net radiation, shortwave incoming (downward), shortwave outgoing (upward), longwave incoming (downward), and longwave outgoing (upward) flux, respectively.

Parameterization of radiative fluxes

The shortwave outgoing radiative flux depends on the surface albedo α:

SW_\mathrm{out} = \alpha\ SW_\mathrm{in}

The longwave outgoing radiative flux can be parameterized as

LW_\mathrm{out} = \epsilon\ \sigma\ T_0^4

where ε is the surface emissivity and σ = 5.67 * 10-8 W m-2 K-4 is the Stefan-Boltzmann constant. T0 is the skin temperature provided by the solver for the surface energy budget.

The longwave incoming radiative flux follows a very simple parameterization:

LW_\mathrm{in} = \epsilon_\mathrm{atm}\ \sigma\ T_1^4


$\epsilon_\mathrm{atm} = 0.8$: Emissivity of the atmosphere\\
$T_1$: Temperature at first grid level

The shortwave incoming radiative flux is calculated from

SW_\mathrm{in} = S_0\ \tau\ \cos(\varPsi) 


$S_0 = 1368 W m^{-2}$: Solar constant\\
$\varPsi$: Zenith angle, depending on time, date and location.

and the transmissivity of the atmosphere τ:

\tau = 0.6 + 0.2\ \cos(\varPsi) 

Input parameters are

  • day of year (1-365)
  • UTC time (0:00 - 23:59)
  • Longitude (-180° - 180°)
  • Latitude (-90° - 90°)

ψ is calculated from the following system of equations:

D = \arcsin \left[ d1 * \sin\left(d2 * day - d3\right) \right]

where D is the declination of the sun with

$d1 = \sin \left(\dfrac{23.45 * \pi}{180}\right)$\\
$d2 = \dfrac{2 \pi}{365}$\\
$d3 = 81\ d2$

The hour angle is then given by

H = 2 \pi \left(\dfrac{t_\mathrm{UTC}}{86400}\right) + lon - \pi

where tUTC is the current UTC time and lon is longitude.

The cosine of the zenith angle ψ is computed as

\cos(\varPsi) = \sin(lat) \sin(D) + \cos(lat) \cos(D) \cos(H)

where lat is latitude.


Since r1585 PALM can be used in combination with the Rapid Radiation Transfer Model for Global Models (RRTMG) radiation code (see e.g. Clough et al. 2005). RRTMG source code is shipped along with PALM, but it is not part of the model (this means that RRTMG is put under a difference licence than PALM, which e.g. forbids reselling of the code). Unlike most embedded modules in PALM, the RRTMG is thus used as external library and linked to the default PALM code. This in turn means that RRTMG must be installed in advance on the host where PALM shall be executed. The next section explains the basics of the coupling to PALM, installation of RRTMG and how to use it in PALM. Please note that RRTMG requires to use the netCDF data format. Also note that the orbital settings are calculated as in the simple clear sky radiation model.


The RRTMG scheme is used as a "black box" in PALM. The main advantage is that radiative effects of clouds are explicitly treated in RRTMG. RRTMG is used as a vertical column model called for each horizontal grid point. Effects of cloud shadows that depend on the declination of the sun and horizontal radiative transfer are neglected at the moment. Moreover, ice clouds are not considered. In principle, the coupling to PALM is realized by performing the following steps each time RRTMG is called:

  1. Provide vertical profiles of actual temperature and water vapor mixing ratio for the LES column at full and half levels of the RRTMG grid
  2. Provide vertical profiles of the in-cloud liquid water path and the effective droplet radius for each grid volume for each LES column in case of clouds
  3. Call RRTMG longwave radiation routine using the above profiles
  4. (is sun is up) call RRTMG longwave radiation routine using the above profiles
  5. RRTMG provides radiative surface fluxes (longwave incoming, longwave outgoing, shortwave incoming, shortwave outgoing) as well as shortwave and longwave heating rates for each grid volume in the LES column. Moreover a tendency for the change in outgoing longwave radiation for a change in surface temperature is provided.
  6. Calculate net radiation

The calculated heating rates are later used as tendency terms in the prognostic equations for temperature. The radiative fluxes are used in the solver for the energy budget of the Earth's surface.

As the radiative transfer is done from the surface to the top of the atmosphere, the LES profiles need to be extended in the vertical direction. Moreover, RRTMG requires profiles of pressure and trace gases in the atmosphere. During initialization, vertical sounding data and trace gas sounding are read from two netCDF files (such sounding data is delivered as two netCDF files with RRTMG and is used by default in PALM. The user can replace these files to adjust the sounding profiles).

The following profiles must be provided to RRTMG:

  • hydrostatic pressure at full and half levels
  • temperature at full and half levels
  • H20 mixing ratio
  • O3 mixing ratio
  • O2 mixing ratio
  • CO2 mixing ratio
  • CH4 mixing ratio
  • N20 mixing ratio
  • CFC11 mixing ratio
  • CFC 12 mixing ratio
  • CFC 22 mixing ratio
  • CCL4 mixing ratio

In order to avoid large gradients at the interface between PALM's upper boundary and the upper atmospheric profiles, temperature and H20 mixing ratio profiles are gradually blended over 5 grid points above the LES domain.

Note that additionally, several flag parameters required by RRTMG are automatically set in PALM.

Calculation of surface albedos

The calculation of the surface albedo components for longwave diffuse, longwave direct, shortwave diffuse, and shortwave direct radiation are parameterized according to Briegleb (1986) and Briegleb et al. (1992). The parameterization involves dynamically changing albedos depending on the cosine of the zenith angle of the sun. The calculation of the albedo is done differently for the following surface types:

  • Ocean
  • Sea ice
  • Snow (not implemented in the land surface scheme yet)
  • Asphalt concrete
  • Land surfaces with strong zenith dependence
  • Land surfaces with weak zenith dependence

For a list of predefined albedo types, see albedo_type. Fore more details, see also radiation_model_mod.f90.


The RRTMG source code for creating an external library can be found under trunk/LIB/rrtmg. It is accompanied by an installation script called install_rrtmg. In order to install RRTMG, perform the following steps:

  1. Copy all files from trunk/LIB/rrtmg to the host where PALM/RRTMG shall be executed, e.g. $HOME/lib/rrtmg_source. The installation will not work if you try to install it from the source directory. Moreover, the installtion source direcotry must be different to the one where the executeables are.
  2. Open install_rrtmg and modify the following lines:
     fopts="-fltconsistency -O3 -cpp -r8 -nbs -convert little_endian -I /muksoft/packages/netcdf/4_intel/include"
     fopts_trace="-fpe0 -C -check nooutput_conversion -debug -traceback -g -w -xT -O0 -I /muksoft/packages/netcdf/4_intel/include"
    For a proper configuration, see your .palm.config file for the respective computer architecture where RRTMG shall be installed. Also, add the path to the netCDF library. fopts_trace is only required if you want to have debug options enabled. Use the switch parameters compile_static=true, compile_shared=true, compile_static_debug=false, and compile_shared_debug=false to set flags for compilation of RRTMG as static library, shared library (recommended), static library with debug options (recommended), and shared library with debug options, respectively. Save your changes.
  1. Execute install_rrtmg with option "-p", which defines the path where the library shall be installed, e.g.:
    ./install_rrtmg -p $HOME/lib/rrtmg
    The script will create up to four directories depending on the setting of the flag parameters (see above), each including one installation of RRTMG:

with each directory having the following subdirectories:

  1. Open your .palm.config file and add -D__rrtmg to %cpp_options of the host where PALM/RRTMG shall be used. Moreover, add the path to the library to %compiler_options and %linker_options, e.g.
    %compiler_options <...> -I /home/user/lib/rrtmg/shared/include
    %linker_options   <...> -L/home/user/lib/rrtmg/shared/lib -lrrtmg
    when a shared RRTMG library was installed under "/home/user/lib/rrtmg/shared". A template file for host crayb is available here

Also add the following line to the list of input files (in:locopt can be modified to meet the needs of the user):

rrtmg_lw.nc              in:locopt     d3#:d3r  $base_data/$run_identifier/INPUT    _rlw nc
rrtmg_sw.nc              in:locopt     d3#:d3r  $base_data/$run_identifier/INPUT    _rsw nc
RAD_SND_DATA             in:locopt     d3#:d3r  $base_data/$run_identifier/INPUT    _rsnd nc
  1. To be able to use RRTMG, the LD_LIBRARY_PATH variable has to be extended by the path where RRTMG library (plus "/lib" added) was installed. For convenience, setting should be done in the respective profile of the users default shell (e.g. in .profile, if ksh is used), e.g.:
      export LD_LIBRARY_PATH=$HOME/lib/rrtmg/shared/lib:$LD_LIBRARY_PATH

when RRTMG was installed as shared library under "$HOME/lib/rrtmg/shared/". You may have to login again in order to activate the profile settings.

  1. Recompile PALM for the respective host. The RRTMG library will be included either as static or shared library, depending on your configuration.

Job preparation

RRTMG requires various vertical profile data that must be provided in the INPUT directory of the job and labeled with underscore _rsw and _rlw, respectively. The required data format is NetCDF. Standard profiles are shipped with the RRTMG library and are located under trunk/LIB/rrtmg/data. Additionally, the user can overwrite the standard trace gas profiles by adding a third NetCDF file labelled as _rsnd that must follow the same data structure as the standard files. The INPUT directory should then contain at least the following files:

<run_identifier>_rlw (e.g. a copy of rrtmg_lw.nc)
<run_identifier>_rsw (e.g. a copy of rrtmg_sw.nc)

and optionally

<run_identifier>_rsnd (trace gas sounding data provided by the user)

The _p3d file should contain a NAMELIST for radiation, e.g.:

 &radiation_parameters radiation_scheme = 'rrtmg',
                       albedo_type = 0,
                       dt_radiation = 60.0, 
                       albedo_lw_dir = 0.2,
                       albedo_lw_dif = 0.2,
                       albedo_sw_dir = 0.2,
                       albedo_sw_dif = 0.2,

and the &initialization_parameters namelist should include an initial date and time, and geographical longitude:

 &initialization_parameters ...
         longitude = 0.0,
         origin_date_time = "2019-10-14 08:00:00 +00"

A complete example file can be found here.


  • Briegleb, BP, et al. 1986. Comparison of regional clear-sky albedos inferred from satellite observations and model computations. Journal of Climate and Appl. Meteorol. 25.2, 214-226.
  • Briegleb, BP. 1992. Delta-Eddington approximation for solar radiation in the NCAR community climate model, J. Geophys. Res., 97(D7), 7603–7612, doi:10.1029/92JD00291.
  • Clough SA, Shephard MW, Mlawer EJ, Delamere JS, Iacono MJ, Cady-Pereira K, Boukabara S, Brown PD. 2005. Atmospheric radiative transfer modeling: A summary of the aer codes, short communication. J. Quant. Spectrosc. Radiat. Transfer 91: 233–244.
Last modified 12 months ago Last modified on Sep 10, 2019 6:13:32 PM