PCML#
Use the SNL ML algebraic multigrid preconditioner.
Options Database Keys#
Multigrid options(inherited)#
-pc_mg_cycle_type (v|w) - v for V cycle, w for W-cycle (
PCMGSetCycleType())-pc_mg_distinct_smoothup - Should one configure the up and down smoothers separately (
PCMGSetDistinctSmoothUp())-pc_mg_type (additive|multiplicative|full|kascade) - type of multgrid
ML Options Database Key#
-pc_ml_PrintLevel 0 - Print level (
ML_Set_PrintLevel())-pc_ml_maxNlevels 10 - Maximum number of levels (None)
-pc_ml_maxCoarseSize 1 - Maximum coarsest mesh size (
ML_Aggregate_Set_MaxCoarseSize())-pc_ml_CoarsenScheme Uncoupled - (one of) Uncoupled Coupled MIS METIS
-pc_ml_DampingFactor 1.33333 - P damping factor (
ML_Aggregate_Set_DampingFactor())-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())-pc_ml_repartition false - Allow ML to repartition levels of the hierarchy (
ML_Repartition_Activate())-pc_ml_repartitionMaxMinRatio 1.3 - Acceptable ratio of repartitioned sizes (
ML_Repartition_Set_LargestMinMaxRatio())-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())-pc_ml_repartitionType Zoltan - Repartitioning library to use (
ML_Repartition_Set_Partitioner())-pc_ml_repartitionZoltanScheme RCB - Repartitioning scheme to use (None)
-pc_ml_Aux false - Aggregate using auxiliary coordinate-based Laplacian (None)
-pc_ml_AuxThreshold 0.0 - Auxiliary smoother drop tol (None)
Developer Note#
The coarser grid matrices and restriction/interpolation
operators are computed by ML, with the matrices converted to PETSc matrices in MATAIJ format
and the restriction/interpolation operators wrapped as PETSc shell matrices.
See Also#
KSP: Linear System Solvers, PCCreate(), PCSetType(), PCType, PC, PCMGType, PCMG, PCHYPRE, PCGAMG,
PCMGSetLevels(), PCMGGetLevels(), PCMGSetType(), MPSetCycles(), PCMGSetDistinctSmoothUp(),
PCMGGetCoarseSolve(), PCMGSetResidual(), PCMGSetInterpolation(),
PCMGSetRestriction(), PCMGGetSmoother(), PCMGGetSmootherUp(), PCMGGetSmootherDown(),
PCMGSetCycleTypeOnLevel(), PCMGSetRhs(), PCMGSetX(), PCMGSetR()
Level#
intermediate
Location#
Index of all PC routines
Table of Contents for all manual pages
Index of all manual pages