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). BrightSun2020CSDc 晴空检测(三分量) [1]。
MATLAB mapping:
BrightSun2020CSDc(zen, ghi, ghics, dif, difcs, LST). MATLAB 变量映射:zen -> zenith,ghics -> ghi_clear,dif -> dhi,difcs -> dhi_clear。The method proceeds in four stages matching the MATLAB routine: 该方法按四个阶段执行(与 MATLAB 例程一致):
Initial Reno-style CSD guess for candidate clear periods. 初始 Reno 风格 CSD 猜测。
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). 每日晴空优化独立缩放 GHI、DHI、BNI 晴空曲线。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. 若为 True,返回方法诊断量。
- Returns:
out – Columns:
is_clearsky,cloud_flag(duration-filtered),method; diagnostics when requested. 列:is_clearsky、cloud_flag``(经滤波)、``method。- Return type:
pd.DataFrame
- Raises:
ValueError – When input lengths do not match. 输入长度不一致时。
References