Lawrence Mitchell <[email protected]> writes: > So is the problem that the nullspace belongs to the appropriate > operator, but at the point you tell the solver, you don't necessarily > have all the operators to hand? Moreover, depending on the PC choice, > the nullspaces of the operator blocks may or may not be relevant?
Given the system [A B; C D], the null space of D has nothing to do with
the null space of S = D - C A^{-1} B. In some important cases, D is the
zero matrix, for example. Using MatSetNullSpace to set a null space on
D (even if you have it in hand) is lying and may cause the wrong thing
to happen if you use a different solver configuration (e.g., a
relaxation split).
Attaching a null space to an IS is damn perverse because an index set is
a bag of integers and you're labeling it with information about a Mat
that is the result of some other algorithm using lots more information
than just the IS (and done in a non-unique way).
signature.asc
Description: PGP signature
