Skip to content

Metrics glossary

Headline metrics

Freestream production (100% availability) freestream_100pct_avail

What the turbines would have produced without wakes, reconstructed from SCADA and imputed to a 100%-availability basis — the no-wake reference for the measured wake loss.

Unit: MWh

Aggregation: summed over the period

Production (100% availability) production_100pct_avail

Measured farm production imputed to a 100%-availability basis.

Unit: MWh

Aggregation: summed over the period

Expected (optimized, 100% avail.) target_energy

Tipspeed-optimized expected farm production at 100% availability.

Unit: MWh

Aggregation: summed over the period

Performance ratio performance_ratio

Production at 100% availability divided by the after-wakes prediction; 100% means on target.

\[\frac{\text{Production (100\% availability)}}{\text{Tipspeed after wakes}} \times 100\]
graph LR
  freestream_current_energy(["Freestream (current period)"])
  performance_ratio["Performance ratio"]
  production_100pct_avail(["Production (100% availability)"])
  tipspeed_after_wakes_energy["Tipspeed after wakes"]
  wake_current_loss{{"Wakes loss (current period)"}}
  freestream_current_energy --> tipspeed_after_wakes_energy
  production_100pct_avail --> performance_ratio
  tipspeed_after_wakes_energy --> performance_ratio
  wake_current_loss --> tipspeed_after_wakes_energy
  style freestream_current_energy fill:#F5E6F9,stroke:#742181,color:#2C1E4A
  style performance_ratio fill:#F5E6F9,stroke:#CB6CE6,stroke-width:3px,color:#2C1E4A
  style production_100pct_avail fill:#F5E6F9,stroke:#742181,color:#2C1E4A
  style tipspeed_after_wakes_energy fill:#F5E6F9,stroke:#742181,color:#2C1E4A
  style wake_current_loss fill:#F5E6F9,stroke:#742181,color:#2C1E4A

Unit: %

Assumptions: Ratio of summed energies over the period.

Comes from: Production (100% availability), Tipspeed after wakes

Recoverable energy recoverable_energy

Total energy recoverable by correcting yaw misalignment and bringing bat, noise and wind-sector-management curtailment back to their expected levels. Only categories above their expected level count: one already below it contributes nothing rather than offsetting the others.

\[\sum_{\text{category}} \max\left(\text{recoverable loss}_{\text{category}},\ 0\right)\]
graph LR
  bat_curtailment_recoverable_loss{{"Recoverable loss: bat curtailment"}}
  noise_curtailment_recoverable_loss{{"Recoverable loss: noise curtailment"}}
  recoverable_energy["Recoverable energy"]
  wind_sector_management_curtailment_recoverable_loss{{"Recoverable loss: wind-sector-management curtailment"}}
  yaw_misalignment_recoverable_loss{{"Recoverable loss: yaw misalignment"}}
  bat_curtailment_recoverable_loss --> recoverable_energy
  noise_curtailment_recoverable_loss --> recoverable_energy
  wind_sector_management_curtailment_recoverable_loss --> recoverable_energy
  yaw_misalignment_recoverable_loss --> recoverable_energy
  style bat_curtailment_recoverable_loss fill:#F5E6F9,stroke:#742181,color:#2C1E4A
  style noise_curtailment_recoverable_loss fill:#F5E6F9,stroke:#742181,color:#2C1E4A
  style recoverable_energy fill:#F5E6F9,stroke:#CB6CE6,stroke-width:3px,color:#2C1E4A
  style wind_sector_management_curtailment_recoverable_loss fill:#F5E6F9,stroke:#742181,color:#2C1E4A
  style yaw_misalignment_recoverable_loss fill:#F5E6F9,stroke:#742181,color:#2C1E4A

Unit: MWh

Comes from: Recoverable loss: bat curtailment, Recoverable loss: noise curtailment, Recoverable loss: wind-sector-management curtailment, Recoverable loss: yaw misalignment

Wind

Air density air_density

Air density simulated at the turbine, used to normalise wind speed before comparison with the warranted power curve.

Unit: kg/m³

Assumptions: Full-performance 10-minute rows only.

Aggregation: averaged over the period

Freestream turbulence intensity freestream_turbulence_intensity

Turbulence intensity of the undisturbed wind reaching the turbine, before wake effects.

Unit: -

Aggregation: averaged over the period

Rotor-effective wind speed after curtailment rotor_effective_wind_speed_after_curtailment

Wind speed averaged over the rotor disc once environmental curtailment has been applied.

Unit: m/s

Aggregation: averaged over the period

