## Preconditioners - PC: Examples

The Scalable Linear Equations Solvers (KSP) component provides an easy-to-use interface to the combination of a Krylov subspace iterative method and a preconditioner (in the KSP and PC components, respectively) or a sequential direct solver. KSP users can set various preconditioning options at runtime via the options database (e.g., -pc_type jacobi ). KSP users can also set PC options directly in application codes by first extracting the PC context from the KSP context via KSPGetPC() and then directly calling the PC routines listed below (e.g., PCSetType() ). PC components can be used directly to create and destroy solvers; this is not needed for users but is for library developers.

Beginner - Basic usage | PC | PCICC | PCPBJACOBI
PCASM | PCILU | PCPROMETHEUS
PCASMType | PCJACOBI | PCSOR
PCBJACOBI | PCLU | PCSPAI
PCCHOLESKY | PCMGCyleType | PCSide
PCCompositeType | PCMGType | PCType
PCEISENSTAT | PCNONE |
Intermediate - Setting options for algorithms and data structures | PCASMSetOverlap | PCFactorSetReuseOrdering | PCMG
PCASMSetType | PCFactorSetShiftNonzero | PCMGGetGalerkin
PCASMSetUseInPlace | PCFactorSetShiftPd | PCMGSetGalerkin
PCBJacobiGetLocalBlocks | PCFactorSetUseDropTolerance | PCMGSetLevels
PCBJacobiGetTotalBlocks | PCFactorSetUseInPlace | PCML
PCBJacobiSetLocalBlocks | PCFactorSetZeroPivot | PCNN
PCBJacobiSetTotalBlocks | PCFieldSplitSetBlockSize | PCOPENMP
PCBJacobiSetUseTrueLocal | PCFieldSplitSetFields | PCREDUNDANT
PCCOMPOSITE | PCGALERKIN | PCSASetVectors
PCDiagonalScaleLeft | PCGalerkinGetKSP | PCSORSetIterations
PCDiagonalScaleRight | PCGalerkinSetInterpolation | PCSORSetOmega
PCDiagonalScaleSet | PCGalerkinSetRestriction | PCSORSetSymmetric
PCEisenstatNoDiagonalScaling | PCGetOperators | PCSPAISetBlockSize
PCEisenstatSetOmega | PCGetOperatorsSet | PCSPAISetCacheSize
PCFIELDSPLIT | PCGetType | PCSPAISetEpsilon
PCFactorReorderForNonzeroDiagonal | PCHYPRE | PCSPAISetMax
PCFactorSetAllowDiagonalFill | PCHYPREGetType | PCSPAISetMaxNew
PCFactorSetFill | PCHYPRESetType | PCSPAISetNBSteps
PCFactorSetLevels | PCJacobiSetUseAbs | PCSPAISetSp
PCFactorSetMatOrderingType | PCJacobiSetUseRowMax | PCSPAISetVerbose
PCFactorSetPivotInBlocks | PCJacobiSetUseRowSum | PCSetCoordinates
PCFactorSetPivoting | PCKSP | PCSetOperators
PCFactorSetReuseFill | PCMAT | PCSetType
Advanced - Setting more advanced options and customization | PCASMCreateSubdomains2D | PCMGGetCoarseSolve | PCMGSetType
PCASMGetLocalSubdomains | PCMGGetLevels | PCMGSetX
PCASMGetLocalSubmatrices | PCMGGetSmoother | PCRedundantGetOperators
PCASMGetSubKSP | PCMGGetSmootherDown | PCRedundantGetPC
PCASMSetLocalSubdomains | PCMGGetSmootherUp | PCRedundantSetNumber
PCASMSetTotalSubdomains | PCMGMultiplicativeSetCycles | PCRedundantSetScatter
PCAppendOptionsPrefix | PCMGSetCycleType | PCRegister
PCBJacobiGetSubKSP | PCMGSetCyclesOnLevel | PCRegisterAll
PCComputeExplicitOperator | PCMGSetInterpolation | PCRegisterDestroy
PCFieldSplitGetSubKSP | PCMGSetNumberSmoothDown | PCRegisterDynamic
PCGetFactoredMatrix | PCMGSetNumberSmoothUp | PCSHELL
PCGetOptionsPrefix | PCMGSetR | PCSetModifySubMatrices
PCKSPGetKSP | PCMGSetResidual | PCSetOptionsPrefix
PCKSPSetUseTrue | PCMGSetRestriction | PCShellGetContext
PCMGDefaultResidual | PCMGSetRhs | PCShellSetContext
Developer - Interfaces intended primarily for library developers, not for typical applications programmers | PCApply | PCCreate | PCShellSetApply
PCApplyBAorAB | PCDestroy | PCShellSetApplyBA
PCApplyBAorABTranspose | PCDiagonalScale | PCShellSetApplyRichardson
PCApplyRichardson | PCFieldSplitSetType | PCShellSetApplyTranspose
PCApplyRichardsonExists | PCHasApplyTranspose | PCShellSetDestroy
PCApplySymmetricLeft | PCModifySubMatrices | PCShellSetName
PCApplySymmetricRight | PCPostSolve | PCShellSetPostSolve
PCApplyTranspose | PCPreSolve | PCShellSetPreSolve
PCCompositeAddPC | PCSAMG | PCShellSetSetUp
PCCompositeGetPC | PCSetFromOptions | PCShellSetView
PCCompositeSetType | PCSetUp | PCView
PCCompositeSetUseTrue | PCSetUpOnBlocks |
PCCompositeSpecialSetAlpha | PCShellGetName |
No deprecated routines

Table of Contents