Introduction
Introduction Statistics Contact Development Disclaimer Help
tfix velocity stepping - sphere - GPU-based 3D discrete element method algorith…
git clone git://src.adamsgaard.dk/sphere
Log
Files
Refs
LICENSE
---
commit 8969c3ac331a2d47ba81c55ff62645143ea82995
parent c698b231f3331b4f61b1ac3b1c65d7738e890397
Author: Anders Damsgaard <[email protected]>
Date: Mon, 4 Apr 2016 09:43:05 -0700
fix velocity stepping
Diffstat:
M output/cube-init.status.dat | 2 +-
M src/device.cu | 9 +++++++--
2 files changed, 8 insertions(+), 3 deletions(-)
---
diff --git a/output/cube-init.status.dat b/output/cube-init.status.dat
t@@ -1 +1 @@
-4.2000e+00 7.0000e+01 21
+5.0000e+00 8.3333e+01 25
diff --git a/src/device.cu b/src/device.cu
t@@ -943,6 +943,7 @@ __host__ void DEM::startTime()
double t_ratio; // ration between time flow in model vs. reality
// Hard-coded parameters for stepwise velocity change
+ int velocity_state = 1; // 1: v1, 2: v2
int change_velocity_state = 0; // 1: increase velocity, 2: decrease vel.
const Float velocity_factor = 1.1; // v2 = v1*velocity_factor
const Float v2_start = 5.0; // seconds
t@@ -2346,10 +2347,14 @@ __host__ void DEM::startTime()
}
// Determine whether it is time to step the velocity
- if (time.current >= v2_start && time.current < v2_end)
+ if (time.current >= v2_start && time.current < v2_end &&
+ velocity_state == 1) {
change_velocity_state = 1.0;
- else if (time.current >= 10.0)
+ velocity_state = 2;
+ } else if (time.current >= 10.0 && velocity_state == 2) {
change_velocity_state = -1.0;
+ velocity_state = 1;
+ }
// Update particle kinematics
if (PROFILING == 1)
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.