You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Is your feature request related to a problem? Please describe.
I would like to be able to compute the eigenvectors and eigenvalues a matrix which can either hold floats or complex. I didn't see a generic way to do this (like LinearAlgebra's eigen) and instead have to manually check the type before calling the appropriate functions, namely syevd!and heevd! (the matrix is always Hermitian/symmetric).
Describe the solution you'd like
A high level function taking a matrix A and returning, if possible, the eigenvectors and eigenvalues of A. This function may throw if no appropriate function was found (I think there aren't a lot of solvers for non-Hermitian complex matrixces in cuSolver).
Describe alternatives you've considered
Right now, I am doing something like
if eltype(A) <: Complex
vals, vects = CUDA.CUSOLVER.heevd!('V','U',A)
else
vals, vects = CUDA.CUSOLVER.syevd!('V','U',A)
end
This is the type of thing I imagined eigen could do.
Additional context
Maybe there is a very good reason as why this wasn't implemented, but I couldn't find it in the docs or the code. If eigen is not to be implemented, maybe we could add a little paragraph somewhere to explain this?
The text was updated successfully, but these errors were encountered:
Is your feature request related to a problem? Please describe.
I would like to be able to compute the eigenvectors and eigenvalues a matrix which can either hold floats or complex. I didn't see a generic way to do this (like LinearAlgebra's
eigen
) and instead have to manually check the type before calling the appropriate functions, namelysyevd!
andheevd!
(the matrix is always Hermitian/symmetric).Describe the solution you'd like
A high level function taking a matrix
A
and returning, if possible, the eigenvectors and eigenvalues ofA
. This function may throw if no appropriate function was found (I think there aren't a lot of solvers for non-Hermitian complex matrixces in cuSolver).Describe alternatives you've considered
Right now, I am doing something like
This is the type of thing I imagined
eigen
could do.Additional context
Maybe there is a very good reason as why this wasn't implemented, but I couldn't find it in the docs or the code. If
eigen
is not to be implemented, maybe we could add a little paragraph somewhere to explain this?The text was updated successfully, but these errors were encountered: