EPSSolve#

Solves the eigensystem.

Synopsis#

#include "slepceps.h" 
PetscErrorCode EPSSolve(EPS eps)

Collective

Input Parameter#

  • eps - the linear eigensolver context

Options Database Keys#

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

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

  • -eps_view_mat0 - view the first matrix (\(A\))

  • -eps_view_mat1 - view the second matrix (\(B\))

  • -eps_view_vectors - view the computed eigenvectors

  • -eps_view_values - view the computed eigenvalues

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

  • -eps_error_absolute - print absolute errors of each eigenpair

  • -eps_error_relative - print relative errors of each eigenpair

  • -eps_error_backward - print backward errors of each eigenpair

Notes#

The problem matrices are specified with EPSSetOperators().

EPSSolve() will return without generating an error regardless of whether all requested solutions were computed or not. Call EPSGetConverged() to get the actual number of computed solutions, and EPSGetConvergedReason() 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 -eps_view_mat0 binary:amatrix.bin to save the \(A\) matrix to a binary file, -eps_view_values draw to draw the computed eigenvalues graphically, or -eps_error_relative :myerr.m:ascii_matlab to save the errors in a file that can be executed in Matlab.

See Also#

EPS: Eigenvalue Problem Solver, EPSCreate(), EPSSetUp(), EPSDestroy(), EPSSetOperators(), EPSGetConverged(), EPSGetConvergedReason()

Level#

beginner

Location#

src/eps/interface/epssolve.c

Examples#

src/eps/tutorials/ex29.c
src/eps/tutorials/ex1f.F90
src/eps/tutorials/ex55.c
src/eps/tutorials/ex18.c
src/eps/tutorials/ex3.c
src/eps/tutorials/ex36.c
src/eps/tutorials/ex9.c
src/eps/tutorials/ex2.c
src/eps/tutorials/ex6f.F90
src/eps/tutorials/ex31.c

Implementations#

EPSSolve_LOBPCG() in src/eps/impls/cg/lobpcg/lobpcg.c
EPSSolve_RQCG() in src/eps/impls/cg/rqcg/rqcg.c
EPSSolve_CISS() in src/eps/impls/ciss/ciss.c
EPSSolve_XD() in src/eps/impls/davidson/davidson.c
EPSSolve_ARPACK() in src/eps/impls/external/arpack/arpack.c
EPSSolve_BLOPEX() in src/eps/impls/external/blopex/blopex.c
EPSSolve_ChASE() in src/eps/impls/external/chase/chase.c
EPSSolve_Elemental() in src/eps/impls/external/elemental/elemental.cxx
EPSSolve_ELPA() in src/eps/impls/external/elpa/elpa.c
EPSSolve_EVSL() in src/eps/impls/external/evsl/evsl.c
EPSSolve_FEAST() in src/eps/impls/external/feast/feast.c
EPSSolve_PRIMME() in src/eps/impls/external/primme/primme.c
EPSSolve_ScaLAPACK() in src/eps/impls/external/scalapack/scalapack.c
EPSSolve_Arnoldi() in src/eps/impls/krylov/arnoldi/arnoldi.c
EPSSolve_Lanczos() in src/eps/impls/krylov/lanczos/lanczos.c
EPSSolve_LAPACK() in src/eps/impls/lapack/lapack.c
EPSSolve_LyapII() in src/eps/impls/lyapii/lyapii.c
EPSSolve_Power() in src/eps/impls/power/power.c
EPSSolve_Subspace() in src/eps/impls/subspace/subspace.c


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