bsrn.utils.clear_sky_detection.brightsun_csd#
- bsrn.utils.clear_sky_detection.brightsun_csd(zenith, ghi, ghi_clear, dhi, dhi_clear, times, return_diagnostics=False)[source]#
BrightSun2020CSDc clear-sky detection (tri-component) [1].
MATLAB mapping:
BrightSun2020CSDc(zen, ghi, ghics, dif, difcs, LST)withzen -> zenith,ghics -> ghi_clear,dif -> dhi,difcs -> dhi_clear.The method proceeds in four stages matching the MATLAB routine:
Initial Reno-style CSD guess for candidate clear periods.
Daily clear-sky optimisation scales GHI, DHI, BNI clear-sky curves independently (alpha bounds
[0.7, 1.5]for GHI/BNI,[0.3, 1.5]for DHI).Tri-component analysis on optimised curves.
Cascaded duration filters (90/30/10-min).
- Parameters:
zenith (array-like) – Solar zenith angle. [degrees]
ghi (array-like) – Global horizontal irradiance. [W/m^2]
ghi_clear (array-like) – Clear-sky GHI. [W/m^2]
dhi (array-like) – Diffuse horizontal irradiance. [W/m^2]
dhi_clear (array-like) – Clear-sky DHI. [W/m^2]
times (array-like or pd.DatetimeIndex) – Time index (MATLAB
LSTequivalent).return_diagnostics (bool, default False) – If True, include method diagnostics.
- Returns:
out – Columns:
is_clearsky,cloud_flag(duration-filtered),method; diagnostics when requested.- Return type:
pd.DataFrame
- Raises:
ValueError – When input lengths do not match.
References