PEPSolve#

Solves the polynomial eigenproblem.

Synopsis#

#include "slepcpep.h" 
PetscErrorCode PEPSolve(PEP pep)

Collective

Input Parameter#

  • pep - the polynomial eigensolver context

Options Database Keys#

  • -pep_view - print information about the solver once the solve is complete

  • -pep_view_pre - print information about the solver before the solve starts

  • -pep_view_matk - view the coefficient matrix \(A_k\) (replace k by an integer from 0 to nmat-1)

  • -pep_view_vectors - view the computed eigenvectors

  • -pep_view_values - view the computed eigenvalues

  • -pep_converged_reason - print reason for convergence/divergence, and number of iterations

  • -pep_error_absolute - print absolute errors of each eigenpair

  • -pep_error_relative - print relative errors of each eigenpair

  • -pep_error_backward - print backward errors of each eigenpair

Notes#

The problem matrices are specified with PEPSetOperators().

PEPSolve() will return without generating an error regardless of whether all requested solutions were computed or not. Call PEPGetConverged() to get the actual number of computed solutions, and PEPGetConvergedReason() to determine if the solver converged or failed and why.

All the command-line options listed above admit an optional argument specifying the viewer type and options. For instance, use -pep_view_mat0 binary:matrix0.bin to save the \(A_0\) matrix to a binary file, -pep_view_values draw to draw the computed eigenvalues graphically, or -pep_error_relative :myerr.m:ascii_matlab to save the errors in a file that can be executed in Matlab.

See Also#

PEP: Polynomial Eigenvalue Problems, PEPCreate(), PEPSetUp(), PEPDestroy(), PEPSetTolerances(), PEPGetConverged(), PEPGetConvergedReason()

Level#

beginner

Location#

src/pep/interface/pepsolve.c

Examples#

src/pep/tutorials/ex40.c
src/pep/tutorials/ex50.c
src/pep/tutorials/ex17.c
src/pep/tutorials/ex16.c
src/pep/tutorials/ex16f.F90
src/pep/tutorials/ex28.c
src/pep/tutorials/ex38.c

Implementations#

PEPSolve_CISS() in src/pep/impls/ciss/pciss.c
PEPSolve_JD() in src/pep/impls/jd/pjd.c
PEPSolve_QArnoldi() in src/pep/impls/krylov/qarnoldi/qarnoldi.c
PEPSolve_STOAR() in src/pep/impls/krylov/stoar/stoar.c
PEPSolve_TOAR() in src/pep/impls/krylov/toar/ptoar.c
PEPSolve_Linear() in src/pep/impls/linear/linear.c


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