petsc-master 2019-03-20
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
PC PCGASMSetTotalSubdomains PCNONE
PCASM PCGASMType PCPBJACOBI
PCASMType PCICC PCPatchConstructType
PCBJACOBI PCILU PCSOR
PCCHOLESKY PCJACOBI PCSPAI
PCCompositeType PCKaczmarz PCSide
PCEISENSTAT PCLU PCTFS
PCExoticType PCMGCycleType PCType
PCFailedReason PCMGType PCVPBJACOBI
PCGASM PCMGalerkinType
Intermediate - Setting options for algorithms and data structures
PCASMGetDMSubdomains PCFieldSplitGetDMSplits PCHYPRESetDiscreteCurl
PCASMGetLocalType PCFieldSplitGetDetectSaddlePoint PCHYPRESetDiscreteGradient
PCASMGetType PCFieldSplitGetDiagUseAmat PCHYPRESetEdgeConstantVectors
PCASMSetDMSubdomains PCFieldSplitGetIS PCHYPRESetInterpolations
PCASMSetLocalType PCFieldSplitGetOffDiagUseAmat PCHYPRESetType
PCASMSetOverlap PCFieldSplitGetSchurPre PCISSetSubdomainDiagonalScaling
PCASMSetSortIndices PCFieldSplitGetType PCISSetSubdomainScalingFactor
PCASMSetType PCFieldSplitSchurFactType PCISSetUseStiffnessScaling
PCBDDC PCFieldSplitSchurPreType PCJacobiGetType
PCBDDCGetDirichletBoundaries PCFieldSplitSetBlockSize PCJacobiGetUseAbs
PCBDDCGetDirichletBoundariesLocal PCFieldSplitSetDMSplits PCJacobiSetType
PCBDDCGetNeumannBoundaries PCFieldSplitSetDetectSaddlePoint PCJacobiSetUseAbs
PCBDDCGetNeumannBoundariesLocal PCFieldSplitSetDiagUseAmat PCJacobiType
PCBDDCGetPrimalVerticesIS PCFieldSplitSetFields PCKSP
PCBDDCGetPrimalVerticesLocalIS PCFieldSplitSetGKBDelay PCLMVM
PCBDDCSetChangeOfBasisMat PCFieldSplitSetGKBMaxit PCLMVMClearIS
PCBDDCSetCoarseningRatio PCFieldSplitSetGKBNu PCLMVMGetMatLMVM
PCBDDCSetDirichletBoundaries PCFieldSplitSetGKBTol PCLMVMSetIS
PCBDDCSetDirichletBoundariesLocal PCFieldSplitSetIS PCLMVMSetMatLMVM
PCBDDCSetDofsSplitting PCFieldSplitSetOffDiagUseAmat PCLSC
PCBDDCSetDofsSplittingLocal PCFieldSplitSetSchurFactType PCLoad
PCBDDCSetLevels PCFieldSplitSetSchurPre PCMAT
PCBDDCSetLocalAdjacencyGraph PCFieldSplitSetSchurScale PCMG
PCBDDCSetNeumannBoundaries PCFieldSplitSetType PCMGGetGalerkin
PCBDDCSetNeumannBoundariesLocal PCGALERKIN PCMGSetGalerkin
PCBDDCSetPrimalVerticesIS PCGAMG PCMGSetLevels
PCBDDCSetPrimalVerticesLocalIS PCGAMGASMSetUseAggs PCML
PCBJacobiGetLocalBlocks PCGAMGClassicalGetType PCNN
PCBJacobiGetTotalBlocks PCGAMGClassicalSetType PCPARMS
PCBJacobiSetLocalBlocks PCGAMGGetType PCPARMSGlobalType
PCBJacobiSetTotalBlocks PCGAMGSetCoarseEqLim PCPARMSLocalType
PCCOMPOSITE PCGAMGSetNSmooths PCPARMSSetFill
PCCP PCGAMGSetNlevels PCPARMSSetGlobal
PCDiagonalScaleLeft PCGAMGSetProcEqLim PCPARMSSetLocal
PCDiagonalScaleRight PCGAMGSetRepartition PCPARMSSetNonsymPerm
PCEisenstatGetNoDiagonalScaling PCGAMGSetReuseInterpolation PCPARMSSetSolveRestart
PCEisenstatGetOmega PCGAMGSetSquareGraph PCPARMSSetSolveTolerances
PCEisenstatSetNoDiagonalScaling PCGAMGSetSymGraph PCPATCH
PCEisenstatSetOmega PCGAMGSetThreshold PCPythonSetType
PCExoticSetType PCGAMGSetType PCREDISTRIBUTE
PCFIELDSPLIT PCGAMGSetUseParallelCoarseGridSolve PCREDUNDANT
PCFactorGetAllowDiagonalFill PCGAMGType PCSORGetIterations
PCFactorGetLevels PCGASMDestroySubdomains PCSORGetOmega
PCFactorGetMatSolverType PCGASMGetUseDMSubdomains PCSORGetSymmetric
PCFactorGetShiftAmount PCGASMSetOverlap PCSORSetIterations
PCFactorGetShiftType PCGASMSetSortIndices PCSORSetOmega
PCFactorGetUseInPlace PCGASMSetType PCSORSetSymmetric
PCFactorGetZeroPivot PCGASMSetUseDMSubdomains PCSPAISetBlockSize
PCFactorReorderForNonzeroDiagonal PCGalerkinGetKSP PCSPAISetCacheSize
PCFactorSetAllowDiagonalFill PCGalerkinSetComputeSubmatrix PCSPAISetEpsilon
PCFactorSetColumnPivot PCGalerkinSetInterpolation PCSPAISetMax
PCFactorSetFill PCGalerkinSetRestriction PCSPAISetMaxNew
PCFactorSetLevels PCGetApplicationContext PCSPAISetNBSteps
PCFactorSetMatOrderingType PCGetDM PCSPAISetSp
PCFactorSetMatSolverType PCGetOperators PCSPAISetVerbose
PCFactorSetPivotInBlocks PCGetOperatorsSet PCSetApplicationContext
PCFactorSetReuseFill PCGetReusePreconditioner PCSetCoordinates
PCFactorSetReuseOrdering PCGetType PCSetDM
PCFactorSetShiftAmount PCGetUseAmat PCSetDiagonalScale
PCFactorSetShiftType PCHYPRE PCSetOperators
PCFactorSetUpMatSolverType PCHYPREGetType PCSetReusePreconditioner
PCFactorSetUseInPlace PCHYPRESetAlphaPoissonMatrix PCSetType
PCFactorSetZeroPivot PCHYPRESetBetaPoissonMatrix PCSetUseAmat
Advanced - Setting more advanced options and customization
PCASMCreateSubdomains PCGASMGetSubKSP PCMGSetRestriction
PCASMCreateSubdomains2D PCGASMGetSubdomains PCMGSetRhs
PCASMDestroySubdomains PCGASMGetSubmatrices PCMGSetType
PCASMGetLocalSubdomains PCGASMSetSubdomains PCMGSetX
PCASMGetLocalSubmatrices PCGetFailedReason PCPFMG
PCASMGetSubKSP PCGetOptionsPrefix PCPatchSetComputeFunction
PCASMGetSubMatType PCKSPGetKSP PCPatchSetComputeFunctionInteriorFacets
PCASMSetLocalSubdomains PCKSPSetKSP PCPatchSetComputeOperator
PCASMSetSubMatType PCMGGetCoarseSolve PCPatchSetComputeOperatorInteriorFacets
PCASMSetTotalSubdomains PCMGGetInjection PCRedistributeGetKSP
PCAppendOptionsPrefix PCMGGetInterpolation PCRedundantGetKSP
PCBDDCSetDiscreteGradient PCMGGetLevels PCRedundantGetOperators
PCBDDCSetDivergenceMat PCMGGetRScale PCRedundantSetNumber
PCBJacobiGetSubKSP PCMGGetRestriction PCRedundantSetScatter
PCCHOWILUViennaCL PCMGGetSmoother PCRegister
PCComputeExplicitOperator PCMGGetSmootherDown PCRegisterAll
PCEXOTIC PCMGGetSmootherUp PCRichardsonConvergedReason
PCFactorGetMatrix PCMGGetType PCRowScalingViennaCL
PCFieldSplitGetSchurBlocks PCMGMultiplicativeSetCycles PCSAViennaCL
PCFieldSplitGetSubKSP PCMGSetCycleType PCSHELL
PCFieldSplitRestrictIS PCMGSetCycleTypeOnLevel PCSVD
PCFieldSplitSchurGetS PCMGSetDistinctSmoothUp PCSetErrorIfFailure
PCFieldSplitSchurGetSubKSP PCMGSetInjection PCSetModifySubMatrices
PCFieldSplitSchurRestoreS PCMGSetInterpolation PCSetOptionsPrefix
PCGAMGRegister PCMGSetNumberSmooth PCShellGetContext
PCGAMGSetThresholdScale PCMGSetR PCShellSetContext
PCGASMCreateSubdomains PCMGSetRScale PCSysPFMG
PCGASMCreateSubdomains2D PCMGSetResidual
Developer - Interfaces intended primarily for library developers, not for typical applications programmers
PCApply PCCompositeGetPC PCSetUp
PCApplyBAorAB PCCompositeGetType PCSetUpOnBlocks
PCApplyBAorABTranspose PCCompositeSetType PCShellGetName
PCApplyRichardson PCCompositeSpecialSetAlpha PCShellSetApply
PCApplyRichardsonExists PCCreate PCShellSetApplyBA
PCApplySymmetricLeft PCDestroy PCShellSetApplyRichardson
PCApplySymmetricRight PCGAMGFilterGraph PCShellSetApplySymmetricLeft
PCApplyTranspose PCGAMGFinalizePackage PCShellSetApplySymmetricRight
PCApplyTransposeExists PCGAMGInitializePackage PCShellSetApplyTranspose
PCBDDCCreateFETIDPOperators PCGetDiagonalScale PCShellSetDestroy
PCBDDCFinalizePackage PCMGResidualDefault PCShellSetName
PCBDDCInitializePackage PCModifySubMatrices PCShellSetPostSolve
PCBDDCMatFETIDPGetRHS PCPostSolve PCShellSetPreSolve
PCBDDCMatFETIDPGetSolution PCPreSolve PCShellSetSetUp
PCCompositeAddPC PCReset PCShellSetView
PCCompositeGetNumberPC PCSetFromOptions PCView
No deprecated routines

Table of Contents