dynamicslab / pysindy

A package for the sparse identification of nonlinear dynamical systems from data
https://pysindy.readthedocs.io/en/latest/
Other
1.36k stars 304 forks source link

Be explicit about CVXPY solvers #502

Open Jacob-Stevens-Haas opened 1 month ago

Jacob-Stevens-Haas commented 1 month ago

CVXPY recently changed the default solver from ECOS to Clarabel. This means we need to go through the whole rejigging of "max_iter" vs "max_iters", because 1.5 causes tests to fail (see #500)

Describe the solution you'd like

I've currently sent a PR (#501) to limit the cvxpy version, but we ought to be more particular about which cvxpy solver we're using, rather than letting cvxpy choose. Otherwise, we'll end up back here.

Additional context

It is probably worth waiting to reconcile all of the TrappingSR3, ConstrainedSR3, StableLinearSR3 (and SINDyPI?) internals so that as much as possible dispatches to superclass, limiting our interface with cvxpy.