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