radiation_thermodynamics Module


Uses

  • module~~radiation_thermodynamics~~UsesGraph module~radiation_thermodynamics radiation_thermodynamics module~parkind1~2 PARKIND1 module~radiation_thermodynamics->module~parkind1~2

Contents


Derived Types

type, public ::  thermodynamics_type

Components

Type Visibility Attributes Name Initial
real(kind=jprb), public, allocatable, dimension(:,:) :: pressure_hl
real(kind=jprb), public, allocatable, dimension(:,:) :: temperature_hl
real(kind=jprb), public, allocatable, dimension(:,:) :: h2o_sat_liq

Type-Bound Procedures

procedure , public :: allocate => allocate_thermodynamics_arrays Subroutine
procedure , public :: deallocate => deallocate_thermodynamics_arrays Subroutine
procedure , public :: calc_saturation_wrt_liquid Subroutine
procedure , public :: get_layer_mass Subroutine
procedure , public :: get_layer_mass_column Subroutine
procedure , public :: out_of_physical_bounds Function

Functions

public function out_of_physical_bounds(this, istartcol, iendcol, do_fix) result(is_bad)

Arguments

Type IntentOptional Attributes Name
class(thermodynamics_type), intent(inout) :: this
integer, intent(in), optional :: istartcol
integer, intent(in), optional :: iendcol
logical, intent(in), optional :: do_fix

Return Value logical


Subroutines

public subroutine allocate_thermodynamics_arrays(this, ncol, nlev, use_h2o_sat)

Arguments

Type IntentOptional Attributes Name
class(thermodynamics_type), intent(inout) :: this
integer, intent(in) :: ncol
integer, intent(in) :: nlev
logical, intent(in), optional :: use_h2o_sat

public subroutine deallocate_thermodynamics_arrays(this)

Arguments

Type IntentOptional Attributes Name
class(thermodynamics_type), intent(inout) :: this

public subroutine calc_saturation_wrt_liquid(this, istartcol, iendcol)

Arguments

Type IntentOptional Attributes Name
class(thermodynamics_type), intent(inout) :: this
integer, intent(in) :: istartcol
integer, intent(in) :: iendcol

public subroutine get_layer_mass(this, istartcol, iendcol, layer_mass)

Arguments

Type IntentOptional Attributes Name
class(thermodynamics_type), intent(in) :: this
integer, intent(in) :: istartcol
integer, intent(in) :: iendcol
real(kind=jprb), intent(out) :: layer_mass(:,:)

public subroutine get_layer_mass_column(this, icol, layer_mass)

Arguments

Type IntentOptional Attributes Name
class(thermodynamics_type), intent(in) :: this
integer, intent(in) :: icol
real(kind=jprb), intent(out) :: layer_mass(:)

public subroutine get_layer_separation(pressure_hl, temperature_hl, layer_separation)

Arguments

Type IntentOptional Attributes Name
real(kind=jprb), intent(in), dimension(:,:) :: pressure_hl
real(kind=jprb), intent(in), dimension(:,:) :: temperature_hl
real(kind=jprb), intent(out), dimension(:,:) :: layer_separation