Skip to main content
`Ctrl`+`K`

# PCReset

Resets a `PC` context to the state it was in before `PCSetUp()` was called, and removes any allocated `Vec` and `Mat` from its data structure

## Synopsis

    #include "petscksp.h"
    PetscErrorCode PCReset(PC pc)

Collective

## Input Parameter

- pc - the `PC` preconditioner context

## Notes

Any options set, including those set with `KSPSetFromOptions()` remain.

This allows a `PC` to be reused for a different sized linear system but using the same options that have been previously set in `pc`

## See Also

KSP: Linear System Solvers, `PC`, `PCCreate()`, `PCSetUp()`

## Level

developer

## Location

src/ksp/pc/interface/precon.c

## Implementations

PCReset_AMGX() in src/ksp/pc/impls/amgx/amgx.cxx
PCReset_ASM() in src/ksp/pc/impls/asm/asm.c
PCReset_BDDC() in src/ksp/pc/impls/bddc/bddc.c
PCReset_BJKOKKOS() in src/ksp/pc/impls/bjacobi/bjkokkos/bjkokkos.kokkos.cxx
PCReset_Composite() in src/ksp/pc/impls/composite/composite.c
PCReset_CP() in src/ksp/pc/impls/cp/cp.c
PCReset_Deflation() in src/ksp/pc/impls/deflation/deflation.c
PCReset_Eisenstat() in src/ksp/pc/impls/eisens/eisen.c
PCReset_Cholesky() in src/ksp/pc/impls/factor/cholesky/cholesky.c
PCReset_ICC() in src/ksp/pc/impls/factor/icc/icc.c
PCReset_ILU() in src/ksp/pc/impls/factor/ilu/ilu.c
PCReset_LU() in src/ksp/pc/impls/factor/lu/lu.c
PCReset_QR() in src/ksp/pc/impls/factor/qr/qr.c
PCReset_FieldSplit() in src/ksp/pc/impls/fieldsplit/fieldsplit.c
PCReset_Galerkin() in src/ksp/pc/impls/galerkin/galerkin.c
PCReset_GAMG() in src/ksp/pc/impls/gamg/gamg.c
PCReset_GASM() in src/ksp/pc/impls/gasm/gasm.c
PCReset_H2OPUS() in src/ksp/pc/impls/h2opus/pch2opus.c
PCReset_HPDDM() in src/ksp/pc/impls/hpddm/pchpddm.cxx
PCReset_HYPRE() in src/ksp/pc/impls/hypre/impl/ihypre.c
PCReset_Jacobi() in src/ksp/pc/impls/jacobi/jacobi.c
PCReset_KSP() in src/ksp/pc/impls/ksp/pcksp.c
PCReset_LMVM() in src/ksp/pc/impls/lmvm/lmvmpc.c
PCReset_LSC() in src/ksp/pc/impls/lsc/lsc.c
PCReset_MG() in src/ksp/pc/impls/mg/mg.c
PCReset_ML() in src/ksp/pc/impls/ml/ml.c
PCReset_PATCH() in src/ksp/pc/impls/patch/pcpatch.c
PCReset_Redundant() in src/ksp/pc/impls/redundant/redundant.c
PCReset_SVD() in src/ksp/pc/impls/svd/svd.c
PCReset_Telescope() in src/ksp/pc/impls/telescope/telescope.c

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