Source Documentation

nrel_csm_mass_2015

class wisdem.nrelcsm.nrel_csm_mass_2015.BladeMass(**kwargs)[source]

Compute blade mass of the form \(mass = k*diameter^b\). Value of \(k\) was updated in 2015 to be 0.5. Value of \(b\) was updated to be 2.47/2.54 for turbine class I blades with/without carbon or 2.44/2.5 for other turbine classes with/without carbon. Values of k and b can be overridden by the user with use of blade_mass_coeff (k) and/or blade_user_exp (b). To use blade_user_exp, the value of turbine_class must be less than 1.

Parameters:
  • rotor_diameter (float, [m]) – rotor diameter of the machine

  • turbine_class (float) – turbine class. Set to 1 for Class I, 2 for Class II+, or 0 for user overrides of blade_user_exp

  • blade_has_carbon (boolean) – does the blade have carbon?

  • blade_mass_coeff (float) – k in the blade mass equation: k*(rotor_diameter/2)^b

  • blade_user_exp (float) – optional user-entered exp for the blade mass equation

Returns:

blade_mass – component mass

Return type:

float, [kg]

Attributes:
checking

Return True if check_partials or check_totals is executing.

linear_solver

Get the linear solver for this system.

msginfo

Our instance pathname, if available, or our class name.

nonlinear_solver

Get the nonlinear solver for this system.

under_approx

Return True if under complex step or finite difference.

Methods

abs_name_iter(iotype[, local, cont, discrete])

Iterate over absolute variable names for this System.

convert_from_units(name, val, units)

Convert the given value from the specified units to those of the named variable.

convert_units(name, val, units_from, units_to)

Wrap the utility convert_units and give a good error message.

get_coloring_fname()

Return the full pathname to a coloring file.

get_io_metadata([iotypes, metadata_keys, ...])

Retrieve metadata for a filtered list of variables.

get_promotions([inprom, outprom])

Return all promotions for the given promoted variable(s).

get_reports_dir()

Get the path to the directory where the report files should go.

get_source(name)

Return the source variable connected to the given named variable.

get_val(name[, units, indices, get_remote, ...])

Get an output/input/residual variable.

is_explicit()

Return True if this is an explicit component.

load_model_options()

Load the relevant model options from Problem._metadata['model_options'].

set_constraint_options(name[, ref, ref0, ...])

Set options for objectives in the model.

set_design_var_options(name[, lower, upper, ...])

Set options for design vars in the model.

set_objective_options(name[, ref, ref0, ...])

Set options for objectives in the model.

set_output_solver_options(name[, lower, ...])

Set solver output options.

set_val(name, val[, units, indices])

Set an input or output variable.

setup_partials()

Declare partials.

class wisdem.nrelcsm.nrel_csm_mass_2015.HubMass(**kwargs)[source]

Compute hub mass in the form of \(mass = k*m_{blade} + b\). Value of \(k\) was updated in 2015 to be 2.3. Value of \(b\) was updated in 2015 to be 1320.

Parameters:
  • blade_mass (float, [kg]) – component mass

  • hub_mass_coeff (float) – k inthe hub mass equation: k*blade_mass + b

  • hub_mass_intercept (float) – b in the hub mass equation: k*blade_mass + b

Returns:

hub_mass – component mass

Return type:

float, [kg]

Attributes:
checking

Return True if check_partials or check_totals is executing.

linear_solver

Get the linear solver for this system.

msginfo

Our instance pathname, if available, or our class name.

nonlinear_solver

Get the nonlinear solver for this system.

under_approx

Return True if under complex step or finite difference.

Methods

abs_name_iter(iotype[, local, cont, discrete])

Iterate over absolute variable names for this System.

convert_from_units(name, val, units)

Convert the given value from the specified units to those of the named variable.

convert_units(name, val, units_from, units_to)

Wrap the utility convert_units and give a good error message.

get_coloring_fname()

Return the full pathname to a coloring file.

get_io_metadata([iotypes, metadata_keys, ...])

Retrieve metadata for a filtered list of variables.

get_promotions([inprom, outprom])

Return all promotions for the given promoted variable(s).

get_reports_dir()

Get the path to the directory where the report files should go.

get_source(name)

Return the source variable connected to the given named variable.

get_val(name[, units, indices, get_remote, ...])

Get an output/input/residual variable.

is_explicit()

Return True if this is an explicit component.

load_model_options()

Load the relevant model options from Problem._metadata['model_options'].

set_constraint_options(name[, ref, ref0, ...])

Set options for objectives in the model.

set_design_var_options(name[, lower, upper, ...])

Set options for design vars in the model.

set_objective_options(name[, ref, ref0, ...])

Set options for objectives in the model.

set_output_solver_options(name[, lower, ...])

Set solver output options.

set_val(name, val[, units, indices])

Set an input or output variable.

setup_partials()

Declare partials.

class wisdem.nrelcsm.nrel_csm_mass_2015.PitchSystemMass(**kwargs)[source]

Compute pitch bearing mass in the form of \(m_{bearing} = k*m_{blade}*nblade + b1\). Then compute pitch system mass, with bearing housing in the form of \(mass = (1+h)*m_{bearing} + b2\). The values of the constants were NOT updated in 2015 and are the same as the original CSM. Value of \(k\) is 0.1295. Value of \(h\) is 0.328. Value of \(b1\) is 491.31. Value of \(b2\) is 555.0.

Parameters:
  • blade_mass (float, [kg]) – component mass

  • blade_number (float) – number of rotor blades

  • pitch_bearing_mass_coeff (float) – k in the pitch bearing mass equation: k*blade_mass*blade_number + b

  • pitch_bearing_mass_intercept (float) – b in the pitch bearing mass equation: k*blade_mass*blade_number + b

  • bearing_housing_fraction (float) – bearing housing fraction

  • mass_sys_offset (float) – mass system offset

Returns:

pitch_system_mass – component mass

Return type:

float, [kg]

Attributes:
checking

Return True if check_partials or check_totals is executing.

linear_solver

Get the linear solver for this system.

msginfo

Our instance pathname, if available, or our class name.

nonlinear_solver

Get the nonlinear solver for this system.

under_approx

Return True if under complex step or finite difference.

Methods

abs_name_iter(iotype[, local, cont, discrete])

Iterate over absolute variable names for this System.

convert_from_units(name, val, units)

Convert the given value from the specified units to those of the named variable.

convert_units(name, val, units_from, units_to)

Wrap the utility convert_units and give a good error message.

get_coloring_fname()

Return the full pathname to a coloring file.

get_io_metadata([iotypes, metadata_keys, ...])

Retrieve metadata for a filtered list of variables.

get_promotions([inprom, outprom])

Return all promotions for the given promoted variable(s).

get_reports_dir()

Get the path to the directory where the report files should go.

get_source(name)

Return the source variable connected to the given named variable.

get_val(name[, units, indices, get_remote, ...])

Get an output/input/residual variable.

is_explicit()

Return True if this is an explicit component.

load_model_options()

Load the relevant model options from Problem._metadata['model_options'].

set_constraint_options(name[, ref, ref0, ...])

Set options for objectives in the model.

set_design_var_options(name[, lower, upper, ...])

Set options for design vars in the model.

set_objective_options(name[, ref, ref0, ...])

Set options for objectives in the model.

set_output_solver_options(name[, lower, ...])

Set solver output options.

set_val(name, val[, units, indices])

Set an input or output variable.

setup_partials()

Declare partials.

class wisdem.nrelcsm.nrel_csm_mass_2015.SpinnerMass(**kwargs)[source]

Compute spinner (nose cone) mass in the form of \(mass = k*diameter + b\). Value of \(k\) was updated in 2015 to be 15.5. Value of \(b\) was updated in 2015 to be -980.

Parameters:
  • rotor_diameter (float, [m]) – rotor diameter of the machine

  • spinner_mass_coeff (float) – k inthe spinner mass equation: k*rotor_diameter + b

  • spinner_mass_intercept (float) – b in the spinner mass equation: k*rotor_diameter + b

Returns:

spinner_mass – component mass

Return type:

float, [kg]

Attributes:
checking

Return True if check_partials or check_totals is executing.

linear_solver

Get the linear solver for this system.

msginfo

Our instance pathname, if available, or our class name.

nonlinear_solver

Get the nonlinear solver for this system.

under_approx

Return True if under complex step or finite difference.

Methods

abs_name_iter(iotype[, local, cont, discrete])

Iterate over absolute variable names for this System.

convert_from_units(name, val, units)

Convert the given value from the specified units to those of the named variable.

convert_units(name, val, units_from, units_to)

Wrap the utility convert_units and give a good error message.

get_coloring_fname()

Return the full pathname to a coloring file.

get_io_metadata([iotypes, metadata_keys, ...])

Retrieve metadata for a filtered list of variables.

get_promotions([inprom, outprom])

Return all promotions for the given promoted variable(s).

get_reports_dir()

Get the path to the directory where the report files should go.

get_source(name)

Return the source variable connected to the given named variable.

get_val(name[, units, indices, get_remote, ...])

Get an output/input/residual variable.

is_explicit()

Return True if this is an explicit component.

load_model_options()

Load the relevant model options from Problem._metadata['model_options'].

set_constraint_options(name[, ref, ref0, ...])

Set options for objectives in the model.

set_design_var_options(name[, lower, upper, ...])

Set options for design vars in the model.

set_objective_options(name[, ref, ref0, ...])

Set options for objectives in the model.

set_output_solver_options(name[, lower, ...])

Set solver output options.

set_val(name, val[, units, indices])

Set an input or output variable.

setup_partials()

Declare partials.

class wisdem.nrelcsm.nrel_csm_mass_2015.LowSpeedShaftMass(**kwargs)[source]

Compute low speed shaft mass in the form of \(mass = k*(m_{blade}*power)^b1 + b2\). Value of \(k\) was updated in 2015 to be 13. Value of \(b1\) was updated in 2015 to be 0.65. Value of \(b2\) was updated in 2015 to be 775.

Parameters:
  • blade_mass (float, [kg]) – mass for a single wind turbine blade

  • machine_rating (float, [kW]) – machine rating

  • lss_mass_coeff (float) – k inthe lss mass equation: k*(blade_mass*rated_power)^b1 + b2

  • lss_mass_exp (float) – b1 in the lss mass equation: k*(blade_mass*rated_power)^b1 + b2

  • lss_mass_intercept (float) – b2 in the lss mass equation: k*(blade_mass*rated_power)^b1 + b2

Returns:

lss_mass – component mass

Return type:

float, [kg]

Attributes:
checking

Return True if check_partials or check_totals is executing.

linear_solver

Get the linear solver for this system.

msginfo

Our instance pathname, if available, or our class name.

nonlinear_solver

Get the nonlinear solver for this system.

under_approx

Return True if under complex step or finite difference.

Methods

abs_name_iter(iotype[, local, cont, discrete])

Iterate over absolute variable names for this System.

convert_from_units(name, val, units)

Convert the given value from the specified units to those of the named variable.

convert_units(name, val, units_from, units_to)

Wrap the utility convert_units and give a good error message.

get_coloring_fname()

Return the full pathname to a coloring file.

get_io_metadata([iotypes, metadata_keys, ...])

Retrieve metadata for a filtered list of variables.

get_promotions([inprom, outprom])

Return all promotions for the given promoted variable(s).

get_reports_dir()

Get the path to the directory where the report files should go.

get_source(name)

Return the source variable connected to the given named variable.

get_val(name[, units, indices, get_remote, ...])

Get an output/input/residual variable.

is_explicit()

Return True if this is an explicit component.

load_model_options()

Load the relevant model options from Problem._metadata['model_options'].

set_constraint_options(name[, ref, ref0, ...])

Set options for objectives in the model.

set_design_var_options(name[, lower, upper, ...])

Set options for design vars in the model.

set_objective_options(name[, ref, ref0, ...])

Set options for objectives in the model.

set_output_solver_options(name[, lower, ...])

Set solver output options.

set_val(name, val[, units, indices])

Set an input or output variable.

setup_partials()

Declare partials.

class wisdem.nrelcsm.nrel_csm_mass_2015.BearingMass(**kwargs)[source]

Compute main bearing mass (single bearing) in the form of \(mass = k*diameter^b\). Value of \(k\) was updated in 2015 to be 1e-4. Value of \(b\) was updated in 2015 to be 3.5.

Parameters:
  • rotor_diameter (float, [m]) – rotor diameter of the machine

  • bearing_mass_coeff (float) – k inthe bearing mass equation: k*rotor_diameter^b

  • bearing_mass_exp (float) – exp in the bearing mass equation: k*rotor_diameter^b

