I realize I let you guys bulldoze me into checking that x and b exist in the call to KSPSolve(). But they don't need to exist so I am attempting to undue the damage someone did by requiring them. Barry If KSPSetDM() was used then it is acceptable for the x and b arguments to KSPSolve to not exist.