← Back to Documentation Home
CCPP SciDoc v8.0.0  v8.0.0
Common Community Physics Package Developed at DTC
 
Loading...
Searching...
No Matches
rrtmgp_sw_gas_optics Module Reference

This module contains a routine to initialize the k-distribution data used by the RRTMGP shortwave radiation scheme. More...

Functions/Subroutines

subroutine rrtmgp_sw_gas_optics_init (rrtmgp_root_dir, rrtmgp_sw_file_gas, active_gases_array, mpicomm, mpirank, mpiroot, is_initialized, errmsg, errflg)
 

Variables

real(wp), parameter tsi_default = 1360.85767381726
 
real(wp), parameter mg_default = 0.1567652
 
real(wp), parameter sb_default = 902.7126
 
type(ty_gas_optics_rrtmgp) sw_gas_props
 
integer ntempssw
 
integer npresssw
 
integer ngptssw
 
integer nabsorberssw
 
integer nextrabsorberssw
 
integer nminorabsorberssw
 
integer nmixingfracssw
 
integer nlayerssw
 
integer nbndssw
 
integer npairssw
 
integer nminor_absorber_intervals_lowersw
 
integer nminor_absorber_intervals_uppersw
 
integer ncontributors_lowersw
 
integer ncontributors_uppersw
 
integer, dimension(:), allocatable kminor_start_lowersw
 Starting index in the [1, nContributors] vector for a contributor.
 
integer, dimension(:), allocatable kminor_start_uppersw
 Starting index in the [1, nContributors] vector for a contributor.
 
integer, dimension(:,:), allocatable band2gptsw
 Beginning and ending gpoint for each band.
 
integer, dimension(:,:), allocatable minor_limits_gpt_lowersw
 Beginning and ending gpoint for each minor interval in lower atmosphere.
 
integer, dimension(:,:), allocatable minor_limits_gpt_uppersw
 Beginning and ending gpoint for each minor interval in upper atmosphere.
 
integer, dimension(:,:,:), allocatable key_speciessw
 Key species pair for each band.
 
real(wp) press_ref_tropsw
 Reference pressure separating the lower and upper atmosphere [Pa].
 
real(wp) temp_ref_psw
 Standard spectroscopic reference pressure [Pa].
 
real(wp) temp_ref_tsw
 Standard spectroscopic reference temperature [K].
 
real(wp) tsi_defaultsw
 
real(wp) mg_defaultsw
 Mean value of Mg2 index over the average solar cycle from the NRLSSI2 model of solar variability.
 
real(wp) sb_defaultsw
 Mean value of sunspot index over the average solar cycle from the NRLSSI2 model of solar variability.
 
