petsc-3.7.7 2017-09-25
PCMGGetSmoother
Gets the KSP context to be used as smoother for both pre- and post-smoothing. Call both PCMGGetSmootherUp() and PCMGGetSmootherDown() to use different functions for pre- and post-smoothing.
Synopsis
#include "petscksp.h"
PetscErrorCode PCMGGetSmoother(PC pc,PetscInt l,KSP *ksp)
Not Collective, KSP returned is parallel if PC is
Input Parameters
| pc | - the multigrid context
|
| l | - the level (0 is coarsest) to supply
|
Ouput Parameters
ksp -the smoother
Notes
Once you have called this routine, you can call KSPSetOperators(ksp,...) on the resulting ksp to provide the operators for the smoother for this level.
You can also modify smoother options by calling the various KSPSetXXX() options on this ksp. In addition you can call KSPGetPC(ksp,&pc)
and modify PC options for the smoother; for example PCSetType(pc,PCSOR); to use SOR smoothing.
Keywords
MG, get, multigrid, level, smoother, pre-smoother, post-smoother
See Also
PCMGGetSmootherUp(), PCMGGetSmootherDown()
Level:advanced
Location:src/ksp/pc/impls/mg/mgfunc.c
Index of all PC routines
Table of Contents for all manual pages
Index of all manual pages
Examples
src/snes/examples/tutorials/ex12.c.html