From 36082d3d0766c9d77089f83fee9fd6df4fdbb953 Mon Sep 17 00:00:00 2001
From: Elias Pipping <elias.pipping@fu-berlin.de>
Date: Tue, 1 Nov 2011 15:20:04 +0100
Subject: [PATCH] Add new sample functions

---
 dune/tectonic/nicefunction.hh | 20 ++++++++++++++++++++
 1 file changed, 20 insertions(+)

diff --git a/dune/tectonic/nicefunction.hh b/dune/tectonic/nicefunction.hh
index 532dfa25..efa0ba61 100644
--- a/dune/tectonic/nicefunction.hh
+++ b/dune/tectonic/nicefunction.hh
@@ -34,6 +34,26 @@ class SampleFunction : public NiceFunction {
   double virtual rightDifferential(double s) const { return (s < 1) ? 1 : 2; }
 };
 
+class SteepFunction : public NiceFunction {
+public:
+  void virtual evaluate(double const& x, double& y) const { y = 100 * x; }
+
+  double virtual leftDifferential(double s) const { return 100; }
+
+  double virtual rightDifferential(double s) const { return 100; }
+};
+
+class SteepFunctionNonsmooth : public NiceFunction {
+public:
+  void virtual evaluate(double const& x, double& y) const {
+    y = (x < 1) ? x : (100 * x - 99);
+  }
+
+  double virtual leftDifferential(double s) const { return (s <= 1) ? 1 : 100; }
+
+  double virtual rightDifferential(double s) const { return (s < 1) ? 1 : 100; }
+};
+
 class TrivialFunction : public NiceFunction {
 public:
   void virtual evaluate(double const& x, double& y) const { y = 0; }
-- 
GitLab