PCPFMG — PETSc 3.25.0 documentation

Skip to main content
`Ctrl`+`K`

# PCPFMG

the hypre PFMG multigrid solver

## Options Database Keys

- -pc_pfmg_its its - number of iterations of PFMG to use as preconditioner

- -pc_pfmg_num_pre_relax steps - number of smoothing steps before coarse grid solve

- -pc_pfmg_num_post_relax steps - number of smoothing steps after coarse grid solve

- -pc_pfmg_tol tol - tolerance of PFMG

- -pc_pfmg_relax_type 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 - type of coarse matrix generation, one of Galerkin,non-Galerkin

- -pc_pfmg_skip_relax (0|1) - 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

KSP: Linear System Solvers, `PCMG`, `MATHYPRESTRUCT`, `PCHYPRE`, `PCGAMG`, `PCSYSPFMG`, `PCSMG`

## Level

advanced

## Location

src/ksp/pc/impls/hypre/impl/ihypre.c

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