Returns:

main_bearing_mass – component mass

Return type:

float, [kg]

Attributes:
checking

Return True if check_partials or check_totals is executing.

linear_solver

Get the linear solver for this system.

msginfo

Our instance pathname, if available, or our class name.

nonlinear_solver

Get the nonlinear solver for this system.

under_approx

Return True if under complex step or finite difference.

Methods

abs_name_iter(iotype[, local, cont, discrete])

Iterate over absolute variable names for this System.

convert_from_units(name, val, units)

Convert the given value from the specified units to those of the named variable.

convert_units(name, val, units_from, units_to)

Wrap the utility convert_units and give a good error message.

get_coloring_fname()

Return the full pathname to a coloring file.

get_io_metadata([iotypes, metadata_keys, ...])

Retrieve metadata for a filtered list of variables.

get_promotions([inprom, outprom])

Return all promotions for the given promoted variable(s).

get_reports_dir()

Get the path to the directory where the report files should go.

get_source(name)

Return the source variable connected to the given named variable.

get_val(name[, units, indices, get_remote, ...])

Get an output/input/residual variable.

is_explicit()

Return True if this is an explicit component.

load_model_options()

Load the relevant model options from Problem._metadata['model_options'].

set_constraint_options(name[, ref, ref0, ...])

Set options for objectives in the model.

set_design_var_options(name[, lower, upper, ...])

Set options for design vars in the model.

set_objective_options(name[, ref, ref0, ...])

Set options for objectives in the model.

set_output_solver_options(name[, lower, ...])

Set solver output options.

set_val(name, val[, units, indices])

Set an input or output variable.

setup_partials()

Declare partials.

class wisdem.nrelcsm.nrel_csm_mass_2015.RotorTorque(**kwargs)[source]

Computed rated rpm and rotor torque from rated power, rotor diameter, max tip speed, and drivetrain efficiency. Rotor torque will be used to size other drivetrain components, such as the generator.

Parameters:
  • rotor_diameter (float, [m]) – rotor diameter of the machine

  • machine_rating (float, [kW]) – machine rating

  • max_tip_speed (float, [m/s]) – Maximum allowable blade tip speed

  • max_efficiency (float) – Maximum possible drivetrain efficiency

Returns:

  • rated_rpm (float, [rpm]) – rpm of rotor at rated power

  • rotor_torque (float, [MN*m]) – torque from rotor at rated power

Attributes:
checking

Return True if check_partials or check_totals is executing.

linear_solver

Get the linear solver for this system.

msginfo

Our instance pathname, if available, or our class name.

nonlinear_solver

Get the nonlinear solver for this system.

under_approx

Return True if under complex step or finite difference.

Methods

abs_name_iter(iotype[, local, cont, discrete])

Iterate over absolute variable names for this System.

convert_from_units(name, val, units)

Convert the given value from the specified units to those of the named variable.

convert_units(name, val, units_from, units_to)

Wrap the utility convert_units and give a good error message.

get_coloring_fname()

Return the full pathname to a coloring file.

get_io_metadata([iotypes, metadata_keys, ...])

Retrieve metadata for a filtered list of variables.

get_promotions([inprom, outprom])

Return all promotions for the given promoted variable(s).

get_reports_dir()

Get the path to the directory where the report files should go.

get_source(name)

Return the source variable connected to the given named variable.

get_val(name[, units, indices, get_remote, ...])

Get an output/input/residual variable.

is_explicit()

Return True if this is an explicit component.

load_model_options()

Load the relevant model options from Problem._metadata['model_options'].

set_constraint_options(name[, ref, ref0, ...])

Set options for objectives in the model.

set_design_var_options(name[, lower, upper, ...])

Set options for design vars in the model.

set_objective_options(name[, ref, ref0, ...])

Set options for objectives in the model.

set_output_solver_options(name[, lower, ...])

Set solver output options.

set_val(name, val[, units, indices])

Set an input or output variable.

setup_partials()

Declare partials.

class wisdem.nrelcsm.nrel_csm_mass_2015.GearboxMass(**kwargs)[source]

Compute gearbox mass in the form of \(mass = k*torque^b\). Value of \(k\) was updated in 2015 to be 113. Value of \(b\) was updated in 2015 to be 0.71.

Parameters:
  • rotor_torque (float, [N*m]) – torque from rotor at rated power

  • gearbox_torque_density (float, [N*m/kg]) – In 2024, modern 5-7MW gearboxes are able to reach 200 Nm/kg

Returns:

gearbox_mass – component mass

Return type:

float, [kg]

Attributes:
checking

Return True if check_partials or check_totals is executing.

linear_solver

Get the linear solver for this system.

msginfo

Our instance pathname, if available, or our class name.

nonlinear_solver

Get the nonlinear solver for this system.

under_approx

Return True if under complex step or finite difference.

Methods

abs_name_iter(iotype[, local, cont, discrete])

Iterate over absolute variable names for this System.

convert_from_units(name, val, units)

Convert the given value from the specified units to those of the named variable.

convert_units(name, val, units_from, units_to)

Wrap the utility convert_units and give a good error message.

get_coloring_fname()

Return the full pathname to a coloring file.

get_io_metadata([iotypes, metadata_keys, ...])

Retrieve metadata for a filtered list of variables.

get_promotions([inprom, outprom])

Return all promotions for the given promoted variable(s).

get_reports_dir()

Get the path to the directory where the report files should go.

get_source(name)

Return the source variable connected to the given named variable.

get_val(name[, units, indices, get_remote, ...])

Get an output/input/residual variable.

is_explicit()

Return True if this is an explicit component.

load_model_options()

Load the relevant model options from Problem._metadata['model_options'].

set_constraint_options(name[, ref, ref0, ...])

Set options for objectives in the model.

set_design_var_options(name[, lower, upper, ...])

Set options for design vars in the model.

set_objective_options(name[, ref, ref0, ...])

Set options for objectives in the model.

set_output_solver_options(name[, lower, ...])

Set solver output options.

set_val(name, val[, units, indices])

Set an input or output variable.

setup_partials()

Declare partials.

class wisdem.nrelcsm.nrel_csm_mass_2015.BrakeMass(**kwargs)[source]

Compute brake mass in the form of \(mass = k*torque\). Value of \(k\) was updated in 2020 to be 0.00122.

Parameters:
  • rotor_torque (float, [N*m]) – rotor torque at rated power

  • brake_mass_coeff (float) – Mass scaling coefficient

Returns:

brake_mass – overall component mass

Return type:

float, [kg]

Attributes:
checking

Return True if check_partials or check_totals is executing.

linear_solver

Get the linear solver for this system.

msginfo

Our instance pathname, if available, or our class name.

nonlinear_solver

Get the nonlinear solver for this system.

under_approx

Return True if under complex step or finite difference.

Methods

abs_name_iter(iotype[, local, cont, discrete])

Iterate over absolute variable names for this System.

convert_from_units(name, val, units)

Convert the given value from the specified units to those of the named variable.

convert_units(name, val, units_from, units_to)

Wrap the utility convert_units and give a good error message.

get_coloring_fname()

Return the full pathname to a coloring file.

get_io_metadata([iotypes, metadata_keys, ...])

Retrieve metadata for a filtered list of variables.

get_promotions([inprom, outprom])

Return all promotions for the given promoted variable(s).

get_reports_dir()

Get the path to the directory where the report files should go.

get_source(name)

Return the source variable connected to the given named variable.

get_val(name[, units, indices, get_remote, ...])

Get an output/input/residual variable.

is_explicit()

Return True if this is an explicit component.

load_model_options()

Load the relevant model options from Problem._metadata['model_options'].

set_constraint_options(name[, ref, ref0, ...])

Set options for objectives in the model.

set_design_var_options(name[, lower, upper, ...])

Set options for design vars in the model.

set_objective_options(name[, ref, ref0, ...])

Set options for objectives in the model.

set_output_solver_options(name[, lower, ...])

Set solver output options.

set_val(name, val[, units, indices])

Set an input or output variable.

setup_partials()

Declare partials.

class wisdem.nrelcsm.nrel_csm_mass_2015.HighSpeedShaftMass(**kwargs)[source]

Compute high speed shaft mass in the form of \(mass = k*power\). Value of \(k\) was updated in 2015 to be 0.19894.

Parameters:
  • machine_rating (float, [kW]) – machine rating

  • hss_mass_coeff (float) – NREL CSM hss equation; removing intercept since it is negligible

Returns:

hss_mass – component mass

Return type:

float, [kg]

Attributes:
checking

Return True if check_partials or check_totals is executing.

linear_solver

Get the linear solver for this system.

msginfo

Our instance pathname, if available, or our class name.

nonlinear_solver

Get the nonlinear solver for this system.

under_approx

Return True if under complex step or finite difference.

Methods

abs_name_iter(iotype[, local, cont, discrete])

Iterate over absolute variable names for this System.

convert_from_units(name, val, units)

Convert the given value from the specified units to those of the named variable.

convert_units(name, val, units_from, units_to)

Wrap the utility convert_units and give a good error message.

get_coloring_fname()

Return the full pathname to a coloring file.

get_io_metadata([iotypes, metadata_keys, ...])

Retrieve metadata for a filtered list of variables.

get_promotions([inprom, outprom])

Return all promotions for the given promoted variable(s).

get_reports_dir()

Get the path to the directory where the report files should go.

get_source(name)

Return the source variable connected to the given named variable.

get_val(name[, units, indices, get_remote, ...])

Get an output/input/residual variable.

is_explicit()

Return True if this is an explicit component.

load_model_options()

Load the relevant model options from Problem._metadata['model_options'].

set_constraint_options(name[, ref, ref0, ...])

Set options for objectives in the model.

set_design_var_options(name[, lower, upper, ...])

Set options for design vars in the model.

set_objective_options(name[, ref, ref0, ...])

Set options for objectives in the model.

set_output_solver_options(name[, lower, ...])

Set solver output options.

set_val(name, val[, units, indices])

Set an input or output variable.

setup_partials()

Declare partials.

class wisdem.nrelcsm.nrel_csm_mass_2015.GeneratorMass(**kwargs)[source]

Compute generator mass in the form of \(mass = k*power + b\). Value of \(k\) was updated in 2015 to be 2.3 (for rating in kW). Value of \(b\) was updated in 2015 to be 3400.

Parameters:
  • machine_rating (float, [kW]) – machine rating

  • generator_mass_coeff (float) – k inthe generator mass equation: k*rated_power + b

  • generator_mass_intercept (float) – b in the generator mass equation: k*rated_power + b

Returns:

generator_mass – component mass

Return type:

float, [kg]

Attributes:
checking

Return True if check_partials or check_totals is executing.

linear_solver

Get the linear solver for this system.

msginfo

Our instance pathname, if available, or our class name.

nonlinear_solver

Get the nonlinear solver for this system.

under_approx

Return True if under complex step or finite difference.

Methods

abs_name_iter(iotype[, local, cont, discrete])

Iterate over absolute variable names for this System.

convert_from_units(name, val, units)

Convert the given value from the specified units to those of the named variable.

convert_units(name, val, units_from, units_to)

Wrap the utility convert_units and give a good error message.

get_coloring_fname()

Return the full pathname to a coloring file.

get_io_metadata([iotypes, metadata_keys, ...])

Retrieve metadata for a filtered list of variables.

get_promotions([inprom, outprom])

Return all promotions for the given promoted variable(s).

get_reports_dir()

Get the path to the directory where the report files should go.

get_source(name)

Return the source variable connected to the given named variable.

get_val(name[, units, indices, get_remote, ...])

Get an output/input/residual variable.

is_explicit()

Return True if this is an explicit component.

load_model_options()

Load the relevant model options from Problem._metadata['model_options'].

set_constraint_options(name[, ref, ref0, ...])

Set options for objectives in the model.

set_design_var_options(name[, lower, upper, ...])

Set options for design vars in the model.

set_objective_options(name[, ref, ref0, ...])

Set options for objectives in the model.

set_output_solver_options(name[, lower, ...])

Set solver output options.

set_val(name, val[, units, indices])

Set an input or output variable.

setup_partials()

Declare partials.

class wisdem.nrelcsm.nrel_csm_mass_2015.BedplateMass(**kwargs)[source]

Compute bedplate mass in the form of \(mass = diameter^b\). Value of \(b\) was updated in 2015 to be 2.2.

Parameters:
  • rotor_diameter (float, [m]) – rotor diameter of the machine

  • bedplate_mass_exp (float) – exp in the bedplate mass equation: rotor_diameter^b

