Krylov Methods - KSP: : 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 Krylov subspace options at runtime via the options database (e.g., -ksp_type cg ). KSP users can also set KSP options directly in application by directly calling the KSP routines listed below (e.g., KSPSetType() ). KSP components can be used directly to create and destroy solvers; this is not needed for users but is intended for library developers.

Beginner - Basic usage
KSP KSPGMRES KSPSetOperators
KSPBCGS KSPGetConvergedReason KSPSolve
KSPBCGSL KSPLCD KSPType
KSPBICG KSPLGMRES KSPView
KSPCG KSPLSQR KSP_CONVERGED_ATOL
KSPCGNE KSPMINRES KSP_CONVERGED_ITERATING
KSPCGS KSPMonitorSet KSP_CONVERGED_ITS
KSPCGType KSPPREONLY KSP_CONVERGED_RTOL
KSPCHEBYCHEV KSPRICHARDSON KSP_DIVERGED_BREAKDOWN
KSPCR KSPRTCQMR KSP_DIVERGED_BREAKDOWN_BICG
KSPConvergedReason KSPRTFQMR KSP_DIVERGED_DTOL
KSPCreate KSPSYMMLQ KSP_DIVERGED_INDEFINITE_PC
KSPDestroy KSPSetFromOptions KSP_DIVERGED_ITS
KSPFGMRES KSPSetInitialGuessNonzero KSP_DIVERGED_NONSYMMETRIC
Intermediate - Setting options for algorithms and data structures
KSPBCGSLSetEll KSPGMRESSetCGSRefinementType KSPMonitorCancel
KSPBCGSLSetPol KSPGMRESSetHapTol KSPMonitorDefault
KSPBCGSLSetXRes KSPGMRESSetOrthogonalization KSPMonitorLGCreate
KSPCGSetType KSPGMRESSetPreAllocateVectors KSPMonitorLGDestroy
KSPChebychevSetEigenvalues KSPGMRESSetRestart KSPMonitorLGTrueResidualNormCreate
KSPDefaultConverged KSPGetDiagonalScale KSPMonitorLGTrueResidualNormDestroy
KSPDefaultConvergedCreate KSPGetDiagonalScaleFix KSPMonitorSingularValue
KSPDefaultConvergedDestroy KSPGetInitialGuessNonzero KSPMonitorSolution
KSPDefaultConvergedSetUIRNorm KSPGetIterationNumber KSPMonitorTrueResidualNorm
KSPDefaultConvergedSetUMIRNorm KSPGetMonitorContext KSPRichardsonSetScale
KSPFGMRESModifyPCKSP KSPGetOperators KSPSetDiagonalScale
KSPFGMRESModifyPCNoChange KSPGetOperatorsSet KSPSetDiagonalScaleFix
KSPFGMRESSetModifyPC KSPGetPreconditionerSide KSPSetPreconditionerSide
KSPGMRESClassicalGramSchmidtOrthogonalization KSPGetResidualNorm KSPSetTolerances
KSPGMRESModifiedGramSchmidtOrthogonalization KSPGetTolerances KSPSetType
KSPGMRESMonitorKrylov KSPGetType
Advanced - Setting more advanced options and customization
KSPAppendOptionsPrefix KSPGetNullSpace KSPSetCheckNormIteration
KSPBuildResidual KSPGetOptionsPrefix KSPSetComputeEigenvalues
KSPBuildSolution KSPGetResidualHistory KSPSetComputeSingularValues
KSPComputeEigenvalues KSPGetVecs KSPSetConvergenceTest
KSPComputeEigenvaluesExplicitly KSPNASHGetNormD KSPSetInitialGuessKnoll
KSPComputeExplicitOperator KSPNASHGetObjFcn KSPSetNormType
KSPComputeExtremeSingularValues KSPNASHSetRadius KSPSetNullSpace
KSPGLTRGetLambda KSPNormType KSPSetOptionsPrefix
KSPGLTRGetMinEig KSPQCGGetQuadratic KSPSetResidualHistory
KSPGLTRGetNormD KSPQCGGetTrialStepNorm KSPSetUpOnBlocks
KSPGLTRGetObjFcn KSPQCGSetTrustRegionRadius KSPSkipConverged
KSPGLTRSetRadius KSPRegister KSPUnwindPreconditioner
KSPGMRESCGSRefinementType KSPRegisterAll KSP_GMRES_CGS_REFINE_IFNEEDED
KSPGetComputeEigenvalues KSPRegisterDestroy KSP_GMRES_CGS_REFINE_NEVER
KSPGetComputeSingularValues KSPRegisterDynamic KSP_NORM_NATURAL
KSPGetConvergenceContext KSPSTCGGetNormD KSP_NORM_NO
KSPGetInitialGuessKnoll KSPSTCGGetObjFcn KSP_NORM_PRECONDITIONED
KSPGetNormType KSPSTCGSetRadius KSP_NORM_UNPRECONDITIONED
Developer - Interfaces intended primarily for library developers, not for typical applications programmers
KSPAddOptionsChecker KSPInitialResidual KSPSetPC
KSPGLTR KSPInitializePackage KSPSetUp
KSPGetPC KSPNASH KSPSolveTranspose
KSPGetRhs KSPQCG PCInitializePackage
KSPGetSolution KSPSTCG
No deprecated routines

Table of Contents