pelagos_py.steps.processing.chla_quenching#

class pelagos_py.steps.processing.chla_quenching.chla_quenching_correction(name, parameters=None, diagnostics=False, context=None)[source]#

Bases: pelagos_py.steps.base_step.BaseStep, pelagos_py.utils.qc_handling.QCHandlingMixin

Correct non-photochemical quenching of chlorophyll fluorescence.

Samples whose flags fall in calculation_flag_filter (by default probably-bad (3), bad (4) and missing (9); see qc_handling_settings) inform none of the quantities the methods derive — quenching depth, night fl:bbp references, in-mixed-layer maxima, euphotic depth. They are still corrected like any other sample; each method just reads a NaN-masked copy of its inputs wherever it derives a quantity, so flagging the unstable top few metres keeps it out of the references while it still gets corrected.

The mixed layer depth is read from the MLD variable, produced by a preceding Mixed Layer Depth step.

Example

- name: "CHLA Quenching"
  parameters:
    method: "xing2012"
    apply_to: "CHLA"
  diagnostics: true
apply_sackmann2008_quenching_correction(profile)[source]#

Sackmann et al. (2008, Biogeosciences, 5:2839) NPQ correction.

Within the mixed layer the maximum fluorescence-to-backscatter ratio R_max = max(F_Chl / b_bp) is taken as the non-quenched reference, and fluorescence from the surface to the depth of R_max is reset to b_bp x R_max (needs MLD + backscatter).

apply_xing2012_quenching_correction(profile)[source]#

Xing et al. (2012, JGR–Oceans, 117:C01019) NPQ correction.

The maximum fluorescence within the mixed-layer depth (MLD) is taken as the non-quenched reference; all shallower values are lifted to it. Applied only in daytime (needs MLD).

apply_biermann2015_quenching_correction(profile)[source]#

Biermann et al. (2015, Ocean Science, 11:83-91) NPQ correction.

Like Xing 2012 but the reference is the maximum fluorescence within the euphotic zone (surface to ZEU, the 1% light level) rather than the mixed layer. Applied only in daytime (needs ZEU).

apply_hemsley2015_quenching_correction(profile)[source]#

Hemsley et al. (2015, Biogeosciences, 12:7093) NPQ correction.

One global regression of nighttime fluorescence against backscatter, Chl = m*bbp + c, is fit once for the whole deployment, then applied to every daytime profile over the euphotic zone 0 <= z <= ZEU (needs backscatter + ZEU).

apply_swart2015_quenching_correction(profile)[source]#

Swart et al. (2015, J. Plankton Res., 37:635) NPQ correction.

Same scheme as Sackmann 2008, but the maximum fluorescence-to-backscatter ratio is sought within the euphotic zone (surface to ZEU) rather than the mixed layer (needs backscatter + ZEU).

apply_thomalla2018_quenching_correction(profile)[source]#

Thomalla et al. (2018, L&O: Methods, 16:132) NPQ correction.

Each daytime profile is corrected against its most recent preceding night’s mean fl:bbp ratio profile. Above the quenching depth QD, fluorescence is reset to (Fl_NT/bbp_NT) * bbp_DT, kept only where that raises it. QD comes from the night-minus-day fluorescence difference within the photic layer (shallower than max_photic_depth, following glidertools; needs backscatter, no PAR).

apply_xing2018_quenching_correction(profile)[source]#

Xing et al. (2018, Optics Express, 26:24734) S08+ NPQ correction, optionally extended by the Terrats et al. (2020, GRL) X18_S08 hybrid.

The mixing regime compares the iPAR=15 isolume depth against the MLD.

hybrid=False (pure Xing 2018)

Every daytime profile gets S08+: within the NPQ layer (surface to the shallower of MLD and the iPAR=15 depth) the fl:bbp ratio is maximised and fluorescence is reset to b_bp x R_max.

hybrid=True (Terrats 2020, the default)

Deep-mixing profiles (iPAR=15 depth <= MLD) get S08+ as above. Shallow-mixing profiles instead get the XB18 sigmoid below the MLD and b_bp x R_MLD above it.

The correction never lowers fluorescence (needs MLD + backscatter + PAR).