Returns:

bedplate_mass – component mass

Return type:

float, [kg]

Attributes:
checking

Return True if check_partials or check_totals is executing.

linear_solver

Get the linear solver for this system.

msginfo

Our instance pathname, if available, or our class name.

nonlinear_solver

Get the nonlinear solver for this system.

under_approx

Return True if under complex step or finite difference.

Methods

abs_name_iter(iotype[, local, cont, discrete])

Iterate over absolute variable names for this System.

convert_from_units(name, val, units)

Convert the given value from the specified units to those of the named variable.

convert_units(name, val, units_from, units_to)

Wrap the utility convert_units and give a good error message.

get_coloring_fname()

Return the full pathname to a coloring file.

get_io_metadata([iotypes, metadata_keys, ...])

Retrieve metadata for a filtered list of variables.

get_promotions([inprom, outprom])

Return all promotions for the given promoted variable(s).

get_reports_dir()

Get the path to the directory where the report files should go.

get_source(name)

Return the source variable connected to the given named variable.

get_val(name[, units, indices, get_remote, ...])

Get an output/input/residual variable.

is_explicit()

Return True if this is an explicit component.

load_model_options()

Load the relevant model options from Problem._metadata['model_options'].

set_constraint_options(name[, ref, ref0, ...])

Set options for objectives in the model.

set_design_var_options(name[, lower, upper, ...])

Set options for design vars in the model.

set_objective_options(name[, ref, ref0, ...])

Set options for objectives in the model.

set_output_solver_options(name[, lower, ...])

Set solver output options.

set_val(name, val[, units, indices])

Set an input or output variable.

setup_partials()

Declare partials.

class wisdem.nrelcsm.nrel_csm_mass_2015.YawSystemMass(**kwargs)[source]

Compute yaw system mass in the form of \(mass = k*diameter^b\). The values of the constants were NOT updated in 2015 and are the same as the original CSM. Value of \(k\) is 9e-4. Value of \(b\) is 3.314.

Parameters:
  • rotor_diameter (float, [m]) – rotor diameter of the machine

  • yaw_mass_coeff (float) – k inthe yaw mass equation: k*rotor_diameter^b

  • yaw_mass_exp (float) – exp in the yaw mass equation: k*rotor_diameter^b

Returns:

yaw_mass – component mass

Return type:

float, [kg]

Attributes:
checking

Return True if check_partials or check_totals is executing.

linear_solver

Get the linear solver for this system.

msginfo

Our instance pathname, if available, or our class name.

nonlinear_solver

Get the nonlinear solver for this system.

under_approx

Return True if under complex step or finite difference.

Methods

abs_name_iter(iotype[, local, cont, discrete])

Iterate over absolute variable names for this System.

convert_from_units(name, val, units)

Convert the given value from the specified units to those of the named variable.

convert_units(name, val, units_from, units_to)

Wrap the utility convert_units and give a good error message.

get_coloring_fname()

Return the full pathname to a coloring file.

get_io_metadata([iotypes, metadata_keys, ...])

Retrieve metadata for a filtered list of variables.

get_promotions([inprom, outprom])

Return all promotions for the given promoted variable(s).

get_reports_dir()

Get the path to the directory where the report files should go.

get_source(name)

Return the source variable connected to the given named variable.

get_val(name[, units, indices, get_remote, ...])

Get an output/input/residual variable.

is_explicit()

Return True if this is an explicit component.

load_model_options()

Load the relevant model options from Problem._metadata['model_options'].

set_constraint_options(name[, ref, ref0, ...])

Set options for objectives in the model.

set_design_var_options(name[, lower, upper, ...])

Set options for design vars in the model.

set_objective_options(name[, ref, ref0, ...])

Set options for objectives in the model.

set_output_solver_options(name[, lower, ...])

Set solver output options.

set_val(name, val[, units, indices])

Set an input or output variable.

setup_partials()

Declare partials.

class wisdem.nrelcsm.nrel_csm_mass_2015.HydraulicCoolingMass(**kwargs)[source]

Compute hydraulic cooling mass in the form of \(mass = k*power\). The values of the constants were NOT updated in 2015 and are the same as the original CSM. Value of \(k\) is 0.08.

Parameters:
  • machine_rating (float, [kW]) – machine rating

  • hvac_mass_coeff (float) – hvac linear coeff

Returns:

hvac_mass – component mass

Return type:

float, [kg]

Attributes:
checking

Return True if check_partials or check_totals is executing.

linear_solver

Get the linear solver for this system.

msginfo

Our instance pathname, if available, or our class name.

nonlinear_solver

Get the nonlinear solver for this system.

under_approx

Return True if under complex step or finite difference.

Methods

abs_name_iter(iotype[, local, cont, discrete])

Iterate over absolute variable names for this System.

convert_from_units(name, val, units)

Convert the given value from the specified units to those of the named variable.

convert_units(name, val, units_from, units_to)

Wrap the utility convert_units and give a good error message.

get_coloring_fname()

Return the full pathname to a coloring file.

get_io_metadata([iotypes, metadata_keys, ...])

Retrieve metadata for a filtered list of variables.

get_promotions([inprom, outprom])

Return all promotions for the given promoted variable(s).

get_reports_dir()

Get the path to the directory where the report files should go.

get_source(name)

Return the source variable connected to the given named variable.

get_val(name[, units, indices, get_remote, ...])

Get an output/input/residual variable.

is_explicit()

Return True if this is an explicit component.

load_model_options()

Load the relevant model options from Problem._metadata['model_options'].

set_constraint_options(name[, ref, ref0, ...])

Set options for objectives in the model.

set_design_var_options(name[, lower, upper, ...])

Set options for design vars in the model.

set_objective_options(name[, ref, ref0, ...])

Set options for objectives in the model.

set_output_solver_options(name[, lower, ...])

Set solver output options.

set_val(name, val[, units, indices])

Set an input or output variable.

setup_partials()

Declare partials.

class wisdem.nrelcsm.nrel_csm_mass_2015.NacelleCoverMass(**kwargs)[source]

Compute nacelle cover mass in the form of \(mass = k*power + b\). The values of the constants were NOT updated in 2015 and are the same as the original CSM. Value of \(k\) is 1.2817. Value of \(b\) is 428.19.

Parameters:
  • machine_rating (float, [kW]) – machine rating

  • cover_mass_coeff (float) – k inthe spinner mass equation: k*rotor_diameter + b

  • cover_mass_intercept (float) – b in the spinner mass equation: k*rotor_diameter + b

Returns:

cover_mass – component mass

Return type:

float, [kg]

Attributes:
checking

Return True if check_partials or check_totals is executing.

linear_solver

Get the linear solver for this system.

msginfo

Our instance pathname, if available, or our class name.

nonlinear_solver

Get the nonlinear solver for this system.

under_approx

Return True if under complex step or finite difference.

Methods

abs_name_iter(iotype[, local, cont, discrete])

Iterate over absolute variable names for this System.

convert_from_units(name, val, units)

Convert the given value from the specified units to those of the named variable.

convert_units(name, val, units_from, units_to)

Wrap the utility convert_units and give a good error message.

get_coloring_fname()

Return the full pathname to a coloring file.

get_io_metadata([iotypes, metadata_keys, ...])

Retrieve metadata for a filtered list of variables.

get_promotions([inprom, outprom])

Return all promotions for the given promoted variable(s).

get_reports_dir()

Get the path to the directory where the report files should go.

get_source(name)

Return the source variable connected to the given named variable.

get_val(name[, units, indices, get_remote, ...])

Get an output/input/residual variable.

is_explicit()

Return True if this is an explicit component.

load_model_options()

Load the relevant model options from Problem._metadata['model_options'].

set_constraint_options(name[, ref, ref0, ...])

Set options for objectives in the model.

set_design_var_options(name[, lower, upper, ...])

Set options for design vars in the model.

set_objective_options(name[, ref, ref0, ...])

Set options for objectives in the model.

set_output_solver_options(name[, lower, ...])

Set solver output options.

set_val(name, val[, units, indices])

Set an input or output variable.

setup_partials()

Declare partials.

class wisdem.nrelcsm.nrel_csm_mass_2015.PlatformsMainframeMass(**kwargs)[source]

Compute platforms mass in the form of \(mass = k*m_{bedplate}\) and crane mass as 3000kg, if flagged by the user. The values of the constants were NOT updated in 2015 and are the same as the original CSM. Value of \(k\) is 0.125.

Parameters:
  • bedplate_mass (float, [kg]) – component mass

  • platforms_mass_coeff (float) – nacelle platforms mass coeff as a function of bedplate mass [kg/kg]

  • crane (boolean) – flag for presence of onboard crane

  • crane_weight (float, [kg]) – weight of onboard crane

Returns:

platforms_mass – component mass

Return type:

float, [kg]

Attributes:
checking

Return True if check_partials or check_totals is executing.

linear_solver

Get the linear solver for this system.

msginfo

Our instance pathname, if available, or our class name.

nonlinear_solver

Get the nonlinear solver for this system.

under_approx

Return True if under complex step or finite difference.

Methods

abs_name_iter(iotype[, local, cont, discrete])

Iterate over absolute variable names for this System.

convert_from_units(name, val, units)

Convert the given value from the specified units to those of the named variable.

convert_units(name, val, units_from, units_to)

Wrap the utility convert_units and give a good error message.

get_coloring_fname()

Return the full pathname to a coloring file.

get_io_metadata([iotypes, metadata_keys, ...])

Retrieve metadata for a filtered list of variables.

get_promotions([inprom, outprom])

Return all promotions for the given promoted variable(s).

get_reports_dir()

Get the path to the directory where the report files should go.

get_source(name)

Return the source variable connected to the given named variable.

get_val(name[, units, indices, get_remote, ...])

Get an output/input/residual variable.

is_explicit()

Return True if this is an explicit component.

load_model_options()

Load the relevant model options from Problem._metadata['model_options'].

set_constraint_options(name[, ref, ref0, ...])

Set options for objectives in the model.

set_design_var_options(name[, lower, upper, ...])

Set options for design vars in the model.

set_objective_options(name[, ref, ref0, ...])

Set options for objectives in the model.

set_output_solver_options(name[, lower, ...])

Set solver output options.

set_val(name, val[, units, indices])

Set an input or output variable.

setup_partials()

Declare partials.

class wisdem.nrelcsm.nrel_csm_mass_2015.TransformerMass(**kwargs)[source]

Compute transformer mass in the form of \(mass = k*power + b\). Value of \(k\) was updated in 2015 to be 1.915 (for rating in kW). Value of \(b\) was updated in 2015 to be 1910.

Parameters:
  • machine_rating (float, [kW]) – machine rating

  • transformer_mass_coeff (float) – k inthe transformer mass equation: k*rated_power + b

  • transformer_mass_intercept (float) – b in the transformer mass equation: k*rated_power + b

Returns:

transformer_mass – component mass

Return type:

float, [kg]

Attributes:
checking

Return True if check_partials or check_totals is executing.

linear_solver

Get the linear solver for this system.

msginfo

Our instance pathname, if available, or our class name.

nonlinear_solver

Get the nonlinear solver for this system.

under_approx

Return True if under complex step or finite difference.

Methods

abs_name_iter(iotype[, local, cont, discrete])

Iterate over absolute variable names for this System.

convert_from_units(name, val, units)

Convert the given value from the specified units to those of the named variable.

convert_units(name, val, units_from, units_to)

Wrap the utility convert_units and give a good error message.

get_coloring_fname()

Return the full pathname to a coloring file.

get_io_metadata([iotypes, metadata_keys, ...])

Retrieve metadata for a filtered list of variables.

get_promotions([inprom, outprom])

Return all promotions for the given promoted variable(s).

get_reports_dir()

Get the path to the directory where the report files should go.

get_source(name)

Return the source variable connected to the given named variable.

get_val(name[, units, indices, get_remote, ...])

Get an output/input/residual variable.

is_explicit()

Return True if this is an explicit component.

load_model_options()

Load the relevant model options from Problem._metadata['model_options'].

set_constraint_options(name[, ref, ref0, ...])

Set options for objectives in the model.

set_design_var_options(name[, lower, upper, ...])

Set options for design vars in the model.

set_objective_options(name[, ref, ref0, ...])

Set options for objectives in the model.

set_output_solver_options(name[, lower, ...])

Set solver output options.

set_val(name, val[, units, indices])

Set an input or output variable.

setup_partials()

Declare partials.

class wisdem.nrelcsm.nrel_csm_mass_2015.TowerMass(**kwargs)[source]

