> El 14 oct 2016, a las 0:32, Peetz, Darin T <pee...@illinois.edu> escribió:
> I've come across an irregularity when extracting the eigenvectors when using
> the CISS method to solve the eigenvalue problem. I'm solving a generalized
> hermitian problem, and it looks like the resulting eigenvectors are
> M-orthogonalized with each other (the M-inner products of different
> eigenvectors are approximately 0, as expected), but are normalized using the
> L2-inner product, not the M-inner product. Basically, the matrix V'*M*V (V
> being a matrix composed of the extracted eigenvectors) is diagonal, but the
> diagonals are much larger than 1, and the matrix V'*V has non-zero diagonals,
> but the diagonal elements are exactly equal to 1.
> This only happens if I use the CISS method. If I use the Arnoldi method for
> example, the eigenvectors are normalized as expected. Is there any
> particular reason for this, or is this an error in the implementation?
Thanks for reporting this.
The fix is to add this line:
eps->purify = PETSC_FALSE;
anywhere in function EPSSetUp_CISS() (in file src/eps/impls/ciss/ciss.c).
I will include the fix for future releases.