longwave_radiation Module

Parametrization of long-wave radiation


Uses

  • module~~longwave_radiation~~UsesGraph module~longwave_radiation longwave_radiation module~types types module~longwave_radiation->module~types module~params params module~longwave_radiation->module~params iso_fortran_env iso_fortran_env module~types->iso_fortran_env module~params->module~types

Used by

  • module~~longwave_radiation~~UsedByGraph module~longwave_radiation longwave_radiation proc~set_forcing set_forcing proc~set_forcing->module~longwave_radiation proc~get_physical_tendencies get_physical_tendencies proc~get_physical_tendencies->module~longwave_radiation

Contents


Variables

TypeVisibility AttributesNameInitial
integer, private, parameter:: nband =4

Subroutines

public subroutine get_downward_longwave_rad_fluxes(ta, fsfcd, dfabs, fband, rad_flux, rad_tau2, rad_st4a, wvi)

Compute the downward flux of long-wave radiation

Arguments

Type IntentOptional AttributesName
real(kind=p), intent(in) :: ta(ix,il,kx)

Absolute temperature [K]

real(kind=p), intent(out) :: fsfcd(ix,il)

Downward flux of long-wave radiation at the surface

real(kind=p), intent(out) :: dfabs(ix,il,kx)

Flux of long-wave radiation absorbed in each atmospheric layer

real(kind=p), intent(in) :: fband(100:400,4)

Energy fraction emitted in each LW band = f(T)

real(kind=p), intent(inout) :: rad_flux(ix,il,4)

Radiative flux in different spectral bands

real(kind=p), intent(in) :: rad_tau2(ix,il,kx,4)

Transmissivity of atmospheric layers

real(kind=p), intent(inout) :: rad_st4a(ix,il,kx,2)

Blackbody emission from full and half atmospheric levels

real(kind=p), intent(in) :: wvi(kx,2)

Weights for vertical interpolation

public subroutine get_upward_longwave_rad_fluxes(ta, ts, fsfcd, fsfcu, fsfc, ftop, dfabs, fband, rad_flux, rad_tau2, rad_st4a, rad_strat_corr, dhs)

Compute the absorption of upward long-wave radiation fluxes

Arguments

Type IntentOptional AttributesName
real(kind=p), intent(in) :: ta(ix,il,kx)

Absolute temperature

real(kind=p), intent(in) :: ts(ix,il)

Surface temperature

real(kind=p), intent(in) :: fsfcd(ix,il)

Downward flux of long-wave radiation at the surface

real(kind=p), intent(in) :: fsfcu(ix,il)

Surface blackbody emission

real(kind=p), intent(out) :: fsfc(ix,il)

Net upward flux of long-wave radiation at the surface

real(kind=p), intent(out) :: ftop(ix,il)

Outgoing flux of long-wave radiation at the top of the atmosphere

real(kind=p), intent(inout) :: dfabs(ix,il,kx)

Flux of long-wave radiation absorbed in each atmospheric layer

real(kind=p), intent(in) :: fband(100:400,4)

Energy fraction emitted in each LW band = f(T)

real(kind=p), intent(inout) :: rad_flux(ix,il,4)

Radiative flux in different spectral bands

real(kind=p), intent(inout) :: rad_tau2(ix,il,kx,4)

Transmissivity of atmospheric layers

real(kind=p), intent(in) :: rad_st4a(ix,il,kx,2)

Blackbody emission from full and half atmospheric levels

real(kind=p), intent(inout) :: rad_strat_corr(ix,il,2)

Stratospheric correction term

real(kind=p), intent(in) :: dhs(kx)

Sigma level thicknesses

public subroutine radset(fband)

Compute energy fractions in longwave bands as a function of temperature

Arguments

Type IntentOptional AttributesName
real(kind=p), intent(inout) :: fband(100:400,4)

Energy fraction emitted in each LW band = f(T)