tadd checkerboard color function - sphere - GPU-based 3D discrete element method algorithm with optional fluid coupling
(HTM) git clone git://src.adamsgaard.dk/sphere
(DIR) Log
(DIR) Files
(DIR) Refs
(DIR) LICENSE
---
(DIR) commit 182d6f9f66b700a9ebc1303d73bf86dfc0bd14af
(DIR) parent 08ce80aa8608430af474a1f5a01235b7e9e3e5c6
(HTM) Author: Anders Damsgaard <anders.damsgaard@geo.au.dk>
Date: Thu, 21 Aug 2014 12:40:21 +0200
add checkerboard color function
Diffstat:
M python/sphere.py | 23 +++++++++++++++++++++++
1 file changed, 23 insertions(+), 0 deletions(-)
---
(DIR) diff --git a/python/sphere.py b/python/sphere.py
t@@ -1845,6 +1845,29 @@ class sim:
+ " large particles, and " + str(self.np[0] - nlarge)
+ " small")
+ def checkerboardColors(self, nx = 6, ny = 6, nz = 6):
+ '''
+ Assign checkerboard color values to the particles in an orthogonal grid.
+
+ :param nx: Number of color values along the x axis
+ :type nx: int
+ :param ny: Number of color values along the y ayis
+ :type ny: int
+ :param nz: Number of color values along the z azis
+ :type nz: int
+ '''
+ x_min = numpy.min(self.x[:,0])
+ x_max = numpy.max(self.x[:,0])
+ y_min = numpy.min(self.x[:,1])
+ y_max = numpy.max(self.x[:,1])
+ z_min = numpy.min(self.x[:,2])
+ z_max = numpy.max(self.x[:,2])
+ for i in numpy.arange(self.np):
+ ix = numpy.floor((self.x[i,0] - x_min)/(x_max/nx))
+ iy = numpy.floor((self.x[i,1] - y_min)/(y_max/ny))
+ iz = numpy.floor((self.x[i,2] - z_min)/(z_max/nz))
+ self.color[i] = (-1)**ix + (-1)**iy + (-1)**iz
+
def contactModel(self, contactmodel):
'''
Define which contact model to use for the tangential component of