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

This module contains two routines: One to initialize the k-distribution data and functions needed to compute the longwave gaseous optical properties in RRTMGP. The second routine is a ccpp scheme within the "radiation loop", where the longwave optical prperties (optical-depth) are computed for clear-sky conditions (no aerosols).

Functions/Subroutines

subroutine rrtmgp_lw_gas_optics_init (rrtmgp_root_dir, rrtmgp_lw_file_gas, active_gases_array, mpicomm, mpirank, mpiroot, errmsg, errflg)
 

Variables

type(ty_gas_optics_rrtmgp) lw_gas_props
 
integer ntempslw
 
integer npresslw
 
integer ngptslw
 
integer nabsorberslw
 
integer nextrabsorberslw
 
integer nminorabsorberslw
 
integer nmixingfracslw
 
integer nlayerslw
 
integer nbndslw
 
integer npairslw
 
integer ninternalsourcetempslw
 
integer nminor_absorber_intervals_lowerlw
 
integer nminor_absorber_intervals_upperlw
 
integer ncontributors_lowerlw
 
integer ncontributors_upperlw
 
integer nfit_coeffslw
 
integer, dimension(:), allocatable kminor_start_lowerlw
 Starting index in the [1, nContributors] vector for a contributor.
 
integer, dimension(:), allocatable kminor_start_upperlw
 Starting index in the [1, nContributors] vector for a contributor.
 
integer, dimension(:,:), allocatable band2gptlw
 Beginning and ending gpoint for each band.
 
integer, dimension(:,:), allocatable minor_limits_gpt_lowerlw
 Beginning and ending gpoint for each minor interval in lower atmosphere.
 
integer, dimension(:,:), allocatable minor_limits_gpt_upperlw
 Beginning and ending gpoint for each minor interval in upper atmosphere.
 
integer, dimension(:,:,:), allocatable key_specieslw
 Key species pair for each band.
 
real(kind_phys) press_ref_troplw
 Reference pressure separating the lower and upper atmosphere [Pa].
 
real(kind_phys) temp_ref_plw
 Standard spectroscopic reference pressure [Pa].
 
real(kind_phys) temp_ref_tlw
 Standard spectroscopic reference temperature [K].
 
real(kind_phys), dimension(:), allocatable press_reflw
 Pressures for reference atmosphere; press_ref(# reference layers) [Pa].
 
real(kind_phys), dimension(:), allocatable temp_reflw
 Temperatures for reference atmosphere; temp_ref(# reference layers) [K].
 
real(kind_phys), dimension(:,:), allocatable band_limslw
 Beginning and ending wavenumber [cm -1] for each band.
 
real(kind_phys), dimension(:,:), allocatable totplnklw
 Integrated Planck function by band.
 
real(kind_phys), dimension(:,:), allocatable optimal_angle_fitlw
 
real(kind_phys), dimension(:,:,:), allocatable vmr_reflw
 volume mixing ratios for reference atmospherer
 
real(kind_phys), dimension(:,:,:), allocatable kminor_lowerlw
 (transformed from [nTemp x nEta x nGpt x nAbsorbers] array to
 
real(kind_phys), dimension(:,:,:), allocatable kminor_upperlw
 (transformed from [nTemp x nEta x nGpt x nAbsorbers] array to
 
real(kind_phys), dimension(:,:,:), allocatable rayl_lowerlw
 Not used in LW, rather allocated(rayl_lower) is used.
 
real(kind_phys), dimension(:,:,:), allocatable rayl_upperlw
 Not used in LW, rather allocated(rayl_upper) is used.
 
real(kind_phys), dimension(:,:,:,:), allocatable kmajorlw
 Stored absorption coefficients due to major absorbing gases.
 
real(kind_phys), dimension(:,:,:,:), allocatable planck_fraclw
 Planck fractions

 
character(len=32), dimension(:), allocatable gas_nameslw
 Names of absorbing gases.
 
character(len=32), dimension(:), allocatable gas_minorlw
 Name of absorbing minor gas.
 
character(len=32), dimension(:), allocatable identifier_minorlw
 Unique string identifying minor gas.
 
character(len=32), dimension(:), allocatable minor_gases_lowerlw
 Names of minor absorbing gases in lower atmosphere.
 
character(len=32), dimension(:), allocatable minor_gases_upperlw
 Names of minor absorbing gases in upper atmosphere.
 
character(len=32), dimension(:), allocatable scaling_gas_lowerlw
 Absorption also depends on the concentration of this gas.
 
character(len=32), dimension(:), allocatable scaling_gas_upperlw
 Absorption also depends on the concentration of this gas.
 
logical(wl), dimension(:), allocatable minor_scales_with_density_lowerlw
 Density scaling is applied to minor absorption coefficients.
 
logical(wl), dimension(:), allocatable minor_scales_with_density_upperlw
 Density scaling is applied to minor absorption coefficients.
 
logical(wl), dimension(:), allocatable scale_by_complement_lowerlw
 Absorption is scaled by concentration of scaling_gas (F) or its complement (T)
 
logical(wl), dimension(:), allocatable scale_by_complement_upperlw
 Absorption is scaled by concentration of scaling_gas (F) or its complement (T)