CCPP SciDoc v7.0.0  v7.0.0
Common Community Physics Package Developed at DTC
 
Loading...
Searching...
No Matches
mo_gas_optics_rrtmgp::ty_gas_optics_rrtmgp Type Reference
Inheritance diagram for mo_gas_optics_rrtmgp::ty_gas_optics_rrtmgp:
Collaboration diagram for mo_gas_optics_rrtmgp::ty_gas_optics_rrtmgp:

Public Member Functions

generic, public load (this, available_gases, gas_names, key_species, band2gpt, band_lims_wavenum, press_ref, press_ref_trop, temp_ref, temp_ref_p, temp_ref_t, vmr_ref, kmajor, kminor_lower, kminor_upper, gas_minor, identifier_minor, minor_gases_lower, minor_gases_upper, minor_limits_gpt_lower, minor_limits_gpt_upper, minor_scales_with_density_lower, minor_scales_with_density_upper, scaling_gas_lower, scaling_gas_upper, scale_by_complement_lower, scale_by_complement_upper, kminor_start_lower, kminor_start_upper, totplnk, planck_frac, rayl_lower, rayl_upper, optimal_angle_fit)
 
generic, public load (this, available_gases, gas_names, key_species, band2gpt, band_lims_wavenum, press_ref, press_ref_trop, temp_ref, temp_ref_p, temp_ref_t, vmr_ref, kmajor, kminor_lower, kminor_upper, gas_minor, identifier_minor, minor_gases_lower, minor_gases_upper, minor_limits_gpt_lower, minor_limits_gpt_upper, minor_scales_with_density_lower, minor_scales_with_density_upper, scaling_gas_lower, scaling_gas_upper, scale_by_complement_lower, scale_by_complement_upper, kminor_start_lower, kminor_start_upper, solar_quiet, solar_facular, solar_sunspot, tsi_default, mg_default, sb_default, rayl_lower, rayl_upper)
 
procedure, public source_is_internal (this)
 return true if initialized for internal sources/longwave, false otherwise
 
procedure, public source_is_external (this)
 return true if initialized for external sources/shortwave, false otherwise
 
procedure, public is_loaded (this)
 
procedure, public finalize (this)
 
procedure, public get_ngas (this)
 col_dry is the number of molecules per cm-2 of dry air
 
procedure, public get_gases (this)
 return the names of the gases known to the k-distributions
 
procedure, public get_press_min (this)
 return the minimum pressure on the interpolation grids
 
procedure, public get_press_max (this)
 return the maximum pressure on the interpolation grids
 
procedure, public get_temp_min (this)
 return the minimum temparature on the interpolation grids
 
procedure, public get_temp_max (this)
 return the maximum temparature on the interpolation grids
 
procedure, public compute_optimal_angles (this, optical_props, optimal_angles)
 Compute a transport angle that minimizes flux errors at surface and TOA based on empirical fits.
 
procedure, public set_solar_variability (this, mg_index, sb_index, tsi)
 Compute the spectral solar source function adjusted to account for solar variability following the NRLSSI2 model of Coddington et al. 2016, doi:10.1175/BAMS-D-14-00265.1. as specified by the facular brightening (mg_index) and sunspot dimming (sb_index) indices provided as input.
 
procedure, public set_tsi (this, tsi)
 
procedure, public gas_optics_int (this, play, plev, tlay, tsfc, gas_desc, optical_props, sources, col_dry, tlev)
 Compute gas optical depth and Planck source functions, given temperature, pressure, and composition.
 
procedure, public gas_optics_ext (this, play, plev, tlay, gas_desc, optical_props, toa_src, col_dry)
 Compute gas optical depth given temperature, pressure, and composition Top-of-atmosphere stellar insolation is also reported.
 
- Public Member Functions inherited from mo_gas_optics::ty_gas_optics
generic, public gas_optics gas_optics_int
 
generic, public gas_optics gas_optics_ext
 
procedure(gas_optics_int_abstract), deferred gas_optics_int (this, play, plev, tlay, tsfc, gas_desc, optical_props, sources, col_dry, tlev)
 
procedure(gas_optics_ext_abstract), deferred gas_optics_ext (this, play, plev, tlay, gas_desc, optical_props, toa_src, col_dry)
 
procedure(logical_abstract), deferred, public source_is_internal (this)
 
procedure(logical_abstract), deferred, public source_is_external (this)
 
procedure(real_abstract), deferred, public get_press_min (this)
 
procedure(real_abstract), deferred, public get_press_max (this)
 
procedure(real_abstract), deferred, public get_temp_min (this)
 
procedure(real_abstract), deferred, public get_temp_max (this)
 
- Public Member Functions inherited from mo_optical_props::ty_optical_props
generic, public init (this, band_lims_wvn, band_lims_gpt, name)
 
generic, public init (this, spectral_desc)
 
procedure, public is_initialized (this)
 
procedure, public finalize (this)
 
