Skip to content

Releases: dynamicslab/pysindy

Expanded derivative options

30 Aug 01:06
e4f7b47
Compare
Choose a tag to compare

This release implements the SINDyDerivative class, which allows one to use differentiation methods from the derivative package. This will enable the application of SINDy to much noisier datasets.

Note that PySINDy now requires the derivative package.

derivative includes the following numerical differentiation techniques:

  • Spectral derivatives (via the FFT)
  • Spline-based derivatives
  • Finite differences of arbitrary order
  • Polynomial least-squares (Savitzky-Golay)
  • Total variation regularized derivative (the method recommended in the original SINDy paper)

This release also contains some improvements to the documentation:

  • Example using SINDyDerivative in the Feature Overview notebook
  • A new notebook comparing all the differentiation options available in PySINDy
  • An example showing how to optimize parameters of derivative objects with cross-validation

Cross-validation

15 Jul 23:56
b88cc80
Compare
Choose a tag to compare

This release enables much easier cross-validation of SINDy models using Scikit-learn cross-validation tools. Major changes include:

  • t_default parameter added to the SINDy class. This parameter specifies the default time step that should be used whenever the t argument of a SINDy method is not used.
  • New notebook demonstrating cross-validation and other examples combining Scikit-learn and PySINDy objects.

More details can be found in #84.

Bug fix: Require Scikit-learn 0.23

07 Jul 17:43
a3b2796
Compare
Choose a tag to compare

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.

Bug fix: Make scoring consistent with sklearn

30 Jun 17:17
Compare
Choose a tag to compare

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

Bug fix: Make compatible with sklearn 0.21

23 Jun 18:35
Compare
Choose a tag to compare

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.

First official PySINDy release

18 May 18:06
Compare
Choose a tag to compare

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:

DOI

Remove extraneous print statement

04 May 23:23
Compare
Choose a tag to compare
Pre-release

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

Enable control input interpolation

04 May 23:06
Compare
Choose a tag to compare
Pre-release
  • Expand allowable set of control input functions accepted by the u keyword argument of SINDy.simulate to include interpolating functions
  • Relax optimizer complexity test

Polish documentation

04 May 21:12
Compare
Choose a tag to compare
Polish documentation Pre-release
Pre-release

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

SINDy with control

02 May 00:47
a5d6d17
Compare
Choose a tag to compare
SINDy with control Pre-release
Pre-release

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