Compute tower mass in the form of \(mass = k*H_{hub}^b\). Value of \(k\) was updated in 2015 to be 19.828. Value of \(b\) was updated in 2015 to be 2.0282.

Parameters:
  • tower_length (float, [m]) – This is the hub height of wind turbine above ground for onshore turbines. For offshore, this should be entered as the length from transition piece to hub height.

  • tower_mass_coeff (float) – k in the tower mass equation: k*tower_length^b

  • tower_mass_exp (float) – b in the tower mass equation: k*tower_length^b

Returns:

tower_mass – component mass

Return type:

float, [kg]

Attributes:
checking

Return True if check_partials or check_totals is executing.

linear_solver

Get the linear solver for this system.

msginfo

Our instance pathname, if available, or our class name.

nonlinear_solver

Get the nonlinear solver for this system.

under_approx

Return True if under complex step or finite difference.

Methods

abs_name_iter(iotype[, local, cont, discrete])

Iterate over absolute variable names for this System.

convert_from_units(name, val, units)

Convert the given value from the specified units to those of the named variable.

convert_units(name, val, units_from, units_to)

Wrap the utility convert_units and give a good error message.

get_coloring_fname()

Return the full pathname to a coloring file.

get_io_metadata([iotypes, metadata_keys, ...])

Retrieve metadata for a filtered list of variables.

get_promotions([inprom, outprom])

Return all promotions for the given promoted variable(s).

get_reports_dir()

Get the path to the directory where the report files should go.

get_source(name)

Return the source variable connected to the given named variable.

get_val(name[, units, indices, get_remote, ...])

Get an output/input/residual variable.

is_explicit()

Return True if this is an explicit component.

load_model_options()

Load the relevant model options from Problem._metadata['model_options'].

set_constraint_options(name[, ref, ref0, ...])

Set options for objectives in the model.

set_design_var_options(name[, lower, upper, ...])

Set options for design vars in the model.

set_objective_options(name[, ref, ref0, ...])

Set options for objectives in the model.

set_output_solver_options(name[, lower, ...])

Set solver output options.

set_val(name, val[, units, indices])

Set an input or output variable.

setup_partials()

Declare partials.

class wisdem.nrelcsm.nrel_csm_mass_2015.TurbineMassAdder(**kwargs)[source]

Aggregates all components masses into category labels of hub system, rotor, nacelle, and tower.

Parameters:
  • blade_mass (float, [kg]) – component mass

  • hub_mass (float, [kg]) – component mass

  • pitch_system_mass (float, [kg]) – component mass

  • spinner_mass (float, [kg]) – component mass

  • lss_mass (float, [kg]) – component mass

  • main_bearing_mass (float, [kg]) – component mass

  • gearbox_mass (float, [kg]) – component mass

  • hss_mass (float, [kg]) – component mass

  • brake_mass (float, [kg]) – component mass

  • generator_mass (float, [kg]) – component mass

  • bedplate_mass (float, [kg]) – component mass

  • yaw_mass (float, [kg]) – component mass

  • hvac_mass (float, [kg]) – component mass

  • cover_mass (float, [kg]) – component mass

  • platforms_mass (float, [kg]) – component mass

  • transformer_mass (float, [kg]) – component mass

  • tower_mass (float, [kg]) – component mass

  • blade_number (float) – number of rotor blades

  • main_bearing_number (float) – number of main bearings

Returns:

  • hub_system_mass (float, [kg]) – hub system mass

  • rotor_mass (float, [kg]) – hub system mass

  • nacelle_mass (float, [kg]) – nacelle mass

  • turbine_mass (float, [kg]) – turbine mass

Attributes:
checking

Return True if check_partials or check_totals is executing.

linear_solver

Get the linear solver for this system.

msginfo

Our instance pathname, if available, or our class name.

nonlinear_solver

Get the nonlinear solver for this system.

under_approx

Return True if under complex step or finite difference.

Methods

abs_name_iter(iotype[, local, cont, discrete])

Iterate over absolute variable names for this System.

convert_from_units(name, val, units)

Convert the given value from the specified units to those of the named variable.

convert_units(name, val, units_from, units_to)

Wrap the utility convert_units and give a good error message.

get_coloring_fname()

Return the full pathname to a coloring file.

get_io_metadata([iotypes, metadata_keys, ...])

Retrieve metadata for a filtered list of variables.

get_promotions([inprom, outprom])

Return all promotions for the given promoted variable(s).

get_reports_dir()

Get the path to the directory where the report files should go.

get_source(name)

Return the source variable connected to the given named variable.

get_val(name[, units, indices, get_remote, ...])

Get an output/input/residual variable.

is_explicit()

Return True if this is an explicit component.

load_model_options()

Load the relevant model options from Problem._metadata['model_options'].

set_constraint_options(name[, ref, ref0, ...])

Set options for objectives in the model.

set_design_var_options(name[, lower, upper, ...])

Set options for design vars in the model.

set_objective_options(name[, ref, ref0, ...])

Set options for objectives in the model.

set_output_solver_options(name[, lower, ...])

Set solver output options.

set_val(name, val[, units, indices])

Set an input or output variable.

setup_partials()

Declare partials.

nrel_csm_cost_2015

class wisdem.nrelcsm.nrel_csm_cost_2015.BladeCost2015(**kwargs)[source]

Compute blade cost in the form of \(cost = k*mass\). Value of \(k\) was updated in 2015 to be $14.6 USD/kg. Cost includes materials and manufacturing costs. Cost can be overridden with use of blade_cost_external

Parameters:
  • blade_mass (float, [kg]) – component mass

  • blade_mass_cost_coeff (float, [USD/kg]) – blade mass-cost coeff

  • blade_cost_external (float, [USD]) – Blade cost computed by RotorSE

Returns:

blade_cost – Blade cost

Return type:

float, [USD]

Attributes:
checking

Return True if check_partials or check_totals is executing.

linear_solver

Get the linear solver for this system.

msginfo

Our instance pathname, if available, or our class name.

nonlinear_solver

Get the nonlinear solver for this system.

under_approx

Return True if under complex step or finite difference.

Methods

abs_name_iter(iotype[, local, cont, discrete])

Iterate over absolute variable names for this System.

convert_from_units(name, val, units)

Convert the given value from the specified units to those of the named variable.

convert_units(name, val, units_from, units_to)

Wrap the utility convert_units and give a good error message.

get_coloring_fname()

Return the full pathname to a coloring file.

get_io_metadata([iotypes, metadata_keys, ...])

Retrieve metadata for a filtered list of variables.

get_promotions([inprom, outprom])

Return all promotions for the given promoted variable(s).

get_reports_dir()

Get the path to the directory where the report files should go.

get_source(name)

Return the source variable connected to the given named variable.

get_val(name[, units, indices, get_remote, ...])

Get an output/input/residual variable.

is_explicit()

Return True if this is an explicit component.

load_model_options()

Load the relevant model options from Problem._metadata['model_options'].

set_constraint_options(name[, ref, ref0, ...])

Set options for objectives in the model.

set_design_var_options(name[, lower, upper, ...])

Set options for design vars in the model.

set_objective_options(name[, ref, ref0, ...])

Set options for objectives in the model.

set_output_solver_options(name[, lower, ...])

Set solver output options.

set_val(name, val[, units, indices])

Set an input or output variable.

setup_partials()

Declare partials.

class wisdem.nrelcsm.nrel_csm_cost_2015.HubCost2015(**kwargs)[source]

Compute hub cost in the form of \(cost = k*mass\). Value of \(k\) was updated in 2015 to be $3.9 USD/kg. Cost includes materials and manufacturing costs.

Parameters:
  • hub_mass (float, [kg]) – component mass

  • hub_mass_cost_coeff (float, [USD/kg]) – hub mass-cost coeff

Returns:

hub_cost – Hub cost

Return type:

float, [USD]

Attributes:
checking

Return True if check_partials or check_totals is executing.

linear_solver

Get the linear solver for this system.

msginfo

Our instance pathname, if available, or our class name.

nonlinear_solver

Get the nonlinear solver for this system.

under_approx

Return True if under complex step or finite difference.

Methods

abs_name_iter(iotype[, local, cont, discrete])

Iterate over absolute variable names for this System.

convert_from_units(name, val, units)

Convert the given value from the specified units to those of the named variable.

convert_units(name, val, units_from, units_to)

Wrap the utility convert_units and give a good error message.

get_coloring_fname()

Return the full pathname to a coloring file.

get_io_metadata([iotypes, metadata_keys, ...])

Retrieve metadata for a filtered list of variables.

get_promotions([inprom, outprom])

Return all promotions for the given promoted variable(s).

get_reports_dir()

Get the path to the directory where the report files should go.

get_source(name)

Return the source variable connected to the given named variable.

get_val(name[, units, indices, get_remote, ...])

Get an output/input/residual variable.

is_explicit()

Return True if this is an explicit component.

load_model_options()

Load the relevant model options from Problem._metadata['model_options'].

set_constraint_options(name[, ref, ref0, ...])

Set options for objectives in the model.

set_design_var_options(name[, lower, upper, ...])

Set options for design vars in the model.

set_objective_options(name[, ref, ref0, ...])

Set options for objectives in the model.

set_output_solver_options(name[, lower, ...])

Set solver output options.

set_val(name, val[, units, indices])

Set an input or output variable.

setup_partials()

Declare partials.

class wisdem.nrelcsm.nrel_csm_cost_2015.PitchSystemCost2015(**kwargs)[source]

Compute pitch system cost in the form of \(cost = k*mass\). Value of \(k\) was NOT updated in 2015 and remains the same as original CSM, $22.1 USD/kg. Cost includes materials and manufacturing costs.

Parameters:
  • pitch_system_mass (float, [kg]) – component mass

  • pitch_system_mass_cost_coeff (float, [USD/kg]) – pitch system mass-cost coeff

Returns:

pitch_system_cost – Pitch system cost

Return type:

float, [USD]

Attributes:
checking

Return True if check_partials or check_totals is executing.

linear_solver

Get the linear solver for this system.

msginfo

Our instance pathname, if available, or our class name.

nonlinear_solver

Get the nonlinear solver for this system.

under_approx

Return True if under complex step or finite difference.

Methods

abs_name_iter(iotype[, local, cont, discrete])

Iterate over absolute variable names for this System.

convert_from_units(name, val, units)

Convert the given value from the specified units to those of the named variable.

convert_units(name, val, units_from, units_to)

Wrap the utility convert_units and give a good error message.

get_coloring_fname()

Return the full pathname to a coloring file.

get_io_metadata([iotypes, metadata_keys, ...])

Retrieve metadata for a filtered list of variables.

get_promotions([inprom, outprom])

Return all promotions for the given promoted variable(s).

get_reports_dir()

Get the path to the directory where the report files should go.

get_source(name)

Return the source variable connected to the given named variable.

get_val(name[, units, indices, get_remote, ...])

Get an output/input/residual variable.

is_explicit()

Return True if this is an explicit component.

load_model_options()

Load the relevant model options from Problem._metadata['model_options'].

set_constraint_options(name[, ref, ref0, ...])

Set options for objectives in the model.

set_design_var_options(name[, lower, upper, ...])

Set options for design vars in the model.

set_objective_options(name[, ref, ref0, ...])

Set options for objectives in the model.

set_output_solver_options(name[, lower, ...])

Set solver output options.

set_val(name, val[, units, indices])

Set an input or output variable.

setup_partials()

Declare partials.

class wisdem.nrelcsm.nrel_csm_cost_2015.SpinnerCost2015(**kwargs)[source]

Compute spinner cost in the form of \(cost = k*mass\). Value of \(k\) was updated in 2015 to be $11.1 USD/kg. Cost includes materials and manufacturing costs.

Parameters:
  • spinner_mass (float, [kg]) – component mass

  • spinner_mass_cost_coeff (float, [USD/kg]) – spinner/nose cone mass-cost coeff

Returns:

spinner_cost – Spinner cost

Return type:

float, [USD]

Attributes:
checking

Return True if check_partials or check_totals is executing.

linear_solver

Get the linear solver for this system.

msginfo

Our instance pathname, if available, or our class name.

nonlinear_solver

Get the nonlinear solver for this system.

under_approx

Return True if under complex step or finite difference.

Methods

abs_name_iter(iotype[, local, cont, discrete])

Iterate over absolute variable names for this System.

convert_from_units(name, val, units)

Convert the given value from the specified units to those of the named variable.

convert_units(name, val, units_from, units_to)

Wrap the utility convert_units and give a good error message.

get_coloring_fname()

