On Tue 2008-11-11 13:05, mspieg wrote:
On a related thread,
I think there is a bug in the Newton solvers (in 0.8.1) in that they now
don't zero the correction dx before each linear solve. For direct solvers
this isn't a problem, however for krylov methods (in particular
PETScKrylovSolver), this ends up passing the last correction as the initial
guess for the next iteration. Eventually, when the residual becomes
sufficiently small, this throws a divergence_tolerance error in Petsc. (To see
this, just change the solver in demo/nls/nonlinearpoisson to something like
gmres/ilu and use Petsc as the back end).
This is absolutely correct. I didn't understand Garth's comment earlier
in this thread
It's also useful for Newton solvers.
How would you obtain a guess of the next Newton correction?