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#

src/ksp/pc/impls/ml/ml.c


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