Return the full pathname to a coloring file.

get_io_metadata([iotypes, metadata_keys, ...])

Retrieve metadata for a filtered list of variables.

get_promotions([inprom, outprom])

Return all promotions for the given promoted variable(s).

get_reports_dir()

Get the path to the directory where the report files should go.

get_source(name)

Return the source variable connected to the given named variable.

get_val(name[, units, indices, get_remote, ...])

Get an output/input/residual variable.

is_explicit()

Return True if this is an explicit component.

load_model_options()

Load the relevant model options from Problem._metadata['model_options'].

set_constraint_options(name[, ref, ref0, ...])

Set options for objectives in the model.

set_design_var_options(name[, lower, upper, ...])

Set options for design vars in the model.

set_objective_options(name[, ref, ref0, ...])

Set options for objectives in the model.

set_output_solver_options(name[, lower, ...])

Set solver output options.

set_val(name, val[, units, indices])

Set an input or output variable.

setup_partials()

Declare partials.

class wisdem.nrelcsm.nrel_csm_cost_2015.HubSystemCostAdder2015(**kwargs)[source]

Aggregates the hub, pitch system, and spinner costs into a single component that is transported to the project site and could therefore incur additional costs. Cost multipliers are of the form, \(c_{hubsys} = (1+kt_{hubsys}+kp_{hubsys}) (1+ko_{hubsys}+ka_{hubsys}) (c_{hub} + c_{pitch} + c_{spinner})\)

Where conceptually, \(kt\) is a transportation multiplier, \(kp\) is a profit multiplier, \(ko\) is an overhead cost multiplier, and \(ka\) is an assembly cost multiplier

By default, \(kt=kp=ko=ka=0\).

Parameters:
  • hub_cost (float, [USD]) – Hub component cost

  • hub_mass (float, [kg]) – Hub component mass

  • pitch_system_cost (float, [USD]) – Pitch system cost

  • pitch_system_mass (float, [kg]) – Pitch system mass

  • spinner_cost (float, [USD]) – Spinner component cost

  • spinner_mass (float, [kg]) – Spinner component mass

  • hub_assemblyCostMultiplier (float) – Rotor assembly cost multiplier

  • hub_overheadCostMultiplier (float) – Rotor overhead cost multiplier

  • hub_profitMultiplier (float) – Rotor profit multiplier

  • hub_transportMultiplier (float) – Rotor transport multiplier

Returns:

  • hub_system_mass_tcc (float, [kg]) – Mass of the hub system, including hub, spinner, and pitch system for the blades

  • hub_system_cost (float, [USD]) – Overall wind sub-assembly capial costs including transportation costs

Attributes:
checking

Return True if check_partials or check_totals is executing.

linear_solver

Get the linear solver for this system.

msginfo

Our instance pathname, if available, or our class name.

nonlinear_solver

Get the nonlinear solver for this system.

under_approx

Return True if under complex step or finite difference.

Methods

abs_name_iter(iotype[, local, cont, discrete])

Iterate over absolute variable names for this System.

convert_from_units(name, val, units)

Convert the given value from the specified units to those of the named variable.

convert_units(name, val, units_from, units_to)

Wrap the utility convert_units and give a good error message.

get_coloring_fname()

Return the full pathname to a coloring file.

get_io_metadata([iotypes, metadata_keys, ...])

Retrieve metadata for a filtered list of variables.

get_promotions([inprom, outprom])

Return all promotions for the given promoted variable(s).

get_reports_dir()

Get the path to the directory where the report files should go.

get_source(name)

Return the source variable connected to the given named variable.

get_val(name[, units, indices, get_remote, ...])

Get an output/input/residual variable.

is_explicit()

Return True if this is an explicit component.

load_model_options()

Load the relevant model options from Problem._metadata['model_options'].

set_constraint_options(name[, ref, ref0, ...])

Set options for objectives in the model.

set_design_var_options(name[, lower, upper, ...])

Set options for design vars in the model.

set_objective_options(name[, ref, ref0, ...])

Set options for objectives in the model.

set_output_solver_options(name[, lower, ...])

Set solver output options.

set_val(name, val[, units, indices])

Set an input or output variable.

setup_partials()

Declare partials.

class wisdem.nrelcsm.nrel_csm_cost_2015.RotorCostAdder2015(**kwargs)[source]

Sum of individual component costs to get overall rotor cost. No additional transport and assembly multipliers are included because it is assumed that each component is transported separately.

Parameters:
  • blade_cost (float, [USD]) – Individual blade cost

  • blade_mass (float, [kg]) – Individual blade mass

  • hub_system_cost (float, [USD]) – Cost for hub system

  • hub_system_mass_tcc (float, [kg]) – Mass for hub system

  • blade_number (int) – Number of rotor blades

Returns:

  • rotor_cost (float, [USD]) – Rotor cost

  • rotor_mass_tcc (float, [kg]) – Rotor mass, including blades, pitch system, hub, and spinner

Attributes:
checking

Return True if check_partials or check_totals is executing.

linear_solver

Get the linear solver for this system.

msginfo

Our instance pathname, if available, or our class name.

nonlinear_solver

Get the nonlinear solver for this system.

under_approx

Return True if under complex step or finite difference.

Methods

abs_name_iter(iotype[, local, cont, discrete])

Iterate over absolute variable names for this System.

convert_from_units(name, val, units)

Convert the given value from the specified units to those of the named variable.

convert_units(name, val, units_from, units_to)

Wrap the utility convert_units and give a good error message.

get_coloring_fname()

Return the full pathname to a coloring file.

get_io_metadata([iotypes, metadata_keys, ...])

Retrieve metadata for a filtered list of variables.

get_promotions([inprom, outprom])

Return all promotions for the given promoted variable(s).

get_reports_dir()

Get the path to the directory where the report files should go.

get_source(name)

Return the source variable connected to the given named variable.

get_val(name[, units, indices, get_remote, ...])

Get an output/input/residual variable.

is_explicit()

Return True if this is an explicit component.

load_model_options()

Load the relevant model options from Problem._metadata['model_options'].

set_constraint_options(name[, ref, ref0, ...])

Set options for objectives in the model.

set_design_var_options(name[, lower, upper, ...])

Set options for design vars in the model.

set_objective_options(name[, ref, ref0, ...])

Set options for objectives in the model.

set_output_solver_options(name[, lower, ...])

Set solver output options.

set_val(name, val[, units, indices])

Set an input or output variable.

setup_partials()

Declare partials.

class wisdem.nrelcsm.nrel_csm_cost_2015.LowSpeedShaftCost2015(**kwargs)[source]

Compute low speed shaft cost in the form of \(cost = k*mass\). Value of \(k\) was updated in 2015 to be $11.9 USD/kg. Cost includes materials and manufacturing costs.

Parameters:
  • lss_mass (float, [kg]) – component mass

  • lss_mass_cost_coeff (float, [USD/kg]) – low speed shaft mass-cost coeff

Returns:

lss_cost – Low speed shaft cost

Return type:

float, [USD]

Attributes:
checking

Return True if check_partials or check_totals is executing.

linear_solver

Get the linear solver for this system.

msginfo

Our instance pathname, if available, or our class name.

nonlinear_solver

Get the nonlinear solver for this system.

under_approx

Return True if under complex step or finite difference.

Methods

abs_name_iter(iotype[, local, cont, discrete])

Iterate over absolute variable names for this System.

convert_from_units(name, val, units)

Convert the given value from the specified units to those of the named variable.

convert_units(name, val, units_from, units_to)

Wrap the utility convert_units and give a good error message.

get_coloring_fname()

Return the full pathname to a coloring file.

get_io_metadata([iotypes, metadata_keys, ...])

Retrieve metadata for a filtered list of variables.

get_promotions([inprom, outprom])

Return all promotions for the given promoted variable(s).

get_reports_dir()

Get the path to the directory where the report files should go.

get_source(name)

Return the source variable connected to the given named variable.

get_val(name[, units, indices, get_remote, ...])

Get an output/input/residual variable.

is_explicit()

Return True if this is an explicit component.

load_model_options()

Load the relevant model options from Problem._metadata['model_options'].

set_constraint_options(name[, ref, ref0, ...])

Set options for objectives in the model.

set_design_var_options(name[, lower, upper, ...])

Set options for design vars in the model.

set_objective_options(name[, ref, ref0, ...])

Set options for objectives in the model.

set_output_solver_options(name[, lower, ...])

Set solver output options.

set_val(name, val[, units, indices])

Set an input or output variable.

setup_partials()

Declare partials.

class wisdem.nrelcsm.nrel_csm_cost_2015.BearingCost2015(**kwargs)[source]

Compute (single) main bearing cost in the form of \(cost = k*mass\). Value of \(k\) was updated in 2015 to be $4.5 USD/kg. Cost includes materials and manufacturing costs.

Parameters:
  • main_bearing_mass (float, [kg]) – component mass

  • bearing_mass_cost_coeff (float, [USD/kg]) – main bearing mass-cost coeff

Returns:

main_bearing_cost – Main bearing cost

Return type:

float, [USD]

Attributes:
checking

Return True if check_partials or check_totals is executing.

linear_solver

Get the linear solver for this system.

msginfo

Our instance pathname, if available, or our class name.

nonlinear_solver

Get the nonlinear solver for this system.

under_approx

Return True if under complex step or finite difference.

Methods

abs_name_iter(iotype[, local, cont, discrete])

Iterate over absolute variable names for this System.

convert_from_units(name, val, units)

Convert the given value from the specified units to those of the named variable.

convert_units(name, val, units_from, units_to)

Wrap the utility convert_units and give a good error message.

get_coloring_fname()

Return the full pathname to a coloring file.

get_io_metadata([iotypes, metadata_keys, ...])

Retrieve metadata for a filtered list of variables.

get_promotions([inprom, outprom])

Return all promotions for the given promoted variable(s).

get_reports_dir()

Get the path to the directory where the report files should go.

get_source(name)

Return the source variable connected to the given named variable.

get_val(name[, units, indices, get_remote, ...])

Get an output/input/residual variable.

is_explicit()

Return True if this is an explicit component.

load_model_options()

Load the relevant model options from Problem._metadata['model_options'].

set_constraint_options(name[, ref, ref0, ...])

Set options for objectives in the model.

set_design_var_options(name[, lower, upper, ...])

Set options for design vars in the model.

set_objective_options(name[, ref, ref0, ...])

Set options for objectives in the model.

set_output_solver_options(name[, lower, ...])

Set solver output options.

set_val(name, val[, units, indices])

Set an input or output variable.

setup_partials()

Declare partials.

class wisdem.nrelcsm.nrel_csm_cost_2015.GearboxCost2015(**kwargs)[source]

Compute gearbox cost in the form of \(cost = k*mass\). Value of \(k\) was updated in 2015 to be $12.9 USD/kg. Cost includes materials and manufacturing costs.

Parameters:
  • gearbox_mass (float, [kg]) – component mass

  • gearbox_torque_density (float, [N*m/kg]) – In 2024, modern 5-7MW gearboxes are able to reach 200 Nm/kg

  • gearbox_torque_cost (float, [USD/kN/m]) – In 2024, modern 5-7MW gearboxes cost approx $50/kNm

Returns:

gearbox_cost – Gearbox cost

Return type:

float, [USD]

Attributes:
checking

Return True if check_partials or check_totals is executing.

linear_solver

Get the linear solver for this system.

msginfo

Our instance pathname, if available, or our class name.

nonlinear_solver

Get the nonlinear solver for this system.

under_approx

Return True if under complex step or finite difference.

Methods

abs_name_iter(iotype[, local, cont, discrete])

Iterate over absolute variable names for this System.

convert_from_units(name, val, units)

Convert the given value from the specified units to those of the named variable.

convert_units(name, val, units_from, units_to)

Wrap the utility convert_units and give a good error message.

get_coloring_fname()

Return the full pathname to a coloring file.

get_io_metadata([iotypes, metadata_keys, ...])

Retrieve metadata for a filtered list of variables.

get_promotions([inprom, outprom])

Return all promotions for the given promoted variable(s).

get_reports_dir()

Get the path to the directory where the report files should go.

get_source(name)

Return the source variable connected to the given named variable.

get_val(name[, units, indices, get_remote, ...])

Get an output/input/residual variable.

is_explicit()

Return True if this is an explicit component.

load_model_options()

Load the relevant model options from Problem._metadata['model_options'].

set_constraint_options(name[, ref, ref0, ...])

Set options for objectives in the model.

set_design_var_options(name[, lower, upper, ...])

Set options for design vars in the model.

