Skip to content

Wind Turbine (WindTurbine)

Class: WindTurbine | Module: energysim.models.renewables | Validation benchmarks | Units

Overview

Wind Turbine with multi-point power curve, air density correction and rotor lag.

Air density is corrected on the wind speed: the power curve (defined at standard density 1.225 kg/m3) is evaluated at v_eff = v * (rho / rho0) ** (1/3), so the rated plateau is not derated at winds well above rated speed. Density follows the ideal gas law with pressure from the barometric formula at altitude_m. Cut-out is applied on the actual wind speed. A first-order lag models rotor/pitch inertia.

Validity: hub-height wind 0-30 m/s, T_amb -30..45 C, altitude 0-3000 m; no wake, turbulence, icing or yaw-misalignment effects.

Parameters

Parameter Type Default Unit Description
name str 'WindTurbine' - -
p_rated_mw float 3.0 MW Rated electrical output power in MW.
cut_in_speed_ms float 3.0 m/s Cut-in wind speed in m/s.
rated_speed_ms float 11.5 m/s Rated wind speed in m/s.
cut_out_speed_ms float 25.0 m/s Cut-out wind speed in m/s.
rotor_time_constant_sec float 4.0 s 1st-order rotor inertia acceleration/pitch lag time constant.
power_curve Optional[Curve1D] None - -
step_size float 1.0 s -
altitude_m float 0.0 m Site altitude above sea level in metres (barometric pressure correction).

Inputs

Variable Unit Description
v_wind m/s -
T_amb degC -

Outputs

Variable Unit Description
P_actual MW Net active power delivered to the collector substation

Validity and notes

Validity: hub-height wind 0-30 m/s, T_amb -30..45 C, altitude 0-3000 m; no wake, turbulence, icing or yaw-misalignment effects.

Usage example

from energysim import world
from energysim.models import WindTurbine

sim = world(start_time=0, stop_time=3600, t_macro=900)
sim.add_model('windturbine', model=WindTurbine(), outputs=['P_actual'], step_size=60)
res = sim.simulate()
print(res['windturbine'].tail(2))