slepc-3.16.0 2021-09-30
Report Typos and Errors


Specifies the eigenvalue comparison function when PEPSetWhichEigenpairs() is set to PEP_WHICH_USER.


#include "slepcpep.h" 
PetscErrorCode PEPSetEigenvalueComparison(PEP pep,PetscErrorCode (*func)(PetscScalar,PetscScalar,PetscScalar,PetscScalar,PetscInt*,void*),void* ctx)
Logically Collective on pep

Input Parameters

pep  - eigensolver context obtained from PEPCreate()
func  - a pointer to the comparison function
ctx  - a context pointer (the last parameter to the comparison function)

Calling Sequence of func

  func(PetscScalar ar,PetscScalar ai,PetscScalar br,PetscScalar bi,PetscInt *res,void *ctx)

ar  - real part of the 1st eigenvalue
ai  - imaginary part of the 1st eigenvalue
br  - real part of the 2nd eigenvalue
bi  - imaginary part of the 2nd eigenvalue
res  - result of comparison
ctx  - optional context, as set by PEPSetEigenvalueComparison()


The returning parameter 'res' can be
negative  - if the 1st eigenvalue is preferred to the 2st one
zero  - if both eigenvalues are equally preferred
positive  - if the 2st eigenvalue is preferred to the 1st one

See Also

PEPSetWhichEigenpairs(), PEPWhich

Location: src/pep/interface/pepopts.c



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