set_objective_options(name[, ref, ref0, ...])

Set options for objectives in the model.

set_output_solver_options(name[, lower, ...])

Set solver output options.

set_val(name, val[, units, indices])

Set an input or output variable.

setup_partials()

Declare partials.

class wisdem.nrelcsm.nrel_csm_cost_2015.BrakeCost2020(**kwargs)[source]

Compute brake cost in the form of \(cost = k*mass\). Value of \(k\) was updated in 2020 to be $3.6254 USD/kg. Cost includes materials and manufacturing costs.

Parameters:
  • brake_mass (float, [kg]) – component mass

  • brake_mass_cost_coeff (float, [USD/kg]) – brake mass-cost coeff

Returns:

brake_cost – Brake cost

Return type:

float, [USD]

Attributes:
checking

Return True if check_partials or check_totals is executing.

linear_solver

Get the linear solver for this system.

msginfo

Our instance pathname, if available, or our class name.

nonlinear_solver

Get the nonlinear solver for this system.

under_approx

Return True if under complex step or finite difference.

Methods

abs_name_iter(iotype[, local, cont, discrete])

Iterate over absolute variable names for this System.

convert_from_units(name, val, units)

Convert the given value from the specified units to those of the named variable.

convert_units(name, val, units_from, units_to)

Wrap the utility convert_units and give a good error message.

get_coloring_fname()

Return the full pathname to a coloring file.

get_io_metadata([iotypes, metadata_keys, ...])

Retrieve metadata for a filtered list of variables.

get_promotions([inprom, outprom])

Return all promotions for the given promoted variable(s).

get_reports_dir()

Get the path to the directory where the report files should go.

get_source(name)

Return the source variable connected to the given named variable.

get_val(name[, units, indices, get_remote, ...])

Get an output/input/residual variable.

is_explicit()

Return True if this is an explicit component.

load_model_options()

Load the relevant model options from Problem._metadata['model_options'].

set_constraint_options(name[, ref, ref0, ...])

Set options for objectives in the model.

set_design_var_options(name[, lower, upper, ...])

Set options for design vars in the model.

set_objective_options(name[, ref, ref0, ...])

Set options for objectives in the model.

set_output_solver_options(name[, lower, ...])

Set solver output options.

set_val(name, val[, units, indices])

Set an input or output variable.

setup_partials()

Declare partials.

class wisdem.nrelcsm.nrel_csm_cost_2015.HighSpeedShaftCost2015(**kwargs)[source]

Compute high speed shaft cost in the form of \(cost = k*mass\). Value of \(k\) was updated in 2015 to be $6.8 USD/kg. Cost includes materials and manufacturing costs.

Parameters:
  • hss_mass (float, [kg]) – component mass

  • hss_mass_cost_coeff (float, [USD/kg]) – high speed shaft mass-cost coeff

Returns:

hss_cost – High speed shaft cost

Return type:

float, [USD]

Attributes:
checking

Return True if check_partials or check_totals is executing.

linear_solver

Get the linear solver for this system.

msginfo

Our instance pathname, if available, or our class name.

nonlinear_solver

Get the nonlinear solver for this system.

under_approx

Return True if under complex step or finite difference.

Methods

abs_name_iter(iotype[, local, cont, discrete])

Iterate over absolute variable names for this System.

convert_from_units(name, val, units)

Convert the given value from the specified units to those of the named variable.

convert_units(name, val, units_from, units_to)

Wrap the utility convert_units and give a good error message.

get_coloring_fname()

Return the full pathname to a coloring file.

get_io_metadata([iotypes, metadata_keys, ...])

Retrieve metadata for a filtered list of variables.

get_promotions([inprom, outprom])

Return all promotions for the given promoted variable(s).

get_reports_dir()

Get the path to the directory where the report files should go.

get_source(name)

Return the source variable connected to the given named variable.

get_val(name[, units, indices, get_remote, ...])

Get an output/input/residual variable.

is_explicit()

Return True if this is an explicit component.

load_model_options()

Load the relevant model options from Problem._metadata['model_options'].

set_constraint_options(name[, ref, ref0, ...])

Set options for objectives in the model.

set_design_var_options(name[, lower, upper, ...])

Set options for design vars in the model.

set_objective_options(name[, ref, ref0, ...])

Set options for objectives in the model.

set_output_solver_options(name[, lower, ...])

Set solver output options.

set_val(name, val[, units, indices])

Set an input or output variable.

setup_partials()

Declare partials.

class wisdem.nrelcsm.nrel_csm_cost_2015.GeneratorCost2015(**kwargs)[source]

Compute generator cost in the form of \(cost = k*mass\). Value of \(k\) was updated in 2015 to be $12.4 USD/kg. Cost includes materials and manufacturing costs. Cost can be overridden with use of generator_cost_external

Parameters:
  • generator_mass (float, [kg]) – component mass

  • generator_mass_cost_coeff (float, [USD/kg]) – generator mass cost coeff

  • generator_cost_external (float, [USD]) – Generator cost computed by GeneratorSE

Returns:

generator_cost – Generator cost

Return type:

float, [USD]

Attributes:
checking

Return True if check_partials or check_totals is executing.

linear_solver

Get the linear solver for this system.

msginfo

Our instance pathname, if available, or our class name.

nonlinear_solver

Get the nonlinear solver for this system.

under_approx

Return True if under complex step or finite difference.

Methods

abs_name_iter(iotype[, local, cont, discrete])

Iterate over absolute variable names for this System.

convert_from_units(name, val, units)

Convert the given value from the specified units to those of the named variable.

convert_units(name, val, units_from, units_to)

Wrap the utility convert_units and give a good error message.

get_coloring_fname()

Return the full pathname to a coloring file.

get_io_metadata([iotypes, metadata_keys, ...])

Retrieve metadata for a filtered list of variables.

get_promotions([inprom, outprom])

Return all promotions for the given promoted variable(s).

get_reports_dir()

Get the path to the directory where the report files should go.

get_source(name)

Return the source variable connected to the given named variable.

get_val(name[, units, indices, get_remote, ...])

Get an output/input/residual variable.

is_explicit()

Return True if this is an explicit component.

load_model_options()

Load the relevant model options from Problem._metadata['model_options'].

set_constraint_options(name[, ref, ref0, ...])

Set options for objectives in the model.

set_design_var_options(name[, lower, upper, ...])

Set options for design vars in the model.

set_objective_options(name[, ref, ref0, ...])

Set options for objectives in the model.

set_output_solver_options(name[, lower, ...])

Set solver output options.

set_val(name, val[, units, indices])

Set an input or output variable.

setup_partials()

Declare partials.

class wisdem.nrelcsm.nrel_csm_cost_2015.BedplateCost2015(**kwargs)[source]

Compute bedplate cost in the form of \(cost = k*mass\). Value of \(k\) was updated in 2015 to be $2.9 USD/kg. Cost includes materials and manufacturing costs.

Parameters:
  • bedplate_mass (float, [kg]) – component mass

  • bedplate_mass_cost_coeff (float, [USD/kg]) – bedplate mass-cost coeff

Returns:

bedplate_cost – Bedplate cost

Return type:

float, [USD]

Attributes:
checking

Return True if check_partials or check_totals is executing.

linear_solver

Get the linear solver for this system.

msginfo

Our instance pathname, if available, or our class name.

nonlinear_solver

Get the nonlinear solver for this system.

under_approx

Return True if under complex step or finite difference.

Methods

abs_name_iter(iotype[, local, cont, discrete])

Iterate over absolute variable names for this System.

convert_from_units(name, val, units)

Convert the given value from the specified units to those of the named variable.

convert_units(name, val, units_from, units_to)

Wrap the utility convert_units and give a good error message.

get_coloring_fname()

Return the full pathname to a coloring file.

get_io_metadata([iotypes, metadata_keys, ...])

Retrieve metadata for a filtered list of variables.

get_promotions([inprom, outprom])

Return all promotions for the given promoted variable(s).

get_reports_dir()

Get the path to the directory where the report files should go.

get_source(name)

Return the source variable connected to the given named variable.

get_val(name[, units, indices, get_remote, ...])

Get an output/input/residual variable.

is_explicit()

Return True if this is an explicit component.

load_model_options()

Load the relevant model options from Problem._metadata['model_options'].

set_constraint_options(name[, ref, ref0, ...])

Set options for objectives in the model.

set_design_var_options(name[, lower, upper, ...])

Set options for design vars in the model.

set_objective_options(name[, ref, ref0, ...])

Set options for objectives in the model.

set_output_solver_options(name[, lower, ...])

Set solver output options.

set_val(name, val[, units, indices])

Set an input or output variable.

setup_partials()

Declare partials.

class wisdem.nrelcsm.nrel_csm_cost_2015.YawSystemCost2015(**kwargs)[source]

Compute yaw system cost in the form of \(cost = k*mass\). Value of \(k\) was NOT updated in 2015 and remains the same as original CSM, $8.3 USD/kg. Cost includes materials and manufacturing costs.

Parameters:
  • yaw_mass (float, [kg]) – component mass

  • yaw_mass_cost_coeff (float, [USD/kg]) – yaw system mass cost coeff

Returns:

yaw_system_cost – Yaw system cost

Return type:

float, [USD]

Attributes:
checking

Return True if check_partials or check_totals is executing.

linear_solver

Get the linear solver for this system.

msginfo

Our instance pathname, if available, or our class name.

nonlinear_solver

Get the nonlinear solver for this system.

under_approx

Return True if under complex step or finite difference.

Methods

abs_name_iter(iotype[, local, cont, discrete])

Iterate over absolute variable names for this System.

convert_from_units(name, val, units)

Convert the given value from the specified units to those of the named variable.

convert_units(name, val, units_from, units_to)

Wrap the utility convert_units and give a good error message.

get_coloring_fname()

Return the full pathname to a coloring file.

get_io_metadata([iotypes, metadata_keys, ...])

Retrieve metadata for a filtered list of variables.

get_promotions([inprom, outprom])

Return all promotions for the given promoted variable(s).

get_reports_dir()

Get the path to the directory where the report files should go.

get_source(name)

Return the source variable connected to the given named variable.

get_val(name[, units, indices, get_remote, ...])

Get an output/input/residual variable.

is_explicit()

Return True if this is an explicit component.

load_model_options()

Load the relevant model options from Problem._metadata['model_options'].

set_constraint_options(name[, ref, ref0, ...])

Set options for objectives in the model.

set_design_var_options(name[, lower, upper, ...])

Set options for design vars in the model.

set_objective_options(name[, ref, ref0, ...])

Set options for objectives in the model.

set_output_solver_options(name[, lower, ...])

Set solver output options.

set_val(name, val[, units, indices])

Set an input or output variable.

setup_partials()

Declare partials.

class wisdem.nrelcsm.nrel_csm_cost_2015.ConverterCost2015(**kwargs)[source]

Compute converter cost in the form of \(cost = k*mass\). Value of \(k\) was updated in 2015 to be $18.8 USD/kg. Cost includes materials and manufacturing costs.

Parameters:
  • converter_mass (float, [kg]) – component mass

  • converter_mass_cost_coeff (float, [USD/kg]) – variable speed electronics mass cost coeff

Returns:

converter_cost – Converter cost

Return type:

float, [USD]

Attributes:
checking

Return True if check_partials or check_totals is executing.

linear_solver

Get the linear solver for this system.

msginfo

Our instance pathname, if available, or our class name.

nonlinear_solver

Get the nonlinear solver for this system.

under_approx

Return True if under complex step or finite difference.

Methods

abs_name_iter(iotype[, local, cont, discrete])

Iterate over absolute variable names for this System.

convert_from_units(name, val, units)

Convert the given value from the specified units to those of the named variable.

convert_units(name, val, units_from, units_to)

Wrap the utility convert_units and give a good error message.

get_coloring_fname()

Return the full pathname to a coloring file.

get_io_metadata([iotypes, metadata_keys, ...])

Retrieve metadata for a filtered list of variables.

get_promotions([inprom, outprom])

Return all promotions for the given promoted variable(s).

get_reports_dir()

Get the path to the directory where the report files should go.

get_source(name)

Return the source variable connected to the given named variable.

get_val(name[, units, indices, get_remote, ...])

Get an output/input/residual variable.

is_explicit()

Return True if this is an explicit component.

load_model_options()

Load the relevant model options from Problem._metadata['model_options'].

set_constraint_options(name[, ref, ref0, ...])

Set options for objectives in the model.

set_design_var_options(name[, lower, upper, ...])

Set options for design vars in the model.

