← Back to team overview

dolfin team mailing list archive

Automatically reinitialize GMRES solver when system size changes. [...]

 

Commit from logg (2005-10-18 19:11 CEST)
----------------

Automatically reinitialize GMRES solver when system size changes.

When creating a GMRES object and repeatedly calling solve(), the PETSc
KSP pointer will be automatically reinitialized when the system size changes.
Looks like PETSc initialize some temporary data only on the first solve and
doesn't check if the system size changes on a subsequent solve.

This seems to do the trick for the multi-adaptive Newton solver (but more
tests are needed).

  dolfin  ChangeLog                                     1.240
  dolfin  src/demo/solvers/ode/reaction/main.cpp        1.3
  dolfin  src/kernel/la/GMRES.cpp                       1.10
  dolfin  src/kernel/la/VirtualMatrix.cpp               1.14
  dolfin  src/kernel/la/dolfin/GMRES.h                  1.8
  dolfin  src/kernel/ode/MultiAdaptiveNewtonSolver.cpp  1.18