From fecd02e0c5a6aaa6c3d2606e512068e3e1936ab3 Mon Sep 17 00:00:00 2001
From: Elias Pipping <elias.pipping@fu-berlin.de>
Date: Wed, 14 Mar 2012 11:12:54 +0100
Subject: [PATCH] New problem

---
 src/one-body-sample.parset |  9 ++++-----
 src/one-body-sample.py     | 38 +++++++++++++++++++-------------------
 2 files changed, 23 insertions(+), 24 deletions(-)

diff --git a/src/one-body-sample.parset b/src/one-body-sample.parset
index d4ef4532..efe421eb 100644
--- a/src/one-body-sample.parset
+++ b/src/one-body-sample.parset
@@ -1,5 +1,5 @@
 # -*- mode:conf -*-
-timesteps = 60
+timesteps = 600
 
 verbose = false
 printEvolution = true
@@ -16,7 +16,7 @@ iterations = 50
 refinements = 6
 
 [body]
-E = 1e6
+E = 1e8
 # "Most steels and rigid polymers when used within their design limits
 # (before yield) exhibit values of about 0.3"
 # -- http://en.wikipedia.org/wiki/Poisson's_ratio
@@ -68,8 +68,7 @@ normalstress = 0.1 # laursen depends a lot more on this
 #    constitutive properties for earthquake prediction
 #    http://earthquake.usgs.gov/research/physics/lab/prediction.pdf
 mu = 0.5
-# If eta is too large, the initial state becomes very large
-eta = 1e-8
+eta = 1
 model = Ruina
 
 [boundary.friction.state]
@@ -84,7 +83,7 @@ initial = 0
 a = 0.015
 b = 0.005
 # If L is too large, reaching a steady state takes too long
-L = 1e-8
+L = 1e-4
 
 # The second-order a and b terms in [..] are very important in
 # determining whether sliding is stable or unstable and (in appli-
diff --git a/src/one-body-sample.py b/src/one-body-sample.py
index 93d9bdee..803f86f6 100644
--- a/src/one-body-sample.py
+++ b/src/one-body-sample.py
@@ -1,28 +1,28 @@
 class neumannCondition:
-    def __call__(self, x):
-        # return 0
-        fst = 0.3
-        snd = 0.1
-        trd = 0.3
-        if x < 1.0/3:
-            return fst * x
-        elif x < 2.0/3:
-            return snd * (x - 1.0/3) + fst * 1.0/3
-        else:
-            return trd * (x - 2.0/3) + (fst + snd) * 1.0/3
-
-class dirichletCondition:
     def __call__(self, x):
         return 0
-        # fst = 3e-5
-        # snd = 1e-5
-        # trd = 3e-5
+        # fst = 0.3
+        # snd = 0.1
+        # trd = 0.3
         # if x < 1.0/3:
-        #     return fst
+        #     return fst * x
         # elif x < 2.0/3:
-        #     return snd
+        #     return snd * (x - 1.0/3) + fst * 1.0/3
         # else:
-        #     return trd
+        #     return trd * (x - 2.0/3) + (fst + snd) * 1.0/3
+
+class dirichletCondition:
+    def __call__(self, x):
+        # return 0
+        fst = 3e-5
+        snd = 1e-5
+        trd = 3e-5
+        if x < 1.0/3:
+            return fst
+        elif x < 2.0/3:
+            return snd
+        else:
+            return trd
 
 Functions = {
     'neumannCondition' : neumannCondition(),
-- 
GitLab