tadd Neumann BC at top wall - 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 dc8fc91c8082cc4749f68a8b334a410d13313332
 (DIR) parent efe206ad92dbf1f4a43ee99a74922be879dcd659
 (HTM) Author: Anders Damsgaard <anders.damsgaard@geo.au.dk>
       Date:   Thu, 13 Nov 2014 09:05:13 +0100
       
       add Neumann BC at top wall
       
       Diffstat:
         M src/darcy.cuh                       |       7 ++++++-
       
       1 file changed, 6 insertions(+), 1 deletion(-)
       ---
 (DIR) diff --git a/src/darcy.cuh b/src/darcy.cuh
       t@@ -503,6 +503,7 @@ __global__ void findDarcyPressureForce(
            const Float4* __restrict__ dev_x,           // in
            const Float*  __restrict__ dev_darcy_p,     // in
            const Float*  __restrict__ dev_darcy_phi,   // in
       +    const unsigned int wall0_iz,                // in
            Float4* __restrict__ dev_force,             // out
            Float4* __restrict__ dev_darcy_f_p)         // out
        {
       t@@ -537,7 +538,11 @@ __global__ void findDarcyPressureForce(
                const Float p_yn = dev_darcy_p[d_idx(i_x,i_y-1,i_z)];
                const Float p_yp = dev_darcy_p[d_idx(i_x,i_y+1,i_z)];
                const Float p_zn = dev_darcy_p[d_idx(i_x,i_y,i_z-1)];
       -        const Float p_zp = dev_darcy_p[d_idx(i_x,i_y,i_z+1)];
       +        Float p_zp = dev_darcy_p[d_idx(i_x,i_y,i_z+1)];
       +
       +        // Add Neumann BC at top wall
       +        if (z >= wall0_iz)
       +            p_zp = p;
        
                // find particle volume (radius in x.w)
                const Float V = 4.0/3.0*M_PI*x.w*x.w*x.w;