EPSPowerSetNonlinear#

Sets a flag to indicate that the problem is nonlinear.

Synopsis#

#include "slepceps.h" 
PetscErrorCode EPSPowerSetNonlinear(EPS eps,PetscBool nonlinear)

Logically Collective

Input Parameters#

  • eps - the eigenproblem solver context

  • nonlinear - whether the problem is nonlinear or not

Options Database Key#

  • -eps_power_nonlinear - Sets the nonlinear flag

Notes#

If this flag is set, the solver assumes that the problem is nonlinear, that is, the operators that define the eigenproblem are not constant matrices, but depend on the eigenvector, A(x)x=lambdaB(x)*x. This is different from the case of nonlinearity with respect to the eigenvalue (use the NEP solver class for this kind of problems).

The way in which nonlinear operators are specified is very similar to the case of PETSc’s SNES solver. The difference is that the callback functions are provided via composed functions “formFunction” and “formJacobian” in each of the matrix objects passed as arguments of EPSSetOperators(). The application context required for these functions can be attached via a composed PetscContainer.

See Also#

EPSPowerGetNonlinear(), EPSSetOperators()

Level#

advanced

Location#

src/eps/impls/power/power.c

Examples#

src/eps/tutorials/ex34.c

Implementations#

EPSPowerSetNonlinear_Power() in src/eps/impls/power/power.c


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