diff --git a/src/scheme/DiscreteFunctionDPkVariant.hpp b/src/scheme/DiscreteFunctionDPkVariant.hpp
index 0d683c1783c9aad299a81dcc4d7ef3817470d54a..2942f141f38452faed9e95a5f95ca675bc7d8c29 100644
--- a/src/scheme/DiscreteFunctionDPkVariant.hpp
+++ b/src/scheme/DiscreteFunctionDPkVariant.hpp
@@ -35,8 +35,28 @@ class DiscreteFunctionDPkVariant
                                DiscreteFunctionDPk<3, const TinyMatrix<3>>,
 
                                DiscreteFunctionDPkVector<1, const double>,
+                               DiscreteFunctionDPkVector<1, const TinyVector<1>>,
+                               DiscreteFunctionDPkVector<1, const TinyVector<2>>,
+                               DiscreteFunctionDPkVector<1, const TinyVector<3>>,
+                               DiscreteFunctionDPkVector<1, const TinyMatrix<1>>,
+                               DiscreteFunctionDPkVector<1, const TinyMatrix<2>>,
+                               DiscreteFunctionDPkVector<1, const TinyMatrix<3>>,
+
                                DiscreteFunctionDPkVector<2, const double>,
-                               DiscreteFunctionDPkVector<3, const double>>;
+                               DiscreteFunctionDPkVector<2, const TinyVector<1>>,
+                               DiscreteFunctionDPkVector<2, const TinyVector<2>>,
+                               DiscreteFunctionDPkVector<2, const TinyVector<3>>,
+                               DiscreteFunctionDPkVector<2, const TinyMatrix<1>>,
+                               DiscreteFunctionDPkVector<2, const TinyMatrix<2>>,
+                               DiscreteFunctionDPkVector<2, const TinyMatrix<3>>,
+
+                               DiscreteFunctionDPkVector<3, const double>,
+                               DiscreteFunctionDPkVector<3, const TinyVector<1>>,
+                               DiscreteFunctionDPkVector<3, const TinyVector<2>>,
+                               DiscreteFunctionDPkVector<3, const TinyVector<3>>,
+                               DiscreteFunctionDPkVector<3, const TinyMatrix<1>>,
+                               DiscreteFunctionDPkVector<3, const TinyMatrix<2>>,
+                               DiscreteFunctionDPkVector<3, const TinyMatrix<3>>>;
 
  private:
   Variant m_discrete_function_dpk;
@@ -91,7 +111,13 @@ class DiscreteFunctionDPkVariant
   DiscreteFunctionDPkVariant(const DiscreteFunctionDPkVector<Dimension, DataType>& discrete_function_dpk)
     : m_discrete_function_dpk{DiscreteFunctionDPkVector<Dimension, const DataType>{discrete_function_dpk}}
   {
-    static_assert(std::is_same_v<std::remove_const_t<DataType>, double>,
+    static_assert(std::is_same_v<std::remove_const_t<DataType>, double> or                       //
+                    std::is_same_v<std::remove_const_t<DataType>, TinyVector<1, double>> or      //
+                    std::is_same_v<std::remove_const_t<DataType>, TinyVector<2, double>> or      //
+                    std::is_same_v<std::remove_const_t<DataType>, TinyVector<3, double>> or      //
+                    std::is_same_v<std::remove_const_t<DataType>, TinyMatrix<1, 1, double>> or   //
+                    std::is_same_v<std::remove_const_t<DataType>, TinyMatrix<2, 2, double>> or   //
+                    std::is_same_v<std::remove_const_t<DataType>, TinyMatrix<3, 3, double>>,
                   "DiscreteFunctionDPkVector with this DataType is not allowed in variant");
   }
 
diff --git a/src/scheme/PolynomialReconstruction.cpp b/src/scheme/PolynomialReconstruction.cpp
index 7d2c58ac56532ae9144995b4f7991dae12cdca26..d23644a72f6eb34269ea26a42edc82b0bb8cc5a9 100644
--- a/src/scheme/PolynomialReconstruction.cpp
+++ b/src/scheme/PolynomialReconstruction.cpp
@@ -69,8 +69,28 @@ class PolynomialReconstruction::MutableDiscreteFunctionDPkVariant
                                DiscreteFunctionDPk<3, TinyMatrix<3>>,
 
                                DiscreteFunctionDPkVector<1, double>,
+                               DiscreteFunctionDPkVector<1, TinyVector<1>>,
+                               DiscreteFunctionDPkVector<1, TinyVector<2>>,
+                               DiscreteFunctionDPkVector<1, TinyVector<3>>,
+                               DiscreteFunctionDPkVector<1, TinyMatrix<1>>,
+                               DiscreteFunctionDPkVector<1, TinyMatrix<2>>,
+                               DiscreteFunctionDPkVector<1, TinyMatrix<3>>,
+
                                DiscreteFunctionDPkVector<2, double>,
-                               DiscreteFunctionDPkVector<3, double>>;
+                               DiscreteFunctionDPkVector<2, TinyVector<1>>,
+                               DiscreteFunctionDPkVector<2, TinyVector<2>>,
+                               DiscreteFunctionDPkVector<2, TinyVector<3>>,
+                               DiscreteFunctionDPkVector<2, TinyMatrix<1>>,
+                               DiscreteFunctionDPkVector<2, TinyMatrix<2>>,
+                               DiscreteFunctionDPkVector<2, TinyMatrix<3>>,
+
+                               DiscreteFunctionDPkVector<3, double>,
+                               DiscreteFunctionDPkVector<3, TinyVector<1>>,
+                               DiscreteFunctionDPkVector<3, TinyVector<2>>,
+                               DiscreteFunctionDPkVector<3, TinyVector<3>>,
+                               DiscreteFunctionDPkVector<3, TinyMatrix<1>>,
+                               DiscreteFunctionDPkVector<3, TinyMatrix<2>>,
+                               DiscreteFunctionDPkVector<3, TinyMatrix<3>>>;
 
  private:
   Variant m_mutable_discrete_function_dpk;