sunpeek.core_methods.power_check.main#

Implements Power Check Method according to technical standard ISO 24194:2022.

HowTo#

To create instances, use - ISO mode: PowerCheck.from_method(‘ISO’) - Extended mode: PowerCheck.from_method(‘Extended’)

The entry-point method by the classes in this module is :method:`power_check.run()`. This is called by :fun:`run_performance_check` in the wrapper / the Power Check strategies. Results: power_check.get_results() returns a components.results.PowerCheckOutput object.

See docstring in __init__ for more details.

Implementations#

PowerCheckISO#

The implementation variant that aligns as closely as possible to the ISO 24194 standard is in class PowerCheckISO. Create an analysis with PowerCheck.from_method(‘ISO’, **kwargs).

PowerCheckExtended#

Reasoning: Some of the data analysis recommendations described in the ISO standard apparently assume the use of Excel or other spreadsheet based software. For instance, analysis is based on fixed 1-hourly that start at full hours. This does not necessarily lead to the best / most useful results.

This software package implements an extended variant of the Power Check method that overcomes some limitations of the strictly fixed-hour variant described in ISO 24194. This ‘extended’ implementation has a few slight but significant improvements in data analysis, while sticking as closely as possible to the intentions and purpose of the ISO 24194 standard: It tends to produce more and less noisy intervals in a Power Check analysis. Numerically, comparable in range to PowerCheckISO in terms of measured vs expected power. The extended version tends to include more intervals that are limit cases compared to the requirements stated in the ISO 24194, hence its results have somewhat higher generality. By default, the extended implementation uses a 1-hour averaging, as described in ISO 24194. It can be set to a different value. All other PowerCheckExtended settings are the same as PowerCheckISO.

First analysis validations on real-plant data confirmed that the PowerCheckExtended variant reduces noise in the analysis output and improves the regression between measured and estimated power, the main KPI of the Power Check method.

Differences of PowerCheckExtended over PowerCheckISO in detail: - Uses rolling resampling instead of fixed-hour resampling in PowerCheckISO. Consequently, data intervals used for the analysis (performance equations) are not restricted to start at full hours. - Uses a minimum-noise (minimum relative standard deviation) criterion to select among overlapping interval candidates. - Allows different interval lengths, not restricted to 1 hour. - Minimum number of non-NaN data records per interval not restricted to 20.

Code author: Philip Ohnewein <p.ohnewein@aee.at>

Code author: Lukas Feierl <l.feierl@solid.at>

Code author: Daniel Tschopp <d.tschopp@aee.at>

Classes

PowerCheck(plant, formula[, use_wind])

Superclass for various variants of the Power Check Method.

PowerCheckExtended(plant, formula[, use_wind])

This class implements the "extended" variant of the Power Check method, with improvements in data analysis.

PowerCheckISO(plant, formula[, use_wind])

This Power Check implementation aligns as strictly as possible to the method as defined in the technical standard ISO 24194:2022.

PowerCheckSettings(method, formula, **kwargs)

Power Check Method settings: Holds defaults, parses and validates a Power Check method settings dictionary, replacing None or missing settings with defaults.