GitHub is home to over 20 million developers working together to host and review code, manage projects, and build software together.
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
Already on GitHub? Sign in to your account
Original ticket http://projects.scipy.org/scipy/ticket/1308 on 2010-10-16 by trac user nicki, assigned to unknown.
the title say it all.
from scipy.linalg import eig
import numpy as np
A = np.array( [ [0.2, 0.4], [0.4, 2.05] ] )
B = np.array( [ [1.0, 0.0], [0.0, 1.0] ] )
print eig( A, B )
@WarrenWeckesser wrote on 2010-10-16
Thanks for the report.
You can enclose code in triple curly braces (that is, and) to preserve its formatting. Also, when you file a ticket, don't forget to select the component, if you know what it is.
@pv wrote on 2010-10-16
Here we return what LAPACK gives, and in this case it is "Each eigenvector is scaled so the largest component has abs(real part)+abs(imag. part)=1."
IMO, this can be fixed just by updating the documentation accordingly.
trac user nicki wrote on 2010-10-16
Note that this has some potential for confusion:
eig( A )
normalizes properly, and
eig( A, I )
with I being the identity matrix does not. Obviously this is how LAPACK is designed, but it seems flawed here.
Changed in gh-3055 to return unit normalized eigenvectors.