RTE Solver

RRTMGP.RTESolver.solve_lw!Function
solve_lw!(
    slv::Solver,
    max_threads::Int,
    lookup_lw::Union{LookUpLW, Nothing} = nothing,
    lookup_lw_cld::Union{LookUpCld, PadeCld, Nothing} = nothing,
)

Solver for the longwave radiation problem

source
RRTMGP.RTESolver.solve_sw!Function
solve_sw!(
    slv::Solver,
    max_threads::Int,
    lookup_sw::Union{LookUpSW, Nothing} = nothing,
    lookup_sw_cld::Union{LookUpCld, PadeCld, Nothing} = nothing,
)

Solver for the shortwave radiation problem

source
RRTMGP.RTESolver.lw_2stream_coeffsFunction
lw_2stream_coeffs(τ::FT, ssa::FT, g::FT, lev_src_bot::FT, lev_src_top::FT) where {FT}

This function combines RRTMGP-specific sources at levels, computes layer reflectance, transmittance, and total source function at levels using linear-in-tau approximation.

source
RRTMGP.RTESolver.lw_noscat_source_upFunction
lw_noscat_source_up(lev_source_inc::FT, lay_source::FT, τ_loc::FT, trans::FT, τ_thresh) where {FT}

Compute LW source function for upward emission at levels using linear-in-tau assumption See Clough et al., 1992, doi: 10.1029/92JD01419, Eq 13

source
RRTMGP.RTESolver.lw_noscat_source_dnFunction
lw_noscat_source_dn(lev_source_dec::FT, lay_source::FT, τ_loc::FT, trans::FT, τ_thresh) where {FT}

Compute LW source function for downward emission at levels using linear-in-tau assumption See Clough et al., 1992, doi: 10.1029/92JD01419, Eq 13

source
RRTMGP.RTESolver.rte_lw_noscat!Function
rte_lw_noscat!(
    src_lw::SourceLWNoScat{FT},
    bcs_lw::LwBCs{FT},
    op::OneScalar{FT},
    gcol,
    flux::FluxLW,
    igpt,
    ibnd,
    nlay,
    nlev,
) where {FT<:AbstractFloat}

Transport for no-scattering longwave problem.

source
RRTMGP.RTESolver.rte_lw_2stream!Function
rte_lw_2stream!(
    op::TwoStream,
    flux::FluxLW,
    src_lw::SL,
    bcs_lw::BCL,
    gcol::Int,
    igpt::Int,
    ibnd::Int,
    nlev::Int,
    ncol::Int,
) where {SL, BCL}

Two stream solver for the longwave problem.

Transport of diffuse radiation through a vertically layered atmosphere, for the longwave problem. Equations are after Shonk and Hogan 2008, doi:10.1175/2007JCLI1940.1 (SH08)

source
RRTMGP.RTESolver.sw_2stream_coeffsFunction
sw_2stream_coeffs(τ::FT, ssa::FT, g::FT, μ₀::FT) where {FT}

Computes cell properties (transmittance and reflectance) for direct and diffuse radiation Two-stream solutions to direct and diffuse reflectance and transmittance for a layer with optical depth tau, single scattering albedo w0, and asymmetery parameter g.

Equations are developed in Meador and Weaver, 1980, doi:10.1175/1520-0469(1980)037<0630:TSATRT>2.0.CO;2

source
RRTMGP.RTESolver.rte_sw_noscat!Function
rte_sw_noscat!(
    flux::FluxSW,
    op::OneScalar,
    bcs_sw::SwBCs,
    solar_frac::AbstractFloat,
    gcol,
    nlev,
)

No-scattering solver for the shortwave problem. (Extinction-only i.e. solar direct beam)

source
RRTMGP.RTESolver.rte_sw_2stream!Function
rte_sw_2stream!(
    (; τ, ssa, g)::TwoStream,
    (; albedo, src)::SourceSW2Str,
    bcs_sw::SwBCs,
    (; flux_up, flux_dn, flux_dn_dir)::FluxSW,
    solar_frac::FT,
    igpt::Int,
    n_gpt::Int,
    ibnd::Int,
    nlev::Int,
    gcol::Int,
) where {FT}

Two stream solver for the shortwave problem.

Transport of diffuse radiation through a vertically layered atmosphere. Equations are after Shonk and Hogan 2008, doi:10.1175/2007JCLI1940.1 (SH08)

source