Introduction
Introduction Statistics Contact Development Disclaimer Help
tadd method to visualize sediment rate dependence - sphere - GPU-based 3D discr…
git clone git://src.adamsgaard.dk/sphere
Log
Files
Refs
LICENSE
---
commit 418246d1ed3a323dae340566ab6c24e0b1ec4ad9
parent f8229089d0385e01a20cca9f20fdd4fc4afaef88
Author: Anders Damsgaard <[email protected]>
Date: Tue, 17 Feb 2015 13:06:33 +0100
add method to visualize sediment rate dependence
Diffstat:
M python/sphere.py | 38 +++++++++++++++++++++++++++++…
1 file changed, 36 insertions(+), 2 deletions(-)
---
diff --git a/python/sphere.py b/python/sphere.py
t@@ -5472,7 +5472,7 @@ class sim:
return force/(self.L[0]*self.L[1])
- def visualize(self, method = 'energy', savefig = True, outformat = 'png',
+ def visualize(self, method='energy', savefig=True, outformat='png',
pickle=False, xlim=False):
'''
Visualize output from the simulation, where the temporal progress is
t@@ -5482,7 +5482,7 @@ class sim:
:param method: The type of plot to render. Possible values are 'energy…
'walls', 'triaxial', 'mean-fluid-pressure', 'fluid-pressure',
- 'shear', 'shear-displacement', 'porosity'
+ 'shear', 'shear-displacement', 'porosity', 'rate-dependence'
:type method: str
:param savefig: Save the image instead of showing it on screen
:type savefig: bool
t@@ -6083,6 +6083,40 @@ class sim:
fig.tight_layout()
plt.subplots_adjust(hspace=0.05)
+ elif method == 'rate-dependence':
+
+ tau = numpy.empty(sb.status())
+ N = numpy.empty(sb.status())
+ v = numpy.empty(sb.status())
+ for i in numpy.arange(sb.status()):
+ sb.readstep(i+1, verbose=False)
+ #tau = sb.shearStress()
+ tau[i] = sb.w_tau_x # defined shear stress
+ #tau[i] = sb.shearStress()[0] # measured shear stress along x
+ N[i] = sb.currentNormalStress() # defined normal stress
+ v[i] = sb.shearVel()
+
+ # remove nonzero sliding velocities and their associated values
+ idx = numpy.nonzero(v)
+ v_nonzero = v[idx]
+ tau_nonzero = tau[idx]
+ N_nonzero = N[idx]
+
+ ax1 = plt.subplot(111)
+ #ax1.semilogy(N/1000., v)
+ ax1.semilogy(tau_nonzero/N_nonzero, v_nonzero, '.')
+ #ax1.plot(tau/N, v, '.')
+ #ax1.set_xlabel('Effective normal stress [kPa]')
+ ax1.set_xlabel('Friction $\\tau/N$ [-]')
+ ax1.set_ylabel('Shear velocity [m/s]')
+
+ '''
+ ax2 = plt.subplot(212)
+ ax2.plot(tau/N, v, '.')
+ ax1.set_xlabel('Friction $\\tau/N$ [-]')
+ ax1.set_ylabel('Shear velocity [m/s]')
+ '''
+
elif method == 'mean-fluid-pressure':
# Read pressure values from simulation binaries
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.