pybop.optimisers._result#
Classes#
Stores the result of the optimisation. |
Module Contents#
- class pybop.optimisers._result.OptimisationResult(optim: pybop.BaseOptimiser, x: pybop.Inputs | numpy.ndarray = None, final_cost: float | None = None, sensitivities: dict | None = None, n_iterations: int | None = None, n_evaluations: int | None = None, time: float | None = None, message: str | None = None, scipy_result=None)[source]#
Stores the result of the optimisation.
- scipy_result[source]#
The result obtained from a SciPy optimiser.
- Type:
scipy.optimize.OptimizeResult, optional
- pybamm_solution[source]#
The best solution object(s) obtained from the optimisation.
- Type:
pybamm.Solution or list[pybamm.Solution], optional
- __str__() str[source]#
A string representation of the OptimisationResult object.
- Returns:
A formatted string containing optimisation result information.
- Return type:
str
- _extend(x: list[pybop.Inputs] | list[numpy.ndarray], final_cost: list[float], fisher: list, n_iterations: list[int], n_evaluations: list[int], time: list[float], message: list[str], scipy_result: list, x0: list, pybamm_solution: list[pybamm.Solution])[source]#
- average_iterations() float | None[source]#
Calculates the average number of iterations across all runs.
- check_for_finite_cost() None[source]#
Validate the optimised parameters and ensure they produce a finite cost value.
- Raises:
ValueError – If the optimised parameters do not produce a finite cost value.