petsc-dev 2014-02-02
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 PCNONE
PCASMType PC PCPBJACOBI
PCBJACOBI PCICC PCSide
PCCHOLESKY PCILU PCSOR
PCCompositeType PCJACOBI PCSPAI
PCEISENSTAT PCLU PCTFS
PCExoticType PCMGCycleType PCType
PCGASM PCMGType
Intermediate - Setting options for algorithms and data structures
PCASMGetDMSubdomains PCFieldSplitGetType PCISSetUseStiffnessScaling
PCASMSetDMSubdomains PCFIELDSPLIT PCJacobiSetUseAbs
PCASMSetOverlap PCFieldSplitSchurFactType PCJacobiSetUseRowMax
PCASMSetSortIndices PCFieldSplitSchurPrecondition PCJacobiSetUseRowSum
PCASMSetType PCFieldSplitSchurPreType PCKSP
PCBDDCGetDirichletBoundaries PCFieldSplitSetBlockSize PCLoad
PCBDDCGetNeumannBoundaries PCFieldSplitSetDMSplits PCLSC
PCBDDC PCFieldSplitSetFields PCMAT
PCBDDCSetCoarseningRatio PCFieldSplitSetIS PCMGGetGalerkin
PCBDDCSetDirichletBoundaries PCFieldSplitSetSchurFactType PCMG
PCBDDCSetDofsSplitting PCFieldSplitSetType PCMGSetGalerkin
PCBDDCSetLevels PCGalerkinGetKSP PCMGSetLevels
PCBDDCSetLocalAdjacencyGraph PCGALERKIN PCML
PCBDDCSetNeumannBoundaries PCGalerkinSetInterpolation PCNN
PCBDDCSetNullSpace PCGalerkinSetRestriction PCPARMSGlobalType
PCBDDCSetPrimalVerticesLocalIS PCGAMGClassicalSetType PCPARMS
PCBJacobiGetLocalBlocks PCGAMG PCPARMSLocalType
PCBJacobiGetTotalBlocks PCGAMGSetCoarseEqLim PCPARMSSetFill
PCBJacobiSetLocalBlocks PCGAMGSetNlevels PCPARMSSetGlobal
PCBJacobiSetTotalBlocks PCGAMGSetNSmooths PCPARMSSetLocal
PCCOMPOSITE PCGAMGSetProcEqLim PCPARMSSetNonsymPerm
PCCP PCGAMGSetRepartitioning PCPARMSSetSolveRestart
PCDiagonalScaleLeft PCGAMGSetReuseProl PCPARMSSetSolveTolerances
PCDiagonalScaleRight PCGAMGSetSquareGraph PCPythonSetType
PCEisenstatNoDiagonalScaling PCGAMGSetSymGraph PCREDISTRIBUTE
PCEisenstatSetOmega PCGAMGSetThreshold PCREDUNDANT
PCExoticSetType PCGAMGSetType PCSetApplicationContext
PCFactorGetLevels PCGAMGSetUseASMAggs PCSetCoordinates
PCFactorGetMatSolverPackage PCGAMGType PCSetDiagonalScale
PCFactorReorderForNonzeroDiagonal PCGASMDestroySubdomains PCSetDM
PCFactorSetAllowDiagonalFill PCGASMGetDMSubdomains PCSetOperators
PCFactorSetColumnPivot PCGASMSetDMSubdomains PCSetType
PCFactorSetFill PCGASMSetOverlap PCSetUseAmat
PCFactorSetLevels PCGASMSetSortIndices PCSORSetIterations
PCFactorSetMatOrderingType PCGASMSetType PCSORSetOmega
PCFactorSetMatSolverPackage PCGetApplicationContext PCSORSetSymmetric
PCFactorSetPivotInBlocks PCGetDM PCSPAISetBlockSize
PCFactorSetReuseFill PCGetOperators PCSPAISetCacheSize
PCFactorSetReuseOrdering PCGetOperatorsSet PCSPAISetEpsilon
PCFactorSetShiftAmount PCGetType PCSPAISetMax
PCFactorSetShiftType PCGetUseAmat PCSPAISetMaxNew
PCFactorSetUpMatSolverPackage PCHYPREGetType PCSPAISetNBSteps
PCFactorSetUseInPlace PCHYPRE PCSPAISetSp
PCFactorSetZeroPivot PCHYPRESetType PCSPAISetVerbose
PCFieldSplitGetDMSplits PCISSetSubdomainDiagonalScaling
PCFieldSplitGetIS PCISSetSubdomainScalingFactor
Advanced - Setting more advanced options and customization
PCAINVCUSP PCGASMSetSubdomains PCMGSetRScale
PCAppendOptionsPrefix PCGASMSetTotalSubdomains PCMGSetType
PCASASetTolerances PCGetOptionsPrefix PCMGSetX
PCASMCreateSubdomains2D PCKSPGetKSP PCPFMG
PCASMCreateSubdomains PCMGGetCoarseSolve PCRedistributeGetKSP
PCASMDestroySubdomains PCMGGetInterpolation PCRedundantGetKSP
PCASMGetLocalSubdomains PCMGGetLevels PCRedundantGetOperators
PCASMGetLocalSubmatrices PCMGGetRestriction PCRedundantSetNumber
PCASMGetSubKSP PCMGGetRScale PCRedundantSetScatter
PCASMSetLocalSubdomains PCMGGetSmootherDown PCRegisterAll
PCASMSetTotalSubdomains PCMGGetSmoother PCRegister
PCBJacobiGetSubKSP PCMGGetSmootherUp PCRichardsonConvergedReason
PCComputeExplicitOperator PCMGMultiplicativeSetCycles PCSACUSP
PCEXOTIC PCMGSetCyclesOnLevel PCSetModifySubMatrices
PCFactorGetMatrix PCMGSetCycleType PCSetOptionsPrefix
PCFieldSplitGetSchurBlocks PCMGSetInterpolation PCShellGetContext
PCFieldSplitGetSubKSP PCMGSetNumberSmoothDown PCSHELL
PCGASMCreateLocalSubdomains PCMGSetNumberSmoothUp PCShellSetContext
PCGASMCreateSubdomains2D PCMGSetResidual PCSVD
PCGASMGetSubdomains PCMGSetRestriction PCSysPFMG
PCGASMGetSubKSP PCMGSetRhs
PCGASMGetSubmatrices PCMGSetR
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

Table of Contents