.. currentmodule:: pvanalytics
Functions for checking if an energy data stream is cumulative or not.
.. autosummary:: :toctree: generated/ quality.energy.cumulative_energy_simple_diff_check quality.energy.cumulative_energy_avg_diff_check
If the energy data stream passes the checks, then it is converted to non-cumulative energy data stream via simple or average differencing
.. autosummary:: :toctree: generated/ quality.energy.convert_cumulative_energy
Functions for identifying shifts in data values in time series
and for identifying periods with data shifts. For functions
that identify shifts in time, see quality.time
.. autosummary:: :toctree: generated/ quality.data_shifts.detect_data_shifts quality.data_shifts.get_longest_shift_segment_dates
The check_*_limits_qcrad functions use the QCRad algorithm [1] to
identify irradiance measurements that are beyond physical limits.
.. autosummary:: :toctree: generated/ quality.irradiance.check_ghi_limits_qcrad quality.irradiance.check_dhi_limits_qcrad quality.irradiance.check_dni_limits_qcrad
All three checks can be combined into a single function call.
.. autosummary:: :toctree: generated/ quality.irradiance.check_irradiance_limits_qcrad
Irradiance measurements can also be checked for consistency.
.. autosummary:: :toctree: generated/ quality.irradiance.check_irradiance_consistency_qcrad
GHI and POA irradiance can be validated against clearsky values to eliminate data that is unrealistically high.
.. autosummary:: :toctree: generated/ quality.irradiance.clearsky_limits
You may want to identify entire days that have unrealistically high or low insolation. The following function examines daily insolation, validating that it is within a reasonable range of the expected clearsky insolation for the same day.
.. autosummary:: :toctree: generated/ quality.irradiance.daily_insolation_limits
There is function for calculating the component sum for GHI, DHI, and DNI, and correcting for nighttime periods. Using this function, we can estimate one irradiance field using the two other irradiance fields. This can be useful for comparison, as well as to calculate missing data fields.
.. autosummary:: :toctree: generated/ quality.irradiance.calculate_component_sum_series
Identify gaps in the data.
.. autosummary:: :toctree: generated/ quality.gaps.interpolation_diff
Data sometimes contains sequences of values that are "stale" or "stuck." These are contiguous spans of data where the value does not change within the precision given. The functions below can be used to detect stale values.
Note
If the data has been altered in some way (i.e. temperature that has been rounded to an integer value) before being passed to these functions you may see unexpectedly large amounts of stale data.
.. autosummary:: :toctree: generated/ quality.gaps.stale_values_diff quality.gaps.stale_values_round
The following functions identify days with incomplete data.
.. autosummary:: :toctree: generated/ quality.gaps.completeness_score quality.gaps.complete
Many data sets may have leading and trailing periods of days with sporadic or no data. The following functions can be used to remove those periods.
.. autosummary:: :toctree: generated/ quality.gaps.start_stop_dates quality.gaps.trim quality.gaps.trim_incomplete
Functions for detecting outliers.
.. autosummary:: :toctree: generated/ quality.outliers.tukey quality.outliers.zscore quality.outliers.hampel
Quality control related to time. This includes things like time-stamp spacing, time-shifts, and time zone validation.
.. autosummary:: :toctree: generated/ quality.time.spacing
Timestamp shifts, such as daylight savings, can be identified with the following functions.
.. autosummary:: :toctree: generated/ quality.time.shifts_ruptures quality.time.has_dst
The :py:mod:`quality.util` module contains general-purpose/utility functions for building your own quality checks.
.. autosummary:: :toctree: generated/ quality.util.check_limits quality.util.daily_min
Quality checks for weather data.
.. autosummary:: :toctree: generated/ quality.weather.relative_humidity_limits quality.weather.temperature_limits quality.weather.wind_limits
In addition to validating temperature by comparing with limits, module
temperature should be positively correlated with irradiance. Poor
correlation could indicate that the sensor has become detached from
the module, for example. Unlike other functions in the
:py:mod:`quality` module which return Boolean masks over the input
series, this function returns a single Boolean value indicating
whether the entire series has passed (True) or failed (False)
the quality check.
.. autosummary:: :toctree: generated/ quality.weather.module_temperature_check
References
| [1] | C. N. Long and Y. Shi, An Automated Quality Assessment and Control Algorithm for Surface Radiation Measurements, The Open Atmospheric Science Journal 2, pp. 23-37, 2008. |
Functions for detecting features in the data.
Functions for identifying inverter clipping
.. autosummary:: :toctree: generated/ features.clipping.levels features.clipping.threshold features.clipping.geometric
.. autosummary:: :toctree: generated/ features.clearsky.reno
System orientation refers to mounting type (fixed or tracker) and the azimuth and tilt of the mounting. A system's orientation can be determined by examining power or POA irradiance on days that are relatively sunny.
This module provides functions that operate on power or POA irradiance to identify system orientation on a daily basis. These functions can tell you whether a day's profile matches that of a fixed system or system with a single-axis tracker.
Care should be taken when interpreting function output since other factors such as malfunctioning trackers can interfere with identification.
.. autosummary:: :toctree: generated/ features.orientation.fixed_nrel features.orientation.tracking_nrel
Functions that relate to determining day/night periods in a time series, and getting sunrise and sunset times based on the day-night mask outputs.
.. autosummary:: :toctree: generated/ features.daytime.power_or_irradiance features.daytime.get_sunrise features.daytime.get_sunset
Functions for labeling shadows.
.. autosummary:: :toctree: generated/ features.shading.fixed
This module contains functions and classes relating to PV system parameters such as nameplate power, tilt, azimuth, or whether the system is equipped with tracker.
.. autosummary:: :toctree: generated/ system.Tracker system.is_tracking_envelope
The following function can be used to infer system orientation from power or plane of array irradiance measurements.
.. autosummary:: :toctree: generated/ system.infer_orientation_daily_peak system.infer_orientation_fit_pvwatts
The following functions can be used to calculate system performance metrics.
.. autosummary:: :toctree: generated/ metrics.performance_ratio_nrel
Functions to calculate variability statistics.
.. autosummary:: :toctree: generated/ metrics.variability_index