tadd Neumann BC at top wall - sphere - GPU-based 3D discrete element method alg… | |
git clone git://src.adamsgaard.dk/sphere | |
Log | |
Files | |
Refs | |
LICENSE | |
--- | |
commit efe206ad92dbf1f4a43ee99a74922be879dcd659 | |
parent fc33acfc43b82a356148d379098f0e1e5756878d | |
Author: Anders Damsgaard <[email protected]> | |
Date: Thu, 13 Nov 2014 09:03:10 +0100 | |
add Neumann BC at top wall | |
Diffstat: | |
M src/darcy.cuh | 6 +++--- | |
1 file changed, 3 insertions(+), 3 deletions(-) | |
--- | |
diff --git a/src/darcy.cuh b/src/darcy.cuh | |
t@@ -847,7 +847,7 @@ __global__ void firstDarcySolution( | |
// Neumann BCs | |
if (z == 0 && bc_bot == 1) | |
p_zn = p; | |
- if (z == nz-1 && bc_top == 1) | |
+ if ((z == nz-1 && bc_top == 1) || z >= wall0_iz) | |
p_zp = p; | |
// upwind coefficients for grad(p) determined from values of k | |
t@@ -1000,7 +1000,7 @@ __global__ void updateDarcySolution( | |
// Neumann BCs | |
if (z == 0 && bc_bot == 1) | |
p_zn = p; | |
- if (z == nz-1 && bc_top == 1) | |
+ if ((z == nz-1 && bc_top == 1) || z >= wall0_iz) | |
p_zp = p; | |
// upwind coefficients for grad(p) determined from values of k | |
t@@ -1050,7 +1050,7 @@ __global__ void updateDarcySolution( | |
Float p_new = p_old + (1.0 - epsilon)*dp_expl + epsilon*dp_impl; | |
// add underrelaxation | |
- const Float theta = 0.1; | |
+ const Float theta = 0.05; | |
p_new = p*(1.0 - theta) + p_new*theta; | |
// normalized residual, avoid division by zero |