Turbulence intensity after curtailment turbulence_intensity_after_curtailment

Turbulence intensity once environmental curtailment has been applied.

Unit: -

Aggregation: averaged over the period

Mean wind direction wind_direction

Prevailing wind direction at the turbine, computed as the unit-vector circular mean.

Unit: °

Aggregation: circular-averaged over the period

Mean wind speed wind_speed

Average wind speed experienced by the turbine over the selected period.

Unit: m/s

Binning: 0.5 m/s bins, centered on multiples of 0.5 m/s

Assumptions: Mean over the selected date range.

Aggregation: averaged over the period

Wind speed after curtailment wind_speed_after_curtailment

Hub-height wind speed once environmental curtailment has been applied.

Unit: m/s

Aggregation: averaged over the period

Turbine

Mean blade pitch blade_pitch

Mean collective blade pitch angle while the turbine is running at full performance.

Unit: °

Assumptions: Mean collective blade pitch angle (averaged over the three blades) over full-performance 10-min rows.

Aggregation: averaged over the period

Expected power expected_power

Mean Tipspeed-optimized expected power over the selected period.

Unit: kW

Aggregation: averaged over the period

Expected power (full performance) expected_power_full_performance

Mean Tipspeed-optimized expected power over full-performance rows.

Unit: kW

Assumptions: Mean Tipspeed-optimized expected power over the same full-performance 10-min rows as Power (full performance), so the two differ by exactly Turbine performance.

Aggregation: averaged over the period

Nacelle temperature delta nacelle_air_temperature_delta

Mean gap between the SCADA and Tipspeed air-temperature sensors.

Unit: °C

Assumptions: Mean of (SCADA air temperature - Tipspeed air temperature) over full-performance rows; positive = SCADA sensor reads high.

Aggregation: averaged over the period

Nacelle north offset nacelle_north_offset

Mean offset between measured and controller-known nacelle direction (north-reference miscalibration).

\[\left((\theta_\text{nacelle} - \theta_\text{known} + 180)\bmod 360\right) - 180\]

Unit: °

Assumptions: SCADA power in [0, 20000] kW; offsets of any size are kept; mean over the selected date range.

Aggregation: averaged over the period

Nacelle wind-speed delta nacelle_wind_speed_delta

Mean gap between the raw nacelle anemometer and Tipspeed calibrated wind speed.

Unit: m/s

Assumptions: Mean of (SCADA nacelle anemometer - Tipspeed wind speed) over full-performance rows; positive = nacelle reads high.

Aggregation: averaged over the period

Mean power power

Mean SCADA power over the selected period, including stopped and curtailed periods.

Unit: kW

Aggregation: averaged over the period

Power curve reference air density power_curve_reference_air_density

Air density the turbine's warranted power curve is published at, and the density measured wind speed is normalised to before it is compared with that curve.

Unit: kg/m³

Assumptions: Taken from the turbine model's nominal power curve. A property of the machine, not a site condition.

Aggregation: averaged over the period

Turbine performance power_delta

Gap between measured and Tipspeed-optimized expected power; negative means the turbine underproduced.

Unit: kW

Assumptions: Full-performance 10-minute rows only.

Aggregation: averaged over the period

Power (full performance) power_full_performance

Mean measured power while the turbine is running at full performance.

Unit: kW

Assumptions: Mean SCADA power over full-performance 10-min rows only; excludes stops, curtailment and out-of-environmental-spec periods.

Aggregation: averaged over the period

Mean rotor speed rotor_speed

Mean rotor rotational speed while the turbine is running at full performance.

Unit: rpm

Assumptions: Mean rotor rotational speed over full-performance 10-min rows.

Aggregation: averaged over the period

Yaw misalignment yaw_misalignment

Mean angular offset between the nacelle heading and the inflow wind direction. Sign convention: negative = nacelle points anticlockwise of the wind.

\[\left((\theta_\text{nacelle} - \theta_\text{wind} + 180)\bmod 360\right) - 180\]

Unit: °

Assumptions: SCADA power in [0, 20000] kW and |misalignment| < 90°; mean over the selected date range.

Aggregation: averaged over the period

Nacelle wind-speed NTF

Per-turbine calibration relating the turbine's own nacelle anemometer to Tipspeed's calibrated free-stream wind speed. Reported as a linear fit — a slope and an offset — so a slope near 1 and an offset near 0 mean the nacelle sensor tracks the true wind well.

\[\text{Tipspeed calibrated wind speed} \approx \text{slope}\times\text{SCADA nacelle anemometer wind speed} + \text{offset}\]

