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’.

  • 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]

Methods

__init__(power_plant[, wake_losses_model, ...])

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.