procedure, public get_nband (this)
 
procedure, public get_ngpt (this)
 
procedure, public get_gpoint_bands (this)
 
procedure, public convert_band2gpt (this, band)
 
procedure, public convert_gpt2band (this, gpt)
 
procedure, public get_band_lims_gpoint (this)
 
procedure, public get_band_lims_wavenumber (this)
 
procedure, public get_band_lims_wavelength (this)
 
procedure, public bands_are_equal (this, that)
 
procedure, public gpoints_are_equal (this, that)
 
procedure, public expand (this, arr_in)
 
procedure, public set_name (this, name)
 
procedure, public get_name (this)
 

Public Attributes

real(wp), dimension(:), allocatable press_ref_log
 
real(wp), dimension(:), allocatable temp_ref
 
real(wp) press_ref_min
 
real(wp) press_ref_max
 
real(wp) temp_ref_min
 
real(wp) temp_ref_max
 
real(wp) press_ref_log_delta
 
real(wp) temp_ref_delta
 
real(wp) press_ref_trop_log
 
character(32), dimension(:), allocatable gas_names
 
real(wp), dimension(:,:,:), allocatable vmr_ref
 
integer, dimension(:,:), allocatable flavor
 
integer, dimension(:,:), allocatable gpoint_flavor
 
real(wp), dimension(:,:,:,:), allocatable kmajor
 
integer, dimension(:,:), allocatable minor_limits_gpt_lower
 
integer, dimension(:,:), allocatable minor_limits_gpt_upper
 
logical(wl), dimension(:), allocatable minor_scales_with_density_lower
 
logical(wl), dimension(:), allocatable minor_scales_with_density_upper
 
logical(wl), dimension(:), allocatable scale_by_complement_lower
 
logical(wl), dimension(:), allocatable scale_by_complement_upper
 
integer, dimension(:), allocatable idx_minor_lower
 
integer, dimension(:), allocatable idx_minor_upper
 
integer, dimension(:), allocatable idx_minor_scaling_lower
 
integer, dimension(:), allocatable idx_minor_scaling_upper
 
integer, dimension(:), allocatable kminor_start_lower
 
integer, dimension(:), allocatable kminor_start_upper
 
real(wp), dimension(:,:,:), allocatable kminor_lower
 
real(wp), dimension(:,:,:), allocatable kminor_upper
 
real(wp), dimension(:,:,:,:), allocatable krayl
 
real(wp), dimension(:,:,:,:), allocatable planck_frac
 
real(wp), dimension(:,:), allocatable totplnk
 
real(wp) totplnk_delta
 
real(wp), dimension(:,:), allocatable optimal_angle_fit
 
real(wp), dimension(:), allocatable solar_source
 
real(wp), dimension(:), allocatable solar_source_quiet
 
real(wp), dimension(:), allocatable solar_source_facular
 
real(wp), dimension(:), allocatable solar_source_sunspot
 
logical, dimension(:), allocatable is_key
 

Private Member Functions

procedure, private load_int (this, available_gases, gas_names, key_species, band2gpt, band_lims_wavenum, press_ref, press_ref_trop, temp_ref, temp_ref_p, temp_ref_t, vmr_ref, kmajor, kminor_lower, kminor_upper, gas_minor, identifier_minor, minor_gases_lower, minor_gases_upper, minor_limits_gpt_lower, minor_limits_gpt_upper, minor_scales_with_density_lower, minor_scales_with_density_upper, scaling_gas_lower, scaling_gas_upper, scale_by_complement_lower, scale_by_complement_upper, kminor_start_lower, kminor_start_upper, totplnk, planck_frac, rayl_lower, rayl_upper, optimal_angle_fit)
 
procedure, private load_ext (this, available_gases, gas_names, key_species, band2gpt, band_lims_wavenum, press_ref, press_ref_trop, temp_ref, temp_ref_p, temp_ref_t, vmr_ref, kmajor, kminor_lower, kminor_upper, gas_minor, identifier_minor, minor_gases_lower, minor_gases_upper, minor_limits_gpt_lower, minor_limits_gpt_upper, minor_scales_with_density_lower, minor_scales_with_density_upper, scaling_gas_lower, scaling_gas_upper, scale_by_complement_lower, scale_by_complement_upper, kminor_start_lower, kminor_start_upper, solar_quiet, solar_facular, solar_sunspot, tsi_default, mg_default, sb_default, rayl_lower, rayl_upper)
 
procedure, private check_key_species_present (this, gas_desc)
 
procedure, private get_nflav (this)
 return the number of distinct major gas pairs in the spectral bands (referred to as "flavors" - all bands have a flavor even if there is one or no major gas)
 
procedure, private get_neta (this)
 
procedure, private get_npres (this)
 
procedure, private get_ntemp (this)
 
procedure, private get_nplancktemp (this)
 

Private Attributes

real(wp), dimension(:), allocatable press_ref