Method: Ordinary least squares on 6-hourly averages, grouped into 0.5 m/s wind-speed bins across the band from 4 to 11 m/s, on full-performance data. Uncertainties are analytic standard errors; goodness of fit (R²) is measured against the raw 10-minute scatter.

Unit: m/s

Nacelle temperature NTF

Per-turbine calibration relating the turbine's own nacelle air-temperature sensor to Tipspeed's reference air temperature, as a linear fit (slope and offset).

\[\text{Tipspeed air temperature} \approx \text{slope}\times\text{SCADA nacelle air temperature} + \text{offset}\]

Method: Ordinary least squares on 30-minute averages, grouped into 1 °C bins across the band from -5 to 35 °C, on full-performance data. Uncertainties are analytic standard errors; goodness of fit (R²) is measured against the raw 10-minute scatter.

Unit: °C

Waterfall: representative period

Freestream (representative period) freestream_rep_energy

Prediction on the representative period including the correction for observed site-specific performance compared to long term.

Unit: MWh

Aggregation: summed over the period

Gross (representative period) gross_rep_energy

Gross production over the representative (long-term) period.

Unit: MWh

Aggregation: summed over the period

Wakes loss (representative period) wakes_rep_loss

Internal and external wake losses over the representative period.

Unit: MWh

Aggregation: summed over the period

Yaw misalignment loss (representative period) yaw_misalignment_loss_longterm

Loss attributed to observed yaw misalignment, over the representative period.

Unit: MWh

Aggregation: summed over the period

Site-specific performance loss (representative period) site_specific_perf_rep_loss

Loss from observed site-specific performance compared to long term, over the representative period.

\[\text{Gross (rep.)} - \text{Freestream (rep.)}\]
graph LR
  freestream_rep_energy(["Freestream (representative period)"])
  gross_rep_energy(["Gross (representative period)"])
  site_specific_perf_rep_loss{{"Site-specific performance loss (representative period)"}}
  freestream_rep_energy --> site_specific_perf_rep_loss
  gross_rep_energy --> site_specific_perf_rep_loss
  style freestream_rep_energy fill:#F5E6F9,stroke:#742181,color:#2C1E4A
  style gross_rep_energy fill:#F5E6F9,stroke:#742181,color:#2C1E4A
  style site_specific_perf_rep_loss fill:#F5E6F9,stroke:#CB6CE6,stroke-width:3px,color:#2C1E4A

Unit: MWh

Comes from: Freestream (representative period), Gross (representative period)

Tipspeed after wakes (representative period) tipspeed_after_wakes_rep_energy

Prediction on the representative period including internal and external wake losses.

\[\text{Freestream (rep.)} - \text{Wakes loss (rep.)}\]
graph LR
  freestream_rep_energy(["Freestream (representative period)"])
  tipspeed_after_wakes_rep_energy["Tipspeed after wakes (representative period)"]
  wakes_rep_loss{{"Wakes loss (representative period)"}}
  freestream_rep_energy --> tipspeed_after_wakes_rep_energy
  wakes_rep_loss --> tipspeed_after_wakes_rep_energy
  style freestream_rep_energy fill:#F5E6F9,stroke:#742181,color:#2C1E4A
  style tipspeed_after_wakes_rep_energy fill:#F5E6F9,stroke:#CB6CE6,stroke-width:3px,color:#2C1E4A
  style wakes_rep_loss fill:#F5E6F9,stroke:#742181,color:#2C1E4A

Unit: MWh

Comes from: Freestream (representative period), Wakes loss (representative period)

Waterfall: current period

Freestream (current period) freestream_current_energy

Prediction on the current period including the correction for observed site-specific performance compared to long term.

Unit: MWh

Aggregation: summed over the period

Gross (current period) gross_current_energy

Gross production over the current period.

Unit: MWh

Aggregation: summed over the period

Wakes loss (current period) wake_current_loss

Internal and external wake losses over the current period.

Unit: MWh

Aggregation: summed over the period

Yaw misalignment loss (current period) yaw_misalignment_current_loss

Loss attributed to observed yaw misalignment, over the current period.

Unit: MWh

Aggregation: summed over the period

Expected with current site-specific performance expected_current_site_specific_perf_energy

Prediction on the current period corrected for observed windiness and site-specific performance, before the current-period wake correction.

