KSPFGMRESSetModifyPC#

Sets the routine used by FGMRES to modify the preconditioner.

Synopsis#

#include "petscksp.h" 
PetscErrorCode KSPFGMRESSetModifyPC(KSP ksp, PetscErrorCode (*fcn)(KSP, PetscInt, PetscInt, PetscReal, void *), void *ctx, PetscErrorCode (*d)(void *))

Logically Collective on ksp

Input Parameters#

  • ksp - iterative context obtained from KSPCreate

  • fcn - modifypc function

  • ctx - optional context

  • d - optional context destroy routine

Calling Sequence of function#

PetscErrorCode fcn(KSP ksp,PetscInt total_its,PetscInt loc_its,PetscReal res_norm,void*ctx);

ksp - the ksp context being used. total_its - the total number of FGMRES iterations that have occurred. loc_its - the number of FGMRES iterations since last restart. res_norm - the current residual norm. ctx - optional context variable

Options Database Keys#

-ksp_fgmres_modifypcnochange -ksp_fgmres_modifypcksp

Contributed by Allison Baker

Notes#

Several modifypc routines are predefined, including KSPFGMRESModifyPCNoChange() KSPFGMRESModifyPCKSP()

See Also#

KSPFGMRESModifyPCNoChange(), KSPFGMRESModifyPCKSP()

Level#

intermediate

Location#

src/ksp/ksp/impls/gmres/fgmres/modpcf.c

Implementations#

KSPFGMRESSetModifyPC_FGMRES in src/ksp/ksp/impls/gmres/fgmres/fgmres.c


Edit on GitLab

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