CCPP SciDoc  v6.0.0
Common Community Physics Package Developed at DTC
GFS RRTMG-LW Main Module

This module includes NCEP's modifications of the RRTMG-LW radiation code from AER.The RRTMG-LW package includes three files: More...

Modules

module  module_radlw_parameters
 This module contains LW band parameters set up.
 
module  module_radlw_avplank
 This module contains plank flux data.
 
module  module_radlw_ref
 This module contains reference temperature and pressure.
 
module  module_radlw_cldprlw
 This module contains cloud property coefficients.
 
module  module_radlw_kgb01
 This module sets up absorption coefficients for band 01: 10-250 cm-1 (low - h2o; high - h2o)
 
module  module_radlw_kgb02
 This module sets up absorption coefficients for band 02: 250-500 cm-1 (low - h2o; high - h2o)
 
module  module_radlw_kgb03
 This module sets up absorption coefficients for band 03: 500-630 cm-1 (low - h2o, co2; high - h2o, co2)
 
module  module_radlw_kgb04
 This module sets up absorption coefficients for band 04: 630-700 cm-1 (low - h2o, co2; high - co2, o3)
 
module  module_radlw_kgb05
 This module sets up absorption coefficients for band 05: 700-820 cm-1 (low - h2o, co2; high - co2, o3)
 
module  module_radlw_kgb06
 This module sets up absorption coefficients for band 06: 820-980 cm-1 (low - h2o; high - /)
 
module  module_radlw_kgb07
 This module sets up absorption coefficients for band 07: 980-1080 cm-1 (low - h2o, o3; high - o3)
 
module  module_radlw_kgb08
 This module sets up absorption coefficients for band 08: 1080-1180 cm-1 (low - h2o; high - o3)
 
module  module_radlw_kgb09
 This module sets up absorption coefficients for band 09: 1180-1390 cm-1 (low - h2o, ch4; high - ch4)
 
module  module_radlw_kgb10
 This module sets up absorption coefficients for band 10: 1390-1480 cm-1 (low - h2o; high - h2o)
 
module  module_radlw_kgb11
 This module sets up absorption coefficients for band 11: 1480-1800 cm-1 (low - h2o; high - h2o)
 
module  module_radlw_kgb12
 This module sets up absorption coefficients for band 12: 1800-2080 cm-1 (low - h2o, co2; high - /)
 
module  module_radlw_kgb13
 This module sets up absorption coefficients for band 13: 2080-2250 cm-1 (low - h2o, n2o; high - /)
 
module  module_radlw_kgb14
 This module sets up absorption coefficients for band 14: 2250-2380 cm-1 (low - co2; high - co2)
 
module  module_radlw_kgb15
 This module sets up absorption coefficients for band 15: 2380-2600 cm-1 (low - n2o, co2; high - /)
 
module  module_radlw_kgb16
 This module sets up absorption coefficients for band 16: 2600-3000 cm-1 (low - h2o, ch4; high - /)
 

Functions/Subroutines

subroutine, public rrtmg_lw::rrtmg_lw_run (plyr, plvl, tlyr, tlvl, qlyr, olyr, gasvmr_co2, gasvmr_n2o, gasvmr_ch4, gasvmr_o2, gasvmr_co, gasvmr_cfc11, gasvmr_cfc12, gasvmr_cfc22, gasvmr_ccl4, icseed, aeraod, aerssa, sfemis, sfgtmp, dzlyr, delpin, de_lgth, alpha, npts, nlay, nlp1, lprnt, cld_cf, lslwr, hlwc, topflx, sfcflx, cldtau, HLW0, HLWB, FLXPRF, cld_lwp, cld_ref_liq, cld_iwp, cld_ref_ice, cld_rwp, cld_ref_rain, cld_swp, cld_ref_snow, cld_od, errmsg, errflg)
 
subroutine, public rrtmg_lw::rlwinit (me)
 This subroutine performs calculations necessary for the initialization of the longwave model, which includes non-varying model variables, conversion factors, and look-up tables
More...
 
subroutine rrtmg_lw::cldprop (cfrac, cliqp, reliq, cicep, reice, cdat1, cdat2, cdat3, cdat4, nlay, nlp1, ipseed, dz, de_lgth, iovr, alpha, cldfmc, taucld)
 This subroutine computes the cloud optical depth(s) for each cloudy layer and g-point interval. More...
 
subroutine rrtmg_lw::mcica_subcol (cldf, nlay, ipseed, dz, de_lgth, alpha, lcloudy)
 This suroutine computes sub-colum cloud profile flag array. More...
 
subroutine rrtmg_lw::setcoef (pavel, tavel, tz, stemp, h2ovmr, colamt, coldry, colbrd, nlay, nlp1, laytrop, pklay, pklev, jp, jt, jt1, rfrate, fac00, fac01, fac10, fac11, selffac, selffrac, indself, forfac, forfrac, indfor, minorfrac, scaleminor, scaleminorn2, indminor)
 This subroutine computes various coefficients needed in radiative transfer calculations. More...
 
