:orphan: # PCPFMG the hypre PFMG multigrid solver ## Options Database Keys - ***-pc_pfmg_its -*** number of iterations of PFMG to use as preconditioner - ***-pc_pfmg_num_pre_relax -*** number of smoothing steps before coarse grid solve - ***-pc_pfmg_num_post_relax -*** number of smoothing steps after coarse grid solve - ***-pc_pfmg_tol -*** tolerance of PFMG - ***-pc_pfmg_relax_type -*** relaxation type for the up and down cycles, one of Jacobi,Weighted-Jacobi,symmetric-Red/Black-Gauss-Seidel,Red/Black-Gauss-Seidel - ***-pc_pfmg_rap_type -*** type of coarse matrix generation, one of Galerkin,non-Galerkin - ***-pc_pfmg_skip_relax -*** skip relaxation on certain grids for isotropic problems. This can greatly improve efficiency by eliminating unnecessary relaxations when the underlying problem is isotropic, one of 0,1 ## Notes This is for CELL-centered descretizations See `PCSYSPFMG` for a version suitable for systems of PDEs, and `PCSMG` See `PCHYPRE` for hypre's BoomerAMG algebraic multigrid solver This must be used with the `MATHYPRESTRUCT` matrix type. This provides only some of the functionality of PFMG, it supports only one block per process defined by a PETSc `DMDA`. ## See Also `PCMG`, `MATHYPRESTRUCT`, `PCHYPRE`, `PCGAMG`, `PCSYSPFMG`, `PCSMG` ## Level advanced ## Location src/ksp/pc/impls/hypre/hypre.c --- [Edit on GitLab](https://gitlab.com/petsc/petsc/-/edit/release/src/ksp/pc/impls/hypre/hypre.c) [Index of all PC routines](index.md) [Table of Contents for all manual pages](/manualpages/index.md) [Index of all manual pages](/manualpages/singleindex.md)