*
* @author Guido Kanschat, 1999
*/
-class PreconditionIdentity
+class PreconditionIdentity : public Subscriptor
{
public:
/**
* @author Guido Kanschat, 2000
*/
template <class MATRIX = SparseMatrix<double> >
-class PreconditionJacobi : private PreconditionRelaxation<MATRIX>
+class PreconditionJacobi : public Subscriptor, private PreconditionRelaxation<MATRIX>
{
public:
/**
* @author Guido Kanschat, 2000
*/
template <class MATRIX = SparseMatrix<double> >
-class PreconditionSOR : private PreconditionRelaxation<MATRIX>
+class PreconditionSOR : public Subscriptor, private PreconditionRelaxation<MATRIX>
{
public:
/**
* @author Guido Kanschat, 2000
*/
template <class MATRIX = SparseMatrix<double> >
-class PreconditionSSOR : private PreconditionRelaxation<MATRIX>
+class PreconditionSSOR : public Subscriptor, private PreconditionRelaxation<MATRIX>
{
public:
/**
* @author Guido Kanschat, 1999
*/
template<class SOLVER, class MATRIX = SparseMatrix<double>, class PRECONDITION = PreconditionIdentity>
-class PreconditionLACSolver
+class PreconditionLACSolver : public Subscriptor
{
public:
/**
* @author Guido Kanschat, 2000
*/
template<class MATRIX, class PRECOND, class VECTOR>
-class PreconditionedMatrix
+class PreconditionedMatrix : public Subscriptor
{
public:
/**
*/
template <class Matrix = SparseMatrix<double>,
class Vector = Vector<double> >
-class PreconditionSelector
+class PreconditionSelector : public Subscriptor
{
public:
#include <lac/solver.h>
#include <lac/solver_control.h>
#include <cmath>
-
+#include <base/subscriptor.h>
/**
* Bicgstab algorithm by van der Vorst.
*
* work for you, try to change this value.
*/
template <class VECTOR = Vector<double> >
-class SolverBicgstab : private Solver<VECTOR>
+class SolverBicgstab : public Subscriptor, private Solver<VECTOR>
{
public:
/**
#include <lac/solver.h>
#include <lac/solver_control.h>
#include <base/logstream.h>
+#include <base/subscriptor.h>
#include <cmath>
* @author Original implementation by G. Kanschat, R. Becker and F.-T. Suttmeier, reworking and documentation by Wolfgang Bangerth
*/
template <class VECTOR = Vector<double> >
-class SolverCG : private Solver<VECTOR>
+class SolverCG : public Subscriptor, private Solver<VECTOR>
{
public:
/**
/*---------------------------- solver_pgmres.h ---------------------------*/
-
+#include <base/subscriptor.h>
#include <base/logstream.h>
#include <lac/solver.h>
#include <lac/solver_control.h>
* @author Wolfgang Bangerth
*/
template <class VECTOR = Vector<double> >
-class SolverGMRES : private Solver<VECTOR>
+class SolverGMRES : public Subscriptor, private Solver<VECTOR>
{
public:
/**
#include <lac/solver_control.h>
#include <base/logstream.h>
#include <cmath>
-
+#include <base/subscriptor.h>
/**
* @author Thomas Richter, 2000
*/
template <class VECTOR = Vector<double> >
-class SolverMinRes : private Solver<VECTOR>
+class SolverMinRes : public Subscriptor, private Solver<VECTOR>
{
public:
/**
#include <lac/solver_control.h>
#include <base/logstream.h>
#include <cmath>
-
+#include <base/subscriptor.h>
/**
* QMRS method.
* @author Guido Kanschat, 1999
*/
template <class VECTOR = Vector<double> >
-class SolverQMRS : private Solver<VECTOR>
+class SolverQMRS : public Subscriptor, private Solver<VECTOR>
{
public:
/**
#include <lac/solver.h>
#include <lac/solver_control.h>
-
+#include <base/subscriptor.h>
/**
* Implementation of the richardson iteration method. The stopping criterion
* @author Ralf Hartmann
*/
template <class VECTOR = Vector<double> >
-class SolverRichardson : private Solver<VECTOR>
+class SolverRichardson : public Subscriptor, private Solver<VECTOR>
{
public:
/**
* @author Ralf Hartmann, 1999
*/
template <class Vector = Vector<double> >
-class SolverSelector
+class SolverSelector : public Subscriptor
{
public: