gemseo.formulations.disciplinary_opt module#
A formulation for uncoupled or weakly coupled problems.
- class DisciplinaryOpt(disciplines, objective_name, design_space, settings_model=None, **settings)[source]#
Bases:
BaseMDOFormulation
The disciplinary optimization.
This formulation draws the architecture of a mono-disciplinary optimization process from an ordered list of disciplines, an objective function and a design space.
Initialize self. See help(type(self)) for accurate signature.
- Parameters:
disciplines (Sequence[Discipline]) -- The disciplines.
objective_name (str) -- The name(s) of the discipline output(s) used as objective. If multiple names are passed, the objective will be a vector.
design_space (DesignSpace) -- The design space.
settings_model (DisciplinaryOpt_Settings | None) -- The settings of the formulation as a Pydantic model. If
None
, use**settings
.**settings (Any) -- The settings of the formulation. This argument is ignored when
settings_model
is notNone
.
- Settings#
alias of
DisciplinaryOpt_Settings
- get_top_level_disciplines(include_sub_formulations=False)[source]#
Return the top level disciplines that are executed in the foreground.
A formulation structures the optimization problem into multiple levels of disciplines. The top level disciplines map from the
design_space
to the objective, constraint and observable spaces. They can be composed of both user disciplines and process disciplines added by the formulation, e.g.MDOChain
. These process disciplines may also include both user disciplines and process disciplines, and so on.- Parameters:
include_sub_formulations (bool) --
Whether to include the top level disciplines of the formulations that make up the current one.
By default it is set to False.
- Returns:
The top level disciplines.
- Return type: