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

Table of Contents