Skip to main content
`Ctrl`+`K`

# NEPSolve

Solves the nonlinear eigenproblem.

## Synopsis

    #include "slepcnep.h"
    PetscErrorCode NEPSolve(NEP nep)

Collective

## Input Parameter

- nep - the nonlinear eigensolver context

## Options Database Keys

- -nep_view - print information about the solver once the solve is complete

- -nep_view_pre - print information about the solver before the solve starts

- -nep_view_matk - view the split form matrix \(A_k\) (replace `k` by an integer from 0 to `nt`-1)

- -nep_view_fnk - view the split form function \(f_k\) (replace `k` by an integer from 0 to `nt`-1)

- -nep_view_vectors - view the computed eigenvectors

- -nep_view_values - view the computed eigenvalues

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

- -nep_error_absolute - print absolute errors of each eigenpair

- -nep_error_relative - print relative errors of each eigenpair

- -nep_error_backward - print backward errors of each eigenpair

## Notes

`NEPSolve()` will return without generating an error regardless of whether all requested solutions were computed or not. Call `NEPGetConverged()` to get the actual number of computed solutions, and `NEPGetConvergedReason()` 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 `-nep_view_vectors binary:myvecs.bin` to save the eigenvectors to a binary file, `-nep_view_values draw` to draw the computed eigenvalues graphically, or `-nep_error_relative :myerr.m:ascii_matlab` to save the errors in a file that can be executed in Matlab.

## See Also

NEP: Nonlinear Eigenvalue Problems, `NEPCreate()`, `NEPSetUp()`, `NEPDestroy()`, `NEPSetTolerances()`, `NEPGetConverged()`, `NEPGetConvergedReason()`

## Level

beginner

## Location

src/nep/interface/nepsolve.c

## Examples

src/nep/tutorials/ex22.c
src/nep/tutorials/ex54f.F90
src/nep/tutorials/ex20f.F90
src/nep/tutorials/ex27.c
src/nep/tutorials/ex42.c
src/nep/tutorials/ex20.c
src/nep/tutorials/ex21.c
src/nep/tutorials/ex22f.F90
src/nep/tutorials/ex27f.F90

## Implementations

NEPSolve_CISS() in src/nep/impls/ciss/nciss.c
NEPSolve_Interpol() in src/nep/impls/interpol/interpol.c
NEPSolve_NArnoldi() in src/nep/impls/narnoldi/narnoldi.c
NEPSolve_NLEIGS() in src/nep/impls/nleigs/nleigs.c
NEPSolve_RII() in src/nep/impls/rii/rii.c
NEPSolve_SLP() in src/nep/impls/slp/slp.c

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