petsc-3.12.5 2020-03-29
Report Typos and Errors

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 KSPSetComputeRHS
KSPAGMRES KSPGuess KSPSetFromOptions
KSPBCGS KSPGuessCreate KSPSetInitialGuessNonzero
KSPBCGSL KSPGuessDestroy KSPSetOperators
KSPBICG KSPGuessType KSPSolve
KSPCG KSPIBCGS KSPTCQMR
KSPCGLS KSPLCD KSPTFQMR
KSPCGNE KSPLGMRES KSPType
KSPCGS KSPLSQR KSPView
KSPCGType KSPMINRES KSP_CONVERGED_ATOL
KSPCHEBYSHEV KSPMonitorSet KSP_CONVERGED_ITERATING
KSPCR KSPPGMRES KSP_CONVERGED_ITS
KSPConvergedReason KSPPREONLY KSP_CONVERGED_RTOL
KSPCreate KSPRICHARDSON KSP_DIVERGED_BREAKDOWN
KSPDGMRES KSPReasonView KSP_DIVERGED_BREAKDOWN_BICG
KSPDestroy KSPReset KSP_DIVERGED_DTOL
KSPFBCGS KSPResetFromOptions KSP_DIVERGED_INDEFINITE_PC
KSPFBCGSR KSPResetViewers KSP_DIVERGED_ITS
KSPFCG KSPSYMMLQ KSP_DIVERGED_NONSYMMETRIC
KSPFGMRES KSPSetComputeInitialGuess KSP_DIVERGED_PC_FAILED
KSPGCR KSPSetComputeOperators
Intermediate - Setting options for algorithms and data structures
KSPBCGSLSetEll KSPGetMonitorContext KSPPIPEGCRGetMmax
KSPBCGSLSetPol KSPGetOperators KSPPIPEGCRGetTruncationType
KSPBCGSLSetUsePseudoinverse KSPGetOperatorsSet KSPPIPEGCRGetUnrollW
KSPBCGSLSetXRes KSPGetPCSide KSPPIPEGCRSetMmax
KSPCGSetType KSPGetResidualNorm KSPPIPEGCRSetModifyPC
KSPCGUseSingleReduction KSPGetTolerances KSPPIPEGCRSetTruncationType
KSPChebyshevEstEigGetKSP KSPGetTotalIterations KSPPIPEGCRSetUnrollW
KSPChebyshevEstEigSet KSPGetType KSPPythonSetType
KSPChebyshevEstEigSetUseNoisy KSPGuessFormGuess KSPReasonViewFromOptions
KSPChebyshevSetEigenvalues KSPGuessGetType KSPRichardsonSetScale
KSPConvergedDefault KSPGuessSetFromOptions KSPRichardsonSetSelfScale
KSPConvergedDefaultCreate KSPGuessSetType KSPSetApplicationContext
KSPConvergedDefaultDestroy KSPGuessSetUp KSPSetDM
KSPConvergedDefaultSetUIRNorm KSPGuessUpdate KSPSetDMActive
KSPConvergedDefaultSetUMIRNorm KSPGuessView KSPSetDiagonalScale
KSPFCDTruncationType KSPHPDDM KSPSetDiagonalScaleFix
KSPFCGGetMmax KSPLSQRConvergedDefault KSPSetErrorIfNotConverged
KSPFCGGetTruncationType KSPLSQRGetNorms KSPSetPCSide
KSPFCGSetMmax KSPLSQRGetStandardErrorVec KSPSetReusePreconditioner
KSPFCGSetTruncationType KSPLSQRMonitorDefault KSPSetSkipPCSetFromOptions
KSPFGMRESModifyPCKSP KSPLSQRSetComputeStandardErrorVec KSPSetTolerances
KSPFGMRESModifyPCNoChange KSPLSQRSetExactMatNorm KSPSetType
KSPFGMRESSetModifyPC KSPLoad MatCreateLMVMBFGS
KSPGCRSetModifyPC KSPMonitorCancel MatCreateLMVMBadBrdn
KSPGMRESClassicalGramSchmidtOrthogonalization KSPMonitorDefault MatCreateLMVMBrdn
KSPGMRESGetCGSRefinementType KSPMonitorLGResidualNormCreate MatCreateLMVMDFP
KSPGMRESGetOrthogonalization KSPMonitorLGTrueResidualNormCreate MatCreateLMVMDiagBrdn
KSPGMRESGetRestart KSPMonitorRange MatCreateLMVMSR1
KSPGMRESModifiedGramSchmidtOrthogonalization KSPMonitorSingularValue MatCreateLMVMSymBadBrdn
KSPGMRESMonitorKrylov KSPMonitorSolution MatCreateLMVMSymBrdn
KSPGMRESSetCGSRefinementType KSPMonitorTrueResidualMaxNorm MatCreateSchurComplement
KSPGMRESSetHapTol KSPMonitorTrueResidualNorm MatLMVMAllocate
KSPGMRESSetOrthogonalization KSPPIPEBCGS MatLMVMGetRejectCount
KSPGMRESSetPreAllocateVectors KSPPIPECG MatLMVMGetUpdateCount
KSPGMRESSetRestart KSPPIPECGRR MatLMVMIsAllocated
KSPGROPPCG KSPPIPECR MatLMVMReset
KSPGetApplicationContext KSPPIPEFCG MatLMVMResetShift
KSPGetConvergedReason KSPPIPEFCGGetMmax MatLMVMUpdate
KSPGetDM KSPPIPEFCGGetTruncationType MatSchurComplementAinvType
KSPGetDiagonalScale KSPPIPEFCGSetMmax MatSchurComplementGetKSP
KSPGetDiagonalScaleFix KSPPIPEFCGSetTruncationType MatSchurComplementGetSubMatrices
KSPGetErrorIfNotConverged KSPPIPEFGMRES MatSchurComplementSetSubMatrices
KSPGetInitialGuessNonzero KSPPIPEFGMRESSetShift MatSchurComplementUpdateSubMatrices
KSPGetIterationNumber KSPPIPEGCR MatSymBrdnSetDelta
Advanced - Setting more advanced options and customization
DMGlobalToLocalSolve KSPGetComputeEigenvalues KSPSetNormType
DMKSPGetComputeInitialGuess KSPGetComputeSingularValues KSPSetOptionsPrefix
DMKSPGetComputeOperators KSPGetConvergenceContext KSPSetResidualHistory
DMKSPGetComputeRHS KSPGetConvergenceTest KSPSetUpOnBlocks
DMKSPSetComputeInitialGuess KSPGetInitialGuessKnoll KSPSetUseFischerGuess
DMKSPSetComputeOperators KSPGetNormType KSPTSIRM
DMKSPSetComputeRHS KSPGetOptionsPrefix KSPUnwindPreconditioner
KSPAppendOptionsPrefix KSPGetResidualHistory KSP_GMRES_CGS_REFINE_IFNEEDED
KSPBuildResidual KSPGuessFischerSetModel KSP_GMRES_CGS_REFINE_NEVER
KSPBuildSolution KSPMatRegisterAll KSP_NORM_NATURAL
KSPCGGetNormD KSPMonitorDynamicTolerance KSP_NORM_NONE
KSPCGGetObjFcn KSPMonitorSAWs KSP_NORM_PRECONDITIONED
KSPCGSetRadius KSPNormType KSP_NORM_UNPRECONDITIONED
KSPComputeEigenvalues KSPPIPEFCGGetNprealloc MatCreateSchurComplementPmat
KSPComputeEigenvaluesExplicitly KSPPIPEFCGSetNprealloc MatGetSchurComplement
KSPComputeExtremeSingularValues KSPPIPEGCRGetNprealloc MatLMVMApplyJ0Fwd
KSPComputeOperator KSPPIPEGCRSetNprealloc MatLMVMApplyJ0Inv
KSPComputeRitz KSPPIPELCG MatLMVMClearJ0
KSPConvergedSkip KSPQCGGetQuadratic MatLMVMGetJ0
KSPCreateVecs KSPQCGGetTrialStepNorm MatLMVMGetJ0KSP
KSPFCGGetNprealloc KSPQCGSetTrustRegionRadius MatLMVMGetJ0PC
KSPFCGSetNprealloc KSPRegister MatLMVMSetJ0
KSPFETIDP KSPRegisterAll MatLMVMSetJ0Diag
KSPFETIDPGetInnerBDDC KSPSetCheckNormIteration MatLMVMSetJ0KSP
KSPFETIDPGetInnerKSP KSPSetComputeEigenvalues MatLMVMSetJ0PC
KSPFETIDPSetInnerBDDC KSPSetComputeRitz MatLMVMSetJ0Scale
KSPFETIDPSetPressureOperator KSPSetComputeSingularValues MatSchurComplementComputeExplicitOperator
KSPGLTRGetLambda KSPSetConvergenceTest MatSchurComplementGetAinvType
KSPGLTRGetMinEig KSPSetGuess MatSchurComplementGetPmat
KSPGMRESCGSRefinementType KSPSetInitialGuessKnoll MatSchurComplementSetAinvType
KSPGetAndClearConvergenceTest KSPSetLagNorm
Developer - Interfaces intended primarily for library developers, not for typical applications programmers
DMCopyDMKSP KSPGetPC KSPSTCG
DMGetDMKSP KSPGetRhs KSPSetPC
DMGetDMKSPWrite KSPGetSolution KSPSetPostSolve
DMKSPCopy KSPInitialResidual KSPSetPreSolve
DMProjectField KSPInitializePackage KSPSetSupportedNorm
KSPCheckDot KSPMonitor KSPSetUp
KSPCheckNorm KSPMonitorSAWsCreate KSPSetWorkVecs
KSPCheckSolve KSPMonitorSAWsDestroy KSPSolveTranspose
KSPFinalizePackage KSPMonitorSetFromOptions MatSchurComplementSetKSP
KSPGLTR KSPNASH PCFinalizePackage
KSPGetGuess KSPQCG PCInitializePackage
No deprecated routines

Table of Contents