gemseo / problems / scalable / parametric / disciplines

Show inherited members

main_discipline module

The main discipline.

class gemseo.problems.scalable.parametric.disciplines.main_discipline.MainDiscipline(*t_i, **default_input_values)[source]

Bases: BaseDiscipline

The main discipline of the scalable problem.

It computes the objective \(x_0^Tx_0 + \sum_{i=1}^N y_i^Ty_i\). and the left- hand side of the constraints \(t_1-y_1\leq 0,\ldots,t_N-y_N\leq 0\).

Initialize self. See help(type(self)) for accurate signature.

Parameters:
  • *t_i (NDArray[float]) – The threshold vectors \(t_1,\ldots,t_N\).

  • **default_input_values (NDArray[float]) – The default values of the input variables.

cache: AbstractCache | None

The cache containing one or several executions of the discipline according to the cache policy.

data_processor: DataProcessor

A tool to pre- and post-process discipline data.

exec_for_lin: bool

Whether the last execution was due to a linearization.

input_grammar: BaseGrammar

The input grammar.

jac: MutableMapping[str, MutableMapping[str, ndarray | csr_array | JacobianOperator]]

The Jacobians of the outputs wrt inputs.

The structure is {output: {input: matrix}}.

name: str

The name of the discipline.

output_grammar: BaseGrammar

The output grammar.

re_exec_policy: ReExecutionPolicy

The policy to re-execute the same discipline.

residual_variables: dict[str, str]

The output variables mapping to their inputs, to be considered as residuals; they shall be equal to zero.

run_solves_residuals: bool

Whether the run method shall solve the residuals.