#include <deal.II/base/config.h>
+#include <deal.II/base/mg_level_object.h>
#include <deal.II/base/smartpointer.h>
-#include <deal.II/lac/pointer_matrix.h>
+#include <deal.II/lac/linear_operator.h>
#include <deal.II/lac/vector_memory.h>
#include <deal.II/multigrid/mg_base.h>
-#include <deal.II/base/mg_level_object.h>
#include <vector>
DEAL_II_NAMESPACE_OPEN
/**
* Pointer to the matrices.
*/
- MGLevelObject<PointerMatrix<MatrixType, VectorType> > matrices;
+ MGLevelObject<LinearOperator<VectorType> > matrices;
};
/**
* Pointer to the matrices.
*/
- MGLevelObject<PointerMatrix<MatrixType, VectorType> > matrices;
+ MGLevelObject<LinearOperator<VectorType> > matrices;
};
unsigned int i=matrices.min_level(),
max_level=matrices.max_level();
for (; i<=max_level; ++i)
- matrices[i]=nullptr;
+ matrices[i] = LinearOperator<VectorType>();
}
for (unsigned int i=min; i<=max; ++i)
{
- matrices[i] = &m[i];
+ matrices[i] = linear_operator<VectorType>(m[i]);
smoothers[i].initialize(m[i], data);
}
}
for (unsigned int i=min; i<=max; ++i)
{
- matrices[i] = &m[i];
+ matrices[i] = linear_operator<VectorType>(m[i]);
smoothers[i].initialize(m[i], data[i]);
}
}
unsigned int i=matrices.min_level(),
max_level=matrices.max_level();
for (; i<=max_level; ++i)
- matrices[i]=nullptr;
+ matrices[i]=LinearOperator<VectorType>();
}
for (unsigned int i=min; i<=max; ++i)
{
- matrices[i] = &m[i];
+ matrices[i] = linear_operator<VectorType>(m[i]);
smoothers[i].initialize(m[i], data);
}
}