diff --git a/dune/tectonic/nicefunction.hh b/dune/tectonic/nicefunction.hh
index fdcdc0e4b4f115b9b475a0c4a3ecdc1a63ff0323..6ff57720c396a0960c4183bd98273c7323d68ff5 100644
--- a/dune/tectonic/nicefunction.hh
+++ b/dune/tectonic/nicefunction.hh
@@ -73,6 +73,20 @@ class RuinaFunction : public NiceFunction {
     return coefficient * normalStress * (a * std::log(eta * s) + mu);
   }
 
+  /*
+    d/dx a * log(eta x) + mu
+    = a * 1/(eta x) * eta
+    = a/x
+  */
+  double virtual second_deriv(double s) const {
+    if (eta * s < rho)
+      return 0;
+    else if (eta * s == rho)
+      return 37; // TODO: not differentiable;
+    else
+      return coefficient * normalStress * (a / s);
+  }
+
 private:
   double coefficient;
   double a;