mo_cloud_optics_rrtmgp Module


Uses

    • mo_rte_config
    • mo_rte_kind
    • mo_optical_props
    • mo_rte_util_array_validation
  • module~~mo_cloud_optics_rrtmgp~~UsesGraph module~mo_cloud_optics_rrtmgp mo_cloud_optics_rrtmgp mo_rte_config mo_rte_config module~mo_cloud_optics_rrtmgp->mo_rte_config mo_rte_kind mo_rte_kind module~mo_cloud_optics_rrtmgp->mo_rte_kind mo_optical_props mo_optical_props module~mo_cloud_optics_rrtmgp->mo_optical_props mo_rte_util_array_validation mo_rte_util_array_validation module~mo_cloud_optics_rrtmgp->mo_rte_util_array_validation

Contents


Interfaces

public interface pade_eval

  • private function pade_eval_nbnd(nbnd, nrads, m, n, irad, re, pade_coeffs)

    Arguments

    TypeIntentOptionalAttributesName
    integer, intent(in) :: nbnd
    integer, intent(in) :: nrads
    integer, intent(in) :: m
    integer, intent(in) :: n
    integer, intent(in) :: irad
    real(kind=wp), intent(in) :: re
    real(kind=wp), intent(in), dimension(nbnd, nrads, 0:m+n):: pade_coeffs

    Return Value real(kind=wp),dimension(nbnd)

  • private function pade_eval_1(iband, nbnd, nrads, m, n, irad, re, pade_coeffs)

    Arguments

    TypeIntentOptionalAttributesName
    integer, intent(in) :: iband
    integer, intent(in) :: nbnd
    integer, intent(in) :: nrads
    integer, intent(in) :: m
    integer, intent(in) :: n
    integer, intent(in) :: irad
    real(kind=wp), intent(in) :: re
    real(kind=wp), intent(in), dimension(nbnd, nrads, 0:m+n):: pade_coeffs

    Return Value real(kind=wp)


Derived Types

type, public, extends(ty_optical_props) :: ty_cloud_optics_rrtmgp

Components

TypeVisibilityAttributesNameInitial
integer, public :: ice_nsteps =0
real(kind=wp), public :: ice_step_size =0._wp
integer, public :: icergh =0
integer, public :: liq_nsteps =0
real(kind=wp), public :: liq_step_size =0._wp
real(kind=wp), public, dimension(:,:,: ), allocatable:: lut_asyice
real(kind=wp), public, dimension(:,: ), allocatable:: lut_asyliq
real(kind=wp), public, dimension(:,:,: ), allocatable:: lut_extice
real(kind=wp), public, dimension(:,: ), allocatable:: lut_extliq
real(kind=wp), public, dimension(:,:,: ), allocatable:: lut_ssaice
real(kind=wp), public, dimension(:,: ), allocatable:: lut_ssaliq
real(kind=wp), public, dimension(:,:,:,:), allocatable:: pade_asyice
real(kind=wp), public, dimension(:,:,: ), allocatable:: pade_asyliq
real(kind=wp), public, dimension(:,:,:,:), allocatable:: pade_extice
real(kind=wp), public, dimension(:,:,: ), allocatable:: pade_extliq
real(kind=wp), public, dimension(:), allocatable:: pade_sizreg_asyice
real(kind=wp), public, dimension(:), allocatable:: pade_sizreg_asyliq
real(kind=wp), public, dimension(:), allocatable:: pade_sizreg_extice
real(kind=wp), public, dimension(:), allocatable:: pade_sizreg_extliq
real(kind=wp), public, dimension(:), allocatable:: pade_sizreg_ssaice
real(kind=wp), public, dimension(:), allocatable:: pade_sizreg_ssaliq
real(kind=wp), public, dimension(:,:,:,:), allocatable:: pade_ssaice
real(kind=wp), public, dimension(:,:,: ), allocatable:: pade_ssaliq
real(kind=wp), public :: radice_lwr =0._wp
real(kind=wp), public :: radice_upr =0._wp
real(kind=wp), public :: radliq_lwr =0._wp
real(kind=wp), public :: radliq_upr =0._wp

Type-Bound Procedures

procedure, public :: cloud_optics
procedure, public :: finalize
procedure, public :: get_max_radius_ice
procedure, public :: get_max_radius_liq
procedure, public :: get_min_radius_ice
procedure, public :: get_min_radius_liq
procedure, public :: get_num_ice_roughness_types
generic, public :: load => load_lut, load_pade
procedure, public :: set_ice_roughness