h2integrate.converters.wind.wind_plant_ard#
Classes
|
OpenMDAO Group integrating the Ard wind plant as a sub-problem. |
|
The class is needed to allow connecting the Ard cost_year easily in H2Integrate. |
The class is needed to allow connecting the Ard cost_year easily in H2Integrate. |
|
|
Configuration container for Ard wind plant model inputs. |
- class h2integrate.converters.wind.wind_plant_ard.WindPlantArdModelConfig(ard_system, ard_data_path)#
Configuration container for Ard wind plant model inputs.
- Parameters:
ard_system (dict)
ard_data_path (str)
- ard_system#
Dictionary of Ard system / layout parameters (turbine specs, layout bounds, wake model settings, etc.) passed through to set_up_ard_model.
- Type:
dict
- ard_data_path#
Root path to Ard data resources (e.g., turbine libraries).
- Type:
str
- ard_system: dict#
- ard_data_path: str#
- class h2integrate.converters.wind.wind_plant_ard.WindArdPerformanceCompatibilityComponent(**kwargs)#
The class is needed to allow connecting the Ard cost_year easily in H2Integrate.
This component takes some of the output of Ard and returns it in the format expected by H2Integrate. Some minor calculations are performed to get metrics required by H2Integrate.
- initialize()#
Perform any one-time initialization run at instantiation.
- setup()#
Declare inputs and outputs.
- Available attributes:
name pathname comm options
- compute(inputs, outputs)#
Computation for the OM component.
For a template class this is not implement and raises an error.
- class h2integrate.converters.wind.wind_plant_ard.WindArdCostCompatibilityComponent(**kwargs)#
The class is needed to allow connecting the Ard cost_year easily in H2Integrate.
We could almost use the CostModelBaseClass directly, but its setup method requires a self.config attribute to be defined, so we create this minimal subclass.
- setup()#
Declare inputs and outputs.
- Available attributes:
name pathname comm options
- compute(inputs, outputs, discrete_inputs, discrete_outputs)#
Computation for the OM component.
For a template class this is not implement and raises an error.
- class h2integrate.converters.wind.wind_plant_ard.ArdWindPlantModel(**kwargs)#
OpenMDAO Group integrating the Ard wind plant as a sub-problem.
- Subsystems:
ard_sub_prob (SubmodelComp): Encapsulated Ard Problem exposing specified inputs/outputs. wind_ard_performance_compatibility (WindArdPerformanceCompatibilityComponent):
Necessary for providing required performance metrics to H2Integrate.
- wind_ard_cost_compatibility (WindArdCostCompatibilityComponent):
Necessary for providing cost_year to H2Integrate.
- Promoted Inputs:
spacing_primary: Primary spacing parameter. spacing_secondary: Secondary spacing parameter. angle_orientation: Orientation angle. angle_skew: Skew angle. x_substations: X-coordinates of substations. y_substations: Y-coordinates of substations.
- Promoted Outputs:
electricity_out (float): Annual energy production (AEP) in MWh (as provided by ARD/FLORIS). CapEx (float): Capital expenditure from ARD turbine & balance of plant cost model. OpEx (float): Operating expenditure from ARD. boundary_distances (array): Distances from turbines to boundary segments. turbine_spacing (array): Inter-turbine spacing metrics. cost_year: Cost year from cost component. VarOpEx: Variable operating expenditure (currently placeholder).
- initialize()#
Perform any one-time initialization run at instantiation.
- setup()#
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