RTE Solver

RRTMGP.RTESolver.solve_lw!Function
solve_lw!((; context, flux, src, bcs, op)::NoScatLWRTE, as::GrayAtmosphericState)

Non-scattering RTE solver for the longwave problem, using gray optics.

source
solve_lw!((; context, flux, src, bcs, op)::TwoStreamLWRTE, as::GrayAtmosphericState)

Two Stream RTE solver for the longwave problem, using gray optics.

source
solve_lw!(
    (; context, fluxb, flux, src, bcs, op)::NoScatLWRTE,
    as::AtmosphericState,
    lookup_lw::LookUpLW,
    lookup_lw_cld::Union{LookUpCld, PadeCld, Nothing},
    lookup_lw_aero::Union{LookUpAerosolMerra, Nothing},
)

Non-scattering RTE solver for the longwave problem, using RRTMGP optics.

source
solve_lw!(
    (; context, fluxb, flux, src, bcs, op)::TwoStreamLWRTE,
    as::AtmosphericState,
    lookup_lw::LookUpLW,
    lookup_lw_cld::Union{LookUpCld, PadeCld, Nothing},
    lookup_lw_aero::Union{LookUpAerosolMerra, Nothing},
)

Two Stream RTE solver for the longwave problem, using RRTMGP optics.

source
RRTMGP.RTESolver.solve_sw!Function
solve_sw!((; context, flux, bcs, op)::NoScatSWRTE, as::GrayAtmosphericState)

Non-scattering RTE solver for the shortwave problem, using gray optics.

source
solve_sw!((; context, flux, src, bcs, op)::TwoStreamSWRTE, as::GrayAtmosphericState)

Two Stream RTE solver for the shortwave problem, using gray optics.

source
solve_sw!(
    (; context, fluxb, flux, bcs, op)::NoScatSWRTE,
    as::AtmosphericState,
    lookup_sw::LookUpSW,
)

Non-scattering RTE solver for the shortwave problem, using RRTMGP optics.

source
solve_sw!(
    (; context, fluxb, flux, src, bcs, op)::TwoStreamSWRTE,
    as::AtmosphericState,
    lookup_sw::LookUpSW,
    lookup_sw_cld::Union{LookUpCld, PadeCld, Nothing},
    lookup_sw_aero::Union{LookUpAerosolMerra, Nothing},
)

Two Stream RTE solver for the shortwave problem, using RRTMGP optics.

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_one_angle!Function
rte_lw_noscat_one_angle!(
    src_lw::SourceLWNoScat,
    bcs_lw::LwBCs,
    op::OneScalar,
    Ds::FT,
    w_μ::FT,
    gcol::Int,
    flux::FluxLW,
    igpt::Int,
    ibnd::Int,
    nlay::Int,
    nlev::Int,
) where {FT}

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