API reference
Submodules
RdTools is organized into submodules focused on different parts of the data analysis workflow.
This module contains functions and classes for object-oriented end-to-end analysis |
|
Functions for calculating the degradation rate of photovoltaic systems. |
|
Functions for calculating soiling metrics from photovoltaic system data. |
|
Functions for detecting and quantifying production loss from photovoltaic system downtime events. |
|
Functions for filtering and subsetting PV system data. |
|
Functions for normalizing, rescaling, and regularizing PV system data. |
|
Functions for calculating weighted aggregates of PV system data. |
|
Functions for estimating clear-sky ambient temperature. |
|
Functions for plotting degradation and soiling analysis results. |
Analysis Chains
Object-oriented end-to-end analysis
|
Class for end-to-end degradation and soiling analysis using |
Initialize values for a clearsky analysis which requires configuration of location and orientation details. |
|
Perform entire sensor-based analysis workflow. |
|
Perform entire clear-sky-based analysis workflow. |
|
Return a figure of a scatter plot and a histogram summarizing degradation rate analysis. |
|
|
Return a histogram of soiling rates found in the stochastic rate and recovery soiling analysis |
Return a figure visualizing the valid soiling intervals used in stochastic rate and recovery soiling analysis. |
|
Return a figure visualizing the Monte Carlo of soiling profiles used in stochastic rate and recovery soiling analysis. |
|
Plot PV energy vs irradiance, useful in diagnosing things like timezone problems or transposition errors. |
|
|
Plot resampled time series of degradation trend with time |
Degradation
Functions for calculating the degradation rate of photovoltaic systems.
|
Estimate the trend of a timeseries using a classical decomposition approach (moving average) and calculate various statistics, including the result of a Mann-Kendall test and a Monte Carlo-derived confidence interval of slope. |
|
Estimate the trend of a timeseries using ordinary least-squares regression and calculate various statistics including a Monte Carlo-derived confidence interval of slope. |
|
Estimate the trend of a timeseries using the year-on-year decomposition approach and calculate a Monte Carlo-derived confidence interval of slope. |
Soiling
Functions for calculating soiling metrics from photovoltaic system data.
The soiling module is currently experimental. The API, results, and default behaviors may change in future releases (including MINOR and PATCH releases) as the code matures.
|
Functional wrapper for |
|
Use Monte Carlo to calculate typical monthly soiling rates. |
|
Return annualized soiling ratios and associated confidence intervals based on stochastic soiling profiles from SRR. |
|
Class for running the stochastic rate and recovery (SRR) photovoltaic soiling loss analysis presented in Deceglie et al. JPV 8(2) p547 2018. |
|
Run the SRR method from beginning to end. |
|
Functional wrapper for |
|
Container for the Combined Degradation and Soiling (CODS) algorithm for degradation and soiling loss analysis. |
Estimates the soiling losses and the degradation rate of a PV system based on its daily normalized energy, or daily Performance Index (PI). |
|
|
Bootstrapping of CODS algorithm for uncertainty analysis, inherently accounting for model and parameter choices. |
System Availability
Functions for detecting and quantifying production loss from photovoltaic system downtime events.
The availability module is currently experimental. The API, results, and default behaviors may change in future releases (including MINOR and PATCH releases) as the code matures.
|
A class to perform system availability and loss analysis. |
|
Run the availability analysis. |
Create a figure summarizing the availability analysis results. |
Filtering
Functions for filtering and subsetting PV system data.
|
Master wrapper for running one of the desired clipping filters. |
|
Filter data points likely to be affected by clipping with power or energy greater than or equal to 99% of the quant quantile. |
|
This filter is a logic-based filter that is used to filter out clipping periods in AC power or energy time series. |
|
This filter uses and XGBoost model to filter out clipping periods in AC power or energy time series. |
|
Wrapper function for running either the CSI or pvlib clearsky filter. |
|
Filtering based on clear-sky index (csi) |
|
Filtering based on the Reno and Hansen method for clear-sky filtering as implimented in pvlib. |
|
Filter POA irradiance readings outside acceptable measurement bounds. |
|
Filter temperature readings outside acceptable measurement bounds. |
|
Select normalized yield between |
|
Removes anomalies based on forward and backward window of the rolling median. |
|
A simple quantile filter. |
|
Hampel outlier designed for use after the aggregation step in the RdTools trend analysis workflows, but broadly applicable. |
|
Performs a forward and backward looking rolling Tukey filter. |
|
Creates a filter based on the hour angle of the sun (15 degrees per hour) |
Normalization
Functions for normalizing, rescaling, and regularizing PV system data.
|
Returns a regular right-labeled energy time series in units of Wh per interval from a power time series. |
|
Returns an interpolation of time_series, excluding times associated with gaps in each column of time_series longer than max_timedelta; NaNs are returned within those gaps. |
|
Attempt to rescale modeled irradiance to match measured irradiance on clear days. |
|
Normalize PV power or energy based on expected PV power. |
|
Normalize system AC energy output given measured poa_global and meteorological data. |
|
PVWatts v5 Module Model: DC power given effective poa poa_global, module nameplate power, and cell temperature. |
|
|
|
Aggregation
Functions for calculating weighted aggregates of PV system data.
|
Insolation weighted aggregation |
Clear-Sky Temperature
Functions for estimating clear-sky ambient temperature.
|
Estimates the ambient temperature at latitude and longitude for the given times using a Gaussian rolling window. |
Plotting
Functions for plotting degradation and soiling analysis results.
|
Create plots (scatter plot and histogram) that summarize degradation analysis results. |
|
Plot resampled time series of degradation trend with time |
|
Create figure to visualize Monte Carlo of soiling profiles used in the SRR analysis. |
|
Create figure to visualize valid soiling profiles used in the SRR analysis. |
|
Create histogram of soiling rates found in the SRR analysis. |
|
Create a figure summarizing the availability analysis results. |
|
This function allows the user to visualize filtered data in a Plotly plot, after tweaking the function's different parameters. |