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

Table of Contents