PEPSetWhichEigenpairs#

Specifies which portion of the spectrum is to be sought.

Synopsis#

#include "slepcpep.h" 
PetscErrorCode PEPSetWhichEigenpairs(PEP pep,PEPWhich which)

Logically Collective

Input Parameters#

  • pep - eigensolver context obtained from PEPCreate()

  • which - the portion of the spectrum to be sought

Options Database Keys#

  • -pep_largest_magnitude - Sets largest eigenvalues in magnitude

  • -pep_smallest_magnitude - Sets smallest eigenvalues in magnitude

  • -pep_largest_real - Sets largest real parts

  • -pep_smallest_real - Sets smallest real parts

  • -pep_largest_imaginary - Sets largest imaginary parts

  • -pep_smallest_imaginary - Sets smallest imaginary parts

  • -pep_target_magnitude - Sets eigenvalues closest to target

  • -pep_target_real - Sets real parts closest to target

  • -pep_target_imaginary - Sets imaginary parts closest to target

  • -pep_all - Sets all eigenvalues in an interval or region

Notes#

The parameter ‘which’ can have one of these values

  • PEP_LARGEST_MAGNITUDE - largest eigenvalues in magnitude (default)

  • PEP_SMALLEST_MAGNITUDE - smallest eigenvalues in magnitude

  • PEP_LARGEST_REAL - largest real parts

  • PEP_SMALLEST_REAL - smallest real parts

  • PEP_LARGEST_IMAGINARY - largest imaginary parts

  • PEP_SMALLEST_IMAGINARY - smallest imaginary parts

  • PEP_TARGET_MAGNITUDE - eigenvalues closest to the target (in magnitude)

  • PEP_TARGET_REAL - eigenvalues with real part closest to target

  • PEP_TARGET_IMAGINARY - eigenvalues with imaginary part closest to target

  • PEP_ALL - all eigenvalues contained in a given interval or region

  • PEP_WHICH_USER - user defined ordering set with PEPSetEigenvalueComparison()

Not all eigensolvers implemented in PEP account for all the possible values stated above. If SLEPc is compiled for real numbers PEP_LARGEST_IMAGINARY and PEP_SMALLEST_IMAGINARY use the absolute value of the imaginary part for eigenvalue selection.

The target is a scalar value provided with PEPSetTarget().

The criterion PEP_TARGET_IMAGINARY is available only in case PETSc and SLEPc have been built with complex scalars.

PEP_ALL is intended for use in combination with an interval (see PEPSetInterval()), when all eigenvalues within the interval are requested, and also for computing all eigenvalues in a region with the CISS solver. In both cases, the number of eigenvalues is unknown, so the nev parameter has a different sense, see PEPSetDimensions().

See Also#

PEPGetWhichEigenpairs(), PEPSetTarget(), PEPSetInterval(), PEPSetDimensions(), PEPSetEigenvalueComparison(), PEPWhich

Level#

intermediate

Location#

src/pep/interface/pepopts.c

Examples#

src/pep/tutorials/ex38.c
src/pep/tutorials/ex50.c


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