\[\text{Freestream (current)} - \text{Wakes loss (rep.)}\]
graph LR
  expected_current_site_specific_perf_energy["Expected with current site-specific performance"]
  freestream_current_energy(["Freestream (current period)"])
  wakes_rep_loss{{"Wakes loss (representative period)"}}
  freestream_current_energy --> expected_current_site_specific_perf_energy
  wakes_rep_loss --> expected_current_site_specific_perf_energy
  style expected_current_site_specific_perf_energy fill:#F5E6F9,stroke:#CB6CE6,stroke-width:3px,color:#2C1E4A
  style freestream_current_energy fill:#F5E6F9,stroke:#742181,color:#2C1E4A
  style wakes_rep_loss fill:#F5E6F9,stroke:#742181,color:#2C1E4A

Unit: MWh

Comes from: Freestream (current period), Wakes loss (representative period)

Expected with current windiness expected_current_windiness_energy

Prediction on the current period including the correction for observed windiness compared to long term.

\[\text{Tipspeed after wakes (rep.)} - \text{Windiness loss}\]
graph LR
  expected_current_windiness_energy["Expected with current windiness"]
  freestream_rep_energy(["Freestream (representative period)"])
  gross_current_energy(["Gross (current period)"])
  gross_rep_energy(["Gross (representative period)"])
  gross_windiness_loss{{"Windiness loss"}}
  tipspeed_after_wakes_rep_energy["Tipspeed after wakes (representative period)"]
  wakes_rep_loss{{"Wakes loss (representative period)"}}
  freestream_rep_energy --> tipspeed_after_wakes_rep_energy
  gross_current_energy --> gross_windiness_loss
  gross_rep_energy --> gross_windiness_loss
  gross_windiness_loss --> expected_current_windiness_energy
  tipspeed_after_wakes_rep_energy --> expected_current_windiness_energy
  wakes_rep_loss --> tipspeed_after_wakes_rep_energy
  style expected_current_windiness_energy fill:#F5E6F9,stroke:#CB6CE6,stroke-width:3px,color:#2C1E4A
  style freestream_rep_energy fill:#F5E6F9,stroke:#742181,color:#2C1E4A
  style gross_current_energy fill:#F5E6F9,stroke:#742181,color:#2C1E4A
  style gross_rep_energy fill:#F5E6F9,stroke:#742181,color:#2C1E4A
  style gross_windiness_loss fill:#F5E6F9,stroke:#742181,color:#2C1E4A
  style tipspeed_after_wakes_rep_energy fill:#F5E6F9,stroke:#742181,color:#2C1E4A
  style wakes_rep_loss fill:#F5E6F9,stroke:#742181,color:#2C1E4A

Unit: MWh

Comes from: Windiness loss, Tipspeed after wakes (representative period)

Windiness loss gross_windiness_loss

Correction for observed windiness on the current period compared to long term.

\[\text{Gross (rep.)} - \text{Gross (current)}\]
graph LR
  gross_current_energy(["Gross (current period)"])
  gross_rep_energy(["Gross (representative period)"])
  gross_windiness_loss{{"Windiness loss"}}
  gross_current_energy --> gross_windiness_loss
  gross_rep_energy --> gross_windiness_loss
  style gross_current_energy fill:#F5E6F9,stroke:#742181,color:#2C1E4A
  style gross_rep_energy fill:#F5E6F9,stroke:#742181,color:#2C1E4A
  style gross_windiness_loss fill:#F5E6F9,stroke:#CB6CE6,stroke-width:3px,color:#2C1E4A

Unit: MWh

Comes from: Gross (current period), Gross (representative period)

Site-specific performance loss (current period) site_specific_perf_current_loss

Loss from observed site-specific performance compared to long term, over the current period.

\[\text{Gross (current)} - \text{Freestream (current)}\]
graph LR
  freestream_current_energy(["Freestream (current period)"])
  gross_current_energy(["Gross (current period)"])
  site_specific_perf_current_loss{{"Site-specific performance loss (current period)"}}
  freestream_current_energy --> site_specific_perf_current_loss
  gross_current_energy --> site_specific_perf_current_loss
  style freestream_current_energy fill:#F5E6F9,stroke:#742181,color:#2C1E4A
  style gross_current_energy fill:#F5E6F9,stroke:#742181,color:#2C1E4A
  style site_specific_perf_current_loss fill:#F5E6F9,stroke:#CB6CE6,stroke-width:3px,color:#2C1E4A

Unit: MWh

Comes from: Freestream (current period), Gross (current period)

Site-specific performance loss (windiness correction) site_specific_perf_windiness_loss

Correction for observed site-specific performance on the current period compared to long term.

