# PCSMG
the hypre (structured grid) SMG multigrid solver 


## Options Database Keys

- ***-pc_smg_its <its> -*** number of iterations of SMG to use as preconditioner
- ***-pc_smg_num_pre_relax <steps> -*** number of smoothing steps before coarse grid
- ***-pc_smg_num_post_relax <steps> -*** number of smoothing steps after coarse grid
- ***-pc_smg_tol <tol> -*** tolerance of SMG



## Notes
This is for CELL-centered descretizations

This must be used with the `MATHYPRESTRUCT` `MatType`.

This does not provide all the functionality of  hypre's SMG solver, it supports only one block per process defined by a PETSc `DMDA`.

See `PCSYSPFMG`, `PCSMG`, `PCPFMG`, and `PCHYPRE` for access to hypre's other preconditioners


## See Also
  `PCMG`, `MATHYPRESTRUCT`, `PCPFMG`, `PCSYSPFMG`, `PCHYPRE`, `PCGAMG`

## Level
advanced

## Location
<A HREF="PETSC_DOC_OUT_ROOT_PLACEHOLDER/src/ksp/pc/impls/hypre/hypre.c.html#PCSMG">src/ksp/pc/impls/hypre/hypre.c</A>


---
[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](/docs/manualpages/index.md)  
[Index of all manual pages](/docs/manualpages/singleindex.md)  
