Contents:

# Indices and tables¶

## pynleq2¶

pynleq2 provides a Python binding to the NLEQ2 algorithm from CodeLib distributed by Zuse Institute Berlin (ZIB). Note that this package does not contain the source code of NLEQ2 which has its own license (as of 2015-10-20 it may be used for free for academic use, but not for commerical use).

The fortran to python interface is originally from the PySCeS project.

### Documentation¶

Autogenerated API documentation is found here: https://bjodah.github.com/pynleq2

### Installation¶

Simplest way to install is to install using pip:

```\$ PYNLEQ2_NLEQ2_ROOT_URL=http://repo.my-univeristy.edu/mirror/nleq2/ pip install pynleq2
```

Note that you need to modify the environment variable `\$PYNLEQ2_NLEQ2_ROOT_URL` to point to the source repository at ZIB after you have ensured that your use is in line with their license agreement.

Source distribution of the binding is available here: https://pypi.python.org/pypi/pynleq2

### Example¶

Example reformulated from SciPy documentation:

```>>> from pynleq2 import solve
>>> def f(x, i):
...     return [x[0] + (x[0] - x[1])**3/2 - 1,
...             (x[1] - x[0])**3/2 + x[1]], i
>>> def j(x):
...     return [
...         [
...             1 + 3/2 * (x[0] - x[1])**(3-1),
...             -3/2 * (x[0] - x[1])**(3-1)
...         ],
...         [
...             -3/2 * (x[1] - x[0])**(3-1),
...             1 + 3/2 * (x[1] - x[0])**(3 - 1)
...         ]
...     ]
...
>>> x, ierr = solve(f, j, [0, 1])
>>> x
array([ 0.8411639,  0.1588361])
```