tadd dirichlet BC for xy boundaries in Darcy solver - sphere - GPU-based 3D dis… | |
git clone git://src.adamsgaard.dk/sphere | |
Log | |
Files | |
Refs | |
LICENSE | |
--- | |
commit a6ec8abc7f5fd45fec31f2f7a2f10d19e3143241 | |
parent e53e2d38e92b46fc474ba331ad568026b3ee1cd2 | |
Author: Anders Damsgaard Christensen <[email protected]> | |
Date: Thu, 11 Aug 2016 11:36:30 -0700 | |
add dirichlet BC for xy boundaries in Darcy solver | |
Diffstat: | |
M src/darcy.cuh | 20 ++++++++++++-------- | |
1 file changed, 12 insertions(+), 8 deletions(-) | |
--- | |
diff --git a/src/darcy.cuh b/src/darcy.cuh | |
t@@ -1652,11 +1652,13 @@ __global__ void firstDarcySolution( | |
- ndem*devC_dt/(beta_f*phi*(1.0 - phi)) | |
*(dphi/(ndem*devC_dt) + dot(vp_avg, grad_phi)); | |
- // Dirichlet BC at dynamic top wall. wall0_iz will be larger than the | |
- // grid if the wall isn't dynamic | |
+ // Dirichlet BC at fixed-pressure boundaries and at the dynamic top | |
+ // wall. wall0_iz will be larger than the grid if the wall isn't | |
+ // dynamic | |
if ((bc_bot == 0 && z == 0) || (bc_top == 0 && z == nz-1) | |
- //|| (z >= wall0_iz-1 && bc_top == 0)) | |
- || (z >= wall0_iz && bc_top == 0)) | |
+ || (z >= wall0_iz && bc_top == 0) | |
+ || (bc_xn == 0 && x == 0) || (bc_xp == 0 && x = nx-1) | |
+ || (bc_yn == 0 && y == 0) || (bc_yp == 0 && y = nx-1)) | |
dp_expl = 0.0; | |
#ifdef REPORT_FORCING_TERMS | |
t@@ -1822,11 +1824,13 @@ __global__ void updateDarcySolution( | |
- ndem*devC_dt/(beta_f*phi*(1.0 - phi)) | |
*(dphi/(ndem*devC_dt) + dot(vp_avg, grad_phi)); | |
- // Dirichlet BC at dynamic top wall. wall0_iz will be larger than the | |
- // grid if the wall isn't dynamic | |
+ // Dirichlet BC at fixed-pressure boundaries and at the dynamic top | |
+ // wall. wall0_iz will be larger than the grid if the wall isn't | |
+ // dynamic | |
if ((bc_bot == 0 && z == 0) || (bc_top == 0 && z == nz-1) | |
- //|| (z >= wall0_iz-1 && bc_top == 0)) | |
- || (z >= wall0_iz && bc_top == 0)) | |
+ || (z >= wall0_iz && bc_top == 0) | |
+ || (bc_xn == 0 && x == 0) || (bc_xp == 0 && x = nx-1) | |
+ || (bc_yn == 0 && y == 0) || (bc_yp == 0 && y = nx-1)) | |
dp_impl = 0.0; | |
//p_new = p; | |