petsc-dev 2014-04-16
Report Typos and Errors

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
PCASM PCGASMType PCMGType
PCASMType PC PCNONE
PCBJACOBI PCICC PCPBJACOBI
PCCHOLESKY PCILU PCSide
PCCompositeType PCJACOBI PCSOR
PCEISENSTAT PCKaczmarz PCSPAI
PCExoticType PCLU PCTFS
PCGASM PCMGCycleType PCType
Intermediate - Setting options for algorithms and data structures
PCASMGetDMSubdomains PCFieldSplitGetSchurPre PCISSetSubdomainScalingFactor
PCASMSetDMSubdomains PCFieldSplitGetType PCISSetUseStiffnessScaling
PCASMSetOverlap PCFIELDSPLIT PCJacobiSetUseAbs
PCASMSetSortIndices PCFieldSplitSchurFactType PCJacobiSetUseRowMax
PCASMSetType PCFieldSplitSchurPreType PCJacobiSetUseRowSum
PCBDDCGetDirichletBoundaries PCFieldSplitSetBlockSize PCKSP
PCBDDCGetNeumannBoundaries PCFieldSplitSetDMSplits PCLoad
PCBDDC PCFieldSplitSetFields PCLSC
PCBDDCSetCoarseningRatio PCFieldSplitSetIS PCMAT
PCBDDCSetDirichletBoundaries PCFieldSplitSetSchurFactType PCMGGetGalerkin
PCBDDCSetDofsSplitting PCFieldSplitSetSchurPre PCMG
PCBDDCSetLevels PCFieldSplitSetType PCMGSetGalerkin
PCBDDCSetLocalAdjacencyGraph PCGalerkinGetKSP PCMGSetLevels
PCBDDCSetNeumannBoundaries PCGALERKIN PCML
PCBDDCSetNullSpace PCGalerkinSetInterpolation PCNN
PCBDDCSetPrimalVerticesLocalIS PCGalerkinSetRestriction PCPARMSGlobalType
PCBJacobiGetLocalBlocks PCGAMGClassicalSetType PCPARMS
PCBJacobiGetTotalBlocks PCGAMG PCPARMSLocalType
PCBJacobiSetLocalBlocks PCGAMGSetCoarseEqLim PCPARMSSetFill
PCBJacobiSetTotalBlocks PCGAMGSetNlevels PCPARMSSetGlobal
PCCOMPOSITE PCGAMGSetNSmooths PCPARMSSetLocal
PCCP PCGAMGSetProcEqLim PCPARMSSetNonsymPerm
PCDiagonalScaleLeft PCGAMGSetRepartitioning PCPARMSSetSolveRestart
PCDiagonalScaleRight PCGAMGSetReuseProl PCPARMSSetSolveTolerances
PCEisenstatNoDiagonalScaling PCGAMGSetSquareGraph PCPythonSetType
PCEisenstatSetOmega PCGAMGSetSymGraph PCREDISTRIBUTE
PCExoticSetType PCGAMGSetThreshold PCREDUNDANT
PCFactorGetLevels PCGAMGSetType PCSetApplicationContext
PCFactorGetMatSolverPackage PCGAMGSetUseASMAggs PCSetCoordinates
PCFactorReorderForNonzeroDiagonal PCGAMGType PCSetDiagonalScale
PCFactorSetAllowDiagonalFill PCGASMDestroySubdomains PCSetDM
PCFactorSetColumnPivot PCGASMGetDMSubdomains PCSetOperators
PCFactorSetFill PCGASMSetDMSubdomains PCSetType
PCFactorSetLevels PCGASMSetOverlap PCSetUseAmat
PCFactorSetMatOrderingType PCGASMSetSortIndices PCSORSetIterations
PCFactorSetMatSolverPackage PCGASMSetType PCSORSetOmega
PCFactorSetPivotInBlocks PCGetApplicationContext PCSORSetSymmetric
PCFactorSetReuseFill PCGetDM PCSPAISetBlockSize
PCFactorSetReuseOrdering PCGetOperators PCSPAISetCacheSize
PCFactorSetShiftAmount PCGetOperatorsSet PCSPAISetEpsilon
PCFactorSetShiftType PCGetType PCSPAISetMax
PCFactorSetUpMatSolverPackage PCGetUseAmat PCSPAISetMaxNew
PCFactorSetUseInPlace PCHYPREGetType PCSPAISetNBSteps
PCFactorSetZeroPivot PCHYPRE PCSPAISetSp
PCFieldSplitGetDMSplits PCHYPRESetType PCSPAISetVerbose
PCFieldSplitGetIS PCISSetSubdomainDiagonalScaling
Advanced - Setting more advanced options and customization
PCAINVCUSP PCGASMGetSubmatrices PCMGSetR
PCAppendOptionsPrefix PCGASMSetSubdomains PCMGSetRScale
PCASMCreateSubdomains2D PCGASMSetTotalSubdomains PCMGSetType
PCASMCreateSubdomains PCGetOptionsPrefix PCMGSetX
PCASMDestroySubdomains PCKSPGetKSP PCPFMG
PCASMGetLocalSubdomains PCMGGetCoarseSolve PCRedistributeGetKSP
PCASMGetLocalSubmatrices PCMGGetInterpolation PCRedundantGetKSP
PCASMGetSubKSP PCMGGetLevels PCRedundantGetOperators
PCASMSetLocalSubdomains PCMGGetRestriction PCRedundantSetNumber
PCASMSetTotalSubdomains PCMGGetRScale PCRedundantSetScatter
PCBJacobiGetSubKSP PCMGGetSmootherDown PCRegisterAll
PCComputeExplicitOperator PCMGGetSmoother PCRegister
PCEXOTIC PCMGGetSmootherUp PCRichardsonConvergedReason
PCFactorGetMatrix PCMGMultiplicativeSetCycles PCSACUSP
PCFieldSplitGetSchurBlocks PCMGSetCyclesOnLevel PCSetModifySubMatrices
PCFieldSplitGetSubKSP PCMGSetCycleType PCSetOptionsPrefix
PCFieldSplitSchurGetS PCMGSetInterpolation PCShellGetContext
PCFieldSplitSchurRestoreS PCMGSetNumberSmoothDown PCSHELL
PCGASMCreateLocalSubdomains PCMGSetNumberSmoothUp PCShellSetContext
PCGASMCreateSubdomains2D PCMGSetResidual PCSVD
PCGASMGetSubdomains PCMGSetRestriction PCSysPFMG
PCGASMGetSubKSP PCMGSetRhs
Developer - Interfaces intended primarily for library developers, not for typical applications programmers
PCApplyBAorAB PCCompositeSetType PCSetUp
PCApplyBAorABTranspose PCCompositeSpecialSetAlpha PCSetUpOnBlocks
PCApply PCCreate PCShellGetName
PCApplyRichardsonExists PCDestroy PCShellSetApplyBA
PCApplyRichardson PCGAMGFinalizePackage PCShellSetApply
PCApplySymmetricLeft PCGAMGInitializePackage PCShellSetApplyRichardson
PCApplySymmetricRight PCGetDiagonalScale PCShellSetApplyTranspose
PCApplyTransposeExists PCMGResidualDefault PCShellSetDestroy
PCApplyTranspose PCModifySubMatrices PCShellSetName
PCBDDCCreateFETIDPOperators PCPostSolve PCShellSetPostSolve
PCBDDCMatFETIDPGetRHS PCPreSolve PCShellSetPreSolve
PCBDDCMatFETIDPGetSolution PCReset PCShellSetSetUp
PCCompositeAddPC PCSetFromOptions PCShellSetView
PCCompositeGetPC PCSetInitialGuessNonzero PCView
No deprecated routines
None: Not yet cataloged
PCSetReusePreconditioner

Table of Contents