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

Table of Contents