bluemira.equilibria.optimisation.problem._minimal_current
Classes
Bounded, constrained, minimal current optimisation problem. |
Module Contents
- class bluemira.equilibria.optimisation.problem._minimal_current.MinimalCurrentCOP(eq: bluemira.equilibria.equilibrium.Equilibrium, max_currents: numpy.typing.ArrayLike | None = None, opt_algorithm: bluemira.optimisation.AlgorithmType = Algorithm.SLSQP, opt_conditions: dict[str, float | int] | None = None, opt_parameters: dict[str, float] | None = None, constraints: list[bluemira.equilibria.optimisation.constraints.UpdateableConstraint] | None = None, *, plot: bool | None = False, reference_eq: bluemira.equilibria.equilibrium.Equilibrium | None = None, diag_ops: bluemira.equilibria.diagnostics.EqDiagnosticOptions | None = None)
Bases:
bluemira.equilibria.optimisation.problem.base.EqCoilsetOptimisationProblemBounded, constrained, minimal current optimisation problem.
- Parameters:
eq (bluemira.equilibria.equilibrium.Equilibrium) – Equilibrium object to optimise the currents for
max_currents (numpy.typing.ArrayLike | None) – Current bounds vector [A]
opt_conditions (dict[str, float | int] | None) – Optimiser conditions
opt_algorithm (bluemira.optimisation.AlgorithmType) – optimiser algorithm
opt_parameters (dict[str, float] | None) – Optimiser specific parameters, see https://nlopt.readthedocs.io/en/latest/NLopt_Reference/#algorithm-specific-parameters Otherwise, the parameters can be founded by digging through the source code.
constraints (list[bluemira.equilibria.optimisation.constraints.UpdateableConstraint] | None) – List of optimisation constraints to apply to the optimisation problem
plot (bool | None) – Whether or not to plot
reference_eq (bluemira.equilibria.equilibrium.Equilibrium | None) – For plotting only. Equilibrium object to compare to current state of eq during optimisation. Will use initial state if None is chosen.
diag_ops (bluemira.equilibria.diagnostics.EqDiagnosticOptions | None) – Diagnostic plotting options for Equilibrium
- plotting_enabled = False
- optimise(x0: numpy.typing.NDArray | None = None, *, fixed_coils: bool = True, keep_history: bool = False, check_constraints: bool = False) bluemira.equilibria.optimisation.problem.base.CoilsetOptimiserResult
Run the optimisation problem
- Parameters:
fixed_coils (bool) – Whether or not to update to coilset response matrices
x0 (numpy.typing.NDArray | None)
keep_history (bool)
check_constraints (bool)
- Returns:
coilset – Optimised CoilSet
- Return type: