EPSSetProblemType#
Specifies the type of the eigenvalue problem.
Synopsis#
#include "slepceps.h"
PetscErrorCode EPSSetProblemType(EPS eps,EPSProblemType type)
Logically Collective
Input Parameters#
eps - the eigensolver context
type - a known type of eigenvalue problem
Options Database Keys#
-eps_hermitian - Hermitian eigenvalue problem
-eps_gen_hermitian - generalized Hermitian eigenvalue problem
-eps_non_hermitian - non-Hermitian eigenvalue problem
-eps_gen_non_hermitian - generalized non-Hermitian eigenvalue problem
-eps_pos_gen_non_hermitian - generalized non-Hermitian eigenvalue problem with positive semi-definite B
-eps_gen_indefinite - generalized Hermitian-indefinite eigenvalue problem
-eps_bse - structured Bethe-Salpeter eigenvalue problem
-eps_hamiltonian - structured Hamiltonian eigenvalue problem
Notes#
This function must be used to instruct SLEPc to exploit symmetry or other kind of structure. If no problem type is specified, by default a non-Hermitian problem is assumed (either standard or generalized). If the user knows that the problem is Hermitian (i.e. A=A^H) or generalized Hermitian (i.e. A=A^H, B=B^H, and B positive definite) then it is recommended to set the problem type so that eigensolver can exploit these properties.
If the user does not call this function, the solver will use a reasonable guess.
For structured problem types such as EPS_BSE, the matrices passed in via EPSSetOperators() must have been created with the corresponding helper function, i.e., MatCreateBSE().
See Also#
EPSSetOperators(), EPSSetType(), EPSGetProblemType(), EPSProblemType
Level#
intermediate
Location#
Examples#
src/eps/tutorials/ex36.c
src/eps/tutorials/ex2.c
src/eps/tutorials/ex18.c
src/eps/tutorials/ex9.c
src/eps/tutorials/ex1f.F90
src/eps/tutorials/ex29.c
src/eps/tutorials/ex6f.F90
src/eps/tutorials/ex3.c
src/eps/tutorials/ex55.c
src/eps/tutorials/ex31.c
Index of all EPS routines Table of Contents for all manual pages Index of all manual pages