Arpack.jl
Arpack.jl copied to clipboard
complex-Hermitian support?
Looking at the source code, it seems that it explicitly checks for the real-symmetric case, but doesn't do anything for the analogous complex-Hermitian case. Is this a limitation of the underlying ARPACK library? https://github.com/JuliaLinearAlgebra/Arpack.jl/blob/5b4ee3cb4dfbfa338cac8c33a9931951be00bc46/src/Arpack.jl#L86
Late here but this is an ARPACK limitation. See section 3.9 of http://li.mit.edu/Archive/Activities/Archive/CourseWork/Ju_Li/MITCourses/18.335/Doc/ARPACK/Lehoucq97.pdf
The reverse communication interface subroutine for the double precision complex eigenvalue problem is znaupd . This routine is to be used for both Hermitian and non-Hermitian problems....
There is little computational penalty for using the non-Hermitian routines in this case. The only additional cost is to compute eigenvalues of a Hessenberg rather than a tridiagonal matrix. For the problem configurations this software is designed to solve, the size of these matrices are small enough that the differences in computational cost are negligible compared to the major ${\cal O}(n)$ work that is required.