\[\text{Site-specific perf. loss (current)} - \text{Site-specific perf. loss (rep.)}\]
graph LR
  freestream_current_energy(["Freestream (current period)"])
  freestream_rep_energy(["Freestream (representative period)"])
  gross_current_energy(["Gross (current period)"])
  gross_rep_energy(["Gross (representative period)"])
  site_specific_perf_current_loss{{"Site-specific performance loss (current period)"}}
  site_specific_perf_rep_loss{{"Site-specific performance loss (representative period)"}}
  site_specific_perf_windiness_loss{{"Site-specific performance loss (windiness correction)"}}
  freestream_current_energy --> site_specific_perf_current_loss
  freestream_rep_energy --> site_specific_perf_rep_loss
  gross_current_energy --> site_specific_perf_current_loss
  gross_rep_energy --> site_specific_perf_rep_loss
  site_specific_perf_current_loss --> site_specific_perf_windiness_loss
  site_specific_perf_rep_loss --> site_specific_perf_windiness_loss
  style freestream_current_energy fill:#F5E6F9,stroke:#742181,color:#2C1E4A
  style freestream_rep_energy fill:#F5E6F9,stroke:#742181,color:#2C1E4A
  style gross_current_energy fill:#F5E6F9,stroke:#742181,color:#2C1E4A
  style gross_rep_energy fill:#F5E6F9,stroke:#742181,color:#2C1E4A
  style site_specific_perf_current_loss fill:#F5E6F9,stroke:#742181,color:#2C1E4A
  style site_specific_perf_rep_loss fill:#F5E6F9,stroke:#742181,color:#2C1E4A
  style site_specific_perf_windiness_loss fill:#F5E6F9,stroke:#CB6CE6,stroke-width:3px,color:#2C1E4A

Unit: MWh

Comes from: Site-specific performance loss (current period), Site-specific performance loss (representative period)

Tipspeed after wakes tipspeed_after_wakes_energy

Prediction on the current period including internal and external wake losses.

\[\text{Freestream (current)} - \text{Wakes loss (current)}\]
graph LR
  freestream_current_energy(["Freestream (current period)"])
  tipspeed_after_wakes_energy["Tipspeed after wakes"]
  wake_current_loss{{"Wakes loss (current period)"}}
  freestream_current_energy --> tipspeed_after_wakes_energy
  wake_current_loss --> tipspeed_after_wakes_energy
  style freestream_current_energy fill:#F5E6F9,stroke:#742181,color:#2C1E4A
  style tipspeed_after_wakes_energy fill:#F5E6F9,stroke:#CB6CE6,stroke-width:3px,color:#2C1E4A
  style wake_current_loss fill:#F5E6F9,stroke:#742181,color:#2C1E4A

Unit: MWh

Comes from: Freestream (current period), Wakes loss (current period)

Tipspeed after yaw misalignment tipspeed_after_yaw_energy

Prediction accounting for observed yaw misalignment, at 100% availability. An intermediate level between the two under-performance bars, not a headline expectation.

\[\text{Tipspeed after wakes} - \text{Yaw misalignment loss (current period)}\]
graph LR
  freestream_current_energy(["Freestream (current period)"])
  tipspeed_after_wakes_energy["Tipspeed after wakes"]
  tipspeed_after_yaw_energy["Tipspeed after yaw misalignment"]
  wake_current_loss{{"Wakes loss (current period)"}}
  yaw_misalignment_current_loss{{"Yaw misalignment loss (current period)"}}
  freestream_current_energy --> tipspeed_after_wakes_energy
  tipspeed_after_wakes_energy --> tipspeed_after_yaw_energy
  wake_current_loss --> tipspeed_after_wakes_energy
  yaw_misalignment_current_loss --> tipspeed_after_yaw_energy
  style freestream_current_energy fill:#F5E6F9,stroke:#742181,color:#2C1E4A
  style tipspeed_after_wakes_energy fill:#F5E6F9,stroke:#742181,color:#2C1E4A
  style tipspeed_after_yaw_energy fill:#F5E6F9,stroke:#CB6CE6,stroke-width:3px,color:#2C1E4A
  style wake_current_loss fill:#F5E6F9,stroke:#742181,color:#2C1E4A
  style yaw_misalignment_current_loss fill:#F5E6F9,stroke:#742181,color:#2C1E4A

Unit: MWh

Comes from: Tipspeed after wakes, Yaw misalignment loss (current period)

Wakes loss (windiness correction) wake_windiness_loss

Correction for observed wake effects on the current period compared to long term.

\[\text{Wakes loss (current)} - \text{Wakes loss (rep.)}\]
graph LR
  wake_current_loss{{"Wakes loss (current period)"}}
  wake_windiness_loss{{"Wakes loss (windiness correction)"}}
  wakes_rep_loss{{"Wakes loss (representative period)"}}
  wake_current_loss --> wake_windiness_loss
  wakes_rep_loss --> wake_windiness_loss
  style wake_current_loss fill:#F5E6F9,stroke:#742181,color:#2C1E4A
  style wake_windiness_loss fill:#F5E6F9,stroke:#CB6CE6,stroke-width:3px,color:#2C1E4A
  style wakes_rep_loss fill:#F5E6F9,stroke:#742181,color:#2C1E4A

Unit: MWh

Comes from: Wakes loss (current period), Wakes loss (representative period)

Waterfall: performance assessment

Recoverable loss: yaw misalignment yaw_misalignment_recoverable_loss

Signed energy delta between the actual and expected yaw-misalignment loss. If positive, energy recoverable by correcting yaw toward the optimal heading; if negative, current yaw performance is already better than expected.

Unit: MWh

Aggregation: summed over the period

Other under-performance loss other_under_performance_loss

Gap between the yaw-corrected prediction and production at 100% availability.

\[\text{Tipspeed after yaw misalignment} - \text{Production (100\% availability)}\]
graph LR
  freestream_current_energy(["Freestream (current period)"])
  other_under_performance_loss{{"Other under-performance loss"}}
  production_100pct_avail(["Production (100% availability)"])
  tipspeed_after_wakes_energy["Tipspeed after wakes"]
  tipspeed_after_yaw_energy["Tipspeed after yaw misalignment"]
  wake_current_loss{{"Wakes loss (current period)"}}
  yaw_misalignment_current_loss{{"Yaw misalignment loss (current period)"}}
  freestream_current_energy --> tipspeed_after_wakes_energy
  production_100pct_avail --> other_under_performance_loss
  tipspeed_after_wakes_energy --> tipspeed_after_yaw_energy
  tipspeed_after_yaw_energy --> other_under_performance_loss
  wake_current_loss --> tipspeed_after_wakes_energy
  yaw_misalignment_current_loss --> tipspeed_after_yaw_energy
  style freestream_current_energy fill:#F5E6F9,stroke:#742181,color:#2C1E4A
  style other_under_performance_loss fill:#F5E6F9,stroke:#CB6CE6,stroke-width:3px,color:#2C1E4A
  style production_100pct_avail fill:#F5E6F9,stroke:#742181,color:#2C1E4A
  style tipspeed_after_wakes_energy fill:#F5E6F9,stroke:#742181,color:#2C1E4A
  style tipspeed_after_yaw_energy fill:#F5E6F9,stroke:#742181,color:#2C1E4A
  style wake_current_loss fill:#F5E6F9,stroke:#742181,color:#2C1E4A
  style yaw_misalignment_current_loss fill:#F5E6F9,stroke:#742181,color:#2C1E4A

Unit: MWh

Comes from: Production (100% availability), Tipspeed after yaw misalignment

Under-performance loss under_performance_loss

Gap between the after-wakes prediction and production at 100% availability.

\[\text{Tipspeed after wakes} - \text{Production (100\% availability)}\]
graph LR
  freestream_current_energy(["Freestream (current period)"])
  production_100pct_avail(["Production (100% availability)"])
  tipspeed_after_wakes_energy["Tipspeed after wakes"]
  under_performance_loss{{"Under-performance loss"}}
  wake_current_loss{{"Wakes loss (current period)"}}
  freestream_current_energy --> tipspeed_after_wakes_energy
  production_100pct_avail --> under_performance_loss
  tipspeed_after_wakes_energy --> under_performance_loss
  wake_current_loss --> tipspeed_after_wakes_energy
  style freestream_current_energy fill:#F5E6F9,stroke:#742181,color:#2C1E4A
  style production_100pct_avail fill:#F5E6F9,stroke:#742181,color:#2C1E4A
  style tipspeed_after_wakes_energy fill:#F5E6F9,stroke:#742181,color:#2C1E4A
  style under_performance_loss fill:#F5E6F9,stroke:#CB6CE6,stroke-width:3px,color:#2C1E4A
  style wake_current_loss fill:#F5E6F9,stroke:#742181,color:#2C1E4A

Unit: MWh

Comes from: Production (100% availability), Tipspeed after wakes

Waterfall: production losses

Energy (full performance) energy_full_performance

Measured energy produced while the turbine was running at full performance.

