diff --git a/src/amdis/common/FieldMatVec.hpp b/src/amdis/common/FieldMatVec.hpp
index ceb547bf0ab9f54c7caed3b0aa9dc5eaaf4a133d..41d7229ae94f229d4ea3a401652bd26c18c42668 100644
--- a/src/amdis/common/FieldMatVec.hpp
+++ b/src/amdis/common/FieldMatVec.hpp
@@ -39,6 +39,15 @@ namespace Dune
     template <class T, int N>
     struct IsMatrix<DiagonalMatrix<T,N>> : std::true_type {};
 
+    template <class T>
+    struct IsScalarMatrix : std::false_type {};
+
+    template <class T>
+    struct IsScalarMatrix<FieldMatrix<T,1,1>> : std::true_type {};
+
+    template <class T>
+    struct IsScalarMatrix<DiagonalMatrix<T,1>> : std::true_type {};
+
 
     template <class T>
     struct IsVector : std::false_type {};
@@ -46,6 +55,13 @@ namespace Dune
     template <class T, int N>
     struct IsVector<FieldVector<T,N>> : std::true_type {};
 
+    template <class T>
+    struct IsScalarVector : std::false_type {};
+
+    template <class T>
+    struct IsScalarVector<FieldVector<T,1>> : std::true_type {};
+
+
 
     template <class T>
     struct IsMatVec