diff --git a/dune/elasticity/materials/adolcmaterial.hh b/dune/elasticity/materials/adolcmaterial.hh
index 57b86b6ed3ea2d535a1f5aefce7b9630a6f427d9..1e53f291b748c70b61d42819bf4bd0d5e2290e1b 100644
--- a/dune/elasticity/materials/adolcmaterial.hh
+++ b/dune/elasticity/materials/adolcmaterial.hh
@@ -51,18 +51,18 @@ private:
 public:
     AdolcMaterial() {};
 
-    AdolcMaterial(const Basis& basis, const LocalEnergy& localEnergy) :
+    AdolcMaterial(const Basis& basis, const LocalEnergy& localEnergy, bool vectorMode=true) :
         Base(basis),
         localEnergy_(&localEnergy),
         localLinearization_(localEnergy),
-        localHessian_(localEnergy)
+        localHessian_(localEnergy,vectorMode)
     {}
 
-    void setup(const Basis& basis, const LocalEnergy& localEnergy)
+    void setup(const Basis& basis, const LocalEnergy& localEnergy, bool vectorMode=true)
     {
         localEnergy_ = &localEnergy;
         localLinearization_ =  AdolcLinearization(localEnergy);
-        localHessian_ = AdolcHessian(localEnergy);
+        localHessian_ = AdolcHessian(localEnergy,vectorMode);
 
         this->basis_ = &basis;
     }