On Wed, Jun 29, 2011 at 11:21 PM, Barry Smith <bsmith at mcs.anl.gov> wrote: > ?If you pass in SAME_PRECONDITIONER to the KSPSetOperators() it is simply > impossible that it will rebuild the preconditioner. There must be another > explanation as to what is going on. Are you calling anything else on the KSP?
You are right. I was playing around with options and had set it to SAME_NONZERO_PATTERN for the first iteration at each timestep to make sure that would work (it does), and forgot to change it back. When it is actually set to SAME_PRECONDITIONER and I duplicate Amat to Pmat and pass them to KSPSetOperators() before every KSPSolve, it definitely uses the same preconditioner (as reported by -info), but unfortunately it reverts back to the behavior I saw previously. The number of iterations jumps on the second timestep. > ? Is this only happing with PCML and not with other preconditioners like > PCILU? I have only tried PCML. Let me try PCILU and get back to you. John
