ttop wall bc set by wmode not bc_top - 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 8ffec2ec616f479cbae25398373996c4b28f788a
 (DIR) parent 4b3e865a3c097b32ea168764b5953c9b93df2cee
 (HTM) Author: Anders Damsgaard <anders.damsgaard@geo.au.dk>
       Date:   Mon, 19 Jan 2015 09:41:58 +0100
       
       ttop wall bc set by wmode not bc_top
       
       Diffstat:
         M python/halfshear-darcy-stress-star… |       1 +
         M src/darcy.cuh                       |       6 +++---
         M src/device.cu                       |       2 +-
       
       3 files changed, 5 insertions(+), 4 deletions(-)
       ---
 (DIR) diff --git a/python/halfshear-darcy-stress-starter.py b/python/halfshear-darcy-stress-starter.py
       t@@ -52,6 +52,7 @@ if fluid:
            sim.initFluid(mu = mu, p = 0.0, cfd_solver = 1)
            sim.setFluidBottomNoFlow()
            sim.setFluidTopFixedPressure()
       +    sim.wmode[0] = 3
            #sim.setDEMstepsPerCFDstep(10)
            sim.setMaxIterations(2e5)
            sim.setPermeabilityPrefactor(k_c)
 (DIR) diff --git a/src/darcy.cuh b/src/darcy.cuh
       t@@ -240,7 +240,7 @@ __global__ void setDarcyGhostNodes(
                if (z == 0 && bc_bot == 2)
                    dev_scalarfield[idx(x,y,nz)] = val;     // Periodic -z
        
       -        if (z == nz-1 && (bc_top == 0 || bc_top == 3))
       +        if (z == nz-1 && bc_top == 0)
                    dev_scalarfield[idx(x,y,nz)] = val;     // Dirichlet
                if (z == nz-2 && bc_top == 1)
                    dev_scalarfield[idx(x,y,nz)] = val;     // Neumann
       t@@ -938,7 +938,7 @@ __global__ void firstDarcySolution(
                if (z == 0 && bc_bot == 1)
                    p_zn = p;
                //if ((z == nz-1 && bc_top == 1) || z >= wall0_iz)
       -        if (z == nz-1 && (bc_top == 1 || bc_top == 3))
       +        if (z == nz-1 && bc_top == 1)
                    p_zp = p;
        
                // upwind coefficients for grad(p) determined from values of k
       t@@ -1089,7 +1089,7 @@ __global__ void updateDarcySolution(
                if (z == 0 && bc_bot == 1)
                    p_zn = p;
                //if ((z == nz-1 && bc_top == 1) || z >= wall0_iz)
       -        if (z == nz-1 && (bc_top == 1 || bc_top == 3))
       +        if (z == nz-1 && bc_top == 1)
                    p_zp = p;
        
                // upwind coefficients for grad(p) determined from values of k
 (DIR) diff --git a/src/device.cu b/src/device.cu
       t@@ -2037,7 +2037,7 @@ __host__ void DEM::startTime()
                                checkForCudaErrorsIter("Post updateDarcySolution",
                                        iter);
        
       -                        if (darcy.bc_top == 1 || darcy.bc_top == 3) {
       +                        if (darcy.bc_top == 1) {
                                    if (PROFILING == 1)
                                        startTimer(&kernel_tic);
                                    setDarcyTopWallFixedFlow