CCPP SciDoc v7.0.0  v7.0.0
Common Community Physics Package Developed at DTC
 
Loading...
Searching...
No Matches

◆ rrtmg_lw_run()

subroutine, public rrtmg_lw::rrtmg_lw_run ( real (kind=kind_phys), dimension(:,:), intent(in) plyr,
real (kind=kind_phys), dimension(:,:), intent(in) plvl,
real (kind=kind_phys), dimension(:,:), intent(in) tlyr,
real (kind=kind_phys), dimension(:,:), intent(in) tlvl,
real (kind=kind_phys), dimension(:,:), intent(in) qlyr,
real (kind=kind_phys), dimension(:,:), intent(in) olyr,
real (kind=kind_phys), dimension(:,:), intent(in) gasvmr_co2,
real (kind=kind_phys), dimension(:,:), intent(in) gasvmr_n2o,
real (kind=kind_phys), dimension(:,:), intent(in) gasvmr_ch4,
real (kind=kind_phys), dimension(:,:), intent(in) gasvmr_o2,
real (kind=kind_phys), dimension(:,:), intent(in) gasvmr_co,
real (kind=kind_phys), dimension(:,:), intent(in) gasvmr_cfc11,
real (kind=kind_phys), dimension(:,:), intent(in) gasvmr_cfc12,
real (kind=kind_phys), dimension(:,:), intent(in) gasvmr_cfc22,
real (kind=kind_phys), dimension(:,:), intent(in) gasvmr_ccl4,
integer, dimension(npts), intent(in), optional icseed,
real (kind=kind_phys), dimension(:,:,:), intent(in) aeraod,
real (kind=kind_phys), dimension(:,:,:), intent(in) aerssa,
real (kind=kind_phys), dimension(:), intent(in) sfemis,
real (kind=kind_phys), dimension(:), intent(in) sfgtmp,
real (kind=kind_phys), dimension(:,:), intent(in) dzlyr,
real (kind=kind_phys), dimension(:,:), intent(in) delpin,
real (kind=kind_phys), dimension(:), intent(in) de_lgth,
real (kind=kind_phys), dimension(npts,nlay), intent(in) alpha,
integer, intent(in) npts,
integer, intent(in) nlay,
integer, intent(in) nlp1,
logical, intent(in) lprnt,
real (kind=kind_phys), dimension(:,:), intent(in) cld_cf,
logical, intent(in) lslwr,
logical, intent(in) top_at_1,
integer, intent(in) iovr,
integer, intent(in) iovr_rand,
integer, intent(in) iovr_maxrand,
integer, intent(in) iovr_max,
integer, intent(in) iovr_dcorr,
integer, intent(in) iovr_exp,
integer, intent(in) iovr_exprand,
logical, intent(in) inc_minor_gas,
integer, intent(in) ilwcliq,
integer, intent(in) ilwcice,
integer, intent(in) isubclw,
real (kind=kind_phys), dimension(:,:), intent(inout) hlwc,
type (topflw_type), dimension(:), intent(inout) topflx,
type (sfcflw_type), dimension(:), intent(inout) sfcflx,
real (kind=kind_phys), dimension(:,:), intent(inout) cldtau,
real (kind=kind_phys), dimension(:,:), intent(inout), optional hlw0,
real (kind=kind_phys), dimension(:,:,:), intent(inout), optional hlwb,
type (proflw_type), dimension(:,:), intent(inout), optional flxprf,
real (kind=kind_phys), dimension(:,:), intent(in), optional cld_lwp,
real (kind=kind_phys), dimension(:,:), intent(in), optional cld_ref_liq,
real (kind=kind_phys), dimension(:,:), intent(in), optional cld_iwp,
real (kind=kind_phys), dimension(:,:), intent(in), optional cld_ref_ice,
real (kind=kind_phys), dimension(:,:), intent(in), optional cld_rwp,
real (kind=kind_phys), dimension(:,:), intent(in), optional cld_ref_rain,
real (kind=kind_phys), dimension(:,:), intent(in), optional cld_swp,
real (kind=kind_phys), dimension(:,:), intent(in), optional cld_ref_snow,
real (kind=kind_phys), dimension(:,:), intent(in), optional cld_od,
character(len=*), intent(out) errmsg,
integer, intent(out) errflg )
  • Change random number seed value for each radiation invocation (isubclw =1 or 2).
  • Read surface emissivity.
  • Prepare atmospheric profile for use in rrtm.
  • Set absorber amount for h2o, co2, and o3.
  • Set up column amount for rare gases n2o,ch4,o2,co,ccl4,cf11,cf12, cf22, convert from volume mixing ratio to molec/cm2 based on coldry (scaled to 1.0e-20).
  • Set aerosol optical properties.
  • Read cloud optical properties.
  • Compute precipitable water vapor for diffusivity angle adjustments.
  • Compute column amount for broadening gases.
  • Compute diffusivity angle adjustments.
  • For cloudy atmosphere, call cldprop() to set cloud optical properties.
  • Calling setcoef() to compute various coefficients needed in radiative transfer calculations.
  • Call taumol() to calculte the gaseous optical depths and Plank fractions for each longwave spectral band.
  • Call the radiative transfer routine based on cloud scheme selection. Compute the upward/downward radiative fluxes, and heating rates for both clear or cloudy atmosphere.
    - call rtrn(): clouds are assumed as randomly overlaping in a vertical column
    - call rtrnmr(): clouds are assumed as in maximum-randomly overlaping in a vertical column;
    - call rtrnmc(): clouds are treated with the mcica stochastic approach.
  • Save outputs.

Definition at line 419 of file radlw_main.F90.

References cldprop(), rtrn(), rtrnmc(), rtrnmr(), setcoef(), and taumol().

Here is the call graph for this function: