# PCMGType

Determines the type of multigrid method that is run.

### Synopsis

    typedef enum { PC_MG_MULTIPLICATIVE,PC_MG_ADDITIVE,PC_MG_FULL,PC_MG_KASKADE } PCMGType;

### Values

| PC_MG_MULTIPLICATIVE (default) | - traditional V or W cycle as determined by PCMGSetCycles()
| PC_MG_ADDITIVE | - the additive multigrid preconditioner where all levels are smoothed before updating the residual. This only uses the down smoother, in the preconditioner the upper smoother is ignored
| PC_MG_FULL | - same as multiplicative except one also performs grid sequencing, that is starts on the coarsest grid, performs a cycle, interpolates to the next, performs a cycle etc
| PC_MG_KASKADE | - like full multigrid except one never goes back to a coarser level from a finer

### See Also

PCMGSetType()

Level:beginner
Location:src/ksp/pc/impls/ml/../../../../../include/petscmg.h
Index of all PC routines
Table of Contents for all manual pages
Index of all manual pages