hydesign.wind.wind_hybridization

Classes

wpp_with_degradation

Wind power plant model

existing_wpp

Wind power plant model for an existing layout

existing_wpp_with_degradation

Wind power plant model for an existing layout

Functions

get_wind_ts_degradation(ws, pc, ws_ts, yr, wind_deg, ...)

param ws:

wind speed.

Module Contents

class hydesign.wind.wind_hybridization.wpp_with_degradation(N_limit, life_y, N_time, life_h, N_ws=51, wpp_efficiency=0.95, wind_deg=[0, 25 * 1 / 100], share_WT_deg_types=0.5, weeks_per_season_per_year=None)[source]

Bases: openmdao.api.ExplicitComponent

Wind power plant model

Provides the wind power time series using wake affected power curve and the wind speed time series.

Parameters:
  • N_time (Number of time-steps in weather simulation)

  • life_h (lifetime in hours)

  • N_ws (number of points in the power curves)

  • wpp_efficiency (WPP efficiency)

  • wind_deg_yr (year list for providing WT degradation curve)

  • wind_deg (degradation losses at yr)

  • share_WT_deg_types (share ratio between two degradation mechanism (0: only shift in power curve, 1: degradation as a loss factor ))

  • ws (Power curve wind speed list)

  • pcw (Wake affected power curve)

  • wst (wind speed time series at the hub height)

Returns:

wind_t_ext_deg

Return type:

power time series with degradation extended through lifetime

N_limit[source]
life_y[source]
N_time[source]
life_h[source]
N_ws = 51[source]
wpp_efficiency = 0.95[source]
wind_deg[source]
share_WT_deg_types = 0.5[source]
weeks_per_season_per_year = None[source]
setup()[source]

Declare inputs and outputs.

Available attributes:

name pathname comm options

compute(inputs, outputs)[source]

Compute outputs given inputs. The model is assumed to be in an unscaled state.

An inherited component may choose to either override this function or to define a compute_primal function.

Parameters:
  • inputs (Vector) – Unscaled, dimensional input variables read via inputs[key].

  • outputs (Vector) – Unscaled, dimensional output variables read via outputs[key].

  • discrete_inputs (dict-like or None) – If not None, dict-like object containing discrete input values.

  • discrete_outputs (dict-like or None) – If not None, dict-like object containing discrete output values.

class hydesign.wind.wind_hybridization.existing_wpp(N_time, existing_wpp_power_curve_xr_fn, wpp_efficiency=0.95)[source]

Bases: openmdao.api.ExplicitComponent

Wind power plant model for an existing layout

Provides the wind power time series using wake affected power curve and the wind speed time series.

