diff --git a/dune/tectonic/globallaursennonlinearity.hh b/dune/tectonic/globallaursennonlinearity.hh
index 18cbac8f8e51b53aa196e0fa5e0ec420adf98cc0..b478fe7c07a63ab9c938af67f9ab87f6b022b6bf 100644
--- a/dune/tectonic/globallaursennonlinearity.hh
+++ b/dune/tectonic/globallaursennonlinearity.hh
@@ -21,7 +21,7 @@ class GlobalLaursenNonlinearity : public GlobalNonlinearity<dim> {
   GlobalLaursenNonlinearity(
       shared_ptr<std::vector<double> const> mu,
       shared_ptr<std::vector<double> const> normalStress,
-      std::vector<FieldVector<double, 1>> const &nodalIntegrals)
+      shared_ptr<std::vector<FieldVector<double, 1>> const> nodalIntegrals)
       : mu(mu), normalStress(normalStress), nodalIntegrals(nodalIntegrals) {}
 
   /*
@@ -39,7 +39,7 @@ class GlobalLaursenNonlinearity : public GlobalNonlinearity<dim> {
     sigma_n [id + mu id] = sigma_n (1 + mu) id
   */
   virtual shared_ptr<LocalNonlinearity<dim> const> restriction(int i) const {
-    double coefficient = nodalIntegrals[i][0];
+    double coefficient = (*nodalIntegrals)[i][0];
     coefficient *= (*normalStress)[i];
     coefficient *= 1 + (*mu)[i];
 
@@ -54,7 +54,7 @@ class GlobalLaursenNonlinearity : public GlobalNonlinearity<dim> {
   // results
   shared_ptr<std::vector<double> const> mu;
   shared_ptr<std::vector<double> const> normalStress;
-  std::vector<FieldVector<double, 1>> nodalIntegrals;
+  shared_ptr<std::vector<FieldVector<double, 1>> const> nodalIntegrals;
 };
 }
 #endif
diff --git a/src/one-body-sample.cc b/src/one-body-sample.cc
index b837a84c1cd0bdcbe45c2f852c147c8c9e93eb17..4a35e6d4a81d581edd06b2799505dbda0626a076 100644
--- a/src/one-body-sample.cc
+++ b/src/one-body-sample.cc
@@ -171,7 +171,7 @@ void assemble_nonlinearity(
   } else if (friction_model == std::string("Laursen")) {
     auto const tmp =
         new Dune::GlobalLaursenNonlinearity<dim, Dune::LinearFunction>(
-            mu, normalStress, *nodalIntegrals);
+            mu, normalStress, nodalIntegrals);
     myGlobalNonlinearity =
         Dune::shared_ptr<Dune::GlobalNonlinearity<dim> const>(tmp);
   } else {