ard.cost.wisdem_wrap#

Functions

FinanceSE_setup_latents(modeling_options)

A function to set up the FinanceSE latent variables using modeling options.

LandBOSSE_setup_latents(modeling_options)

A function to set up the LandBOSSE latent variables using modeling options.

ORBIT_setup_latents(modeling_options)

A function to set up the ORBIT latent variables using modeling options.

Classes

FinanceSEGroup(**kwargs)

LandBOSSEGroup(**kwargs)

LandBOSSEWithSpacingApproximations(**kwargs)

OpenMDAO group that connects the SpacingApproximations component to the LandBOSSE component.

ORBITGroup(**kwargs)

OperatingExpenses(**kwargs)

A simple component to compute the operating costs.

TurbineCapitalCosts(**kwargs)

A simple component to compute the turbine capital costs.

class ard.cost.wisdem_wrap.LandBOSSEWithSpacingApproximations(**kwargs)[source]#

OpenMDAO group that connects the SpacingApproximations component to the LandBOSSE component.

This group calculates the turbine spacing using the SpacingApproximations and passes it to the LandBOSSE component for further cost estimation.

initialize()[source]#

Initialize the group and declare options.

setup()[source]#

Set up the group by adding and connecting components.

class ard.cost.wisdem_wrap.LandBOSSEGroup(**kwargs)[source]#
initialize()[source]#

Initialize the group and declare options.

setup()[source]#

Build this group.

This method should be overidden by your Group's method. The reason for using this method to add subsystem is to save memory and setup time when using your Group while running under MPI. This avoids the creation of systems that will not be used in the current process.

You may call 'add_subsystem' to add systems to this group. You may also issue connections, and set the linear and nonlinear solvers for this group level. You cannot safely change anything on children systems; use the 'configure' method instead.

Available attributes:

name pathname comm options

class ard.cost.wisdem_wrap.ORBITGroup(**kwargs)[source]#
initialize()[source]#

Initialize the group and declare options.

setup()[source]#

Build this group.

This method should be overidden by your Group's method. The reason for using this method to add subsystem is to save memory and setup time when using your Group while running under MPI. This avoids the creation of systems that will not be used in the current process.

You may call 'add_subsystem' to add systems to this group. You may also issue connections, and set the linear and nonlinear solvers for this group level. You cannot safely change anything on children systems; use the 'configure' method instead.

Available attributes:

name pathname comm options

class ard.cost.wisdem_wrap.FinanceSEGroup(**kwargs)[source]#
initialize()[source]#

Initialize the group and declare options.

setup()[source]#

Build this group.

This method should be overidden by your Group's method. The reason for using this method to add subsystem is to save memory and setup time when using your Group while running under MPI. This avoids the creation of systems that will not be used in the current process.

You may call 'add_subsystem' to add systems to this group. You may also issue connections, and set the linear and nonlinear solvers for this group level. You cannot safely change anything on children systems; use the 'configure' method instead.

Available attributes:

name pathname comm options

class ard.cost.wisdem_wrap.TurbineCapitalCosts(**kwargs)[source]#

A simple component to compute the turbine capital costs.

Inputs#

machine_ratingfloat

rating of the wind turbine in kW

tcc_per_kWfloat

turbine capital costs per kW (as output from WISDEM tools)

offset_tcc_per_kWfloat

additional tcc per kW (offset)

Discrete Inputs#

turbine_numberint

number of turbines in the farm

Outputs#

tccfloat

turbine capital costs in USD

setup()[source]#

Setup of OM component.

setup_partials()[source]#

Derivative setup for OM component.

compute(inputs, outputs, discrete_inputs=None, discrete_outputs=None)[source]#

Computation for the OM compoent.

class ard.cost.wisdem_wrap.OperatingExpenses(**kwargs)[source]#

A simple component to compute the operating costs.

Inputs#

machine_ratingfloat

rating of the wind turbine in kW

opex_per_kWfloat

annual operating and maintenance costs per kW (as output from WISDEM tools)

Discrete Inputs#

turbine_numberint

number of turbines in the farm

Outputs#

opexfloat

annual operating and maintenance costs in USD

setup()[source]#

Setup of OM component.

setup_partials()[source]#

Derivative setup for OM component.

compute(inputs, outputs, discrete_inputs=None, discrete_outputs=None)[source]#

Computation for the OM compoent.

ard.cost.wisdem_wrap.LandBOSSE_setup_latents(modeling_options)[source]#

A function to set up the LandBOSSE latent variables using modeling options.

Return type:

None

Parameters:
  • prob (openmdao.api.Problem) -- an OpenMDAO problem for which we want to setup the LandBOSSE latent variables

  • modeling_options (dict) -- a modeling options dictionary

ard.cost.wisdem_wrap.ORBIT_setup_latents(modeling_options)[source]#

A function to set up the ORBIT latent variables using modeling options.

Return type:

None

Parameters:
  • prob (openmdao.api.Problem) -- an OpenMDAO problem for which we want to setup the ORBIT latent variables

  • modeling_options (dict) -- a modeling options dictionary

ard.cost.wisdem_wrap.FinanceSE_setup_latents(modeling_options)[source]#

A function to set up the FinanceSE latent variables using modeling options.

Parameters:
  • prob (openmdao.api.Problem) -- an OpenMDAO problem for which we want to setup the FinanceSE latent variables

  • modeling_options (dict) -- a modeling options dictionary