vertical_diffusion Module

Parametrization of vertical diffusion

Three different processes are modelled by the vertical diffusion scheme: 1) Shallow convection - A redistribution of moisture and dry static energy between the lowest two layers where there is conditional instability 2) A slow diffusion of moisture in stable conditions 3) A fast redistribution of dry static energy where the lapse rate is close to the dry adiabatic limit


Uses

  • module~~vertical_diffusion~~UsesGraph module~vertical_diffusion vertical_diffusion module~params params module~vertical_diffusion->module~params

Used by

  • module~~vertical_diffusion~~UsedByGraph module~vertical_diffusion vertical_diffusion proc~get_physical_tendencies get_physical_tendencies proc~get_physical_tendencies->module~vertical_diffusion

Contents


Variables

TypeVisibility AttributesNameInitial
real, private, parameter:: trshc =6.0

Relaxation time (in hours) for shallow convection

real, private, parameter:: trvdi =24.0

Relaxation time (in hours) for moisture diffusion

real, private, parameter:: trvds =6.0

Relaxation time (in hours) for super-adiabatic conditions

real, private, parameter:: redshc =0.5

Reduction factor of shallow convection in areas of deep convection

real, private, parameter:: rhgrad =0.5

Maximum gradient of relative humidity (d_RH/d_sigma)

real, private, parameter:: segrad =0.1

Minimum gradient of dry static energy (d_DSE/d_phi)


Subroutines

public subroutine get_vertical_diffusion_tend(se, rh, qa, qsat, phi, icnv, utenvd, vtenvd, ttenvd, qtenvd)

Compute tendencies of momentum, energy and moisture due to vertical diffusion and shallow convection

Arguments

Type IntentOptional AttributesName
real, intent(in) :: se(ix,il,kx)

Dry static energy

real, intent(in) :: rh(ix,il,kx)

Relative humidity

real, intent(in) :: qa(ix,il,kx)

Specific humidity [g/kg]

real, intent(in) :: qsat(ix,il,kx)

Saturated specific humidity [g/kg]

real, intent(in) :: phi(ix,il,kx)

Geopotential

integer, intent(in) :: icnv(ix,il)

Sigma-level index of deep convection

real, intent(out) :: utenvd(ix,il,kx)

u-wind tendency

real, intent(out) :: vtenvd(ix,il,kx)

v-wind tendency

real, intent(out) :: ttenvd(ix,il,kx)

Temperature tendency

real, intent(out) :: qtenvd(ix,il,kx)

Specific humidity tendency