slepc-3.17.1 2022-04-11
Report Typos and Errors


Gets the i-th solution of the eigenproblem as computed by EPSSolve(). The solution consists in both the eigenvalue and the eigenvector.


#include "slepceps.h" 
PetscErrorCode EPSGetEigenpair(EPS eps,PetscInt i,PetscScalar *eigr,PetscScalar *eigi,Vec Vr,Vec Vi)
Logically Collective on eps

Input Parameters

eps  - eigensolver context
i  - index of the solution

Output Parameters

eigr  - real part of eigenvalue
eigi  - imaginary part of eigenvalue
Vr  - real part of eigenvector
Vi  - imaginary part of eigenvector


It is allowed to pass NULL for Vr and Vi, if the eigenvector is not required. Otherwise, the caller must provide valid Vec objects, i.e., they must be created by the calling program with e.g. MatCreateVecs().

If the eigenvalue is real, then eigi and Vi are set to zero. If PETSc is configured with complex scalars the eigenvalue is stored directly in eigr (eigi is set to zero) and the eigenvector in Vr (Vi is set to zero). In both cases, the user can pass NULL in eigi and Vi.

The index i should be a value between 0 and nconv-1 (see EPSGetConverged()). Eigenpairs are indexed according to the ordering criterion established with EPSSetWhichEigenpairs().

The 2-norm of the eigenvector is one unless the problem is generalized Hermitian. In this case the eigenvector is normalized with respect to the norm defined by the B matrix.

See Also

EPSGetEigenvalue(), EPSGetEigenvector(), EPSGetLeftEigenvector(), EPSSolve(),
EPSGetConverged(), EPSSetWhichEigenpairs(), EPSGetInvariantSubspace()

Location: src/eps/interface/epssolve.c



Index of all EPS routines
Table of Contents for all manual pages
Index of all manual pages