diff --git a/dune/solvers/norms/h1seminorm.hh b/dune/solvers/norms/h1seminorm.hh index f0f6146c2c11f2ac92170d4ca972c420efa229e3..99b53e49fa4602a7d649c93bd11c5ff249a50b79 100644 --- a/dune/solvers/norms/h1seminorm.hh +++ b/dune/solvers/norms/h1seminorm.hh @@ -11,13 +11,14 @@ #include "norm.hh" //! Specialisation of the EnergyNorm class to identity blocks -template<class VectorType> -class H1SemiNorm : public Norm<VectorType> +template<class V, class M = Dune::BCRSMatrix<Dune::FieldMatrix<double,1,1> >> +class H1SemiNorm : public Norm<V> { public: + typedef V VectorType; H1SemiNorm() : matrix_(NULL) {} - H1SemiNorm(const Dune::BCRSMatrix<Dune::FieldMatrix<double,1,1> >& matrix) + H1SemiNorm(const MatrixType& matrix) : matrix_(&matrix) { assert(matrix.N() == matrix.M()); @@ -69,7 +70,7 @@ public: return std::sqrt(sum); } - const Dune::BCRSMatrix<Dune::FieldMatrix<double,1,1> >* matrix_; + const MatrixType* matrix_; };