Introduction
Introduction Statistics Contact Development Disclaimer Help
tBugfix-related changes - sphere - GPU-based 3D discrete element method algorit…
git clone git://src.adamsgaard.dk/sphere
Log
Files
Refs
LICENSE
---
commit c5711cbfa0d4ccc6b229dfbc50404a22966fe418
parent 6d5161287b1acd8c09dddf393ecc32e30cdfa2b3
Author: Anders Damsgaard <[email protected]>
Date: Tue, 27 Nov 2012 13:45:08 +0100
Bugfix-related changes
Diffstat:
M src/device.cu | 14 ++++++++++++++
M src/integration.cuh | 4 ++--
M src/sphere.cpp | 6 ++++--
3 files changed, 20 insertions(+), 4 deletions(-)
---
diff --git a/src/device.cu b/src/device.cu
t@@ -400,6 +400,19 @@ __host__ void DEM::transferToGlobalDeviceMemory()
cudaMemcpy( dev_walls_mvfd, walls.mvfd,
sizeof(Float4)*walls.nw, cudaMemcpyHostToDevice);
+ std::cout << "walls.nw = " << walls.nw << '\n';
+ std::cout << "walls.nx[0] = "
+ << walls.nx[0].x << '\t'
+ << walls.nx[0].y << '\t'
+ << walls.nx[0].w << '\t'
+ << walls.nx[0].z << '\n';
+
+ std::cout << "walls.mvfd[0] = "
+ << walls.mvfd[0].x << '\t'
+ << walls.mvfd[0].y << '\t'
+ << walls.mvfd[0].w << '\t'
+ << walls.mvfd[0].z << '\n';
+
checkForCudaErrors("End of transferToGlobalDeviceMemory");
if (verbose == 1)
std::cout << "Done\n";
t@@ -822,6 +835,7 @@ __host__ void DEM::startTime()
filetimeclock = 0.0;
}
+ //break; // Stop after the first iteration
}
// Stop clock and display calculation time spent
diff --git a/src/integration.cuh b/src/integration.cuh
t@@ -242,7 +242,7 @@ __global__ void integrateWalls(Float4* dev_walls_nx,
return;
// Find the final sum of forces on wall
- w_mvfd.z = 0.0f;
+ w_mvfd.z = 0.0;
for (int i=0; i<blocksPerGrid; ++i) {
w_mvfd.z += dev_walls_force_partial[i];
}
t@@ -259,7 +259,7 @@ __global__ void integrateWalls(Float4* dev_walls_nx,
// If Wall BC is controlled by velocity, it should not change
if (wmode == 2) {
- acc = 0.0f;
+ acc = 0.0;
}
// Update position. Second-order scheme based on Taylor expansion
diff --git a/src/sphere.cpp b/src/sphere.cpp
t@@ -224,9 +224,11 @@ void DEM::reportValues()
if (walls.wmode[0] == 0)
cout << "Fixed\n";
else if (walls.wmode[0] == 1)
- cout << "Deviatoric stress\n";
+ cout << "Deviatoric stress, "
+ << walls.mvfd[0].w << " Pa\n";
else if (walls.wmode[0] == 2)
- cout << "Velocity\n";
+ cout << "Velocity, "
+ << walls.mvfd[0].y << " m/s\n";
else {
cerr << "Top BC not recognized!\n";
exit(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.