turbine

class off.turbine.HAWT_ADM(base_location: ndarray, orientation: ndarray, turbine_states: TurbineStates, observation_points: ObservationPoints, ambient_states: AmbientStates, turbine_data: dict)

Bases: Turbine

calc_power(wind_speed, air_den)

Calculate the power based on turbine, ambient and OP states

Parameters:
  • wind_speed (float) – Wind speed (m/s)

  • air_den (float) – air density

Returns:

Power generated (W)

Return type:

float

diameter = 178.4
nacellePos = array([  0,   0, 119])
turbine_type = 'name'
class off.turbine.Turbine(base_location: ndarray, orientation: ndarray, turbine_states: TurbineStates, observation_points: ObservationPoints, ambient_states: AmbientStates)

Bases: ABC

abstract calc_power(wind_speed, air_den)

Calculate the power based on turbine, ambient and OP states

Parameters:
  • wind_speed (float) – Wind speed (m/s)

  • air_den (float) – air density

Returns:

Power generated (W)

Return type:

float

calc_tilt()

Get the tilt of the turbine

Returns:

tilt (deg)

Return type:

float

calc_yaw(wind_direction: float) float

Get the yaw misalignment of the turbine

Parameters:

wind_direction (number) – Wind direction (deg)

Returns:

yaw misalignment (deg)

Return type:

float

diameter = 1
get_rotor_pos() float64

Calculates the rotor position based on the current yaw and tilt

Returns:

1 x 3 vector with x,y,z location of the rotor in the world coordinate system

Return type:

np.ndarray

nacellePos = array([0, 0, 1])
orientation = array([0, 0])
set_rotor_pos(pos_rot: ndarray)

Sets the base location, based on a rotor location and the nacelle position :param pos_rot:

set_yaw(wind_direction: float, yaw: float)

Sets the orientation based on the given wind direction and yaw angle

Parameters:
  • wind_direction (float) – Wind direction in degrees

  • yaw (float) – Turbine yaw misalignment angle in degrees

turbine_type = 'base'
class off.turbine.TurbineStates(number_of_time_steps: int, number_of_states: int, state_names: list)

Bases: States, ABC

abstract create_interpolated_state(index1: int, index2: int, w1, w2)

Creates a TurbineStates object of its own kind with only one state entry, based on two weighted states. The returned object then still has access to functions such as get_current_yaw()

Parameters:
  • index1 (int) – Index of the first state

  • index2 (int) – Index of the second state

  • w1 (float) – Weight for first index (has to be w1 = 1 - w2, and [0,1])

  • w2 (float) – Weight for second index (has to be w2 = 1 - w1, and [0,1])

Returns:

turbine state object with single entry

Return type:

TurbineStates

abstract get_all_ax_ind() ndarray

get_all_axInd returns the all axial induction factors of the saved turbine states

Returns:

Axial induction factor (-)

Return type:

np.ndarray

abstract get_all_ct() ndarray

get_all_ct(index) returns the Ct coefficients for all turbine states.

Returns:

Thrust coefficient at all turbine states (-)

Return type:

np.ndarray

abstract get_all_yaw() ndarray

get_all_ct(index) returns the yaw misalignment for all turbine states.

Returns:

Yaw misalignment at all turbine states (deg)

Return type:

np.ndarray

abstract get_ax_ind(index: int) float

get_ax_ind(index) returns the axial induction coefficient at a requested index of the turbine state chain

Parameters:

index (int) – Turbine state list index at which a should be calculated

Returns:

Axial induction factor

Return type:

float

abstract get_ct(index: int) float

get_ct(index) returns the Ct coefficient at a requested index of the turbine state chain

Parameters:

index (int) – Turbine state list index at which Ct should be calculated

Returns:

Thrust coefficient

Return type:

float

abstract get_current_ax_ind() float

get_current_axInd returns the current axial induction factor of the turbine

Returns:

Axial induction factor (-)

Return type:

float

abstract get_current_cp() float

get_current_cp returns the current power coefficient of the turbine

Returns:

Power coefficient (-)

Return type:

float

abstract get_current_ct() float

get_current_ct returns the current thrust coefficient of the turbine

Returns:

Thrust coefficient (-)

Return type:

float

abstract get_current_yaw() float

get_current_yaw returns the current yaw misalignment at the turbine location

Returns:

yaw misalignment at the turbine location (deg)

Return type:

float

abstract get_yaw(index: int) float

get_yaw(index) returns the yaw misalignment at a requested index

Parameters:

index (int) –

Returns:

yaw misalignment in deg

Return type:

float

class off.turbine.TurbineStatesFLORIDyn(number_of_time_steps: int)

Bases: TurbineStates

create_interpolated_state(index1: int, index2: int, w1, w2)

Creates a TurbineStates object of its own kind with only one state entry, based on two weighted states. The returned object then still has access to functions such as get_current_yaw()

Parameters:
  • index1 (int) – Index of the first state

  • index2 (int) – Index of the second state

  • w1 (float) – Weight for first index (has to be w1 = 1 - w2, and [0,1])

  • w2 (float) – Weight for second index (has to be w2 = 1 - w1, and [0,1])

Returns:

turbine state object with single entry

Return type:

TurbineStates

get_all_ax_ind() ndarray

get_all_axInd returns the all axial induction factors of the saved turbine states

Returns:

Axial induction factor (-)

Return type:

np.ndarray

get_all_ct() ndarray

get_all_ct(index) returns the Ct coefficients for all turbine states.

Returns:

Thrust coefficient at all turbine states (-)

Return type:

np.ndarray

get_all_yaw() ndarray

returns the yaw misalignment for all turbine states.

Returns:

n x 1 vector with all yaw angles

Return type:

np.ndarray

get_ax_ind(index: int) ndarray

get_all_axInd returns the all axial induction factors of the saved turbine states

Returns:

Axial induction factor (-)

Return type:

np.ndarray

get_ct(index: int) float

get_ct(index) returns the Ct coefficient at a requested index of the turbine state chain

Parameters:

index (int) – Turbine state list index at which Ct should be calculated

Returns:

Thrust coefficient

Return type:

float

get_current_ax_ind() float

get_all_axInd returns the all axial induction factors of the saved turbine states

Returns:

Axial induction factor (-)

Return type:

np.ndarray

get_current_cp() float

get_current_cp returns the current power coefficient of the turbine

Returns:

Power coefficient (-)

Return type:

float

get_current_ct() float

get_current_ct returns the current thrust coefficient of the turbine

Returns:

Thrust coefficient (-)

Return type:

float

get_current_yaw() float

get_current_yaw returns the current yaw misalignment at the turbine location

Returns:

yaw misalignment at the turbine location (deg)

Return type:

float

get_yaw(index: int) float

get_yaw(index) returns the yaw misalignment at a requested index

Parameters:

index (int) –

Returns:

yaw misalignment in deg

Return type:

float