Skip to main content
`Ctrl`+`K`

# EPSKRYLOVSCHUR

EPSKRYLOVSCHUR = “krylovschur” - Krylov-Schur method.

## Notes

This is the default solver, and is recommended in most situations.

The implemented algorithm is the single-vector Krylov-Schur method proposed by Stewart [2001] for non-Hermitian eigenproblems. When the problem is Hermitian, the solver will behave as a thick-restart Lanczos method [Wu and Simon, 2000] with full reorthogonalization.

The solver includes support for many features:

- Harmonic extraction, see `EPSSetExtraction()`.

- Inertia-based spectrum slicing to compute all eigenvalues in an interval, see [Campos and Roman, 2012].

- Polynomial filter to compute eigenvalues in an interval via `STFILTER`.

- Indefinite Lanczos to solve `EPSGHIEP` problems.

- Structured variants for problem types such as `EPSBSE`.

- A two-sided variant that also computes left eigenvectors.

- Arbitrary selection of eigenvalues, see `EPSSetArbitrarySelection()`.

## Developer Note

In the future, we would like to have a block version of Krylov-Schur.

## References

[Cam12]

C. Campos and J. E. Roman. Strategies for spectrum slicing based on restarted Lanczos methods. Numer. Algorithms, 60(2):279–295, 2012. doi:10.1007/s11075-012-9564-z.

[Ste01b]

G. W. Stewart. A Krylov–Schur algorithm for large eigenproblems. SIAM J. Matrix Anal. Appl., 23(3):601–614, 2001. doi:10.1137/S0895479800371529.

[Wu00]

K. Wu and H. Simon. Thick-restart Lanczos method for large symmetric eigenvalue problems. SIAM J. Matrix Anal. Appl., 22(2):602–616, 2000. doi:10.1137/S0895479898334605.

## See Also

EPS: Eigenvalue Problem Solver, `EPS`, `EPSType`, `EPSSetType()`, `EPSSetProblemType()`, `EPSSetExtraction()`, `EPSSetArbitrarySelection()`, `EPSSetTwoSided()`

## Level

beginner

## Location

src/eps/impls/krylov/krylovschur/krylovschur.c

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