tadded function to modulate fluid pressure at top wall - sphere - GPU-based 3D … | |
git clone git://src.adamsgaard.dk/sphere | |
Log | |
Files | |
Refs | |
LICENSE | |
--- | |
commit cb441dfa99283279679f7f740e753522de2ad0d8 | |
parent 9d86f9e4d22489fe4f96d4ad9c70a9237e5422b9 | |
Author: Anders Damsgaard <[email protected]> | |
Date: Mon, 19 Jan 2015 10:10:01 +0100 | |
added function to modulate fluid pressure at top wall | |
Diffstat: | |
M src/device.cu | 15 +++++++++++++-- | |
1 file changed, 13 insertions(+), 2 deletions(-) | |
--- | |
diff --git a/src/device.cu b/src/device.cu | |
t@@ -1824,14 +1824,25 @@ __host__ void DEM::startTime() | |
if (walls.nw > 0 && | |
(walls.wmode[0] == 1 || walls.wmode[0] == 3)) { | |
wall0_iz = walls.nx->w/(grid.L[2]/grid.num[2]); | |
- /*setDarcyTopWallPressure | |
+ | |
+ // Modulate the pressures at the upper boundary cells | |
+ if ((darcy.p_mod_A > 1.0e-5 || darcy.p_mod_A < -1.0e-5) && | |
+ darcy.p_mod_f > 1.0e-7) { | |
+ // original pressure | |
+ Float new_pressure = | |
+ darcy.p[d_idx(0,0,darcy.nz-1)] //orig p | |
+ + darcy.p_mod_A | |
+ *sin(2.0*M_PI*darcy.p_mod_f*time.current | |
+ + darcy.p_mod_phi); | |
+ | |
+ setDarcyTopWallPressure | |
<<<dimGridFluid, dimBlockFluid>>>( | |
new_pressure, | |
wall0_iz, | |
dev_darcy_p); | |
cudaThreadSynchronize(); | |
checkForCudaErrorsIter("Post setDarcyTopWallPressure", | |
- iter);*/ | |
+ iter); | |
} | |
if (np > 0) { |