ppcpy.retrievals.klettfernald#
Functions
Retrieve aerosol backscatter coefficient using the Fernald method. |
|
Run klett retrieval for each cloud free region. |
- ppcpy.retrievals.klettfernald.run_cldFreeGrps(data_cube, signal: str = 'TCor', nr: bool = False, collect_debug: bool = True) dict[source]#
Run klett retrieval for each cloud free region.
- Parameters:
data_cube (object) – Main PicassoProc object.
signal (str, optional) – Name of the signal to be used for the Klett retrievals. Default is ‘TCor’.
nr (bool, optional) – If true, preform Klett retrieval for FR and NR channels. Otherwise only FR channels. Default is False.
collect_debug (bool, optional) – If true, collect debug information. Default is True.
- Returns:
aerExt (ndarray) – Aerosol extinction coefficient [m^{-1}].
aerExtStd (ndarray) – Uncertainty of aerosol extinction coefficient [m^{-1}].
aerBsc (ndarray) – Aerosol backscatter coefficient [m^{-1}Sr^{-1}].
aerBscStd (ndarray) – Uncertainty of aerosol backscatter coefficient [m^{-1}Sr^{-1}].
aerBR (ndarray) – Aerosol backscatter ratio.
aerBRStd (ndarray) – Statistical uncertainty of aerosol backscatter ratio.
retrieval (str) – Name of retrieval type, eg. ‘klett’.
signal (str) – Name of the signal used for the retrievals, eg. ‘TCor’.
History
——-
- xxxx-xx-xx (TODO: First edition by …)
- 2026-02-09 (Modified and cleaned by Buholdt)
TODO’s
——
- Should sigBGCor, sigTCor or RCS be used for the Klett retrievals?
- ppcpy.retrievals.klettfernald.fernald(height: ndarray, signal: ndarray, bg: ndarray, LR_aer: float | ndarray, refH: float | ndarray, refBeta: float, molBsc: ndarray, window_size: int = 40, collect_debug: bool = False) dict[str, ndarray][source]#
Retrieve aerosol backscatter coefficient using the Fernald method.
- Parameters:
height (array_like) – Height in meters.
signal (array_like) – Elastic signal without background (Photon Count).
bg (array_like) – Background signal (Photon Count).
LR_aer (float or array_like) – Aerosol lidar ratio [sr].
refH (float or array_like) – Reference altitude or region [m].
refBeta (float) – Aerosol backscatter coefficient at the reference region [m^-1 sr^-1].
molBsc (array_like) – Molecular backscatter coefficient [m^-1 sr^-1].
window_size (int, optional) – Bins of the smoothing window for the signal. Default is 40 bins.
- Returns:
aerBsc (ndarray) – Aerosol backscatter coefficient [m^-1 sr^-1].
aerBscStd (ndarray) – Statistical uncertainty of aerosol backscatter [m^-1 sr^-1].
aerBR (ndarray) – Aerosol backscatter ratio.
aerBRStd (ndarray) – Statistical uncertainty of aerosol backscatter ratio.
References
Fernald, F. G.: Analysis of atmospheric lidar observations: some comments, Appl. Opt., 23, 652-653, 10.1364/AO.23.000652, 1984.
History#
2021-05-30: First edition by Zhenping.
2025-01-03: AI Translation
2026-02-04: Changed from scipy.ndimage.uniform_filter1d to ppcpy.misc.helper.uniform_filter
- 2026-02-10: Reverted to using scipy.ndimage.uniform_filter1d due to occational issue with
propagating NaN-values in the backward and farward retrievals.
Notes
Temporarily using scipy.ndimage.uniform_filter1d for the smoothing of the RCS instead of ppcpy.misc.helper.uniform_filter due to some rear but strange issue with propagating NaN-values in the backwards and forwards retrieval methods. This issue has so far only been observed at the 355 total NR channel at certain cloud free periods. ppcpy.misc.helper.uniform_filter is generally preferred over scipy.ndimage.uniform_filter1d when some few NaN-values at the edges do not cause issues, as should be the case here. Further investigation into this issue is needed to understand what is causing the NaN-values.
TODO: Define m (Unsure if this m addition is needed).