Introduction
Introduction Statistics Contact Development Disclaimer Help
timproved docstring - sphere - GPU-based 3D discrete element method algorithm w…
git clone git://src.adamsgaard.dk/sphere
Log
Files
Refs
LICENSE
---
commit b9a5358ac9428fb493981309696c20bed6273b08
parent db7408de0d0dcc2b1b2d951eb69f499961de9d81
Author: Anders Damsgaard <[email protected]>
Date: Thu, 14 Aug 2014 15:44:49 +0200
improved docstring
Diffstat:
M python/sphere.py | 45 +++++++++++++++++++----------…
1 file changed, 27 insertions(+), 18 deletions(-)
---
diff --git a/python/sphere.py b/python/sphere.py
t@@ -4154,18 +4154,24 @@ class sim:
saved in the current folder with the file name
'<simulation id>-loadcurve.<graphics_format>'.
The consolidation coefficient calculations are done on the base of
- Bowles 1992, p. 129--139. It is assumed that the consolidation has
- stopped at the end of the simulation (i.e. flat curve).
+ Bowles 1992, p. 129--139, using the "Casagrande" method.
+ It is assumed that the consolidation has stopped at the end of the
+ simulation (i.e. flat curve).
+
+ :param graphics_format: Save the plot in this format
+ :type graphics_format: str
'''
t = numpy.empty(self.status())
H = numpy.empty_like(t)
- sim = sphere.sim(self.sid, fluid=self.fluid)
- sim.readfirst(i)
- h = sim.w_x[0]
- for i in numpy.arange(1, self.status()):
- sim.readstep(i)
- t[i-1] = sim.time_current[0]
- H[i-1] = sim.w_x[0]
+ sb = sim(self.sid, fluid=self.fluid)
+ sb.readfirst(verbose=False)
+ load = 0.0
+ for i in numpy.arange(1, self.status()+1):
+ sb.readstep(i, verbose=False)
+ if i == 0:
+ load = sb.w_devs[0]
+ t[i-1] = sb.time_current[0]
+ H[i-1] = sb.w_x[0]
# find consolidation parameters
self.H0 = H[0]
t@@ -4180,25 +4186,28 @@ class sim:
i_upper = self.status()-1
while (i_upper - i_lower > 1):
i_midpoint = int((i_upper + i_lower)/2)
- if (self.H50 > H[i_midpoint]):
+ if (self.H50 < H[i_midpoint]):
i_lower = i_midpoint
else:
i_upper = i_midpoint
self.t50 = t[i_lower] + (t[i_upper] - t[i_lower]) * \
(self.H50 - H[i_lower])/(H[i_upper] - H[i_lower])
+ print i_lower
+ print i_upper
self.c_v = T50*self.H50**2.0/(self.t50)
fig = plt.figure()
plt.xlabel('Time [s]')
- plt.ylabel('Consolidation [m]')
- plt.title('Consolidation coefficient $c_v$ = %.4e m^2/s at %f kPa' \
- % (self.c_v, self.w_devs[0]/1000.0))
- plt.semilogx(t, dh, '+-')
- plt.axhline(y = self.H0)
- plt.axhline(y = self.H50)
- plt.axhline(y = self.H100)
- plt.axvline(x = self.t50)
+ plt.ylabel('Height [m]')
+ plt.title('Consolidation coefficient $c_v$ = %.2e m$^2$ s$^{-1}$ at %.…
+ % (self.c_v, sb.w_devs[0]/1000.0))
+ plt.semilogx(t, H, '+-')
+ plt.plot(t, H, '+-')
+ plt.axhline(y = self.H0, color='gray')
+ plt.axhline(y = self.H50, color='gray')
+ plt.axhline(y = self.H100, color='gray')
+ plt.axvline(x = self.t50, color='red')
plt.grid()
plt.savefig(self.sid + '-loadcurve.' + graphics_format)
plt.clf()
You are viewing proxied material from mx1.adamsgaard.dk. The copyright of proxied material belongs to its original authors. Any comments or complaints in relation to proxied material should be directed to the original authors of the content concerned. Please see the disclaimer for more details.