net_broadband Interface

public interface net_broadband

Spectral reduction over all points for net flux Overloaded - which routine is called depends on arguments


Contents


Subroutines

private subroutine net_broadband_full(ncol, nlev, ngpt, spectral_flux_dn, spectral_flux_up, broadband_flux_net) bind(C, name="0")

Net flux from g-point fluxes up and down

Arguments

TypeIntentOptionalAttributesName
integer, intent(in) :: ncol

Array sizes

integer, intent(in) :: nlev

Array sizes

integer, intent(in) :: ngpt

Array sizes

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

Spectrally-resolved flux up and down

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

Spectrally-resolved flux up and down

real(kind=wp), intent(out), dimension(ncol, nlev):: broadband_flux_net

Net (down minus up) summed over ngpt

private subroutine net_broadband_precalc(ncol, nlev, flux_dn, flux_up, broadband_flux_net) bind(C, name="0")

Net flux when bradband flux up and down are already available

Arguments

TypeIntentOptionalAttributesName
integer, intent(in) :: ncol

Array sizes

integer, intent(in) :: nlev

Array sizes

real(kind=wp), intent(in), dimension(ncol, nlev):: flux_dn

Broadband downward and upward fluxes

real(kind=wp), intent(in), dimension(ncol, nlev):: flux_up

Broadband downward and upward fluxes

real(kind=wp), intent(out), dimension(ncol, nlev):: broadband_flux_net

Net (down minus up)