petsc-3.7.1 2016-05-15
Report Typos and Errors

# PCML

Use algebraic multigrid preconditioning. This preconditioner requires you provide fine grid discretization matrix. The coarser grid matrices and restriction/interpolation operators are computed by ML, with the matrices coverted to PETSc matrices in aij format and the restriction/interpolation operators wrapped as PETSc shell matrices.

### Options Database Key

### Multigrid options(inherited)

| -pc_mg_cycles <1>: 1 for V cycle, 2 for W | - cycle (MGSetCycles) Many br
| -pc_mg_smoothup <1>: Number of post | - smoothing steps (MGSetNumberSmoothUp) Many br
| -pc_mg_smoothdown <1>: Number of pre | - smoothing steps (MGSetNumberSmoothDown) Many br
| -pc_mg_type <multiplicative>: (one of) additive multiplicative full kascade | - ML options: Many br+ -pc_ml_PrintLevel <0>: Print level (ML_Set_PrintLevel) Many br

-pc_ml_maxNlevels <10>: Maximum number of levels (None) -. -pc_ml_maxCoarseSize <1>: Maximum coarsest mesh size (ML_Aggregate_Set_MaxCoarseSize) Many br
-pc_ml_CoarsenScheme <Uncoupled>: (one of) Uncoupled Coupled MIS METIS -. -pc_ml_DampingFactor <1.33333>: P damping factor (ML_Aggregate_Set_DampingFactor) Many br
-pc_ml_Threshold <0>: Smoother drop tol (ML_Aggregate_Set_Threshold) -. -pc_ml_SpectralNormScheme_Anorm <false>: Method used for estimating spectral radius (ML_Set_SpectralNormScheme_Anorm) Many br
-pc_ml_repartition <false>: Allow ML to repartition levels of the heirarchy (ML_Repartition_Activate) -. -pc_ml_repartitionMaxMinRatio <1.3>: Acceptable ratio of repartitioned sizes (ML_Repartition_Set_LargestMinMaxRatio) Many br
-pc_ml_repartitionMinPerProc <512>: Smallest repartitioned size (ML_Repartition_Set_MinPerProc) -. -pc_ml_repartitionPutOnSingleProc <5000>: Problem size automatically repartitioned to one processor (ML_Repartition_Set_PutOnSingleProc) Many br
-pc_ml_repartitionType <Zoltan>: Repartitioning library to use (ML_Repartition_Set_Partitioner) -. -pc_ml_repartitionZoltanScheme <RCB>: Repartitioning scheme to use (None) Many br
-pc_ml_Aux <false>: Aggregate using auxiliary coordinate -based laplacian (None) Many br
-pc_ml_AuxThreshold <0.0>: Auxiliary smoother drop tol (None) - Many br Many br

### See Also

PCCreate(), PCSetType(), PCType (for list of available types), PC, PCMGType,
PCMGSetLevels(), PCMGGetLevels(), PCMGSetType(), MPSetCycles(), PCMGSetNumberSmoothDown(), Many brPCMGSetNumberSmoothUp(), PCMGGetCoarseSolve(), PCMGSetResidual(), PCMGSetInterpolation(), Many brPCMGSetRestriction(), PCMGGetSmoother(), PCMGGetSmootherUp(), PCMGGetSmootherDown(), Many brPCMGSetCycleTypeOnLevel(), PCMGSetRhs(), PCMGSetX(), PCMGSetR() Many br

Level:intermediate
Location:src/ksp/pc/impls/ml/ml.c
Index of all PC routines
Table of Contents for all manual pages
Index of all manual pages