real(wp), dimension(:), allocatable press_refsw
 Pressures for reference atmosphere; press_ref(# reference layers) [Pa].
 
real(wp), dimension(:), allocatable temp_refsw
 Temperatures for reference atmosphere; temp_ref(# reference layers) [K].
 
real(wp), dimension(:), allocatable solar_quietsw
 Spectrally-dependent quiet sun irradiance from the NRLSSI2 model of solar variability.
 
real(wp), dimension(:), allocatable solar_facularsw
 Spectrally-dependent facular term from the NRLSSI2 model of solar variability.
 
real(wp), dimension(:), allocatable solar_sunspotsw
 Spectrally-dependent sunspot term from the NRLSSI2 model of solar variability.
 
real(wp), dimension(:,:), allocatable band_limssw
 Beginning and ending wavenumber [cm -1] for each band.
 
real(wp), dimension(:,:,:), allocatable vmr_refsw
 Volume mixing ratios for reference atmosphere.
 
real(wp), dimension(:,:,:), allocatable kminor_lowersw
 (transformed from [nTemp x nEta x nGpt x nAbsorbers] array to
 
real(wp), dimension(:,:,:), allocatable kminor_uppersw
 (transformed from [nTemp x nEta x nGpt x nAbsorbers] array to
 
real(wp), dimension(:,:,:), allocatable rayl_lowersw
 Stored coefficients due to rayleigh scattering contribution.
 
real(wp), dimension(:,:,:), allocatable rayl_uppersw
 Stored coefficients due to rayleigh scattering contribution.
 
real(wp), dimension(:,:,:,:), allocatable kmajorsw
 Stored absorption coefficients due to major absorbing gases.
 
character(len=32), dimension(:), allocatable gas_namessw
 Names of absorbing gases.
 
character(len=32), dimension(:), allocatable gas_minorsw
 Name of absorbing minor gas.
 
character(len=32), dimension(:), allocatable identifier_minorsw
 Unique string identifying minor gas.
 
character(len=32), dimension(:), allocatable minor_gases_lowersw
 Names of minor absorbing gases in lower atmosphere.
 
character(len=32), dimension(:), allocatable minor_gases_uppersw
 Names of minor absorbing gases in upper atmosphere.
 
character(len=32), dimension(:), allocatable scaling_gas_lowersw
 Absorption also depends on the concentration of this gas.
 
character(len=32), dimension(:), allocatable scaling_gas_uppersw
 Absorption also depends on the concentration of this gas.
 
logical(wl), dimension(:), allocatable minor_scales_with_density_lowersw
 Density scaling is applied to minor absorption coefficients.
 
logical(wl), dimension(:), allocatable minor_scales_with_density_uppersw
 Density scaling is applied to minor absorption coefficients.
 
logical(wl), dimension(:), allocatable scale_by_complement_lowersw
 Absorption is scaled by concentration of scaling_gas (F) or its complement (T)
 
logical(wl), dimension(:), allocatable scale_by_complement_uppersw
 Absorption is scaled by concentration of scaling_gas (F) or its complement (T)
 

Detailed Description

This module contains a routine to initialize the k-distribution data used by the RRTMGP shortwave radiation scheme.

Function/Subroutine Documentation

◆ rrtmgp_sw_gas_optics_init()

subroutine rrtmgp_sw_gas_optics::rrtmgp_sw_gas_optics_init ( character(len=128), intent(in)  rrtmgp_root_dir,
character(len=128), intent(in)  rrtmgp_sw_file_gas,
character(len=*), dimension(:), intent(in)  active_gases_array,
type(mpi_comm), intent(in)  mpicomm,
integer, intent(in)  mpirank,
integer, intent(in)  mpiroot,
logical, intent(inout)  is_initialized,
character(len=*), intent(out)  errmsg,
integer, intent(out)  errflg 
)

Argument Table

RRTMGP relies heavility on derived-data-types, which contain type-bound procedures that are referenced frequently throughout the RRTMGP shortwave scheme. The data needed for the correlated k-distribution is also contained within this type. Within this module, the full k-distribution data is read in, reduced by the "active gases" provided, and loaded into the RRTMGP DDT, ty_gas_optics_rrtmgp.

Parameters
[in]rrtmgp_sw_file_gasRRTMGP file containing K-distribution data
[in]active_gases_arrayList of active gases from namelist as array
[in]mpicommMPI communicator
[in]mpirootMaster MPI rank
[in,out]is_initializedInitialization flag.
[out]errmsgCCPP error message
[out]errflgCCPP error code
Parameters
rrtmgp_root_dirRTE-RRTMGP root directory
mpirankCurrent MPI rank

Definition at line 85 of file rrtmgp_sw_gas_optics.F90.

Variable Documentation

◆ band2gptsw

integer, dimension(:,:), allocatable rrtmgp_sw_gas_optics::band2gptsw

Beginning and ending gpoint for each band.

Definition at line 31 of file rrtmgp_sw_gas_optics.F90.

◆ band_limssw

real(wp), dimension(:,:), allocatable rrtmgp_sw_gas_optics::band_limssw

Beginning and ending wavenumber [cm -1] for each band.

Definition at line 50 of file rrtmgp_sw_gas_optics.F90.

◆ gas_minorsw

character(len=32), dimension(:), allocatable rrtmgp_sw_gas_optics::gas_minorsw

Name of absorbing minor gas.

Definition at line 62 of file rrtmgp_sw_gas_optics.F90.

◆ gas_namessw

character(len=32), dimension(:), allocatable rrtmgp_sw_gas_optics::gas_namessw

Names of absorbing gases.

Definition at line 62 of file rrtmgp_sw_gas_optics.F90.

◆ identifier_minorsw

character(len=32), dimension(:), allocatable rrtmgp_sw_gas_optics::identifier_minorsw

Unique string identifying minor gas.

Definition at line 62 of file rrtmgp_sw_gas_optics.F90.

◆ key_speciessw

integer, dimension(:,:,:), allocatable rrtmgp_sw_gas_optics::key_speciessw

Key species pair for each band.

Definition at line 35 of file rrtmgp_sw_gas_optics.F90.

◆ kmajorsw

real(wp), dimension(:,:,:,:), allocatable rrtmgp_sw_gas_optics::kmajorsw

Stored absorption coefficients due to major absorbing gases.

Definition at line 60 of file rrtmgp_sw_gas_optics.F90.

◆ kminor_lowersw

real(wp), dimension(:,:,:), allocatable rrtmgp_sw_gas_optics::kminor_lowersw

(transformed from [nTemp x nEta x nGpt x nAbsorbers] array to

Definition at line 52 of file rrtmgp_sw_gas_optics.F90.

◆ kminor_start_lowersw

integer, dimension(:), allocatable rrtmgp_sw_gas_optics::kminor_start_lowersw

Starting index in the [1, nContributors] vector for a contributor.

Definition at line 26 of file rrtmgp_sw_gas_optics.F90.

◆ kminor_start_uppersw

integer, dimension(:), allocatable rrtmgp_sw_gas_optics::kminor_start_uppersw

Starting index in the [1, nContributors] vector for a contributor.

given by "minor_gases_upper" (upper atmosphere)

Definition at line 26 of file rrtmgp_sw_gas_optics.F90.

◆ kminor_uppersw

real(wp), dimension(:,:,:), allocatable rrtmgp_sw_gas_optics::kminor_uppersw

(transformed from [nTemp x nEta x nGpt x nAbsorbers] array to

Definition at line 52 of file rrtmgp_sw_gas_optics.F90.

◆ mg_default

real(wp), parameter rrtmgp_sw_gas_optics::mg_default = 0.1567652

Definition at line 15 of file rrtmgp_sw_gas_optics.F90.

◆ mg_defaultsw

real(wp) rrtmgp_sw_gas_optics::mg_defaultsw

Mean value of Mg2 index over the average solar cycle from the NRLSSI2 model of solar variability.

Definition at line 37 of file rrtmgp_sw_gas_optics.F90.

◆ minor_gases_lowersw

character(len=32), dimension(:), allocatable rrtmgp_sw_gas_optics::minor_gases_lowersw

Names of minor absorbing gases in lower atmosphere.

Definition at line 62 of file rrtmgp_sw_gas_optics.F90.

◆ minor_gases_uppersw

character(len=32), dimension(:), allocatable rrtmgp_sw_gas_optics::minor_gases_uppersw

Names of minor absorbing gases in upper atmosphere.

Definition at line 62 of file rrtmgp_sw_gas_optics.F90.

◆ minor_limits_gpt_lowersw

integer, dimension(:,:), allocatable rrtmgp_sw_gas_optics::minor_limits_gpt_lowersw

Beginning and ending gpoint for each minor interval in lower atmosphere.

Definition at line 31 of file rrtmgp_sw_gas_optics.F90.

◆ minor_limits_gpt_uppersw

integer, dimension(:,:), allocatable rrtmgp_sw_gas_optics::minor_limits_gpt_uppersw

Beginning and ending gpoint for each minor interval in upper atmosphere.

Definition at line 31 of file rrtmgp_sw_gas_optics.F90.

◆ minor_scales_with_density_lowersw

logical(wl), dimension(:), allocatable rrtmgp_sw_gas_optics::minor_scales_with_density_lowersw

Density scaling is applied to minor absorption coefficients.

Definition at line 70 of file rrtmgp_sw_gas_optics.F90.

◆ minor_scales_with_density_uppersw

logical(wl), dimension(:), allocatable rrtmgp_sw_gas_optics::minor_scales_with_density_uppersw

Density scaling is applied to minor absorption coefficients.

Definition at line 70 of file rrtmgp_sw_gas_optics.F90.

◆ nabsorberssw

integer rrtmgp_sw_gas_optics::nabsorberssw

Definition at line 22 of file rrtmgp_sw_gas_optics.F90.

◆ nbndssw

integer rrtmgp_sw_gas_optics::nbndssw

Definition at line 22 of file rrtmgp_sw_gas_optics.F90.

◆ ncontributors_lowersw

integer rrtmgp_sw_gas_optics::ncontributors_lowersw

Definition at line 22 of file rrtmgp_sw_gas_optics.F90.

◆ ncontributors_uppersw

integer rrtmgp_sw_gas_optics::ncontributors_uppersw

Definition at line 22 of file rrtmgp_sw_gas_optics.F90.

◆ nextrabsorberssw

integer rrtmgp_sw_gas_optics::nextrabsorberssw

Definition at line 22 of file rrtmgp_sw_gas_optics.F90.

◆ ngptssw

integer rrtmgp_sw_gas_optics::ngptssw

Definition at line 22 of file rrtmgp_sw_gas_optics.F90.

◆ nlayerssw

integer rrtmgp_sw_gas_optics::nlayerssw

Definition at line 22 of file rrtmgp_sw_gas_optics.F90.

◆ nminor_absorber_intervals_lowersw

integer rrtmgp_sw_gas_optics::nminor_absorber_intervals_lowersw

Definition at line 22 of file rrtmgp_sw_gas_optics.F90.

◆ nminor_absorber_intervals_uppersw

integer rrtmgp_sw_gas_optics::nminor_absorber_intervals_uppersw

Definition at line 22 of file rrtmgp_sw_gas_optics.F90.

◆ nminorabsorberssw

integer rrtmgp_sw_gas_optics::nminorabsorberssw

Definition at line 22 of file rrtmgp_sw_gas_optics.F90.

◆ nmixingfracssw

integer rrtmgp_sw_gas_optics::nmixingfracssw

Definition at line 22 of file rrtmgp_sw_gas_optics.F90.

◆ npairssw

integer rrtmgp_sw_gas_optics::npairssw

Definition at line 22 of file rrtmgp_sw_gas_optics.F90.

◆ npresssw

integer rrtmgp_sw_gas_optics::npresssw

Definition at line 22 of file rrtmgp_sw_gas_optics.F90.

◆ ntempssw

integer rrtmgp_sw_gas_optics::ntempssw

Definition at line 22 of file rrtmgp_sw_gas_optics.F90.

◆ press_ref_tropsw

real(wp) rrtmgp_sw_gas_optics::press_ref_tropsw

Reference pressure separating the lower and upper atmosphere [Pa].

Definition at line 37 of file rrtmgp_sw_gas_optics.F90.

◆ press_refsw

real(wp), dimension(:), allocatable rrtmgp_sw_gas_optics::press_refsw

Pressures for reference atmosphere; press_ref(# reference layers) [Pa].

Definition at line 44 of file rrtmgp_sw_gas_optics.F90.

◆ rayl_lowersw

real(wp), dimension(:,:,:), allocatable rrtmgp_sw_gas_optics::rayl_lowersw

Stored coefficients due to rayleigh scattering contribution.

Definition at line 52 of file rrtmgp_sw_gas_optics.F90.

◆ rayl_uppersw

real(wp), dimension(:,:,:), allocatable rrtmgp_sw_gas_optics::rayl_uppersw

Stored coefficients due to rayleigh scattering contribution.

Definition at line 52 of file rrtmgp_sw_gas_optics.F90.

◆ sb_default

real(wp), parameter rrtmgp_sw_gas_optics::sb_default = 902.7126

Definition at line 15 of file rrtmgp_sw_gas_optics.F90.

◆ sb_defaultsw

real(wp) rrtmgp_sw_gas_optics::sb_defaultsw

Mean value of sunspot index over the average solar cycle from the NRLSSI2 model of solar variability.

Definition at line 37 of file rrtmgp_sw_gas_optics.F90.

◆ scale_by_complement_lowersw

logical(wl), dimension(:), allocatable rrtmgp_sw_gas_optics::scale_by_complement_lowersw

Absorption is scaled by concentration of scaling_gas (F) or its complement (T)

Definition at line 70 of file rrtmgp_sw_gas_optics.F90.

◆ scale_by_complement_uppersw

logical(wl), dimension(:), allocatable rrtmgp_sw_gas_optics::scale_by_complement_uppersw

Absorption is scaled by concentration of scaling_gas (F) or its complement (T)

Definition at line 70 of file rrtmgp_sw_gas_optics.F90.

◆ scaling_gas_lowersw

character(len=32), dimension(:), allocatable rrtmgp_sw_gas_optics::scaling_gas_lowersw

Absorption also depends on the concentration of this gas.

Definition at line 62 of file rrtmgp_sw_gas_optics.F90.

◆ scaling_gas_uppersw

character(len=32), dimension(:), allocatable rrtmgp_sw_gas_optics::scaling_gas_uppersw

Absorption also depends on the concentration of this gas.

Definition at line 62 of file rrtmgp_sw_gas_optics.F90.

◆ solar_facularsw

real(wp), dimension(:), allocatable rrtmgp_sw_gas_optics::solar_facularsw

Spectrally-dependent facular term from the NRLSSI2 model of solar variability.

Definition at line 44 of file rrtmgp_sw_gas_optics.F90.

◆ solar_quietsw

real(wp), dimension(:), allocatable rrtmgp_sw_gas_optics::solar_quietsw

Spectrally-dependent quiet sun irradiance from the NRLSSI2 model of solar variability.

Definition at line 44 of file rrtmgp_sw_gas_optics.F90.

◆ solar_sunspotsw

real(wp), dimension(:), allocatable rrtmgp_sw_gas_optics::solar_sunspotsw

Spectrally-dependent sunspot term from the NRLSSI2 model of solar variability.

Definition at line 44 of file rrtmgp_sw_gas_optics.F90.

◆ sw_gas_props

type(ty_gas_optics_rrtmgp) rrtmgp_sw_gas_optics::sw_gas_props

Definition at line 21 of file rrtmgp_sw_gas_optics.F90.

◆ temp_ref_psw

real(wp) rrtmgp_sw_gas_optics::temp_ref_psw

Standard spectroscopic reference pressure [Pa].

Definition at line 37 of file rrtmgp_sw_gas_optics.F90.

◆ temp_ref_tsw

real(wp) rrtmgp_sw_gas_optics::temp_ref_tsw

Standard spectroscopic reference temperature [K].

Definition at line 37 of file rrtmgp_sw_gas_optics.F90.

◆ temp_refsw

real(wp), dimension(:), allocatable rrtmgp_sw_gas_optics::temp_refsw

Temperatures for reference atmosphere; temp_ref(# reference layers) [K].

Definition at line 44 of file rrtmgp_sw_gas_optics.F90.

◆ tsi_default

real(wp), parameter rrtmgp_sw_gas_optics::tsi_default = 1360.85767381726

Definition at line 15 of file rrtmgp_sw_gas_optics.F90.

◆ tsi_defaultsw

real(wp) rrtmgp_sw_gas_optics::tsi_defaultsw

Definition at line 37 of file rrtmgp_sw_gas_optics.F90.

◆ vmr_refsw

real(wp), dimension(:,:,:), allocatable rrtmgp_sw_gas_optics::vmr_refsw

Volume mixing ratios for reference atmosphere.

Definition at line 52 of file rrtmgp_sw_gas_optics.F90.