resgroup / resgroup/wind-up

Uplift curve gap-fill ignores turbine type mismatch

Open
#87 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Python
Stars
29
Forks
11
Avg merge
1d 9h
Merged PRs (30d)
11

Description

References: #86

Description

There may be a bug in the WindUpConfig option:

WindUpConfig.gapfill_uplift_curve_using_site_mean_power_curve = True

When test and reference turbines are of different turbine types, the reversal analysis may produce incorrect results. Because the site mean power curve is computed across turbine types, using it to gap-fill the uplift curve may introduce errors when the power curves of the test and reference turbines are not comparable.

Steps to Reproduce

Although not trialled, this scenario should be able to be created by:

  1. Configure a WindUpConfig with gapfill_uplift_curve_using_site_mean_power_curve = True
  2. Set up an analysis where the test and reference turbines are of different turbine types with different power curves
  3. Run the reversal analysis
  4. Observe that the gap-filled uplift curve may be based on an inappropriate site mean power curve for the turbine type
Expected Behaviour

The gap-filling logic should account for mixed turbine types, either by computing separate mean power curves per turbine type, or by raising a warning/error when turbine types differ between test and reference turbines.

Actual Behaviour

The site mean power curve is applied without checking whether the test and reference turbines share the same turbine type, potentially resulting in a silently incorrect uplift curve.

Potential Fix
  • Check whether test and reference turbines share the same turbine type before applying gap-fill with the site mean power curve.
  • If types differ, either:
    • Compute a type-specific mean power curve for gap-filling, or
    • Raise a ValueError or warning to alert the user.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start at the WindUpConfig option gapfill_uplift_curve_using_site_mean_power_curve and trace the reversal analysis gap-filling logic. Reproduce an analysis with different test and reference turbine types, then determine the appropriate behavior for mismatched types. Done means the analysis no longer silently applies an unsuitable site mean power curve.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
data
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.