In MATLAB I can issue the command:
[X,L] = eig(A,'nobalance');
In order to compute the eigenvalues without the balance option.
What is the equivalent command in NumPy? When I run the NumPy version of eig, it does not produce the same result as the MATLAB result with nobalance turned on.
You can also consider installing GNU Octave and embed it in Python using oct2py. For example, to determine the eigenvalue of matrix A without balancing,
from oct2py import octave
...
[X,L] = octave.eig(A)
The function eig in Octave does not perform balancing of matrix A.
If you want to balance the matrix A, you can go ahead and write:
from oct2py import octave
...
A = octave.balance(A)
[X,L] = octave.eig(A)
oct2py
can be downloaded from this website: https://pypi.python.org/pypi/oct2py
Before you install oct2py, you need to make sure SciPy and GNU Octave have been already installed. Good luck!
NumPy can't currently do this. As horchler said, there has been an open ticket open for this for a while now. It is, however, possible to do it using external libraries. Here I write up how to do it using the Python bindings to the NAG library
http://www.walkingrandomly.com/?p=5303
It should be possible to do something similar using any interface to LAPACK such as the Intel MKL etc.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With