Skip to main content

Compute and visualize pseudospectra of matrices (like eigtool)

Project description

# PseudoPy [![Build Status](https://travis-ci.org/andrenarchy/pseudopy.png?branch=master)](https://travis-ci.org/andrenarchy/pseudopy)

PseudoPy computes and visualizes the pseudospectrum of a matrix. It is a Python version of the original [eigtool](http://www.cs.ox.ac.uk/pseudospectra/eigtool/) by Thomas G. Wright. The algorithms used in this package can be found in the book [Spectra and pseudospectra](http://press.princeton.edu/titles/8113.html) by [Nick Trefethen](http://www.maths.ox.ac.uk/people/profiles/nick.trefethen) and [Mark Embree](http://www.caam.rice.edu/~embree/).

## Example
The pseudospectrum of the Grcar matrix looks like this:

![Pseudospectrum of Grcar matrix](grcar.png)

If no knowledge about the location of the pseudospectrum of the given matrix is available, the following lines of code can be used to obtain an approximation:
```python
from pseudopy import NonnormalAuto, demo
from matplotlib import pyplot
from scipy.linalg import eigvals

# get Grcar matrix
A = demo.grcar(32).todense()

# compute pseudospectrum for the levels of interest between [1e-5, 1]
pseudo = NonnormalAuto(A, 1e-5, 1)

# plot
pseudo.plot([10**k for k in range(-4, 0)], spectrum=eigvals(A))
pyplot.show()
```

## Installation
### Dependencies
PseudoPy depends on numpy, scipy, matplotlib and shapely. If you are on Debian/Ubuntu, you can install these dependencies with
```
sudo apt-get install python-numpy python-scipy python-matplotlib python-shapely
```

### pip
```pip install pseudopy```

Note that you may need to add `sudo` if you want to install it system-wide.

## License
PseudoPy is free software licensed under the [MIT License](http://opensource.org/licenses/mit-license.php).

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pseudopy-1.2.5.tar.gz (7.4 kB view details)

Uploaded Source

File details

Details for the file pseudopy-1.2.5.tar.gz.

File metadata

  • Download URL: pseudopy-1.2.5.tar.gz
  • Upload date:
  • Size: 7.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.18.4 setuptools/40.6.2 requests-toolbelt/0.8.0 tqdm/4.28.1 CPython/2.7.10

File hashes

Hashes for pseudopy-1.2.5.tar.gz
Algorithm Hash digest
SHA256 30d018c28f9693faf5a0958ac9807aaac88e07067b42eb19310c314fa89f4e41
MD5 2239d351c3416b26bbf6ee54a0a80150
BLAKE2b-256 607b21bb72adf3f54754f229952ff7d8d83e30f57aee96de1c059c9fbfe93a9e

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page