Unit: MWh

Assumptions: Measured energy summed over full-performance 10-minute rows only; excludes stops, curtailment and out-of-environmental-spec operation. On those rows the imputation the source column is named for is inert, so this is measured energy.

Aggregation: summed over the period

Expected energy (full performance) expected_energy_full_performance

Tipspeed-optimized expected energy over full-performance rows.

Unit: MWh

Assumptions: Tipspeed-optimized expected energy over exactly the same full-performance 10-minute rows as Energy (full performance), so the two are directly comparable.

Aggregation: summed over the period

Full-performance slots full_performance_slots

Number of 10-minute rows in which the turbine was running at full performance.

Unit: -

Assumptions: Count of 10-minute rows whose SCADA status is full performance. Carries no where= mask by design: it must count over every row present, not over the rows it is counting.

Aggregation: summed over the period

Production actual_after_curtailment_energy

Final production measured by SCADA, after curtailment.

Unit: MWh

Aggregation: summed over the period

Out-of-environmental-spec loss out_of_env_spec_loss

Loss due to stops related to out-of-environmental-specification conditions.

Unit: MWh

Aggregation: summed over the period

Partial-performance loss partial_performance_loss

Loss due to partial performance (e.g. partial availability, derating).

Unit: MWh

Aggregation: summed over the period

Stopped loss stopped_loss

Loss due to turbine stops.

Unit: MWh

Aggregation: summed over the period

Recoverable loss: bat curtailment bat_curtailment_recoverable_loss

Signed energy delta between the actual and expected bat-curtailment loss. If positive, energy recoverable by reducing bat curtailment to the expected level; if negative, current bat curtailment is already below expected.

Unit: MWh

Aggregation: summed over the period

Recoverable loss: noise curtailment noise_curtailment_recoverable_loss

Signed energy delta between the actual and expected noise-curtailment loss. If positive, energy recoverable by reducing noise curtailment to the expected level; if negative, current noise curtailment is already below expected.

Unit: MWh

Aggregation: summed over the period

Recoverable loss: wind-sector-management curtailment wind_sector_management_curtailment_recoverable_loss

Signed energy delta between the actual and expected wind-sector-management-curtailment loss. If positive, energy recoverable by reducing the curtailment to the expected level; if negative, current curtailment is already below expected.

Unit: MWh

Aggregation: summed over the period

Production plus out-of-environmental-spec loss actual_with_out_of_env_spec_energy

Production including losses due to stops in out-of-environmental-specification conditions.

\[\text{Production (100\% availability)} - \text{Out-of-env-spec loss}\]
graph LR
  actual_with_out_of_env_spec_energy{{"Production plus out-of-environmental-spec loss"}}
  out_of_env_spec_loss{{"Out-of-environmental-spec loss"}}
  production_100pct_avail(["Production (100% availability)"])
  out_of_env_spec_loss --> actual_with_out_of_env_spec_energy
  production_100pct_avail --> actual_with_out_of_env_spec_energy
  style actual_with_out_of_env_spec_energy fill:#F5E6F9,stroke:#CB6CE6,stroke-width:3px,color:#2C1E4A
  style out_of_env_spec_loss fill:#F5E6F9,stroke:#742181,color:#2C1E4A
  style production_100pct_avail fill:#F5E6F9,stroke:#742181,color:#2C1E4A

Unit: MWh

Comes from: Out-of-environmental-spec loss, Production (100% availability)

Production plus partial performance loss actual_with_partial_performance_energy

Production including losses due to partial performance (e.g. partial availability, derating).

\[\text{Production plus stops loss} - \text{Partial-performance loss}\]
graph LR
  actual_with_out_of_env_spec_energy{{"Production plus out-of-environmental-spec loss"}}
  actual_with_partial_performance_energy{{"Production plus partial performance loss"}}
  actual_with_stops_energy{{"Production plus stops loss"}}
  out_of_env_spec_loss{{"Out-of-environmental-spec loss"}}
  partial_performance_loss{{"Partial-performance loss"}}
  production_100pct_avail(["Production (100% availability)"])
  stopped_loss{{"Stopped loss"}}
  actual_with_out_of_env_spec_energy --> actual_with_stops_energy
  actual_with_stops_energy --> actual_with_partial_performance_energy
  out_of_env_spec_loss --> actual_with_out_of_env_spec_energy
  partial_performance_loss --> actual_with_partial_performance_energy
  production_100pct_avail --> actual_with_out_of_env_spec_energy
  stopped_loss --> actual_with_stops_energy
  style actual_with_out_of_env_spec_energy fill:#F5E6F9,stroke:#742181,color:#2C1E4A
  style actual_with_partial_performance_energy fill:#F5E6F9,stroke:#CB6CE6,stroke-width:3px,color:#2C1E4A
  style actual_with_stops_energy fill:#F5E6F9,stroke:#742181,color:#2C1E4A
  style out_of_env_spec_loss fill:#F5E6F9,stroke:#742181,color:#2C1E4A
  style partial_performance_loss fill:#F5E6F9,stroke:#742181,color:#2C1E4A
  style production_100pct_avail fill:#F5E6F9,stroke:#742181,color:#2C1E4A
  style stopped_loss fill:#F5E6F9,stroke:#742181,color:#2C1E4A

