petsc-dev 2013-05-13

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 PCSUPPORTGRAPH
PCExoticType PCMGCycleType PCTFS
PCGASM PCMGType PCType
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
PCBDDCSetCoarseProblemType PCFieldSplitSetSchurFactType PCMG
PCBDDCSetDirichletBoundaries PCFieldSplitSetType PCMGSetGalerkin
PCBDDCSetDofsSplitting PCGalerkinGetKSP PCMGSetLevels
PCBDDCSetLocalAdjacencyGraph PCGALERKIN PCML
PCBDDCSetMaxLevels PCGalerkinSetInterpolation PCNN
PCBDDCSetNeumannBoundaries PCGalerkinSetRestriction PCPARMSGlobalType
PCBDDCSetNullSpace PCGAMG PCPARMS
PCBJacobiGetLocalBlocks PCGAMGSetCoarseEqLim PCPARMSLocalType
PCBJacobiGetTotalBlocks PCGAMGSetNlevels PCPARMSSetFill
PCBJacobiSetLocalBlocks PCGAMGSetNSmooths PCPARMSSetGlobal
PCBJacobiSetTotalBlocks PCGAMGSetProcEqLim PCPARMSSetLocal
PCCOMPOSITE PCGAMGSetRepartitioning PCPARMSSetNonsymPerm
PCCP PCGAMGSetReuseProl PCPARMSSetSolveRestart
PCDiagonalScaleLeft PCGAMGSetSquareGraph PCPARMSSetSolveTolerances
PCDiagonalScaleRight PCGAMGSetSymGraph PCPythonSetType
PCEisenstatNoDiagonalScaling PCGAMGSetThreshold PCREDISTRIBUTE
PCEisenstatSetOmega PCGAMGSetType PCREDUNDANT
PCExoticSetType PCGAMGSetUseASMAggs PCSetApplicationContext
PCFactorGetMatSolverPackage PCGASMDestroySubdomains PCSetCoordinates
PCFactorReorderForNonzeroDiagonal PCGASMGetDMSubdomains PCSetDiagonalScale
PCFactorSetAllowDiagonalFill PCGASMSetDMSubdomains PCSetDM
PCFactorSetColumnPivot PCGASMSetOverlap PCSetOperators
PCFactorSetFill PCGASMSetSortIndices PCSetType
PCFactorSetLevels PCGASMSetType PCSetUseAmat
PCFactorSetMatOrderingType PCGetApplicationContext PCSORSetIterations
PCFactorSetMatSolverPackage PCGetDM PCSORSetOmega
PCFactorSetPivotInBlocks PCGetOperators PCSORSetSymmetric
PCFactorSetReuseFill PCGetOperatorsSet PCSPAISetBlockSize
PCFactorSetReuseOrdering PCGetType PCSPAISetCacheSize
PCFactorSetShiftAmount PCGetUseAmat PCSPAISetEpsilon
PCFactorSetShiftType PCHMPI PCSPAISetMax
PCFactorSetUpMatSolverPackage PCHYPREGetType PCSPAISetMaxNew
PCFactorSetUseInPlace PCHYPRE PCSPAISetNBSteps
PCFactorSetZeroPivot PCHYPRESetType PCSPAISetSp
PCFieldSplitGetDMSplits PCISSetSubdomainDiagonalScaling PCSPAISetVerbose
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 PCMGResidual_Default 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