windpowerlib.turbine_cluster_modelchain.TurbineClusterModelChain

class windpowerlib.turbine_cluster_modelchain.TurbineClusterModelChain(power_plant, wake_losses_model='dena_mean', smoothing=False, block_width=0.5, standard_deviation_method='turbulence_intensity', smoothing_order='wind_farm_power_curves', **kwargs)[source]

Model to determine the output of a wind farm or wind turbine cluster.

Parameters:
  • power_plant (WindFarm or WindTurbineCluster) – A WindFarm object representing the wind farm or a WindTurbineCluster object representing the wind turbine cluster.
  • wake_losses_model (str or None) –
    Defines the method for taking wake losses within the farm into
    consideration.
    • None - Wake losses are not taken into account.
    • ’wind_farm_efficiency’ - The values of the wind farm power curve(s) are reduced by the wind farm efficiency, which needs to be set in the WindFarm class. Note: The wind farm efficiency has no effect if wake_losses_model is not set to ‘wind_farm_efficiency’. See wake_losses_to_power_curve() for more information.
    • ’dena_mean’ or name of other wind efficiency curve - The values of the wind speed time series are reduced by the chosen wind efficiency curve in run_model() before the power output calculations. See reduce_wind_speed() for more information. Use get_wind_efficiency_curve() to get a DataFrame of all provided wind efficiency curves and see the provided example on how to plot the wind efficiency curves.

    Default: ‘dena_mean’.

  • smoothing (bool) –

    If True the power curves will be smoothed to account for the distribution of wind speeds over space. Depending on the parameter smoothing_order the power curves are smoothed before or after aggregating wind turbine power curves to one representative power curve of the wind farm or cluster. See smooth_power_curve() for more information.

    Default: False.

  • block_width (float) –

    Width between the wind speeds in the sum of the equation in smooth_power_curve(). This parameter is only used if smoothing is True. To achieve a smooth curve without steps a value not much higher than the step width between the power curve wind speeds should be chosen.

    Default: 0.5.

  • standard_deviation_method (str) –

    Method for calculating the standard deviation for the Gauss distribution if smoothing is True.

    Default: ‘turbulence_intensity’.

  • smoothing_order (str) –

    Defines when the smoothing takes place if smoothing is True.

    • ’turbine_power_curves’ - Smoothing is applied to wind turbine power curves.
    • ’wind_farm_power_curves’ - Smoothing is applied to wind farm power curves.

    Default: ‘wind_farm_power_curves’.

Other Parameters:
 
  • wind_speed_model – See ModelChain for more information.
  • temperature_model – See ModelChain for more information.
  • density_model – See ModelChain for more information.
  • power_output_model – See ModelChain for more information.
  • density_correction – See ModelChain for more information.
  • obstacle_height – See ModelChain for more information.
  • hellman_exp – See ModelChain for more information.
power_plant

A WindFarm object representing the wind farm or a WindTurbineCluster object representing the wind turbine cluster.

Type:WindFarm or WindTurbineCluster
wake_losses_model

Defines the method for taking wake losses within the farm into consideration.

Type:str or None
smoothing

If True the power curves are smoothed.

Type:bool
block_width

Width between the wind speeds in the sum of the equation in smooth_power_curve().

Type:float
standard_deviation_method

Method for calculating the standard deviation for the Gauss distribution.

Type:str
smoothing_order

Defines when the smoothing takes place if smoothing is True.

Type:str
power_output

Electrical power output of the wind turbine in W.

Type:pandas.Series
power_curve

The calculated power curve of the wind farm.

Type:pandas.Dataframe or None
wind_speed_model

Defines which model is used to calculate the wind speed at hub height.

Type:str
temperature_model

Defines which model is used to calculate the temperature of air at hub height.

Type:str
density_model

Defines which model is used to calculate the density of air at hub height.

Type:str
power_output_model

Defines which model is used to calculate the turbine power output.

Type:str
density_correction

Used to set density_correction parameter in power_curve().

Type:bool
obstacle_height

Used to set obstacle_height in logarithmic().

Type:float
hellman_exp

Used to set hellman_exponent in hellman().

Type:float
__init__(power_plant, wake_losses_model='dena_mean', smoothing=False, block_width=0.5, standard_deviation_method='turbulence_intensity', smoothing_order='wind_farm_power_curves', **kwargs)[source]

Initialize self. See help(type(self)) for accurate signature.

Methods

__init__(power_plant[, wake_losses_model, …]) Initialize self.
assign_power_curve(weather_df) Calculates the power curve of the wind turbine cluster.
calculate_power_output(wind_speed_hub, …) Calculates the power output of the wind power plant.
density_hub(weather_df) Calculates the density of air at hub height.
run_model(weather_df) Runs the model.
temperature_hub(weather_df) Calculates the temperature of air at hub height.
wind_speed_hub(weather_df) Calculates the wind speed at hub height.