nlsq.callbacks.CallbackChain

class nlsq.callbacks.CallbackChain(*callbacks)[source]

Bases: CallbackBase

Chain multiple callbacks together.

Calls each callback in sequence. If any callback raises StopOptimization, propagates it to stop the optimization.

Parameters:

*callbacks (CallbackBase) – Callbacks to chain together

Examples

>>> from nlsq.callbacks import CallbackChain, ProgressBar, EarlyStopping
>>> callback = CallbackChain(
...     ProgressBar(max_nfev=100),
...     EarlyStopping(patience=5)
... )
>>> popt, pcov = curve_fit(f, x, y, callback=callback)
__init__(*callbacks)[source]
__call__(iteration, cost, params, info)[source]

Call all callbacks in sequence.

close()[source]

Close all callbacks that have a close method.

__del__()[source]

Ensure all callbacks are closed.