From 020c88c8945b5f486a3502c4bd8f88ec899b3949 Mon Sep 17 00:00:00 2001
From: Elias Pipping <elias.pipping@fu-berlin.de>
Date: Sun, 13 Nov 2011 20:08:26 +0100
Subject: [PATCH] Comments

Also, minor fix
---
 dune/tectonic/globalnonlinearity.hh | 19 ++++++++++++++++---
 1 file changed, 16 insertions(+), 3 deletions(-)

diff --git a/dune/tectonic/globalnonlinearity.hh b/dune/tectonic/globalnonlinearity.hh
index 5a2f5826..ffcd617e 100644
--- a/dune/tectonic/globalnonlinearity.hh
+++ b/dune/tectonic/globalnonlinearity.hh
@@ -18,10 +18,23 @@ template <int dim, class OuterFunctionType> class GlobalNonlinearity {
         normalStress(normalStress),
         nodalIntegrals(nodalIntegrals) {}
 
+  /*
+    Return a restriction of the outer function to the i'th node. If
+    mu and sigma_n denote the coefficient of friction and the normal
+    stress, respectively, at the i'th node, this function is given
+    by
+
+    sigma_n [(1/eta \bar Gamma)* + mu id]
+
+    TODO: We chose Gamma = id, so that (\bar Gamma)* = \Gamma^{-1}
+    = id^{-1} = id. The factor 1/eta cancels in this special case, leaving us
+    with
+
+    sigma_n [id + mu id] = sigma_n (1 + mu) id
+  */
   void restriction(int i, OuterFunctionType &f) const {
-    double coefficient = normalStress[i] * nodalIntegrals[i];
-    // FIXME: Assume Gamma = id and h_{n+1} = 1 for now;
-    // We then only have to evaluate (1 + F_xi)(|x|)
+    double coefficient = nodalIntegrals[i][0];
+    coefficient *= normalStress[i];
     coefficient *= 1 + coefficientOfFriction[i];
     f = OuterFunctionType(coefficient);
   }
-- 
GitLab