tadded function to modulate fluid pressure 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 cb441dfa99283279679f7f740e753522de2ad0d8
 (DIR) parent 9d86f9e4d22489fe4f96d4ad9c70a9237e5422b9
 (HTM) Author: Anders Damsgaard <anders.damsgaard@geo.au.dk>
       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(-)
       ---
 (DIR) 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) {