Quality Control#
Wrappers#
|
Run a suite of QC tests on a BSRN DataFrame with optimized geometry calculations [1]_ [2]_. |
Set shortwave / longwave irradiance columns to NaN where QC flags fail. |
|
Run all Phase 1 (Physically Possible) checks on a DataFrame. |
|
|
Run all Phase 2 (Extremely Rare) checks on a DataFrame. |
|
Run all Phase 3 (Closure) consistency checks on a DataFrame. |
|
Run all Phase 3 Diffuse Ratio (k) consistency checks on a DataFrame. |
|
Run all Phase 3 Radiometric Index (k-index) checks on a DataFrame. |
|
Run Tracker-off detection on a DataFrame. |
Level 1: Physically Possible Limits#
|
Check global horizontal irradiance (GHI, $G_h$) against physically possible limits [1]_. |
|
Check beam normal irradiance (BNI, $B_n$) against physically possible limits [1]_. |
|
Check diffuse horizontal irradiance (DHI, $D_h$) against physically possible limits [1]_. |
Check downward longwave radiation (LWD, $L_d$) against physically possible limits [1]_. |
Level 2: Extremely Rare Limits#
|
Check global horizontal irradiance (GHI, $G_h$) against extremely rare limits [1]_. |
|
Check beam normal irradiance (BNI, $B_n$) against extremely rare limits [1]_. |
|
Check diffuse horizontal irradiance (DHI, $D_h$) against extremely rare limits [1]_. |
Check downward longwave radiation (LWD, $L_d$) against extremely rare limits [1]_. |
Level 3: Component Comparison (Closure)#
|
Check consistency between GHI, BNI, and DHI for low solar zenith angles ($Z le 75^circ$) [1]_. |
|
Check consistency between GHI, BNI, and DHI for high solar zenith angles ($Z > 75^circ$) [1]_. |
Level 4: Diffuse Ratio#
|
Combined check of diffuse fraction ($k$) and clearness index ($k_t$) [1]_. |
|
Check diffuse fraction ($k$) for low solar zenith angles ($Z < 75^circ$) [1]_ [2]_. |
|
Check diffuse fraction ($k$) for high solar zenith angles ($Z ge 75^circ$) [1]_ [2]_. |
Level 5: K-Indices#
|
Check if beam transmittance ($k_b$) is less than clearness index ($k_t$) [1]_. |
|
Check if beam transmittance ($k_b$) stays within absolute physical limits based on elevation [1]_. |
|
Check if clearness index ($k_t$) is within physically possible limits [1]_. |
Level 6: Tracker-Off#
|
Check if the solar tracker is off by comparing measured and clear-sky irradiances [1]_. |