subroutine rrtmg_lw::rtrn (semiss, delp, cldfrc, taucld, tautot, pklay, pklev, fracs, secdif, nlay, nlp1, totuflux, totdflux, htr, totuclfl, totdclfl, htrcl, htrb)
 This subroutine computes the upward/downward radiative fluxes, and heating rates for both clear or cloudy atmosphere. Clouds assumed as randomly overlaping in a vertical column. More...
 
subroutine rrtmg_lw::rtrnmr (semiss, delp, cldfrc, taucld, tautot, pklay, pklev, fracs, secdif, nlay, nlp1, totuflux, totdflux, htr, totuclfl, totdclfl, htrcl, htrb)
 This subroutine computes the upward/downward radiative fluxes, and heating rates for both clear or cloudy atmosphere. Clouds are assumed as in maximum-randomly overlaping in a vertical column. More...
 
subroutine rrtmg_lw::rtrnmc (semiss, delp, cldfmc, taucld, tautot, pklay, pklev, fracs, secdif, nlay, nlp1, totuflux, totdflux, htr, totuclfl, totdclfl, htrcl, htrb)
 This subroutine computes the upward/downward radiative fluxes, and heating rates for both clear or cloudy atmosphere.Clouds are treated with the mcica stochastic approach. More...
 
subroutine rrtmg_lw::taumol (laytrop, pavel, coldry, colamt, colbrd, wx, tauaer, rfrate, fac00, fac01, fac10, fac11, jp, jt, jt1, selffac, selffrac, indself, forfac, forfrac, indfor, minorfrac, scaleminor, scaleminorn2, indminor, nlay, fracs, tautot)
 This subroutine contains optical depths developed for the rapid radiative transfer model. More...
 
subroutine taugb01
 band 1: 10-350 cm-1 (low key - h2o; low minor - n2); (high key - h2o; high minor - n2) More...
 
subroutine taugb02
 Band 2: 350-500 cm-1 (low key - h2o; high key - h2o) More...
 
subroutine taugb03
 Band 3: 500-630 cm-1 (low key - h2o,co2; low minor - n2o); (high key - h2o,co2; high minor - n2o) More...
 
subroutine taugb04
 Band 4: 630-700 cm-1 (low key - h2o,co2; high key - o3,co2) More...
 
subroutine taugb05
 Band 5: 700-820 cm-1 (low key - h2o,co2; low minor - o3, ccl4) (high key - o3,co2) More...
 
subroutine taugb06
 Band 6: 820-980 cm-1 (low key - h2o; low minor - co2) (high key - none; high minor - cfc11, cfc12) More...
 
subroutine taugb07
 Band 7: 980-1080 cm-1 (low key - h2o,o3; low minor - co2) (high key - o3; high minor - co2) More...
 
subroutine taugb08
 Band 8: 1080-1180 cm-1 (low key - h2o; low minor - co2,o3,n2o) (high key - o3; high minor - co2, n2o) More...
 
subroutine taugb09
 Band 9: 1180-1390 cm-1 (low key - h2o,ch4; low minor - n2o) (high key - ch4; high minor - n2o) More...
 
subroutine taugb10
 Band 10: 1390-1480 cm-1 (low key - h2o; high key - h2o) More...
 
subroutine taugb11
 Band 11: 1480-1800 cm-1 (low - h2o; low minor - o2) (high key - h2o; high minor - o2) More...
 
subroutine taugb12
 Band 12: 1800-2080 cm-1 (low - h2o,co2; high - nothing) More...
 
subroutine taugb13
 Band 13: 2080-2250 cm-1 (low key-h2o,n2o; high minor-o3 minor) More...
 
subroutine taugb14
 Band 14: 2250-2380 cm-1 (low - co2; high - co2) More...
 
subroutine taugb15
 Band 15: 2380-2600 cm-1 (low - n2o,co2; low minor - n2) (high - nothing) More...
 
subroutine taugb16
 Band 16: 2600-3250 cm-1 (low key- h2o,ch4; high key - ch4) More...
 

Detailed Description

Version
NCEP LW v5.1 Nov 2012 -RRTMG-LW v4.82

Argument Table

