-
Notifications
You must be signed in to change notification settings - Fork 173
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
linalg eig
: generalized eigenvalue problem
#909
base: master
Are you sure you want to change the base?
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thank you @perazz . LGTM. It is a nice extension of eig
.
Co-authored-by: Jeremie Vandenplas <jeremie.vandenplas@gmail.com>
0ebe971
to
6830652
Compare
Thank you @jvdp1 for the review and for catching the docs typo. It is much more clean now. PS I notice that sometimes |
I have a similar issue in my prodcution code. I avoid it by compiling different codes for different compilers. Quite annoying... And I don't know if it is a bug of if the standard does not specifiy this behaviour. |
This PR proposes to address #907: Introduce the generalized eigenvalue option, A⋅x=λ⋅B⋅x.
Proposed interface
call eig(a, b, lambda [, right] [, left] [, overwrite_a] [, overwrite_b] [, err])
lambda = eigvals(a, b [, err])
For comparison, the standard problem is solved with
call eig(a, lambda [, right] [, left] [, overwrite_a] [, err])
lambda = eigvals(a [, err])
Key facts
*GGEV
LAPACK backendb
is not anoptional
argument)Prior art
eig(a, b=None, left=False, right=True, overwrite_a=False, overwrite_b=False, check_finite=True, homogeneous_eigvals=False)
cc: @jvdp1 @jalvesz @fortran-lang/stdlib