desr – Differential Equation Symmetry Reduction
Introduction
desr is a package used for Differental Equation Symmetry Reduction and is particularly useful for reducing the number of parameters in dynamical systems.
desr implements and extends algorithms originally outlined by Evelyne Hubert and George Labahn [HL13]. It further implements reduction on systems with equality constraints and initial conditions, as described in [].
The Masters dissertation Differential Algebra and Applications that inspired this project places the algorithms into the theoretical framework of differential algebraic geometry. The dissertation further shows how to extend them to parameter reduction of arbitrary systems of partial differential equations, though this is not yet implemented in this software.
Prerequisites
This package requires the Sympy package.
Installing
To install, download the package and run:
pip install .
Running the tests
Doctests are included in most files. To run them, from top level run sphinx-build -b doctest docs/source/ build/, or run the individual submodule of desr as a script. e.g. python -m doctest -v module.py
Building the documentation
The documentation is hosted online at readthedocs.
Sphinx - Used to generate the docs.
Contributing
Pull requests and issues on the GitHub repo are most certainly welcome.
License
This project is licensed under the Apache 2.0 License.
Acknowledgments
Dr. Heather Harrington and Dr. Emilie Dufresne for their supervision of the dissertation.
Thomas Close for writing his diophantine module, which is included in this package.