set_objective_options(name[, ref, ref0, ...])

Set options for objectives in the model.

set_output_solver_options(name[, lower, ...])

Set solver output options.

set_val(name, val[, units, indices])

Set an input or output variable.

setup_partials()

Declare partials.

class wisdem.nrelcsm.nrel_csm_cost_2015.HydraulicCoolingCost2015(**kwargs)[source]

Compute hydraulic cooling cost in the form of \(cost = k*mass\). Value of \(k\) was NOT updated in 2015 and remains the same as original CSM, $124.0 USD/kg. Cost includes materials and manufacturing costs.

Parameters:
  • hvac_mass (float, [kg]) – component mass

  • hvac_mass_cost_coeff (float, [USD/kg]) – hydraulic and cooling system mass cost coeff

Returns:

hvac_cost – HVAC cost

Return type:

float, [USD]

Attributes:
checking

Return True if check_partials or check_totals is executing.

linear_solver

Get the linear solver for this system.

msginfo

Our instance pathname, if available, or our class name.

nonlinear_solver

Get the nonlinear solver for this system.

under_approx

Return True if under complex step or finite difference.

Methods

abs_name_iter(iotype[, local, cont, discrete])

Iterate over absolute variable names for this System.

convert_from_units(name, val, units)

Convert the given value from the specified units to those of the named variable.

convert_units(name, val, units_from, units_to)

Wrap the utility convert_units and give a good error message.

get_coloring_fname()

Return the full pathname to a coloring file.

get_io_metadata([iotypes, metadata_keys, ...])

Retrieve metadata for a filtered list of variables.

get_promotions([inprom, outprom])

Return all promotions for the given promoted variable(s).

get_reports_dir()

Get the path to the directory where the report files should go.

get_source(name)

Return the source variable connected to the given named variable.

get_val(name[, units, indices, get_remote, ...])

Get an output/input/residual variable.

is_explicit()

Return True if this is an explicit component.

load_model_options()

Load the relevant model options from Problem._metadata['model_options'].

set_constraint_options(name[, ref, ref0, ...])

Set options for objectives in the model.

set_design_var_options(name[, lower, upper, ...])

Set options for design vars in the model.

set_objective_options(name[, ref, ref0, ...])

Set options for objectives in the model.

set_output_solver_options(name[, lower, ...])

Set solver output options.

set_val(name, val[, units, indices])

Set an input or output variable.

setup_partials()

Declare partials.

class wisdem.nrelcsm.nrel_csm_cost_2015.NacelleCoverCost2015(**kwargs)[source]

Compute nacelle cover cost in the form of \(cost = k*mass\). Value of \(k\) was NOT updated in 2015 and remains the same as original CSM, $5.7 USD/kg. Cost includes materials and manufacturing costs.

Parameters:
  • cover_mass (float, [kg]) – component mass

  • cover_mass_cost_coeff (float, [USD/kg]) – nacelle cover mass cost coeff

Returns:

cover_cost – Cover cost

Return type:

float, [USD]

Attributes:
checking

Return True if check_partials or check_totals is executing.

linear_solver

Get the linear solver for this system.

msginfo

Our instance pathname, if available, or our class name.

nonlinear_solver

Get the nonlinear solver for this system.

under_approx

Return True if under complex step or finite difference.

Methods

abs_name_iter(iotype[, local, cont, discrete])

Iterate over absolute variable names for this System.

convert_from_units(name, val, units)

Convert the given value from the specified units to those of the named variable.

convert_units(name, val, units_from, units_to)

Wrap the utility convert_units and give a good error message.

get_coloring_fname()

Return the full pathname to a coloring file.

get_io_metadata([iotypes, metadata_keys, ...])

Retrieve metadata for a filtered list of variables.

get_promotions([inprom, outprom])

Return all promotions for the given promoted variable(s).

get_reports_dir()

Get the path to the directory where the report files should go.

get_source(name)

Return the source variable connected to the given named variable.

get_val(name[, units, indices, get_remote, ...])

Get an output/input/residual variable.

is_explicit()

Return True if this is an explicit component.

load_model_options()

Load the relevant model options from Problem._metadata['model_options'].

set_constraint_options(name[, ref, ref0, ...])

Set options for objectives in the model.

set_design_var_options(name[, lower, upper, ...])

Set options for design vars in the model.

set_objective_options(name[, ref, ref0, ...])

Set options for objectives in the model.

set_output_solver_options(name[, lower, ...])

Set solver output options.

set_val(name, val[, units, indices])

Set an input or output variable.

setup_partials()

Declare partials.

class wisdem.nrelcsm.nrel_csm_cost_2015.ElecConnecCost2015(**kwargs)[source]

Compute electrical connection cost in the form of \(cost = k*rating\). Value of \(k\) was NOT updated in 2015 and remains the same as original CSM, $41.85 USD/kg. Cost includes materials and manufacturing costs.

Parameters:
  • machine_rating (float) – machine rating

  • elec_connec_machine_rating_cost_coeff (float, [USD/kg]) – electrical connections cost coefficient per kW

Returns:

elec_cost – Electrical connection costs

Return type:

float, [USD]

Attributes:
checking

Return True if check_partials or check_totals is executing.

linear_solver

Get the linear solver for this system.

msginfo

Our instance pathname, if available, or our class name.

nonlinear_solver

Get the nonlinear solver for this system.

under_approx

Return True if under complex step or finite difference.

Methods

abs_name_iter(iotype[, local, cont, discrete])

Iterate over absolute variable names for this System.

convert_from_units(name, val, units)

Convert the given value from the specified units to those of the named variable.

convert_units(name, val, units_from, units_to)

Wrap the utility convert_units and give a good error message.

get_coloring_fname()

Return the full pathname to a coloring file.

get_io_metadata([iotypes, metadata_keys, ...])

Retrieve metadata for a filtered list of variables.

get_promotions([inprom, outprom])

Return all promotions for the given promoted variable(s).

get_reports_dir()

Get the path to the directory where the report files should go.

get_source(name)

Return the source variable connected to the given named variable.

get_val(name[, units, indices, get_remote, ...])

Get an output/input/residual variable.

is_explicit()

Return True if this is an explicit component.

load_model_options()

Load the relevant model options from Problem._metadata['model_options'].

set_constraint_options(name[, ref, ref0, ...])

Set options for objectives in the model.

set_design_var_options(name[, lower, upper, ...])

Set options for design vars in the model.

set_objective_options(name[, ref, ref0, ...])

Set options for objectives in the model.

set_output_solver_options(name[, lower, ...])

Set solver output options.

set_val(name, val[, units, indices])

Set an input or output variable.

setup_partials()

Declare partials.

class wisdem.nrelcsm.nrel_csm_cost_2015.ControlsCost2015(**kwargs)[source]

Compute controls cost in the form of \(cost = k*rating\). Value of \(k\) was NOT updated in 2015 and remains the same as original CSM, $21.15 USD/kg. Cost includes materials and manufacturing costs.

Parameters:
  • machine_rating (float) – machine rating

  • controls_machine_rating_cost_coeff (float, [USD/kg]) – controls cost coefficient per kW

Returns:

controls_cost – Controls cost

Return type:

float, [USD]

Attributes:
checking

Return True if check_partials or check_totals is executing.

linear_solver

Get the linear solver for this system.

msginfo

Our instance pathname, if available, or our class name.

nonlinear_solver

Get the nonlinear solver for this system.

under_approx

Return True if under complex step or finite difference.

Methods

abs_name_iter(iotype[, local, cont, discrete])

Iterate over absolute variable names for this System.

convert_from_units(name, val, units)

Convert the given value from the specified units to those of the named variable.

convert_units(name, val, units_from, units_to)

Wrap the utility convert_units and give a good error message.

get_coloring_fname()

Return the full pathname to a coloring file.

get_io_metadata([iotypes, metadata_keys, ...])

Retrieve metadata for a filtered list of variables.

get_promotions([inprom, outprom])

Return all promotions for the given promoted variable(s).

get_reports_dir()

Get the path to the directory where the report files should go.

get_source(name)

Return the source variable connected to the given named variable.

get_val(name[, units, indices, get_remote, ...])

Get an output/input/residual variable.

is_explicit()

Return True if this is an explicit component.

load_model_options()

Load the relevant model options from Problem._metadata['model_options'].

set_constraint_options(name[, ref, ref0, ...])

Set options for objectives in the model.

set_design_var_options(name[, lower, upper, ...])

Set options for design vars in the model.

set_objective_options(name[, ref, ref0, ...])

Set options for objectives in the model.

set_output_solver_options(name[, lower, ...])

Set solver output options.

set_val(name, val[, units, indices])

Set an input or output variable.

setup_partials()

Declare partials.

class wisdem.nrelcsm.nrel_csm_cost_2015.PlatformsMainframeCost2015(**kwargs)[source]

Compute platforms cost in the form of \(cost = k*mass\). Value of \(k\) was NOT updated in 2015 and remains the same as original CSM, $17.1 USD/kg. Cost includes materials and manufacturing costs.

Parameters:
  • platforms_mass (float, [kg]) – component mass

  • platforms_mass_cost_coeff (float, [USD/kg]) – nacelle platforms mass cost coeff

  • crane (boolean) – flag for presence of onboard crane

  • crane_cost (float, [USD]) – crane cost if present

Returns:

platforms_cost – Platforms cost

Return type:

float, [USD]

Attributes:
checking

Return True if check_partials or check_totals is executing.

linear_solver

Get the linear solver for this system.

msginfo

Our instance pathname, if available, or our class name.

nonlinear_solver

Get the nonlinear solver for this system.

under_approx

Return True if under complex step or finite difference.

Methods

abs_name_iter(iotype[, local, cont, discrete])

Iterate over absolute variable names for this System.

convert_from_units(name, val, units)

Convert the given value from the specified units to those of the named variable.

convert_units(name, val, units_from, units_to)

Wrap the utility convert_units and give a good error message.

get_coloring_fname()

Return the full pathname to a coloring file.

get_io_metadata([iotypes, metadata_keys, ...])

Retrieve metadata for a filtered list of variables.

get_promotions([inprom, outprom])

Return all promotions for the given promoted variable(s).

get_reports_dir()

Get the path to the directory where the report files should go.

get_source(name)

Return the source variable connected to the given named variable.

get_val(name[, units, indices, get_remote, ...])

Get an output/input/residual variable.

is_explicit()

Return True if this is an explicit component.

load_model_options()

Load the relevant model options from Problem._metadata['model_options'].

set_constraint_options(name[, ref, ref0, ...])

Set options for objectives in the model.

set_design_var_options(name[, lower, upper, ...])

Set options for design vars in the model.

set_objective_options(name[, ref, ref0, ...])

Set options for objectives in the model.

set_output_solver_options(name[, lower, ...])

Set solver output options.

set_val(name, val[, units, indices])

Set an input or output variable.

setup_partials()

Declare partials.

class wisdem.nrelcsm.nrel_csm_cost_2015.TransformerCost2015(**kwargs)[source]

Compute transformer cost in the form of \(cost = k*mass\). Value of \(k\) was updated in 2015 to be $18.8 USD/kg. Cost includes materials and manufacturing costs.

Parameters:
  • transformer_mass (float, [kg]) – component mass

  • transformer_mass_cost_coeff (float, [USD/kg]) – transformer mass cost coeff

Returns:

transformer_cost – Transformer cost

Return type:

float, [USD]

Attributes:
checking

Return True if check_partials or check_totals is executing.

linear_solver

Get the linear solver for this system.

msginfo

Our instance pathname, if available, or our class name.

nonlinear_solver

Get the nonlinear solver for this system.

under_approx

Return True if under complex step or finite difference.

Methods

abs_name_iter(iotype[, local, cont, discrete])

Iterate over absolute variable names for this System.

convert_from_units(name, val, units)

Convert the given value from the specified units to those of the named variable.

convert_units(name, val, units_from, units_to)

Wrap the utility convert_units and give a good error message.

get_coloring_fname()

Return the full pathname to a coloring file.

get_io_metadata([iotypes, metadata_keys, ...])

Retrieve metadata for a filtered list of variables.

get_promotions([inprom, outprom])

Return all promotions for the given promoted variable(s).

get_reports_dir()

Get the path to the directory where the report files should go.

get_source(name)

Return the source variable connected to the given named variable.

get_val(name[, units, indices, get_remote, ...])

Get an output/input/residual variable.

is_explicit()

Return True if this is an explicit component.

load_model_options()

Load the relevant model options from Problem._metadata['model_options'].

set_constraint_options(name[, ref, ref0, ...])

