slepc-main 2024-11-15
NEPSetSplitPreconditioner
Sets an operator in split form from which to build the preconditioner to be used when solving the nonlinear eigenvalue problem in split form.
Synopsis
#include "slepcnep.h"
PetscErrorCode NEPSetSplitPreconditioner(NEP nep,PetscInt ntp,Mat P[],MatStructure strp)
Collective
Input Parameters
| nep | - the nonlinear eigensolver context
|
| ntp | - number of terms in the split preconditioner
|
| P | - array of matrices
|
| strp | - structure flag for matrices
|
Notes
The matrix for the preconditioner is expressed as P(lambda) =
sum_i P_i*f_i(lambda), for i=1,...,n, where the f_i functions
are the same as in NEPSetSplitOperator(). It is not necessary to call
this function. If it is not invoked, then the preconditioner is
built from T(lambda), i.e., both matrices and functions passed in
NEPSetSplitOperator().
The structure flag provides information about P_i's nonzero pattern
in the same way as in NEPSetSplitOperator().
If the functions defining the preconditioner operator were different
from the ones given in NEPSetSplitOperator(), then the split form
cannot be used. Use the callback interface instead.
Use ntp=0 to reset a previously set split preconditioner.
See Also
NEPGetSplitPreconditionerTerm(), NEPGetSplitPreconditionerInfo(), NEPSetSplitOperator()
Level
advanced
Location
src/nep/interface/nepbasic.c
Index of all NEP routines
Table of Contents for all manual pages
Index of all manual pages