For instance, I would like to compute eigenvalues with positive real part and negative imaginary part and their associated eigenvectors, I suppose this should be faster and more accurate than using ZGEEV to solve a full problem and doing the sorting afterwards, even for modest problem size(<1000).
Is it recommended to use Feast in this case? I can hardly find some related examples. thanks in advance
Since Eigen version 3.1 and later, users could use built-in Intel MKL optimizations from Eigen with an installed copy of Intel MKL 10.3. You could simply use MKL by defining macro "EIGEN_USE_MKL_ALL" before include Eigen heard file. You do not need to convert eigen value type to void* and call cblas_zgemm function by your self. The assembly code will be implemented by MKL kernel. Data could be vectorized by AVX instructions if you use cpu support AVX. I do not have sample code for zgemm, but I have code for dgemm. They are quite similar, you could refer to it. Also remember to link with mkl library when you build it. Hope it would be useful to you. Thank you.
Oops, I get misunderstanding. Sorry....
You could find all example code for Intel MKL Extended Eigensolver from %MKLROOT%\examples\examples_core_c\lapackc\solvers_eec\source.