50 Velocity
const& velocity,
63 Set::Scalar ux_xlo = 0.5 * (velocity(i-1,j,k,0) + velocity(i,j,k,0));
64 Set::Scalar ux_xhi = 0.5 * (velocity(i,j,k,0) + velocity(i+1,j,k,0));
65 Set::Scalar flux_xlo = ux_xlo * (ux_xlo >= 0.0 ? phi(i-1,j,k,comp) : phi_c);
66 Set::Scalar flux_xhi = ux_xhi * (ux_xhi >= 0.0 ? phi_c : phi(i+1,j,k,comp));
67 div_phi_u += (flux_xhi - flux_xlo) / DX[0];
68 div_u += (ux_xhi - ux_xlo) / DX[0];
70#if AMREX_SPACEDIM >= 2
71 Set::Scalar uy_ylo = 0.5 * (velocity(i,j-1,k,1) + velocity(i,j,k,1));
72 Set::Scalar uy_yhi = 0.5 * (velocity(i,j,k,1) + velocity(i,j+1,k,1));
73 Set::Scalar flux_ylo = uy_ylo * (uy_ylo >= 0.0 ? phi(i,j-1,k,comp) : phi_c);
74 Set::Scalar flux_yhi = uy_yhi * (uy_yhi >= 0.0 ? phi_c : phi(i,j+1,k,comp));
75 div_phi_u += (flux_yhi - flux_ylo) / DX[1];
76 div_u += (uy_yhi - uy_ylo) / DX[1];
79#if AMREX_SPACEDIM == 3
80 Set::Scalar uz_zlo = 0.5 * (velocity(i,j,k-1,2) + velocity(i,j,k,2));
81 Set::Scalar uz_zhi = 0.5 * (velocity(i,j,k,2) + velocity(i,j,k+1,2));
82 Set::Scalar flux_zlo = uz_zlo * (uz_zlo >= 0.0 ? phi(i,j,k-1,comp) : phi_c);
83 Set::Scalar flux_zhi = uz_zhi * (uz_zhi >= 0.0 ? phi_c : phi(i,j,k+1,comp));
84 div_phi_u += (flux_zhi - flux_zlo) / DX[2];
85 div_u += (uz_zhi - uz_zlo) / DX[2];
89 return -div_phi_u + phi_c * div_u;