← Back to team overview

dolfin team mailing list archive

Re: [DOLFIN-DEV] Some Iterative Linear Solver Doubts.

 



Jed Brown wrote:
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?


Most problems use an incremental-iterative approach (applying Newton's method in a series of steps). The dx for iteration 0 in step n will often be a good guess for the iteration 0 dx of step n+1.

Of course, after the initial correction, dx=0 is an appropriate guess.

Garth

Jed


------------------------------------------------------------------------

_______________________________________________
DOLFIN-dev mailing list
DOLFIN-dev@xxxxxxxxxx
http://www.fenics.org/mailman/listinfo/dolfin-dev


References