[petsc-users] In place access to eigenvectors of EPS

Jose E. Roman jroman at dsic.upv.es
Sun Mar 29 05:34:11 CDT 2015


El 29/03/2015, a las 06:02, Andrew Spott escribió:

> >What is the use case for this?
> 
> Orthogonalization between left and right eigenvectors.  I’ve got two EPS instances, one for the left and one for the right eigenvectors, and I need to orthogonalize them with respect to each other: enforce L^H R = 1.  Copying every vector out of both BVs seems wasteful.  Especially because I don’t really need the EPS to do anything with them after this.
> 
> I noticed in the source for EPSGetEigenvector that there is a “permutation” array that might change the order of the vectors in the BV.  Is there a way to get this using the public API?
> 
> It appears that I can call “EPSGetEigenvector” to make sure that “EPSComputeVectors” is called, so I get eigenvectors instead of Shur vectors or other things.  But I’m not sure how to get the permutation back.
> 
> -Andrew
> 

No, there is currently no way of getting the permutation out of EPS.

I don't think it is wasteful to copy all eigenvectors out of EPS. This is done only once, and after that you can destroy the EPS.

Jose



More information about the petsc-users mailing list