KSPSetDM#
Sets the DM that may be used by some preconditioners
Synopsis#
#include "petscksp.h"
PetscErrorCode KSPSetDM(KSP ksp, DM dm)
Logically Collective on ksp
Input Parameters#
ksp - the preconditioner context
dm - the dm, cannot be NULL
Notes#
If this is used then the KSP will attempt to use the DM to create the matrix and use the routine set with DMKSPSetComputeOperators(). Use KSPSetDMActive(ksp,PETSC_FALSE) to instead use the matrix you’ve provided with KSPSetOperators().
A DM can only be used for solving one problem at a time because information about the problem is stored on the DM, even when not using interfaces like DMKSPSetComputeOperators(). Use DMClone() to get a distinct DM when solving different problems using the same function space.
See Also#
KSPGetDM()
, KSPSetDMActive()
, KSPSetComputeOperators()
, KSPSetComputeRHS()
, KSPSetComputeInitialGuess()
, DMKSPSetComputeOperators()
, DMKSPSetComputeRHS()
, DMKSPSetComputeInitialGuess()
Level#
intermediate
Location#
Examples#
src/dm/impls/stag/tutorials/ex4.c.html
src/dm/impls/stag/tutorials/ex8.c.html
src/ksp/ksp/tutorials/ex22f.F90.html
src/ksp/ksp/tutorials/ex25.c.html
src/ksp/ksp/tutorials/ex28.c.html
src/ksp/ksp/tutorials/ex29.c.html
src/ksp/ksp/tutorials/ex32.c.html
src/ksp/ksp/tutorials/ex34.c.html
src/ksp/ksp/tutorials/ex35.cxx.html
src/ksp/ksp/tutorials/ex36.cxx.html
src/ksp/ksp/tutorials/ex43.c.html
Index of all KSP routines
Table of Contents for all manual pages
Index of all manual pages