lw_solver_2stream Subroutine

public subroutine lw_solver_2stream(ncol, nlay, ngpt, top_at_1, tau, ssa, g, lay_source, lev_source, sfc_emis, sfc_src, inc_flux, flux_up, flux_dn) bind(C, name="0")

Longwave two-stream calculation: - combine RRTMGP-specific sources at levels - compute layer reflectance, transmittance - compute total source function at levels using linear-in-tau - transport

Arguments

TypeIntentOptionalAttributesName
integer, intent(in) :: ncol

Number of columns, layers, g-points

integer, intent(in) :: nlay

Number of columns, layers, g-points

integer, intent(in) :: ngpt

Number of columns, layers, g-points

logical(kind=wl), intent(in) :: top_at_1

ilay = 1 is the top of the atmosphere?

real(kind=wp), intent(in), dimension(ncol,nlay, ngpt):: tau

Optical thickness, single-scattering albedo, asymmetry parameter []

real(kind=wp), intent(in), dimension(ncol,nlay, ngpt):: ssa

Optical thickness, single-scattering albedo, asymmetry parameter []

real(kind=wp), intent(in), dimension(ncol,nlay, ngpt):: g

Optical thickness, single-scattering albedo, asymmetry parameter []

real(kind=wp), intent(in), dimension(ncol,nlay, ngpt):: lay_source

Planck source at layer average temperature [W/m2]

real(kind=wp), intent(in), dimension(ncol,nlay+1,ngpt):: lev_source

Planck source at layer edge temperature [W/m2]

real(kind=wp), intent(in), dimension(ncol, ngpt):: sfc_emis

Surface emissivity []

real(kind=wp), intent(in), dimension(ncol, ngpt):: sfc_src

Surface source function [W/m2]

real(kind=wp), intent(in), dimension(ncol, ngpt):: inc_flux

Incident diffuse flux, probably 0 [W/m2]

real(kind=wp), intent(out), dimension(ncol,nlay+1,ngpt):: flux_up

Fluxes [W/m2]

real(kind=wp), intent(out), dimension(ncol,nlay+1,ngpt):: flux_dn

Fluxes [W/m2]


Contents

None