Skip to main content
`Ctrl`+`K`

# NEPNLEIGS

NEPNLEIGS = “nleigs” - The NLEIGS method.

## Notes

This solver implements the NLEIGS method [Güttel et al., 2014], which is based on rational interpolation followed by linearization. In our implementation, the linear eigensolver for the linearization operates with a compressed Krylov basis, as in the TOAR polynomial eigensolver, see the detailed description in [Campos and Roman, 2021].

This method is particularly appropriate for nonlinear problems with singularities. The solver will try to determine the singularities automatically, but the user can also provide them with `NEPNLEIGSSetSingularitiesFunction()`.

By default, the solver performs the static NLEIGS variant, with constant shift given by `NEPSetTarget()`. But the dynamic variant (rational Krylov) is also available if a list of shifts is given in `NEPNLEIGSSetRKShifts()`.

`NEPNLEIGS` also implements a two-sided variant for computing left eigenvectors when `NEPSetTwoSided()` has been set.

Apart from working with the compressed basis, it is also possible to enable the operation with an explicit basis for the linear eigensolver, see `NEPNLEIGSSetFullBasis()`. This allows using other eigensolvers via an `EPS` object obtained with `NEPNLEIGSGetEPS()`. Also, the explicit basis is activated in the two-sided variant.

## References

[Cam21]

C. Campos and J. E. Roman. NEP: a module for the parallel solution of nonlinear eigenvalue problems in SLEPc. ACM Trans. Math. Software, 47(3):23:1–23:29, 2021. doi:10.1145/3447544.

[Gut14]

S. Güttel, R. van Beeumen, K. Meerbergen, and W. Michiels. NLEIGS: a class of fully rational Krylov methods for nonlinear eigenvalue problems. SIAM J. Sci. Comput., 36(6):A2842–A2864, 2014. doi:10.1137/130935045.

## See Also

NEP: Nonlinear Eigenvalue Problems, `NEP`, `NEPType`, `NEPSetType()`, `NEPNLEIGSSetSingularitiesFunction()`, `NEPSetTarget()`, `NEPNLEIGSSetRKShifts()`, `NEPNLEIGSSetFullBasis()`, `NEPNLEIGSGetEPS()`, `NEPSetTwoSided()`

## Level

beginner

## Location

src/nep/impls/nleigs/nleigs.c

## Implementations

NEPNLEIGS_RKcontinuation() in src/nep/impls/nleigs/nleigs.c

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