Numerical solving of symbolic systems of non-linear equations.
Project description
pyneqsys provides a convenience class for representing and solving non-linear equation systems from SymPy expressions.
The numerical root finding is perfomed using either:
scipy: scipy.optimize.root
nleq2: pynleq2.solve (unsettled API)
Documentation
Autogenerated API documentation is found here: https://bjodah.github.com/pyneqsys
Installation
Simplest way to install pyneqsys and its dependencies is through the conda package manager:
$ conda install -c bjodah pyneqsys pytest $ python -m pytest --pyargs pyneqsys
Source distribution is available here: https://pypi.python.org/pypi/pyneqsys
Example
Example reformulated from SciPy documentation:
>>> from pyneqsys import SymbolicSys
>>> neqsys = SymbolicSys.from_callback(
... lambda x: [(x[0] - x[1])**3/2 + x[0] - 1,
... (x[1] - x[0])**3/2 + x[1]], 2)
>>> x, sol = neqsys.solve('scipy', [1, 0])
>>> assert sol.success
>>> print(x)
[ 0.8411639 0.1588361]
here we did not need to enter the jacobian manually, SymPy did that for us. For more examples look see examples/, and rendered jupyter notebooks here: http://hera.physchem.kth.se/~pyneqsys/master/examples
License
The source code is Open Source and is released under the simplified 2-clause BSD license. See LICENSE for further details. Contributors are welcome to suggest improvements at https://github.com/bjodah/pyneqsys
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.