Set options for objectives in the model.

set_design_var_options(name[, lower, upper, ...])

Set options for design vars in the model.

set_objective_options(name[, ref, ref0, ...])

Set options for objectives in the model.

set_output_solver_options(name[, lower, ...])

Set solver output options.

set_val(name, val[, units, indices])

Set an input or output variable.

setup_partials()

Declare partials.

class wisdem.nrelcsm.nrel_csm_cost_2015.NacelleSystemCostAdder2015(**kwargs)[source]

Aggregates the nacelle system costs into a single component that is transported to the project site and could therefore incur additional costs. Cost multipliers are of the form, \(c_{nacellesys} = (1+kt_{nacelle}+kp_{nacelle}) (1+ko_{nacelle}+ka_{nacelle}) c_{nacelle}\)

Where conceptually, \(kt\) is a transportation multiplier, \(kp\) is a profit multiplier, \(ko\) is an overhead cost multiplier, and \(ka\) is an assembly cost multiplier

By default, \(kt=kp=ko=ka=0\).

Parameters:
  • lss_cost (float, [USD]) – Component cost

  • lss_mass (float, [kg]) – Component mass

  • main_bearing_cost (float, [USD]) – Component cost

  • main_bearing_mass (float, [kg]) – Component mass

  • gearbox_cost (float, [USD]) – Component cost

  • gearbox_mass (float, [kg]) – Component mass

  • brake_cost (float, [USD]) – Component cost

  • brake_mass (float, [kg]) – Component mass

  • hss_cost (float, [USD]) – Component cost

  • hss_mass (float, [kg]) – Component mass

  • generator_cost (float, [USD]) – Component cost

  • generator_mass (float, [kg]) – Component mass

  • bedplate_cost (float, [USD]) – Component cost

  • bedplate_mass (float, [kg]) – Component mass

  • yaw_system_cost (float, [USD]) – Component cost

  • yaw_mass (float, [kg]) – Component mass

  • converter_cost (float, [USD]) – Component cost

  • converter_mass (float, [kg]) – Component mass

  • hvac_cost (float, [USD]) – Component cost

  • hvac_mass (float, [kg]) – Component mass

  • cover_cost (float, [USD]) – Component cost

  • cover_mass (float, [kg]) – Component mass

  • elec_cost (float, [USD]) – Component cost

  • controls_cost (float, [USD]) – Component cost

  • platforms_mass (float, [kg]) – Component cost

  • platforms_cost (float, [USD]) – Component cost

  • transformer_cost (float, [USD]) – Component cost

  • transformer_mass (float, [kg]) – Component mass

  • main_bearing_number (int) – number of bearings

  • nacelle_assemblyCostMultiplier (float) – nacelle assembly cost multiplier

  • nacelle_overheadCostMultiplier (float) – nacelle overhead cost multiplier

  • nacelle_profitMultiplier (float) – nacelle profit multiplier

  • nacelle_transportMultiplier (float) – nacelle transport multiplier

Returns:

  • nacelle_cost (float, [USD]) – component cost

  • nacelle_mass_tcc (float) – Nacelle mass, with all nacelle components, without the rotor

Attributes:
checking

Return True if check_partials or check_totals is executing.

linear_solver

Get the linear solver for this system.

msginfo

Our instance pathname, if available, or our class name.

nonlinear_solver

Get the nonlinear solver for this system.

under_approx

Return True if under complex step or finite difference.

Methods

abs_name_iter(iotype[, local, cont, discrete])

Iterate over absolute variable names for this System.

convert_from_units(name, val, units)

Convert the given value from the specified units to those of the named variable.

convert_units(name, val, units_from, units_to)

Wrap the utility convert_units and give a good error message.

get_coloring_fname()

Return the full pathname to a coloring file.

get_io_metadata([iotypes, metadata_keys, ...])

Retrieve metadata for a filtered list of variables.

get_promotions([inprom, outprom])

Return all promotions for the given promoted variable(s).

get_reports_dir()

Get the path to the directory where the report files should go.

get_source(name)

Return the source variable connected to the given named variable.

get_val(name[, units, indices, get_remote, ...])

Get an output/input/residual variable.

is_explicit()

Return True if this is an explicit component.

load_model_options()

Load the relevant model options from Problem._metadata['model_options'].

set_constraint_options(name[, ref, ref0, ...])

Set options for objectives in the model.

set_design_var_options(name[, lower, upper, ...])

Set options for design vars in the model.

set_objective_options(name[, ref, ref0, ...])

Set options for objectives in the model.

set_output_solver_options(name[, lower, ...])

Set solver output options.

set_val(name, val[, units, indices])

Set an input or output variable.

setup_partials()

Declare partials.

class wisdem.nrelcsm.nrel_csm_cost_2015.TowerCost2015(**kwargs)[source]

Compute tower cost in the form of \(cost = k*mass\). Value of \(k\) was updated in 2015 to be $2.9 USD/kg. Cost includes materials and manufacturing costs. Cost can be overridden with use of tower_cost_external

Parameters:
  • tower_mass (float, [kg]) – tower mass

  • tower_mass_cost_coeff (float, [USD/kg]) – tower mass-cost coeff

  • tower_cost_external (float) – Tower cost computed by TowerSE

Returns:

tower_parts_cost – Tower parts cost

Return type:

float, [USD]

Attributes:
checking

Return True if check_partials or check_totals is executing.

linear_solver

Get the linear solver for this system.

msginfo

Our instance pathname, if available, or our class name.

nonlinear_solver

Get the nonlinear solver for this system.

under_approx

Return True if under complex step or finite difference.

Methods

abs_name_iter(iotype[, local, cont, discrete])

Iterate over absolute variable names for this System.

convert_from_units(name, val, units)

Convert the given value from the specified units to those of the named variable.

convert_units(name, val, units_from, units_to)

Wrap the utility convert_units and give a good error message.

get_coloring_fname()

Return the full pathname to a coloring file.

get_io_metadata([iotypes, metadata_keys, ...])

Retrieve metadata for a filtered list of variables.

get_promotions([inprom, outprom])

Return all promotions for the given promoted variable(s).

get_reports_dir()

Get the path to the directory where the report files should go.

get_source(name)

Return the source variable connected to the given named variable.

get_val(name[, units, indices, get_remote, ...])

Get an output/input/residual variable.

is_explicit()

Return True if this is an explicit component.

load_model_options()

Load the relevant model options from Problem._metadata['model_options'].

set_constraint_options(name[, ref, ref0, ...])

Set options for objectives in the model.

set_design_var_options(name[, lower, upper, ...])

Set options for design vars in the model.

set_objective_options(name[, ref, ref0, ...])

Set options for objectives in the model.

set_output_solver_options(name[, lower, ...])

Set solver output options.

set_val(name, val[, units, indices])

Set an input or output variable.

setup_partials()

Declare partials.

class wisdem.nrelcsm.nrel_csm_cost_2015.TowerCostAdder2015(**kwargs)[source]

The tower is not aggregated with any other component, but for consistency there are allowances for additional costs incurred from transportation and assembly complexity, \(c_{towersys} = (1+kt_{tower}+kp_{tower}) (1+ko_{tower}+ka_{tower}) c_{tower}\)

Where conceptually, \(kt\) is a transportation multiplier, \(kp\) is a profit multiplier, \(ko\) is an overhead cost multiplier, and \(ka\) is an assembly cost multiplier

By default, \(kt=kp=ko=ka=0\).

Parameters:
  • tower_parts_cost (float, [USD]) – component cost

  • tower_assemblyCostMultiplier (float) – tower assembly cost multiplier

  • tower_overheadCostMultiplier (float) – tower overhead cost multiplier

  • tower_profitMultiplier (float) – tower profit cost multiplier

  • tower_transportMultiplier (float) – tower transport cost multiplier

Returns:

tower_cost – tower cost

Return type:

float, [USD]

Attributes:
checking

Return True if check_partials or check_totals is executing.

linear_solver

Get the linear solver for this system.

msginfo

Our instance pathname, if available, or our class name.

nonlinear_solver

Get the nonlinear solver for this system.

under_approx

Return True if under complex step or finite difference.

Methods

abs_name_iter(iotype[, local, cont, discrete])

Iterate over absolute variable names for this System.

convert_from_units(name, val, units)

Convert the given value from the specified units to those of the named variable.

convert_units(name, val, units_from, units_to)

Wrap the utility convert_units and give a good error message.

get_coloring_fname()

Return the full pathname to a coloring file.

get_io_metadata([iotypes, metadata_keys, ...])

Retrieve metadata for a filtered list of variables.

get_promotions([inprom, outprom])

Return all promotions for the given promoted variable(s).

get_reports_dir()

Get the path to the directory where the report files should go.

get_source(name)

Return the source variable connected to the given named variable.

get_val(name[, units, indices, get_remote, ...])

Get an output/input/residual variable.

is_explicit()

Return True if this is an explicit component.

load_model_options()

Load the relevant model options from Problem._metadata['model_options'].

set_constraint_options(name[, ref, ref0, ...])

Set options for objectives in the model.

set_design_var_options(name[, lower, upper, ...])

Set options for design vars in the model.

set_objective_options(name[, ref, ref0, ...])

Set options for objectives in the model.

set_output_solver_options(name[, lower, ...])

Set solver output options.

set_val(name, val[, units, indices])

Set an input or output variable.

setup_partials()

Declare partials.

class wisdem.nrelcsm.nrel_csm_cost_2015.TurbineCostAdder2015(**kwargs)[source]

Aggregates the turbine system costs into a single value with allowances for additional costs incurred from transportation and assembly complexity. Costs are reported per kW. Cost multipliers are of the form, \(c_{turbine} = (1+kt_{turbine}+kp_{turbine}) (1+ko_{turbine}+ka_{turbine}) (c_{rotor} + c_{nacelle} + c_{tower})\)

Where conceptually, \(kt\) is a transportation multiplier, \(kp\) is a profit multiplier, \(ko\) is an overhead cost multiplier, and \(ka\) is an assembly cost multiplier

By default, \(kt=kp=ko=ka=0\).

Parameters:
  • rotor_cost (float, [USD]) – Rotor cost

  • rotor_mass_tcc (float) – Rotor mass

  • nacelle_cost (float, [USD]) – Nacelle cost

  • nacelle_mass_tcc (float) – Nacelle mass

  • tower_cost (float, [USD]) – Tower cost

  • tower_mass (float, [kg]) – Tower mass

  • machine_rating (float) – Machine rating

  • turbine_assemblyCostMultiplier (float) – Turbine multiplier for assembly cost in manufacturing

  • turbine_overheadCostMultiplier (float) – Turbine multiplier for overhead

  • turbine_profitMultiplier (float) – Turbine multiplier for profit markup

  • turbine_transportMultiplier (float) – Turbine multiplier for transport costs

Returns:

  • turbine_mass_tcc (float) – Turbine total mass, without foundation

  • turbine_cost (float, [USD]) – Overall wind turbine capital costs including transportation costs

  • turbine_cost_kW (float) – Overall wind turbine capial costs including transportation costs

Attributes:
checking

Return True if check_partials or check_totals is executing.

linear_solver

Get the linear solver for this system.

msginfo

Our instance pathname, if available, or our class name.

nonlinear_solver

Get the nonlinear solver for this system.

under_approx

Return True if under complex step or finite difference.

Methods

abs_name_iter(iotype[, local, cont, discrete])

Iterate over absolute variable names for this System.

convert_from_units(name, val, units)

Convert the given value from the specified units to those of the named variable.

convert_units(name, val, units_from, units_to)

Wrap the utility convert_units and give a good error message.

get_coloring_fname()

Return the full pathname to a coloring file.

get_io_metadata([iotypes, metadata_keys, ...])

Retrieve metadata for a filtered list of variables.

get_promotions([inprom, outprom])

Return all promotions for the given promoted variable(s).

get_reports_dir()

Get the path to the directory where the report files should go.

get_source(name)

Return the source variable connected to the given named variable.

get_val(name[, units, indices, get_remote, ...])

Get an output/input/residual variable.

is_explicit()

Return True if this is an explicit component.

load_model_options()

Load the relevant model options from Problem._metadata['model_options'].

set_constraint_options(name[, ref, ref0, ...])

Set options for objectives in the model.

set_design_var_options(name[, lower, upper, ...])

Set options for design vars in the model.

set_objective_options(name[, ref, ref0, ...])

Set options for objectives in the model.

set_output_solver_options(name[, lower, ...])

Set solver output options.

set_val(name, val[, units, indices])

Set an input or output variable.

setup_partials()

Declare partials.