rrtmg_lw_run argument table
local_namestandard_namelong_nameunitstypedimensionskindintent
plyrair_pressure_at_layer_for_radiation_in_hpaair pressure layerhPareal(ccpp_constant_one:horizontal_loop_extent, ccpp_constant_one:adjusted_vertical_layer_dimension_for_radiation)kind_physin
plvlair_pressure_at_interface_for_radiation_in_hpaair pressure levelhPareal(ccpp_constant_one:horizontal_loop_extent, ccpp_constant_one:adjusted_vertical_level_dimension_for_radiation)kind_physin
tlyrair_temperature_at_layer_for_radiationair temperature layerKreal(ccpp_constant_one:horizontal_loop_extent, ccpp_constant_one:adjusted_vertical_layer_dimension_for_radiation)kind_physin
tlvlair_temperature_at_interface_for_radiationair temperature levelKreal(ccpp_constant_one:horizontal_loop_extent, ccpp_constant_one:adjusted_vertical_level_dimension_for_radiation)kind_physin
qlyrwater_vapor_specific_humidity_at_layer_for_radiationspecific humidity layerkg kg-1real(ccpp_constant_one:horizontal_loop_extent, ccpp_constant_one:adjusted_vertical_layer_dimension_for_radiation)kind_physin
olyrozone_concentration_at_layer_for_radiationozone concentration layerkg kg-1real(ccpp_constant_one:horizontal_loop_extent, ccpp_constant_one:adjusted_vertical_layer_dimension_for_radiation)kind_physin
gasvmr_co2volume_mixing_ratio_of_co2volume mixing ratio co2m3 m-3real(ccpp_constant_one:horizontal_loop_extent, ccpp_constant_one:adjusted_vertical_layer_dimension_for_radiation)kind_physin
gasvmr_n2ovolume_mixing_ratio_of_n2ovolume mixing ratio no2m3 m-3real(ccpp_constant_one:horizontal_loop_extent, ccpp_constant_one:adjusted_vertical_layer_dimension_for_radiation)kind_physin
gasvmr_ch4volume_mixing_ratio_of_ch4volume mixing ratio ch4m3 m-3real(ccpp_constant_one:horizontal_loop_extent, ccpp_constant_one:adjusted_vertical_layer_dimension_for_radiation)kind_physin
gasvmr_o2volume_mixing_ratio_of_o2volume mixing ratio o2m3 m-3real(ccpp_constant_one:horizontal_loop_extent, ccpp_constant_one:adjusted_vertical_layer_dimension_for_radiation)kind_physin
gasvmr_covolume_mixing_ratio_of_covolume mixing ratio com3 m-3real(ccpp_constant_one:horizontal_loop_extent, ccpp_constant_one:adjusted_vertical_layer_dimension_for_radiation)kind_physin
gasvmr_cfc11volume_mixing_ratio_of_cfc11volume mixing ratio cfc11m3 m-3real(ccpp_constant_one:horizontal_loop_extent, ccpp_constant_one:adjusted_vertical_layer_dimension_for_radiation)kind_physin
gasvmr_cfc12volume_mixing_ratio_of_cfc12volume mixing ratio cfc12m3 m-3real(ccpp_constant_one:horizontal_loop_extent, ccpp_constant_one:adjusted_vertical_layer_dimension_for_radiation)kind_physin
gasvmr_cfc22volume_mixing_ratio_of_cfc22volume mixing ratio cfc22m3 m-3real(ccpp_constant_one:horizontal_loop_extent, ccpp_constant_one:adjusted_vertical_layer_dimension_for_radiation)kind_physin
gasvmr_ccl4volume_mixing_ratio_of_ccl4volume mixing ratio ccl4m3 m-3real(ccpp_constant_one:horizontal_loop_extent, ccpp_constant_one:adjusted_vertical_layer_dimension_for_radiation)kind_physin
icseedrandom_number_seed_for_mcica_longwaveseed for random number generation for longwave radiationnoneinteger(ccpp_constant_one:horizontal_loop_extent)in
aeraodaerosol_optical_depth_for_longwave_bands_01_16aerosol optical depth for longwave bands 01-16nonereal(ccpp_constant_one:horizontal_loop_extent, ccpp_constant_one:adjusted_vertical_layer_dimension_for_radiation, ccpp_constant_one:number_of_aerosol_bands_for_longwave_radiation)kind_physin
aerssaaerosol_single_scattering_albedo_for_longwave_bands_01_16aerosol single scattering albedo for longwave bands 01-16fracreal(ccpp_constant_one:horizontal_loop_extent, ccpp_constant_one:adjusted_vertical_layer_dimension_for_radiation, ccpp_constant_one:number_of_aerosol_bands_for_longwave_radiation)kind_physin
sfemissurface_longwave_emissivitysurface emissivityfracreal(ccpp_constant_one:horizontal_loop_extent)kind_physin
sfgtmpsurface_ground_temperature_for_radiationsurface ground temperature for radiationKreal(ccpp_constant_one:horizontal_loop_extent)kind_physin
dzlyrlayer_thickness_for_radiationlayer thicknesskmreal(ccpp_constant_one:horizontal_loop_extent, ccpp_constant_one:adjusted_vertical_layer_dimension_for_radiation)kind_physin
delpinlayer_pressure_thickness_for_radiationlayer pressure thicknesshPareal(ccpp_constant_one:horizontal_loop_extent, ccpp_constant_one:adjusted_vertical_layer_dimension_for_radiation)kind_physin
de_lgthcloud_decorrelation_lengthcloud decorrelation lengthkmreal(ccpp_constant_one:horizontal_loop_extent)kind_physin
alphacloud_overlap_decorrelation_parametercloud overlap decorrelation parameterfracreal(ccpp_constant_one:horizontal_loop_extent, ccpp_constant_one:adjusted_vertical_layer_dimension_for_radiation)kind_physin
nptshorizontal_loop_extenthorizontal dimensioncountinteger()in
nlayadjusted_vertical_layer_dimension_for_radiationnumber of vertical layers for radiationcountinteger()in
nlp1adjusted_vertical_level_dimension_for_radiationnumber of vertical levels for radiationcountinteger()in
lprntflag_printflag to printflaglogical()in
cld_cftotal_cloud_fractiontotal cloud fractionfracreal(ccpp_constant_one:horizontal_loop_extent, ccpp_constant_one:adjusted_vertical_layer_dimension_for_radiation)kind_physin
lslwrflag_for_calling_longwave_radiationflag to calculate LW irradiancesflaglogical()in
hlwctendency_of_air_temperature_due_to_longwave_heating_on_radiation_time_step_and_radiation_levelslongwave total sky heating rateK s-1real(ccpp_constant_one:horizontal_loop_extent, ccpp_constant_one:adjusted_vertical_layer_dimension_for_radiation)kind_physinout
topflxlw_fluxes_top_atmospherelongwave total sky fluxes at the top of the atmW m-2topflw_type(ccpp_constant_one:horizontal_loop_extent)topflw_typeinout
sfcflxsurface_lw_fluxes_assuming_total_and_clear_sky_on_radiation_timesteplongwave total sky fluxes at the Earth surfaceW m-2sfcflw_type(ccpp_constant_one:horizontal_loop_extent)sfcflw_typeinout
cldtaucloud_optical_depth_layers_at_10mu_bandapprox 10mu band layer cloud optical depthnonereal(ccpp_constant_one:horizontal_loop_extent, ccpp_constant_one:adjusted_vertical_layer_dimension_for_radiation)kind_physinout
hlw0tendency_of_air_temperature_due_to_longwave_heating_assuming_clear_sky_on_radiation_time_step_and_radiation_levelslongwave clear sky heating rateK s-1real(ccpp_constant_one:horizontal_loop_extent, ccpp_constant_one:adjusted_vertical_layer_dimension_for_radiation)kind_physinout
cld_lwpcloud_liquid_water_pathcloud liquid water pathg m-2real(ccpp_constant_one:horizontal_loop_extent, ccpp_constant_one:adjusted_vertical_layer_dimension_for_radiation)kind_physin
cld_ref_liqmean_effective_radius_for_liquid_cloudmean effective radius for liquid cloudumreal(ccpp_constant_one:horizontal_loop_extent, ccpp_constant_one:adjusted_vertical_layer_dimension_for_radiation)kind_physin
cld_iwpcloud_ice_water_pathcloud ice water pathg m-2real(ccpp_constant_one:horizontal_loop_extent, ccpp_constant_one:adjusted_vertical_layer_dimension_for_radiation)kind_physin
cld_ref_icemean_effective_radius_for_ice_cloudmean effective radius for ice cloudumreal(ccpp_constant_one:horizontal_loop_extent, ccpp_constant_one:adjusted_vertical_layer_dimension_for_radiation)kind_physin
cld_rwpcloud_rain_water_pathcloud ice water pathg m-2real(ccpp_constant_one:horizontal_loop_extent, ccpp_constant_one:adjusted_vertical_layer_dimension_for_radiation)kind_physin
cld_ref_rainmean_effective_radius_for_rain_dropmean effective radius for rain dropumreal(ccpp_constant_one:horizontal_loop_extent, ccpp_constant_one:adjusted_vertical_layer_dimension_for_radiation)kind_physin
cld_swpcloud_snow_water_pathcloud snow water pathg m-2real(ccpp_constant_one:horizontal_loop_extent, ccpp_constant_one:adjusted_vertical_layer_dimension_for_radiation)kind_physin
cld_ref_snowmean_effective_radius_for_snow_flakemean effective radius for snow flakeumreal(ccpp_constant_one:horizontal_loop_extent, ccpp_constant_one:adjusted_vertical_layer_dimension_for_radiation)kind_physin
errmsgccpp_error_messageerror message for error handling in CCPPnonecharacter()len=*out
errflgccpp_error_codeerror code for error handling in CCPP1integer()out

RRTMG Longwave Radiation Scheme General Algorithm