Parameters:
  • N_time (Number of time-steps in weather simulation)

  • existing_wpp_power_curve_xr_fn (File name of a netcdf xarray.)

  • 'wd'. (The xarray should include 'P_no_wake' as function of 'ws' and 'wake_losses' as a function of 'ws' and)

  • 360 (Note that the wd must include both 0 and)

  • interpolation). (and a large WS (for)

  • flexible. (Resolution of ws and wd is)

  • <xarray.Dataset>

  • Dimensions ((ws: 53, wd: 361))

  • Coordinates

    • ws (ws) float64 0.0 0.5 1.0 1.5 2.0 … 24.5 25.0 25.0 100.0

    • wd (wd) float64 0.0 1.0 2.0 3.0 … 357.0 358.0 359.0 360.0

  • variables (Data) – wake_losses_eff (ws, wd) float64 0.0 0.0 0.0 0.0 0.0 … 0.0 0.0 0.0 0.0 P_no_wake (ws) float64 0.0 0.0 0.0 0.0 0.0 … 100.0 100.0 0.0 0.0

  • wpp_efficiency (WPP efficiency)

  • wst (wind speed time series at the hub height)

  • wdt (wind direction time series at the hub height)

Returns:

wind_t_ext_deg

Return type:

power time series with degradation extended through lifetime

N_time[source]
wpp_efficiency = 0.95[source]
existing_wpp_power_curve_xr_fn[source]
setup()[source]

Declare inputs and outputs.

Available attributes:

name pathname comm options

compute(inputs, outputs)[source]

Compute outputs given inputs. The model is assumed to be in an unscaled state.

An inherited component may choose to either override this function or to define a compute_primal function.

Parameters:
  • inputs (Vector) – Unscaled, dimensional input variables read via inputs[key].

  • outputs (Vector) – Unscaled, dimensional output variables read via outputs[key].

  • discrete_inputs (dict-like or None) – If not None, dict-like object containing discrete input values.

  • discrete_outputs (dict-like or None) – If not None, dict-like object containing discrete output values.

class hydesign.wind.wind_hybridization.existing_wpp_with_degradation(life_h, N_time, existing_wpp_power_curve_xr_fn, wpp_efficiency=0.95, wind_deg_yr=[0, 25], wind_deg=[0, 25 * 1 / 100], share_WT_deg_types=0.5, weeks_per_season_per_year=None)[source]

Bases: openmdao.api.ExplicitComponent

Wind power plant model for an existing layout Provides the wind power time series using wake affected power curve and the wind speed time series.

Parameters:
  • N_time (Number of time-steps in weather simulation)

  • life_h (lifetime in hours)

  • existing_wpp_power_curve_xr_fn (File name of a netcdf xarray.)

  • 'wd'. (The xarray should include 'P_no_wake' as function of 'ws' and 'wake_losses' as a function of 'ws' and)

  • 360 (Note that the wd must include both 0 and)

  • interpolation). (and a large WS (for)

  • flexible. (Resolution of ws and wd is)

  • <xarray.Dataset>

  • Dimensions ((ws: 53, wd: 361))

  • Coordinates

    • ws (ws) float64 0.0 0.5 1.0 1.5 2.0 … 24.5 25.0 25.0 100.0

    • wd (wd) float64 0.0 1.0 2.0 3.0 … 357.0 358.0 359.0 360.0

  • variables (Data) – wake_losses_eff (ws, wd) float64 0.0 0.0 0.0 0.0 0.0 … 0.0 0.0 0.0 0.0 P_no_wake (ws) float64 0.0 0.0 0.0 0.0 0.0 … 100.0 100.0 0.0 0.0

  • wpp_efficiency (WPP efficiency)

  • wind_deg_yr (year list for providing WT degradation curve)

  • wind_deg (degradation losses at yr)

  • share_WT_deg_types (share ratio between two degradation mechanism (0: only shift in power curve, 1: degradation as a loss factor ))

  • ws (Power curve wind speed list)

  • pcw (Wake affected power curve)

  • wst (wind speed time series at the hub height)

Returns:

wind_t_ext_deg

Return type:

power time series with degradation extended through lifetime

life_h[source]
N_time[source]
wpp_efficiency = 0.95[source]
existing_wpp_power_curve_xr_fn[source]
wind_deg_yr = [0, 25][source]
wind_deg[source]
share_WT_deg_types = 0.5[source]
weeks_per_season_per_year = None[source]
setup()[source]

Declare inputs and outputs.

Available attributes:

name pathname comm options

compute(inputs, outputs)[source]

Compute outputs given inputs. The model is assumed to be in an unscaled state.

An inherited component may choose to either override this function or to define a compute_primal function.

Parameters:
  • inputs (Vector) – Unscaled, dimensional input variables read via inputs[key].

  • outputs (Vector) – Unscaled, dimensional output variables read via outputs[key].

  • discrete_inputs (dict-like or None) – If not None, dict-like object containing discrete input values.

  • discrete_outputs (dict-like or None) – If not None, dict-like object containing discrete output values.

hydesign.wind.wind_hybridization.get_wind_ts_degradation(ws, pc, ws_ts, yr, wind_deg, life_h, share=0.5)[source]
Parameters:
  • ws (array-like) – wind speed.

  • pc (array-like) – power curve.

  • ws_ts (array-like) – wind speed time series.

  • yr (array-like) – year.

  • wind_deg (array-like) – degradation values for each year in the yr array.

  • life_h (int) – lifetime in hours.

  • share (float, optional) – share ratio between two degradation mechanism (0: only shift in power curve, 1: degradation as a loss factor ) . The default is 0.5.

Returns:

p_ts_deg_partial_factor – power time series after degradation.

Return type:

array