tuse more appropriate truth comparisons - 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 7991e3a90cc9ef511a57accea71a4766cec57f0f
(DIR) parent 70df506c3f46fc35da97083eb542ac90c3abd46d
(HTM) Author: Anders Damsgaard <anders.damsgaard@geo.au.dk>
Date: Tue, 30 Sep 2014 14:35:53 +0200
use more appropriate truth comparisons
Diffstat:
M python/sphere.py | 72 ++++++++++++++++----------------
1 file changed, 36 insertions(+), 36 deletions(-)
---
(DIR) diff --git a/python/sphere.py b/python/sphere.py
t@@ -270,7 +270,7 @@ class sim:
# Simulate fluid? True: Yes, False: no
self.fluid = fluid
- if self.fluid == True:
+ if self.fluid:
# Fluid dynamic viscosity [N/(m/s)]
self.mu = numpy.zeros(1, dtype=numpy.float64)
t@@ -542,7 +542,7 @@ class sim:
print(64)
return 64
- if (self.fluid == True):
+ if self.fluid:
if (self.mu != other.mu):
print(65)
return 65
t@@ -805,7 +805,7 @@ class sim:
fh = None
try:
- if (verbose == True):
+ if verbose:
print("Input file: {0}".format(targetbin))
fh = open(targetbin, "rb")
t@@ -876,7 +876,7 @@ class sim:
self.torque = numpy.fromfile(fh, dtype=numpy.float64,\
count=self.np*self.nd).reshape(self.np, self.nd)
- if esysparticle == True:
+ if esysparticle:
return
# Per-particle single-value parameters
t@@ -929,11 +929,11 @@ class sim:
self.w_force[i] =\
numpy.fromfile(fh, dtype=numpy.float64, count=1)
self.w_devs[i]= numpy.fromfile(fh, dtype=numpy.float64, count=1)
- if (devsmod == True):
+ if devsmod:
self.w_devs_A = numpy.fromfile(fh, dtype=numpy.float64, count=1)
self.w_devs_f = numpy.fromfile(fh, dtype=numpy.float64, count=1)
- if (bonds == True):
+ if bonds:
# Inter-particle bonds
self.lambda_bar =\
numpy.fromfile(fh, dtype=numpy.float64, count=1)
t@@ -957,7 +957,7 @@ class sim:
else:
self.nb0 = numpy.zeros(1, dtype=numpy.uint32)
- if (self.fluid == True):
+ if self.fluid:
self.mu = numpy.fromfile(fh, dtype=numpy.float64, count=1)
self.v_f = numpy.empty(
t@@ -1091,7 +1091,7 @@ class sim:
fh = None
try :
targetbin = folder + "/" + self.sid + ".bin"
- if (verbose == True):
+ if verbose:
print("Output file: {0}".format(targetbin))
fh = open(targetbin, "wb")
t@@ -1189,7 +1189,7 @@ class sim:
fh.write(self.bonds_omega_n.astype(numpy.float64))
fh.write(self.bonds_omega_t.astype(numpy.float64))
- if (self.fluid == True):
+ if self.fluid:
fh.write(self.mu.astype(numpy.float64))
for z in range(self.num[2]):
for y in range(self.num[1]):
t@@ -1296,17 +1296,17 @@ class sim:
if (i == 0):
sb.writeVTK(verbose=verbose)
elif (i == lastfile):
- if (verbose == True):
+ if verbose:
print("\tto")
sb.writeVTK(verbose=verbose)
else:
sb.writeVTK(verbose=False)
- if (self.fluid == True):
+ if self.fluid:
if (i == 0):
sb.writeFluidVTK(verbose=verbose,
cell_centered=cell_centered)
elif (i == lastfile):
- if (verbose == True):
+ if verbose:
print("\tto")
sb.writeFluidVTK(verbose=verbose,
cell_centered=cell_centered)
t@@ -1349,7 +1349,7 @@ class sim:
fh = None
try :
targetbin = folder + '/' + self.sid + '.vtu' # unstructured grid
- if (verbose == True):
+ if verbose:
print('Output file: ' + targetbin)
fh = open(targetbin, 'w')
t@@ -1407,7 +1407,7 @@ class sim:
fh.write('\n')
fh.write(' </DataArray>\n')
- if self.fluid == True:
+ if self.fluid:
# Fluid interaction force
fh.write(' <DataArray type="Float32" '
+ 'Name="Fluid force total" '
t@@ -1711,7 +1711,7 @@ class sim:
writer.SetFileName(filename)
writer.SetInput(grid)
writer.Update()
- if (verbose == True):
+ if verbose:
print('Output file: ' + filename)
t@@ -1814,7 +1814,7 @@ class sim:
self.radius = numpy.random.uniform(radius_min, radius_max, self.np)
# Show radii as histogram
- if (histogram == True):
+ if histogram:
fig = plt.figure(figsize=(15,10), dpi=300)
figtitle = 'Particle size distribution, {0} particles'.format(\
self.np[0])
t@@ -1867,7 +1867,7 @@ class sim:
if (abs(V_large_total/V_small_total - ratio) > 1.0e5):
raise Exception("Volumetric ratio seems wrong")
- if (verbose == True):
+ if verbose:
print("generateBimodalRadii created " + str(nlarge)
+ " large particles, and " + str(self.np[0] - nlarge)
+ " small")
t@@ -1968,7 +1968,7 @@ class sim:
# Particle positions randomly distributed without overlap
for i in range(self.np):
overlaps = True
- while overlaps == True:
+ while overlaps:
overlaps = False
# Draw random position
t@@ -2582,7 +2582,7 @@ class sim:
# Check numerical stability of the fluid phase, by criteria derived by
# von Neumann stability analysis of the diffusion and advection terms
- if (self.fluid == True):
+ if self.fluid:
# Cell spacing
dx = numpy.amin((\
t@@ -2646,7 +2646,7 @@ class sim:
self.p_f = numpy.ones((self.num[0], self.num[1], self.num[2]),
dtype=numpy.float64) * p
- if (hydrostatic == True):
+ if hydrostatic:
dz = self.L[2]/self.num[2]
# Zero pressure gradient from grid top to top wall, linear pressure
t@@ -3334,19 +3334,19 @@ class sim:
valgrindbin = ""
cudamemchk = ""
binary = "sphere"
- if (verbose == False):
+ if verbose == False:
quiet = "-q "
- if (hideinputfile == True):
+ if hideinputfile:
stdout = " > /dev/null"
- if (dry == True):
+ if dry:
dryarg = "--dry "
- if (valgrind == True):
+ if valgrind:
valgrindbin = "valgrind -q "
- if (cudamemcheck == True):
+ if cudamemcheck:
cudamemchk = "cuda-memcheck --leak-check full "
- if (self.fluid == True):
+ if self.fluid:
fluidarg = "--fluid "
- if (device != -1):
+ if device != -1:
devicearg = "-d " + str(device) + " "
cmd = "cd ..; " + valgrindbin + cudamemchk + "./" + binary + " " \
t@@ -3426,7 +3426,7 @@ class sim:
fh.write('echo "`whoami`@`hostname`"\n')
fh.write('echo "Start at `date`"\n')
fh.write('ORIGDIR=' + spheredir + '\n')
- if (use_workdir == True):
+ if use_workdir:
fh.write('WORKDIR=' + workdir + "/$PBS_JOBID\n")
fh.write('cp -r $ORIGDIR/* $WORKDIR\n')
fh.write('cd $WORKDIR\n')
t@@ -3435,7 +3435,7 @@ class sim:
fh.write('cmake . && make\n')
fh.write('./sphere input/' + self.sid + '.bin > /dev/null &\n')
fh.write('wait\n')
- if (use_workdir == True):
+ if use_workdir:
fh.write('cp $WORKDIR/output/* $ORIGDIR/output/\n')
fh.write('echo "End at `date`"\n')
t@@ -3499,7 +3499,7 @@ class sim:
fh.write('cmake . && make\n')
fh.write('./sphere input/' + self.sid + '.bin > /dev/null &\n')
fh.write('wait\n')
- if (use_workdir == True):
+ if use_workdir:
fh.write('cp $WORKDIR/output/* $ORIGDIR/output/\n')
fh.write('echo "End at `date`"\n')
t@@ -4082,7 +4082,7 @@ class sim:
if (self.p[i] > pmax):
pmax = self.p[i]
- if (verbose == True):
+ if verbose:
print("Max. pressure of intersecting spheres: " + str(pmax) + " Pa")
if (cbmax != None):
print("Value limited to: " + str(cbmax) + " Pa")
t@@ -4554,7 +4554,7 @@ class sim:
(self.H50 - H[i_lower])/(H[i_upper] - H[i_lower])
self.c_v = T50*self.H50**2.0/(self.t50)
- if self.fluid == True:
+ if self.fluid:
e = numpy.mean(sb.phi[:,:,3:-8]) # ignore boundaries
else:
e = sb.voidRatio()
t@@ -5177,7 +5177,7 @@ class sim:
# Optional save of figure
if (outformat != 'txt'):
- if (savefig == True):
+ if savefig:
fig.savefig("{0}-{1}.{2}".format(self.sid, method, outformat))
fig.clf()
else :
t@@ -5367,7 +5367,7 @@ def run(binary, verbose=True, hideinputfile=False):
stdout = ''
if (verbose == False):
quiet = '-q'
- if (hideinputfile == True):
+ if hideinputfile:
stdout = ' > /dev/null'
subprocess.call('cd ..; ./sphere ' + quiet + ' ' + binary + ' ' + stdout, \
shell=True)
t@@ -5434,7 +5434,7 @@ def torqueScriptParallel3(obj1, obj2, obj3,
fh.write(':$CUDAPATH/lib:$LD_LIBRARY_PATH\n')
fh.write('echo "`whoami`@`hostname`"\n')
fh.write('echo "Start at `date`"\n')
- if (use_workdir == True):
+ if use_workdir:
fh.write('ORIGDIR=' + spheredir + '\n')
fh.write('WORKDIR=' + workdir + "/$PBS_JOBID\n")
fh.write('cp -r $ORIGDIR/* $WORKDIR\n')
t@@ -5446,7 +5446,7 @@ def torqueScriptParallel3(obj1, obj2, obj3,
fh.write('./sphere input/' + obj2.sid + '.bin > /dev/null &\n')
fh.write('./sphere input/' + obj3.sid + '.bin > /dev/null &\n')
fh.write('wait\n')
- if (use_workdir == True):
+ if use_workdir:
fh.write('cp $WORKDIR/output/* $ORIGDIR/output/\n')
fh.write('echo "End at `date`"\n')
return filename