pyfebiopt.optimize.optimizers
Adapters that bridge scipy optimizers to the engine interface.
Attributes
Classes
Abstract interface implemented by optimizer adapters. |
|
Adapter that wraps |
|
Adapter that wraps |
Module Contents
- pyfebiopt.optimize.optimizers.BoundsLike
- pyfebiopt.optimize.optimizers.Callback
- class pyfebiopt.optimize.optimizers.OptimizerAdapter
Abstract interface implemented by optimizer adapters.
- abstractmethod minimize(fun: collections.abc.Callable[[numpy.ndarray], numpy.ndarray], jac: collections.abc.Callable[[numpy.ndarray], numpy.ndarray] | None, phi0: numpy.ndarray, bounds: BoundsLike, callbacks: collections.abc.Iterable[Callback] | None = None) tuple[numpy.ndarray, dict[str, object]]
Minimise the objective using the configured optimizer.
- Returns:
Tuple of optimal vector and optimizer metadata dictionary.
- static build(name: str, options: collections.abc.Mapping[str, float | str | int] | None) OptimizerAdapter
Construct an adapter by name.
- Returns:
Concrete OptimizerAdapter ready for use with the engine.
- class pyfebiopt.optimize.optimizers.ScipyLeastSquaresAdapter(**kwargs: float | str | int)
Bases:
OptimizerAdapterAdapter that wraps
scipy.optimize.least_squares().Store keyword arguments forwarded to SciPy.
- kwargs: dict[str, float | str | int]
- minimize(fun: collections.abc.Callable[[numpy.ndarray], numpy.ndarray], jac: collections.abc.Callable[[numpy.ndarray], numpy.ndarray] | None, phi0: numpy.ndarray, bounds: BoundsLike, callbacks: collections.abc.Iterable[Callback] | None = None) tuple[numpy.ndarray, dict[str, object]]
Run SciPy least_squares and report optimizer metadata.
- Returns:
Tuple of optimal φ vector and metadata dictionary.
- class pyfebiopt.optimize.optimizers.ScipyMinimizeAdapter(method: str = 'L-BFGS-B', **kwargs: float | str | int)
Bases:
OptimizerAdapterAdapter that wraps
scipy.optimize.minimize().Store method name and keyword arguments.
- method = 'L-BFGS-B'
- kwargs
- minimize(fun: collections.abc.Callable[[numpy.ndarray], numpy.ndarray], jac: collections.abc.Callable[[numpy.ndarray], numpy.ndarray] | None, phi0: numpy.ndarray, bounds: BoundsLike, callbacks: collections.abc.Iterable[Callback] | None = None) tuple[numpy.ndarray, dict[str, object]]
Run SciPy minimize and report optimizer metadata.
- Returns:
Tuple of optimal φ vector and metadata dictionary.