Unit: MWh

Comes from: Production plus stops loss, Partial-performance loss

Production plus stops loss actual_with_stops_energy

Production including losses due to stops.

\[\text{Production plus out-of-env-spec loss} - \text{Stopped loss}\]
graph LR
  actual_with_out_of_env_spec_energy{{"Production plus out-of-environmental-spec loss"}}
  actual_with_stops_energy{{"Production plus stops loss"}}
  out_of_env_spec_loss{{"Out-of-environmental-spec loss"}}
  production_100pct_avail(["Production (100% availability)"])
  stopped_loss{{"Stopped loss"}}
  actual_with_out_of_env_spec_energy --> actual_with_stops_energy
  out_of_env_spec_loss --> actual_with_out_of_env_spec_energy
  production_100pct_avail --> actual_with_out_of_env_spec_energy
  stopped_loss --> actual_with_stops_energy
  style actual_with_out_of_env_spec_energy fill:#F5E6F9,stroke:#742181,color:#2C1E4A
  style actual_with_stops_energy fill:#F5E6F9,stroke:#CB6CE6,stroke-width:3px,color:#2C1E4A
  style out_of_env_spec_loss fill:#F5E6F9,stroke:#742181,color:#2C1E4A
  style production_100pct_avail fill:#F5E6F9,stroke:#742181,color:#2C1E4A
  style stopped_loss fill:#F5E6F9,stroke:#742181,color:#2C1E4A

Unit: MWh

Comes from: Production plus out-of-environmental-spec loss, Stopped loss

Other loss other_loss

Residual difference between the partial-performance level and final SCADA production.

\[\text{Production plus partial performance loss} - \text{Production}\]
graph LR
  actual_after_curtailment_energy(["Production"])
  actual_with_out_of_env_spec_energy{{"Production plus out-of-environmental-spec loss"}}
  actual_with_partial_performance_energy{{"Production plus partial performance loss"}}
  actual_with_stops_energy{{"Production plus stops loss"}}
  other_loss{{"Other loss"}}
  out_of_env_spec_loss{{"Out-of-environmental-spec loss"}}
  partial_performance_loss{{"Partial-performance loss"}}
  production_100pct_avail(["Production (100% availability)"])
  stopped_loss{{"Stopped loss"}}
  actual_after_curtailment_energy --> other_loss
  actual_with_out_of_env_spec_energy --> actual_with_stops_energy
  actual_with_partial_performance_energy --> other_loss
  actual_with_stops_energy --> actual_with_partial_performance_energy
  out_of_env_spec_loss --> actual_with_out_of_env_spec_energy
  partial_performance_loss --> actual_with_partial_performance_energy
  production_100pct_avail --> actual_with_out_of_env_spec_energy
  stopped_loss --> actual_with_stops_energy
  style actual_after_curtailment_energy fill:#F5E6F9,stroke:#742181,color:#2C1E4A
  style actual_with_out_of_env_spec_energy fill:#F5E6F9,stroke:#742181,color:#2C1E4A
  style actual_with_partial_performance_energy fill:#F5E6F9,stroke:#742181,color:#2C1E4A
  style actual_with_stops_energy fill:#F5E6F9,stroke:#742181,color:#2C1E4A
  style other_loss fill:#F5E6F9,stroke:#CB6CE6,stroke-width:3px,color:#2C1E4A
  style out_of_env_spec_loss fill:#F5E6F9,stroke:#742181,color:#2C1E4A
  style partial_performance_loss fill:#F5E6F9,stroke:#742181,color:#2C1E4A
  style production_100pct_avail fill:#F5E6F9,stroke:#742181,color:#2C1E4A
  style stopped_loss fill:#F5E6F9,stroke:#742181,color:#2C1E4A

Unit: MWh

Comes from: Production, Production plus partial performance loss