Changelogs » Pysindy

PyUp Safety actively tracks 232,000 Python packages for vulnerabilities and notifies you when to upgrade.



PySINDy now requires Scikit-learn version 0.23 instead of 0.21. There are also some minor bug fixes included in this release related to checking when optimizers have been fit.


This release makes the `SINDy.score` function better conform to the call signature of metrics from `sklearn.metrics`. Resolves 80.


Fixes a minor bug in the `CustomLibrary` class for earlier releases of Scikit-learn (e.g. 0.21). Scikit-learn version 0.23 (the latest version) does not have this issue.


This is PySINDy's first major release, including source code, documentation-generating scripts, examples, unit tests, and a markdown version of the PySINDy JOSS submission. This release includes a DOI via Zenodo:


Removes an extraneous print statement put in the code for debugging purposes.


* Expand allowable set of control input functions accepted by the `u` keyword argument of `SINDy.simulate` to include interpolating functions
  * Relax optimizer complexity test


Documentation improvements:
  - Fixed formatting of class attributes on documentation site
  - Better code formatting for `SINDy` method docstrings
  - Add missing class attributes to docstrings
  Code improvements:
  - More robust complexity test
  - Add missing attributes to `SINDy` class, optimizers, and feature libraries


This release adds functionality for performing SINDy with control inputs (SINDYc). It also implements concatenation of feature libraries via the + operator.
  Minor changes:
  * SINDy constructor properly instantiates `optimizer`, `differentiation_method`, and `feature_library`
  * improved discrete time input handling
  * Updated README
  * Various documentation typos fixed


Fix syntax errors in rst for the previous long description for PyPI.


The main changes in this release are all documentation-related. In particular we added information on the mathematical underpinnings behind the SINDy method in the README and created a new example notebook walking through the math in more detail.


Update the way optimizers are handled
  Previously optimizers needed to inherit from our base class `BaseOptimizer`. In this version users can more easily pass in their own optimizers, which are then wrapped in a custom class performing some postprocessing steps. As a result of this change, we have removed the `LASSO` and `ElasticNet` optimizers since their corresponding sklearn objects can now be passed into the `SINDy` object directly.
  Minor changes
  - Added quiet mode to ``
  - Use L2 regularization by default for `STLSQ`


Changes in this version:
  - Optimizers are properly initialized so that copies created by `MultiOutputClassifier` share the same properties
  - Added documentation
  - Example notebooks conform to PEP8
  - A dummy library, `IdentityLibrary` , was implemented so that fully custom features can be used
  - Additional unit tests to improve coverage
  - Optimizers have `unbias` option to improve performance


Release Pipeline Test