rdtools.soiling.CODSAnalysis¶
- class rdtools.soiling.CODSAnalysis(energy_normalized_daily)¶
Container for the Combined Degradation and Soiling (CODS) algorithm for degradation and soiling loss analysis. Based on the method presented in 1.
- Parameters
energy_normalized_daily (pandas.Series) -- Daily performance metric (i.e. performance index, yield, etc.) Index must be DatetimeIndex with daily frequency
- pm¶
Equals energy_normalized_daily
- Type
- result_df¶
Contains the columns/keys:
Column Name
Description
'soiling_ratio'
soiling ratio (SR) (-)
'soiling_rates'
soiling rates (1/day)
'cleaning_events'
True at cleaning events
'seasonal_component'
seasonal component (SC)
'degradation_trend'
degradation trend (Rd)
'total_model'
the total model fit, i.e. SR * SC * Rd * rs, where SR is the soiling ratio, SC is the seasonal component, Rd is the degradation trend, and rs is the residual shift, i.e. the mean of the residuals (adjusting the position of the model fit to the position of the input data)
'residuals'
The residuals of the model fit, i.e. PI / (SR * SC * Rd)
'SR_low'
lower bound of 95 % conf. interval of SR
'SR_high'
upper bound of 95 % conf. interval of SR
'rates_low'
lower bound of 95 % conf. interval of soiling rates
'rates_high'
upper bound of 95 % conf. interval of soiling rates
'bt_soiling_ratio'
Bootstrapped estimate of soiling ratio (SR)
'bt_soiling_rates'
Bootstrapped estimate of soiling rates
'seasonal_low'
lower bound of 95 % conf. interval of seasonal component (SC)
'seasonal_high'
upper bound of 95 % conf. interval of seasonal component (SC)
'model_high'
upper bound of 95 % confidence interval of the model fit
'model_low'
lower bound of 95 % confidence interval of the model fit
- Type
pandas.DataFrame with pandas datetimeindex
- degradation¶
List of linear degradation rate of system in %/year, lower and upper bound of 95% confidence interval
- Type
- soiling_loss¶
List of average soiling losses over the time series in %, lower and upper bound of 95% confidence interval
- Type
- residual_shift¶
Mean value of residuals. Multiply total model by this number for complete overlap with input pi
- Type
- small_soiling_signal¶
Whether or not the signal is deemed too small to infer anything about it
- Type
- adf_res¶
The results of an Augmented Dickey-Fuller test (telling whether the residuals are stationary or not)
- Type
- Raises
ValueError -- If the performance metrix does not have daily index frequency
References
- 1
Skomedal, Å. and Deceglie, M. G., IEEE Journal of Photovoltaics, Sept. 2020. https://doi.org/10.1109/JPHOTOV.2020.3018219
- __init__(energy_normalized_daily)¶
Methods
__init__
(energy_normalized_daily)iterative_signal_decomposition
([order, ...])Estimates the soiling losses and the degradation rate of a PV system based on its daily normalized energy, or daily Performance Index (PI).
run_bootstrap
([reps, confidence_level, ...])Bootstrapping of CODS algorithm for uncertainty analysis, inherently accounting for model and parameter choices.