tadded scripts and Torque script for diffusivity experiments - 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 dfece9039322d71d77530a83ae1fb60c6b364ae2
(DIR) parent 611042bd2970fd5ea7684e222c94c73b52174b07
(HTM) Author: Anders Damsgaard <anders.damsgaard@geo.au.dk>
Date: Fri, 4 Jul 2014 17:16:57 +0200
added scripts and Torque script for diffusivity experiments
Diffstat:
A python/diffusivity.sh | 49 +++++++++++++++++++++++++++++++
A python/diffusivity1.py | 41 +++++++++++++++++++++++++++++++
A python/diffusivity2.py | 41 +++++++++++++++++++++++++++++++
A python/diffusivity3.py | 41 +++++++++++++++++++++++++++++++
4 files changed, 172 insertions(+), 0 deletions(-)
---
(DIR) diff --git a/python/diffusivity.sh b/python/diffusivity.sh
t@@ -0,0 +1,49 @@
+#!/bin/sh
+#PBS -N diffusivity
+#PBS -l nodes=1:ppn=3
+#PBS -l walltime=1920:00:00
+#PBS -q qfermi
+#PBS -M adc@geo.au.dk
+#PBS -m abe
+
+# Grendel CUDA
+source /com/gcc/4.6.4/load.sh
+CUDAPATH=/com/cuda/5.5.22
+export PATH=$HOME/bin:$PATH
+export PATH=$CUDAPATH/bin:$PATH
+export LD_LIBRARY_PATH=$CUDAPATH/lib64:$CUDAPATH/lib:$LD_LIBRARY_PATH
+
+# Manually installed Python modules
+export PYTHONPATH=$HOME/.local/lib/python:$PYTHONPATH
+export PYTHONPATH=$HOME/.local/lib64/python:$PYTHONPATH
+
+# Manually installed Python
+#export PATH=/home/adc/.local/bin:$PATH
+
+# Shared Python2.7
+PYTHON=/com/python/2.7.6
+export PYTHONPATH=$PYTHON/lib:$PYTHONPATH
+export PATH=$PYTHON/bin:$PATH
+
+echo "`whoami`@`hostname`"
+echo "Start at `date`"
+
+ORIGDIR=/home/adc/code/sphere
+#WORKDIR=/scratch/$PBS_JOBID
+WORKDIR=$ORIGDIR
+
+#cp -r $ORIGDIR/* $WORKDIR
+
+cd $WORKDIR
+nvidia-smi
+rm CMakeCache.txt
+cmake . && make && make test
+cd python
+python diffusivity1.py &
+python diffusivity2.py &
+python diffusivity3.py &
+wait
+
+#cp $WORKDIR/output/* $ORIGDIR/output/
+
+echo "End at `date`"
(DIR) diff --git a/python/diffusivity1.py b/python/diffusivity1.py
t@@ -0,0 +1,41 @@
+#!/usr/bin/env python
+import sphere
+import numpy
+
+for sigma0 in [10.0e3, 20.0e3]:
+
+ sim = sphere.sim('diffusivity-cons-relax')
+ sim.readlast()
+
+ sim.sid = 'diffusivity-sigma0=' + str(sigma0)
+
+ # Checkerboard colors
+ x_min = numpy.min(sim.x[:,0])
+ x_max = numpy.max(sim.x[:,0])
+ y_min = numpy.min(sim.x[:,1])
+ y_max = numpy.max(sim.x[:,1])
+ z_min = numpy.min(sim.x[:,2])
+ z_max = numpy.max(sim.x[:,2])
+ color_nx = 6
+ color_ny = 6
+ color_nz = 6
+ for i in range(sim.np):
+ ix = numpy.floor((sim.x[i,0] - x_min)/(x_max/color_nx))
+ iy = numpy.floor((sim.x[i,1] - y_min)/(y_max/color_ny))
+ iz = numpy.floor((sim.x[i,2] - z_min)/(z_max/color_nz))
+ sim.color[i] = (-1)**ix + (-1)**iy + (-1)**iz
+
+ sim.cleanup()
+ sim.adjustUpperWall()
+ sim.zeroKinematics()
+ sim.consolidate(normal_stress = 10.0e3)
+ sim.initFluid(mu = 17.87e-4, p = 1.0e5, hydrostatic = True)
+ sim.setFluidBottomNoFlow()
+ sim.setFluidTopFixedPressure()
+ sim.setDEMstepsPerCFDstep(10)
+ sim.initTemporal(total = 5.0, file_dt = 0.01, epsilon=0.07)
+ sim.run(dry=True)
+ sim.run()
+ #sim.writeVTKall()
+ sim.visualize('walls')
+ sim.visualize('fluid-pressure')
(DIR) diff --git a/python/diffusivity2.py b/python/diffusivity2.py
t@@ -0,0 +1,41 @@
+#!/usr/bin/env python
+import sphere
+import numpy
+
+for sigma0 in [40.0e3, 60.0e3]:
+
+ sim = sphere.sim('diffusivity-cons-relax')
+ sim.readlast()
+
+ sim.sid = 'diffusivity-sigma0=' + str(sigma0)
+
+ # Checkerboard colors
+ x_min = numpy.min(sim.x[:,0])
+ x_max = numpy.max(sim.x[:,0])
+ y_min = numpy.min(sim.x[:,1])
+ y_max = numpy.max(sim.x[:,1])
+ z_min = numpy.min(sim.x[:,2])
+ z_max = numpy.max(sim.x[:,2])
+ color_nx = 6
+ color_ny = 6
+ color_nz = 6
+ for i in range(sim.np):
+ ix = numpy.floor((sim.x[i,0] - x_min)/(x_max/color_nx))
+ iy = numpy.floor((sim.x[i,1] - y_min)/(y_max/color_ny))
+ iz = numpy.floor((sim.x[i,2] - z_min)/(z_max/color_nz))
+ sim.color[i] = (-1)**ix + (-1)**iy + (-1)**iz
+
+ sim.cleanup()
+ sim.adjustUpperWall()
+ sim.zeroKinematics()
+ sim.consolidate(normal_stress = 10.0e3)
+ sim.initFluid(mu = 17.87e-4, p = 1.0e5, hydrostatic = True)
+ sim.setFluidBottomNoFlow()
+ sim.setFluidTopFixedPressure()
+ sim.setDEMstepsPerCFDstep(10)
+ sim.initTemporal(total = 5.0, file_dt = 0.01, epsilon=0.07)
+ sim.run(dry=True)
+ sim.run()
+ #sim.writeVTKall()
+ sim.visualize('walls')
+ sim.visualize('fluid-pressure')
(DIR) diff --git a/python/diffusivity3.py b/python/diffusivity3.py
t@@ -0,0 +1,41 @@
+#!/usr/bin/env python
+import sphere
+import numpy
+
+for sigma0 in [80.0e3, 120.0e3]:
+
+ sim = sphere.sim('diffusivity-cons-relax')
+ sim.readlast()
+
+ sim.sid = 'diffusivity-sigma0=' + str(sigma0)
+
+ # Checkerboard colors
+ x_min = numpy.min(sim.x[:,0])
+ x_max = numpy.max(sim.x[:,0])
+ y_min = numpy.min(sim.x[:,1])
+ y_max = numpy.max(sim.x[:,1])
+ z_min = numpy.min(sim.x[:,2])
+ z_max = numpy.max(sim.x[:,2])
+ color_nx = 6
+ color_ny = 6
+ color_nz = 6
+ for i in range(sim.np):
+ ix = numpy.floor((sim.x[i,0] - x_min)/(x_max/color_nx))
+ iy = numpy.floor((sim.x[i,1] - y_min)/(y_max/color_ny))
+ iz = numpy.floor((sim.x[i,2] - z_min)/(z_max/color_nz))
+ sim.color[i] = (-1)**ix + (-1)**iy + (-1)**iz
+
+ sim.cleanup()
+ sim.adjustUpperWall()
+ sim.zeroKinematics()
+ sim.consolidate(normal_stress = 10.0e3)
+ sim.initFluid(mu = 17.87e-4, p = 1.0e5, hydrostatic = True)
+ sim.setFluidBottomNoFlow()
+ sim.setFluidTopFixedPressure()
+ sim.setDEMstepsPerCFDstep(10)
+ sim.initTemporal(total = 5.0, file_dt = 0.01, epsilon=0.07)
+ sim.run(dry=True)
+ sim.run()
+ #sim.writeVTKall()
+ sim.visualize('walls')
+ sim.visualize('fluid-pressure')