windpowerlib.wind_farm.WindFarm¶
-
class
windpowerlib.wind_farm.
WindFarm
(name, wind_turbine_fleet, coordinates=None, efficiency=None, **kwargs)[source]¶ Defines a standard set of wind farm attributes.
Parameters: - name (str or None) – Name of the wind farm.
- wind_turbine_fleet (list(dict)) – Wind turbines of wind farm. Dictionaries must have ‘wind_turbine’
(contains a
WindTurbine
object) and ‘number_of_turbines’ (number of wind turbines of the same turbine type in the wind farm) as keys. - coordinates (list(float) or None (optional)) – List with coordinates [lat, lon] of location. Default: None.
- efficiency (float or pandas.DataFrame or None (optional)) – Efficiency of the wind farm. Provide as either constant (float) or power efficiency curve (pd.DataFrame) containing ‘wind_speed’ and ‘efficiency’ columns with wind speeds in m/s and the corresponding dimensionless wind farm efficiency. Default: None.
-
wind_turbine_fleet
¶ Wind turbines of wind farm. Dictionaries must have ‘wind_turbine’ (contains a
WindTurbine
object) and ‘number_of_turbines’ (number of wind turbines of the same turbine type in the wind farm) as keys.Type: list(dict)
-
efficiency
¶ Efficiency of the wind farm. Either constant (float) power efficiency curve (pd.DataFrame) containing ‘wind_speed’ and ‘efficiency’ columns with wind speeds in m/s and the corresponding dimensionless wind farm efficiency. Default: None.
Type: float or pandas.DataFrame or None
-
hub_height
¶ The calculated mean hub height of the wind farm. See
mean_hub_height()
for more information.Type: float
-
nominal_power
¶ The nominal power is the sum of the nominal power of all turbines in the wind farm in W.
Type: float
-
installed_power
¶ Installed nominal power of the wind farm in W. Deprecated! Use
nominal_power
instead.Type: float
-
power_curve
¶ The calculated power curve of the wind farm. See
assign_power_curve()
for more information.Type: pandas.DataFrame or None
-
power_output
¶ The calculated power output of the wind farm.
Type: pandas.Series
Examples
>>> from windpowerlib import wind_farm >>> from windpowerlib import wind_turbine >>> enerconE126 = { ... 'hub_height': 135, ... 'rotor_diameter': 127, ... 'name': 'E-126/4200', ... 'fetch_curve': 'power_curve', ... 'data_source': 'oedb'} >>> e126 = wind_turbine.WindTurbine(**enerconE126) >>> example_farm_data = { ... 'name': 'example_farm', ... 'wind_turbine_fleet': [{'wind_turbine': e126, ... 'number_of_turbines': 6}]} >>> example_farm = wind_farm.WindFarm(**example_farm_data) >>> print(example_farm.nominal_power) 25200000.0
-
installed_power
The installed nominal power of the wind farm. (Deprecated!)
-
nominal_power
The nominal power of the wind farm.
See
nominal_power
for further information.Parameters: nominal_power (float) – Nominal power of the wind farm in W. Returns: Nominal power of the wind farm in W. Return type: float
-
mean_hub_height
()[source]¶ Calculates the mean hub height of the wind farm.
The mean hub height of a wind farm is necessary for power output calculations with an aggregated wind farm power curve containing wind turbines with different hub heights. Hub heights of wind turbines with higher nominal power weigh more than others. After the calculations the mean hub height is assigned to the attribute
hub_height
.Returns: self Return type: WindFarm
Notes
The following equation is used [1]:
- with:
- : mean hub height of wind farm, : hub height of the k-th wind turbine of a wind farm, : nominal power of the k-th wind turbine
References
[1] Knorr, K.: “Modellierung von raum-zeitlichen Eigenschaften der Windenergieeinspeisung für wetterdatenbasierte Windleistungssimulationen”. Universität Kassel, Diss., 2016, p. 35
-
get_installed_power
()[source]¶ Calculates
nominal_power
of the wind farm.Returns: Nominal power of the wind farm in W. See nominal_power
for further information.Return type: float
-
assign_power_curve
(wake_losses_model='power_efficiency_curve', smoothing=False, block_width=0.5, standard_deviation_method='turbulence_intensity', smoothing_order='wind_farm_power_curves', turbulence_intensity=None, **kwargs)[source]¶ Calculates the power curve of a wind farm.
The wind farm power curve is calculated by aggregating the power curves of all wind turbines in the wind farm. Depending on the parameters the power curves are smoothed (before or after the aggregation) and/or a wind farm efficiency (power efficiency curve or constant efficiency) is applied after the aggregation. After the calculations the power curve is assigned to the attribute
power_curve
.Parameters: - wake_losses_model (str) – Defines the method for taking wake losses within the farm into consideration. Options: ‘power_efficiency_curve’, ‘constant_efficiency’ or None. Default: ‘power_efficiency_curve’.
- smoothing (bool) – If True the power curves will be smoothed before or after the aggregation of power curves depending on smoothing_order. Default: False.
- block_width (float) – Width between the wind speeds in the sum of the equation in
smooth_power_curve()
. Default: 0.5. - standard_deviation_method (str) – Method for calculating the standard deviation for the Gauss distribution. Options: ‘turbulence_intensity’, ‘Staffell_Pfenninger’. Default: ‘turbulence_intensity’.
- smoothing_order (str) – Defines when the smoothing takes place if smoothing is True. Options: ‘turbine_power_curves’ (to the single turbine power curves), ‘wind_farm_power_curves’. Default: ‘wind_farm_power_curves’.
- turbulence_intensity (float) – Turbulence intensity at hub height of the wind farm for power curve smoothing with ‘turbulence_intensity’ method. Can be calculated from roughness_length instead. Default: None.
- roughness_length (float (optional)) – Roughness length. If standard_deviation_method is ‘turbulence_intensity’ and turbulence_intensity is not given the turbulence intensity is calculated via the roughness length.
Returns: self
Return type: