Commit Graph

6 Commits

Author SHA1 Message Date
Markus Blatt
1e205adcf1 Added support for the parallel solvers of dune-istl.
To support this the solveSystem methods of the LinearSolverInterface gets
an optional additional template parameter of type boost::any. It can hold any
copy constructable object. In our case it is used to pass the information about
the parallelization into the solvers of dune-istl without the compiler needing to know
their type. Inside of LinearSolverIstl::solveSystem we check whether the type stored inside of
boost::any is the new ParallelIstlInformation. If this is the case we extract the information
and use the parallel solvers if available, otherwise we solve serial/sequential.

The new ParallelIstlInformation is needed as the OwnerOverlapCopyCommunication is not copy
constructable. This is indeed a design flaw that should and will fixed upstream, but for the
time being we need ParallelIstlInformation to transfer the ParallelIndexSet and RemoteIndices
objects.
2014-03-20 21:59:29 +01:00
Xavier Raynaud
38562a5d7a Added possibility to set tolerance for linear solvers. 2012-06-06 15:14:46 +02:00
Atgeirr Flø Rasmussen
b863ac37fd Removed copied text accidentally left in. 2012-02-21 22:02:16 +01:00
Atgeirr Flø Rasmussen
fe91b1ba70 Fixed class comments, LinearSolverUmfpack::solve() properly returns a report. 2012-02-21 21:54:46 +01:00
Atgeirr Flø Rasmussen
d9ed7cadad Made the solve() methods const. 2012-02-21 21:36:09 +01:00
Atgeirr Flø Rasmussen
af260d3d75 Added LinearSolverInterface and two subclasses, using Umfpack and Istl. 2012-02-21 21:27:15 +01:00