hydesign.nrelcsm.nrel_csm_mass_2015
Copyright (c) NREL. All rights reserved.
Classes
Compute blade mass of the form \(mass = k*diameter^b\). |
|
Compute hub mass in the form of \(mass = k*m_{blade} + b\). |
|
Compute pitch bearing mass in the form of \(m_{bearing} = k*m_{blade}*nblade + b1\). |
|
Compute spinner (nose cone) mass in the form of \(mass = k*diameter + b\). |
|
Compute low speed shaft mass in the form of \(mass = k*(m_{blade}*power)^b1 + b2\). |
|
Compute main bearing mass (single bearing) in the form of \(mass = k*diameter^b\). |
|
Computed rated rpm and rotor torque from rated power, rotor diameter, max tip speed, and drivetrain efficiency. |
|
Compute gearbox mass in the form of \(mass = k*torque^b\). |
|
Compute brake mass in the form of \(mass = k*torque\). |
|
Compute high speed shaft mass in the form of \(mass = k*power\). |
|
Compute generator mass in the form of \(mass = k*power + b\). |
|
Compute bedplate mass in the form of \(mass = diameter^b\). |
|
Compute yaw system mass in the form of \(mass = k*diameter^b\). |
|
Compute hydraulic cooling mass in the form of \(mass = k*power\). |
|
Compute nacelle cover mass in the form of \(mass = k*power + b\). |
|
Compute platforms mass in the form of \(mass = k*m_{bedplate}\) and |
|
Compute transformer mass in the form of \(mass = k*power + b\). |
|
Compute tower mass in the form of \(mass = k*H_{hub}^b\). |
|
Aggregates all components masses into category labels of hub system, rotor, nacelle, and tower. |
|
Class used to group systems together; instantiate or inherit. |
|
Class used to group systems together; instantiate or inherit. |
Module Contents
- class hydesign.nrelcsm.nrel_csm_mass_2015.BladeMass(**kwargs)[source]
Bases:
openmdao.api.ExplicitComponent
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]
- compute(inputs, outputs, discrete_inputs, discrete_outputs)[source]
Compute outputs given inputs. The model is assumed to be in an unscaled state.
An inherited component may choose to either override this function or to define a compute_primal function.
- Parameters:
inputs (Vector) – Unscaled, dimensional input variables read via inputs[key].
outputs (Vector) – Unscaled, dimensional output variables read via outputs[key].
discrete_inputs (dict-like or None) – If not None, dict-like object containing discrete input values.
discrete_outputs (dict-like or None) – If not None, dict-like object containing discrete output values.
- class hydesign.nrelcsm.nrel_csm_mass_2015.HubMass(**kwargs)[source]
Bases:
openmdao.api.ExplicitComponent
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:
- Returns:
hub_mass – component mass
- Return type:
float, [kg]
- compute(inputs, outputs)[source]
Compute outputs given inputs. The model is assumed to be in an unscaled state.
An inherited component may choose to either override this function or to define a compute_primal function.
- Parameters:
inputs (Vector) – Unscaled, dimensional input variables read via inputs[key].
outputs (Vector) – Unscaled, dimensional output variables read via outputs[key].
discrete_inputs (dict-like or None) – If not None, dict-like object containing discrete input values.
discrete_outputs (dict-like or None) – If not None, dict-like object containing discrete output values.
- class hydesign.nrelcsm.nrel_csm_mass_2015.PitchSystemMass(**kwargs)[source]
Bases:
openmdao.api.ExplicitComponent
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]
- compute(inputs, outputs, discrete_inputs, discrete_outputs)[source]
Compute outputs given inputs. The model is assumed to be in an unscaled state.
An inherited component may choose to either override this function or to define a compute_primal function.
- Parameters:
inputs (Vector) – Unscaled, dimensional input variables read via inputs[key].
outputs (Vector) – Unscaled, dimensional output variables read via outputs[key].
discrete_inputs (dict-like or None) – If not None, dict-like object containing discrete input values.
discrete_outputs (dict-like or None) – If not None, dict-like object containing discrete output values.
- class hydesign.nrelcsm.nrel_csm_mass_2015.SpinnerMass(**kwargs)[source]
Bases:
openmdao.api.ExplicitComponent
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:
- Returns:
spinner_mass – component mass
- Return type:
float, [kg]
- compute(inputs, outputs)[source]
Compute outputs given inputs. The model is assumed to be in an unscaled state.
An inherited component may choose to either override this function or to define a compute_primal function.
- Parameters:
inputs (Vector) – Unscaled, dimensional input variables read via inputs[key].
outputs (Vector) – Unscaled, dimensional output variables read via outputs[key].
discrete_inputs (dict-like or None) – If not None, dict-like object containing discrete input values.
discrete_outputs (dict-like or None) – If not None, dict-like object containing discrete output values.
- class hydesign.nrelcsm.nrel_csm_mass_2015.LowSpeedShaftMass(**kwargs)[source]
Bases:
openmdao.api.ExplicitComponent
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]
- compute(inputs, outputs)[source]
Compute outputs given inputs. The model is assumed to be in an unscaled state.
An inherited component may choose to either override this function or to define a compute_primal function.
- Parameters:
inputs (Vector) – Unscaled, dimensional input variables read via inputs[key].
outputs (Vector) – Unscaled, dimensional output variables read via outputs[key].
discrete_inputs (dict-like or None) – If not None, dict-like object containing discrete input values.
discrete_outputs (dict-like or None) – If not None, dict-like object containing discrete output values.
- class hydesign.nrelcsm.nrel_csm_mass_2015.BearingMass(**kwargs)[source]
Bases:
openmdao.api.ExplicitComponent
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:
- Returns:
main_bearing_mass – component mass
- Return type:
float, [kg]
- compute(inputs, outputs)[source]
Compute outputs given inputs. The model is assumed to be in an unscaled state.
An inherited component may choose to either override this function or to define a compute_primal function.
- Parameters:
inputs (Vector) – Unscaled, dimensional input variables read via inputs[key].
outputs (Vector) – Unscaled, dimensional output variables read via outputs[key].
discrete_inputs (dict-like or None) – If not None, dict-like object containing discrete input values.
discrete_outputs (dict-like or None) – If not None, dict-like object containing discrete output values.
- class hydesign.nrelcsm.nrel_csm_mass_2015.RotorTorque(**kwargs)[source]
Bases:
openmdao.api.ExplicitComponent
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:
- Returns:
rated_rpm (float, [rpm]) – rpm of rotor at rated power
rotor_torque (float, [N*m]) – torque from rotor at rated power
- compute(inputs, outputs)[source]
Compute outputs given inputs. The model is assumed to be in an unscaled state.
An inherited component may choose to either override this function or to define a compute_primal function.
- Parameters:
inputs (Vector) – Unscaled, dimensional input variables read via inputs[key].
outputs (Vector) – Unscaled, dimensional output variables read via outputs[key].
discrete_inputs (dict-like or None) – If not None, dict-like object containing discrete input values.
discrete_outputs (dict-like or None) – If not None, dict-like object containing discrete output values.
- class hydesign.nrelcsm.nrel_csm_mass_2015.GearboxMass(**kwargs)[source]
Bases:
openmdao.api.ExplicitComponent
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:
- Returns:
gearbox_mass – component mass
- Return type:
float, [kg]
- compute(inputs, outputs)[source]
Compute outputs given inputs. The model is assumed to be in an unscaled state.
An inherited component may choose to either override this function or to define a compute_primal function.
- Parameters:
inputs (Vector) – Unscaled, dimensional input variables read via inputs[key].
outputs (Vector) – Unscaled, dimensional output variables read via outputs[key].
discrete_inputs (dict-like or None) – If not None, dict-like object containing discrete input values.
discrete_outputs (dict-like or None) – If not None, dict-like object containing discrete output values.
- class hydesign.nrelcsm.nrel_csm_mass_2015.BrakeMass(**kwargs)[source]
Bases:
openmdao.api.ExplicitComponent
Compute brake mass in the form of \(mass = k*torque\). Value of \(k\) was updated in 2020 to be 0.00122.
- Parameters:
- Returns:
brake_mass – overall component mass
- Return type:
float, [kg]
- compute(inputs, outputs)[source]
Compute outputs given inputs. The model is assumed to be in an unscaled state.
An inherited component may choose to either override this function or to define a compute_primal function.
- Parameters:
inputs (Vector) – Unscaled, dimensional input variables read via inputs[key].
outputs (Vector) – Unscaled, dimensional output variables read via outputs[key].
discrete_inputs (dict-like or None) – If not None, dict-like object containing discrete input values.
discrete_outputs (dict-like or None) – If not None, dict-like object containing discrete output values.
- class hydesign.nrelcsm.nrel_csm_mass_2015.HighSpeedShaftMass(**kwargs)[source]
Bases:
openmdao.api.ExplicitComponent
Compute high speed shaft mass in the form of \(mass = k*power\). Value of \(k\) was updated in 2015 to be 0.19894.
- Parameters:
- Returns:
hss_mass – component mass
- Return type:
float, [kg]
- compute(inputs, outputs)[source]
Compute outputs given inputs. The model is assumed to be in an unscaled state.
An inherited component may choose to either override this function or to define a compute_primal function.
- Parameters:
inputs (Vector) – Unscaled, dimensional input variables read via inputs[key].
outputs (Vector) – Unscaled, dimensional output variables read via outputs[key].
discrete_inputs (dict-like or None) – If not None, dict-like object containing discrete input values.
discrete_outputs (dict-like or None) – If not None, dict-like object containing discrete output values.
- class hydesign.nrelcsm.nrel_csm_mass_2015.GeneratorMass(**kwargs)[source]
Bases:
openmdao.api.ExplicitComponent
Compute generator mass in the form of \(mass = k*power + b\). Value of \(k\) was updated in 2015 to be 2300. Value of \(b\) was updated in 2015 to be 3400.
- Parameters:
- Returns:
generator_mass – component mass
- Return type:
float, [kg]
- compute(inputs, outputs)[source]
Compute outputs given inputs. The model is assumed to be in an unscaled state.
An inherited component may choose to either override this function or to define a compute_primal function.
- Parameters:
inputs (Vector) – Unscaled, dimensional input variables read via inputs[key].
outputs (Vector) – Unscaled, dimensional output variables read via outputs[key].
discrete_inputs (dict-like or None) – If not None, dict-like object containing discrete input values.
discrete_outputs (dict-like or None) – If not None, dict-like object containing discrete output values.
- class hydesign.nrelcsm.nrel_csm_mass_2015.BedplateMass(**kwargs)[source]
Bases:
openmdao.api.ExplicitComponent
Compute bedplate mass in the form of \(mass = diameter^b\). Value of \(b\) was updated in 2015 to be 2.2.
- Parameters:
- Returns:
bedplate_mass – component mass
- Return type:
float, [kg]
- compute(inputs, outputs)[source]
Compute outputs given inputs. The model is assumed to be in an unscaled state.
An inherited component may choose to either override this function or to define a compute_primal function.
- Parameters:
inputs (Vector) – Unscaled, dimensional input variables read via inputs[key].
outputs (Vector) – Unscaled, dimensional output variables read via outputs[key].
discrete_inputs (dict-like or None) – If not None, dict-like object containing discrete input values.
discrete_outputs (dict-like or None) – If not None, dict-like object containing discrete output values.
- class hydesign.nrelcsm.nrel_csm_mass_2015.YawSystemMass(**kwargs)[source]
Bases:
openmdao.api.ExplicitComponent
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:
- Returns:
yaw_mass – component mass
- Return type:
float, [kg]
- compute(inputs, outputs)[source]
Compute outputs given inputs. The model is assumed to be in an unscaled state.
An inherited component may choose to either override this function or to define a compute_primal function.
- Parameters:
inputs (Vector) – Unscaled, dimensional input variables read via inputs[key].
outputs (Vector) – Unscaled, dimensional output variables read via outputs[key].
discrete_inputs (dict-like or None) – If not None, dict-like object containing discrete input values.
discrete_outputs (dict-like or None) – If not None, dict-like object containing discrete output values.
- class hydesign.nrelcsm.nrel_csm_mass_2015.HydraulicCoolingMass(**kwargs)[source]
Bases:
openmdao.api.ExplicitComponent
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:
- Returns:
hvac_mass – component mass
- Return type:
float, [kg]
- compute(inputs, outputs)[source]
Compute outputs given inputs. The model is assumed to be in an unscaled state.
An inherited component may choose to either override this function or to define a compute_primal function.
- Parameters:
inputs (Vector) – Unscaled, dimensional input variables read via inputs[key].
outputs (Vector) – Unscaled, dimensional output variables read via outputs[key].
discrete_inputs (dict-like or None) – If not None, dict-like object containing discrete input values.
discrete_outputs (dict-like or None) – If not None, dict-like object containing discrete output values.
- class hydesign.nrelcsm.nrel_csm_mass_2015.NacelleCoverMass(**kwargs)[source]
Bases:
openmdao.api.ExplicitComponent
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:
- Returns:
cover_mass – component mass
- Return type:
float, [kg]
- compute(inputs, outputs)[source]
Compute outputs given inputs. The model is assumed to be in an unscaled state.
An inherited component may choose to either override this function or to define a compute_primal function.
- Parameters:
inputs (Vector) – Unscaled, dimensional input variables read via inputs[key].
outputs (Vector) – Unscaled, dimensional output variables read via outputs[key].
discrete_inputs (dict-like or None) – If not None, dict-like object containing discrete input values.
discrete_outputs (dict-like or None) – If not None, dict-like object containing discrete output values.
- class hydesign.nrelcsm.nrel_csm_mass_2015.PlatformsMainframeMass(**kwargs)[source]
Bases:
openmdao.api.ExplicitComponent
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:
- Returns:
platforms_mass – component mass
- Return type:
float, [kg]
- compute(inputs, outputs, discrete_inputs, discrete_outputs)[source]
Compute outputs given inputs. The model is assumed to be in an unscaled state.
An inherited component may choose to either override this function or to define a compute_primal function.
- Parameters:
inputs (Vector) – Unscaled, dimensional input variables read via inputs[key].
outputs (Vector) – Unscaled, dimensional output variables read via outputs[key].
discrete_inputs (dict-like or None) – If not None, dict-like object containing discrete input values.
discrete_outputs (dict-like or None) – If not None, dict-like object containing discrete output values.
- class hydesign.nrelcsm.nrel_csm_mass_2015.TransformerMass(**kwargs)[source]
Bases:
openmdao.api.ExplicitComponent
Compute transformer mass in the form of \(mass = k*power + b\). Value of \(k\) was updated in 2015 to be 1915. Value of \(b\) was updated in 2015 to be 1910.
- Parameters:
- Returns:
transformer_mass – component mass
- Return type:
float, [kg]
- compute(inputs, outputs)[source]
Compute outputs given inputs. The model is assumed to be in an unscaled state.
An inherited component may choose to either override this function or to define a compute_primal function.
- Parameters:
inputs (Vector) – Unscaled, dimensional input variables read via inputs[key].
outputs (Vector) – Unscaled, dimensional output variables read via outputs[key].
discrete_inputs (dict-like or None) – If not None, dict-like object containing discrete input values.
discrete_outputs (dict-like or None) – If not None, dict-like object containing discrete output values.
- class hydesign.nrelcsm.nrel_csm_mass_2015.TowerMass(**kwargs)[source]
Bases:
openmdao.api.ExplicitComponent
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:
- Returns:
tower_mass – component mass
- Return type:
float, [kg]
- compute(inputs, outputs)[source]
Compute outputs given inputs. The model is assumed to be in an unscaled state.
An inherited component may choose to either override this function or to define a compute_primal function.
- Parameters:
inputs (Vector) – Unscaled, dimensional input variables read via inputs[key].
outputs (Vector) – Unscaled, dimensional output variables read via outputs[key].
discrete_inputs (dict-like or None) – If not None, dict-like object containing discrete input values.
discrete_outputs (dict-like or None) – If not None, dict-like object containing discrete output values.
- class hydesign.nrelcsm.nrel_csm_mass_2015.TurbineMassAdder(**kwargs)[source]
Bases:
openmdao.api.ExplicitComponent
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
- compute(inputs, outputs, discrete_inputs, discrete_outputs)[source]
Compute outputs given inputs. The model is assumed to be in an unscaled state.
An inherited component may choose to either override this function or to define a compute_primal function.
- Parameters:
inputs (Vector) – Unscaled, dimensional input variables read via inputs[key].
outputs (Vector) – Unscaled, dimensional output variables read via outputs[key].
discrete_inputs (dict-like or None) – If not None, dict-like object containing discrete input values.
discrete_outputs (dict-like or None) – If not None, dict-like object containing discrete output values.
- class hydesign.nrelcsm.nrel_csm_mass_2015.nrel_csm_mass_2015(**kwargs)[source]
Bases:
openmdao.api.Group
Class used to group systems together; instantiate or inherit.
- Parameters:
**kwargs (dict) – Dict of arguments available here and in all descendants of this Group.
- _mpi_proc_allocator[source]
Object used to allocate MPI processes to subsystems.
- Type:
ProcAllocator
- _proc_info[source]
Information used to determine MPI process allocation to subsystems.
- Type:
dict of subsys_name: (min_procs, max_procs, weight, proc_group)
- _subgroups_myproc[source]
List of local subgroups, (sorted by name if Problem option allow_post_setup_reorder is True).
- Type:
- _manual_connections[source]
Dictionary of input_name: (output_name, src_indices) connections.
- Type:
- _static_manual_connections[source]
Dictionary that stores all explicit connections added outside of setup.
- Type:
- _conn_abs_in2out[source]
Dictionary containing all explicit & implicit continuous var connections owned by this system only. The data is the same across all processors.
- Type:
{‘abs_in’: ‘abs_out’}
- _conn_discrete_in2out[source]
Dictionary containing all explicit & implicit discrete var connections owned by this system only. The data is the same across all processors.
- Type:
{‘abs_in’: ‘abs_out’}
- _transfers[source]
First key is mode, second is subname where mode is ‘fwd’ or ‘rev’ and subname is the subsystem name or subname can be None for the full, simultaneous transfer.
- _discrete_transfers[source]
Key is system pathname or None for the full, simultaneous transfer.
- Type:
dict of discrete transfer metadata
- _contains_parallel_group[source]
If True, this Group contains a ParallelGroup. Only used to determine if a parallel group or distributed component is below a DirectSolver so that we can raise an exception.
- Type:
- _pre_components[source]
Set of pathnames of components that are executed prior to the optimization loop. Empty unless the ‘group_by_pre_opt_post’ option is True in the Problem.
- _post_components[source]
Set of pathnames of components that are executed after the optimization loop. Empty unless the ‘group_by_pre_opt_post’ option is True in the Problem.
- _iterated_components[source]
Set of pathnames of components that are executed in the optimization loop if ‘group_by_pre_opt_post’ is True in the Problem.
- _fd_rev_xfer_correction_dist[source]
If this group is using finite difference to compute derivatives, this is the set of inputs that are upstream of a distributed response within this group, keyed by active response. These determine if contributions from all ranks will be added together to get the correct input values when derivatives in the larger model are being solved using reverse mode.
- Type:
- _auto_ivc_recorders[source]
List of recorders that were added to _auto_ivc before it existed so they can be added after _auto_ivc is created.
- Type:
- _is_explicit[source]
True if neither this Group nor any of its descendants contains implicit systems or cycles.
- Type:
bool or None
- setup()[source]
Build this group.
This method should be overidden by your Group’s method. The reason for using this method to add subsystem is to save memory and setup time when using your Group while running under MPI. This avoids the creation of systems that will not be used in the current process.
You may call ‘add_subsystem’ to add systems to this group. You may also issue connections, and set the linear and nonlinear solvers for this group level. You cannot safely change anything on children systems; use the ‘configure’ method instead.
- Available attributes:
name pathname comm options
- class hydesign.nrelcsm.nrel_csm_mass_2015.nrel_csm_2015(**kwargs)[source]
Bases:
openmdao.api.Group
Class used to group systems together; instantiate or inherit.
- Parameters:
**kwargs (dict) – Dict of arguments available here and in all descendants of this Group.
- _mpi_proc_allocator[source]
Object used to allocate MPI processes to subsystems.
- Type:
ProcAllocator
- _proc_info[source]
Information used to determine MPI process allocation to subsystems.
- Type:
dict of subsys_name: (min_procs, max_procs, weight, proc_group)
- _subgroups_myproc[source]
List of local subgroups, (sorted by name if Problem option allow_post_setup_reorder is True).
- Type:
- _manual_connections[source]
Dictionary of input_name: (output_name, src_indices) connections.
- Type:
- _static_manual_connections[source]
Dictionary that stores all explicit connections added outside of setup.
- Type:
- _conn_abs_in2out[source]
Dictionary containing all explicit & implicit continuous var connections owned by this system only. The data is the same across all processors.
- Type:
{‘abs_in’: ‘abs_out’}
- _conn_discrete_in2out[source]
Dictionary containing all explicit & implicit discrete var connections owned by this system only. The data is the same across all processors.
- Type:
{‘abs_in’: ‘abs_out’}
- _transfers[source]
First key is mode, second is subname where mode is ‘fwd’ or ‘rev’ and subname is the subsystem name or subname can be None for the full, simultaneous transfer.
- _discrete_transfers[source]
Key is system pathname or None for the full, simultaneous transfer.
- Type:
dict of discrete transfer metadata
- _contains_parallel_group[source]
If True, this Group contains a ParallelGroup. Only used to determine if a parallel group or distributed component is below a DirectSolver so that we can raise an exception.
- Type:
- _pre_components[source]
Set of pathnames of components that are executed prior to the optimization loop. Empty unless the ‘group_by_pre_opt_post’ option is True in the Problem.
- _post_components[source]
Set of pathnames of components that are executed after the optimization loop. Empty unless the ‘group_by_pre_opt_post’ option is True in the Problem.
- _iterated_components[source]
Set of pathnames of components that are executed in the optimization loop if ‘group_by_pre_opt_post’ is True in the Problem.
- _fd_rev_xfer_correction_dist[source]
If this group is using finite difference to compute derivatives, this is the set of inputs that are upstream of a distributed response within this group, keyed by active response. These determine if contributions from all ranks will be added together to get the correct input values when derivatives in the larger model are being solved using reverse mode.
- Type:
- _auto_ivc_recorders[source]
List of recorders that were added to _auto_ivc before it existed so they can be added after _auto_ivc is created.
- Type:
- _is_explicit[source]
True if neither this Group nor any of its descendants contains implicit systems or cycles.
- Type:
bool or None
- setup()[source]
Build this group.
This method should be overidden by your Group’s method. The reason for using this method to add subsystem is to save memory and setup time when using your Group while running under MPI. This avoids the creation of systems that will not be used in the current process.
You may call ‘add_subsystem’ to add systems to this group. You may also issue connections, and set the linear and nonlinear solvers for this group level. You cannot safely change anything on children systems; use the ‘configure’ method instead.
- Available attributes:
name pathname comm options