CCPP Scientific Documentation
v4.1.0
subroutine rrtmg_lw::rtrn ( real (kind=kind_phys), dimension(nbands), intent(in)  semiss,
real (kind=kind_phys), dimension(nlay), intent(in)  delp,
real (kind=kind_phys), dimension(0:nlp1), intent(in)  cldfrc,
real (kind=kind_phys), dimension(nbands,nlay), intent(in)  taucld,
real (kind=kind_phys), dimension(ngptlw,nlay), intent(in)  tautot,
real (kind=kind_phys), dimension(nbands,0:nlay), intent(in)  pklay,
real (kind=kind_phys), dimension(nbands,0:nlay), intent(in)  pklev,
real (kind=kind_phys), dimension(ngptlw,nlay), intent(in)  fracs,
real (kind=kind_phys), dimension(nbands), intent(in)  secdif,
integer, intent(in)  nlay,
integer, intent(in)  nlp1,
real (kind=kind_phys), dimension(0:nlay), intent(out)  totuflux,
real (kind=kind_phys), dimension(0:nlay), intent(out)  totdflux,
real (kind=kind_phys), dimension(nlay), intent(out)  htr,
real (kind=kind_phys), dimension(0:nlay), intent(out)  totuclfl,
real (kind=kind_phys), dimension(0:nlay), intent(out)  totdclfl,
real (kind=kind_phys), dimension(nlay), intent(out)  htrcl,
real (kind=kind_phys), dimension(nlay,nbands), intent(out)  htrb 
)
private

Original Code Description: this program calculates the upward fluxes, downward fluxes, and heating rates for an arbitrary clear or cloudy atmosphere. The input to this program is the atmospheric profile, all Planck function information, and the cloud fraction by layer. A variable diffusivity angle (secdif) is used for the angle integration. Bands 2-3 and 5-9 use a value for secdif that varies from 1.50 to 1.80 as a function of the column water vapor, and other bands use a value of 1.66. The gaussian weight appropriate to this angle (wtdiff =0.5) is applied here. Note that use of the emissivity angle for the flux integration can cause errors of 1 to 4 \(W/m^2\) within cloudy layers. Clouds are treated with a random cloud overlap method.

Parameters
semisslw surface emissivity
delplayer pressure thickness (mb)
cldfrclayer cloud fraction
taucldlayer cloud opt depth
tautottotal optical depth (gas+aerosols)
pklayintegrated planck function at lay temp
pklevintegrated planck func at lev temp
fracsplanck fractions
secdifsecant of diffusivity angle
nlaynumber of vertical layers
nlp1number of vertical levels (interfaces)
totufluxtotal sky upward flux \((w/m^2)\)
totdfluxtotal sky downward flux \((w/m^2)\)
htrtotal sky heating rate (k/sec or k/day)
totuclflclear sky upward flux \((w/m^2)\)
totdclflclear sky downward flux \((w/m^2)\)
htrclclear sky heating rate (k/sec or k/day)
htrbspectral band lw heating rate (k/day)

rtrn General Algorithm

  1. Downward radiative transfer loop.
  2. Compute spectral emissivity & reflectance, include the contribution of spectrally varying longwave emissivity and reflection from the surface to the upward radiative transfer.
  3. Compute total sky radiance.
  4. Compute clear sky radiance
  5. Upward radiative transfer loop.
  6. Process longwave output from band for total and clear streams. Calculate upward, downward, and net flux.

References bpade, eps, exp_tbl, f_one, f_zero, fluxfac, heatfac, lhlw0, lhlwb, module_radlw_parameters::nbands, module_radlw_parameters::ngb, module_radlw_parameters::ngptlw, tau_tbl, tblint, tfn_tbl, and wtdiff.

Referenced by rrtmg_lw_run().