slepc-3.17.1 2022-04-11
Report Typos and Errors


Applies the nonlinear function T(lambda) to a given vector.


#include "slepcnep.h" 
PetscErrorCode NEPApplyFunction(NEP nep,PetscScalar lambda,Vec x,Vec v,Vec y,Mat A,Mat B)
Collective on nep

Input Parameters

nep  - the nonlinear eigensolver context
lambda  - scalar argument
x  - vector to be multiplied against
v  - workspace vector (used only in the case of split form)

Output Parameters

y  - result vector
A  - (optional) Function matrix, for callback interface only
B  - (unused) preconditioning matrix


If the nonlinear operator is represented in split form, the result y = T(lambda)*x is computed without building T(lambda) explicitly. In that case, parameters A and B are not used. Otherwise, the matrix T(lambda) is built and the effect is the same as a call to NEPComputeFunction() followed by a MatMult().

See Also

NEPSetSplitOperator(), NEPComputeFunction(), NEPApplyAdjoint()

Location: src/nep/interface/nepsolve.c
Index of all NEP routines
Table of Contents for all manual pages
Index of all manual pages