pelagos_py.steps.processing.interpolate_par#
- pelagos_py.steps.processing.interpolate_par.estimate_euphotic_depth(par, depth)[source]#
Euphotic depth (1% light) from a log-linear Beer-Lambert fit of PAR vs depth.
Returns metres positive down, or
NaNwhen the fit is invalid (fewer than 4 valid points, non-physical slope, or beyond the ~186 m clear-water limit).
- pelagos_py.steps.processing.interpolate_par.depth_of_ipar(depth, ipar, level)[source]#
Depth (positive-down m) where downwelling iPAR crosses
level, or NaN.Interpolates on the irregular profile grid; clamps to the deepest / shallowest sample when
levellies outside the observed PAR range.
- class pelagos_py.steps.processing.interpolate_par.InterpolatePAR(name, parameters=None, diagnostics=False, context=None)[source]#
Bases:
pelagos_py.steps.base_step.BaseStep,pelagos_py.utils.qc_handling.QCHandlingMixinDerive the euphotic depth
ZEUand the iPAR isolume depthZ_IPAR.Both are per-profile scalars found from the downwelling PAR profile and broadcast across each profile’s measurements. Profiles without usable PAR are optionally filled by interpolating each scalar in time (
interpolate_*); otherwise they stayNaN.- Parameters:
par_var (str, optional) – Downwelling PAR variable read per profile. Default
"DOWNWELLING_PAR".depth_variable (str, optional) – Vertical coordinate (m, positive down). Default
"DEPTH".ipar_level (float, optional) – Irradiance level (umol m-2 s-1) whose crossing depth becomes
Z_IPAR. Default15.0.compute_zeu (bool, optional) – Whether to produce
ZEU/Z_IPARat all. Both defaultTrue.compute_ipar (bool, optional) – Whether to produce
ZEU/Z_IPARat all. Both defaultTrue.interpolate_zeu (bool, optional) – When
True(default) the scalar is interpolated in time onto every profile; whenFalseonly profiles with usable PAR carry it.interpolate_ipar (bool, optional) – When
True(default) the scalar is interpolated in time onto every profile; whenFalseonly profiles with usable PAR carry it.
Examples
steps: - name: Interpolate PAR parameters: par_var: DOWNWELLING_PAR ipar_level: 15.0 interpolate_zeu: true interpolate_ipar: true diagnostics: false
Which samples are usable is governed by
qc_handling_settings(calculation_flag_filter), exactly as in the other processing steps.