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/ex27.c
src/nep/tutorials/ex21.c
src/nep/tutorials/ex42.c
src/nep/tutorials/ex27f.F90
src/nep/tutorials/ex20.c
src/nep/tutorials/ex22f.F90
src/nep/tutorials/ex22.c
src/nep/tutorials/ex54f.F90
src/nep/tutorials/ex20f.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