15 const int dcomp,
const int numcomp,
16 Box const& domain_box,
const BCRec* bcr,
17 const int bcomp)
const noexcept
23 const auto& domain_lo = domain_box.loVect();
24 const auto& domain_hi = domain_box.hiVect();
25 const int ilo = domain_lo[0];
26 const int jlo = domain_lo[1];
27 const int klo = domain_lo[2];
28 const int ihi = domain_hi[0];
29 const int jhi = domain_hi[1];
30 const int khi = domain_hi[2];
32 for (
int n = dcomp; n < numcomp+dcomp; ++n)
34 const BCRec& bc = bcr[bcomp+n-dcomp];
41 q(i,j,k,n) = q(ilo,j,k,n);
48 q(i,j,k,n) = q(ilo,j,k,n);
53 q(i,j,k,n) =
Real(0.125)*(
Real(15.)*q(i+1,j,k,n) -
Real(10.)*q(i+2,j,k,n) +
Real(3.)*q(i+3,j,k,n));
57 q(i,j,k,n) =
Real(0.5)*(
Real(3.)*q(i+1,j,k,n) - q(i+2,j,k,n));
63 q(i,j,k,n) =
Real(ilo-i)*(q(ilo,j,k,n) - q(ilo+1,j,k,n)) + q(ilo,j,k,n);
68 q(i,j,k,n) = q(2*ilo-i-1,j,k,n);
73 q(i,j,k,n) = -q(2*ilo-i-1,j,k,n);
84 q(i,j,k,n) = q(ihi,j,k,n);
91 q(i,j,k,n) = q(ihi,j,k,n);
96 q(i,j,k,n) =
Real(0.125)*(
Real(15.)*q(i-1,j,k,n) -
Real(10.)*q(i-2,j,k,n) +
Real(3.)*q(i-3,j,k,n));
100 q(i,j,k,n) =
Real(0.5)*(
Real(3.)*q(i-1,j,k,n) - q(i-2,j,k,n));
106 q(i,j,k,n) =
Real(i-ihi)*(q(ihi,j,k,n) - q(ihi-1,j,k,n)) + q(ihi,j,k,n);
111 q(i,j,k,n) = q(2*ihi-i+1,j,k,n);
116 q(i,j,k,n) = -q(2*ihi-i+1,j,k,n);
128 q(i,j,k,n) = q(i,jlo,k,n);
135 q(i,j,k,n) = q(i,jlo,k,n);
140 q(i,j,k,n) =
Real(0.125)*(
Real(15.)*q(i,j+1,k,n) -
Real(10.)*q(i,j+2,k,n) +
Real(3.)*q(i,j+3,k,n));
144 q(i,j,k,n) =
Real(0.5)*(
Real(3.)*q(i,j+1,k,n) - q(i,j+2,k,n));
150 q(i,j,k,n) =
Real(jlo-j)*(q(i,jlo,k,n) - q(i,jlo+1,k,n)) + q(i,jlo,k,n);
155 q(i,j,k,n) = q(i,2*jlo-j-1,k,n);
160 q(i,j,k,n) = -q(i,2*jlo-j-1,k,n);
171 q(i,j,k,n) = q(i,jhi,k,n);
178 q(i,j,k,n) = q(i,jhi,k,n);
183 q(i,j,k,n) =
Real(0.125)*(
Real(15.)*q(i,j-1,k,n) -
Real(10.)*q(i,j-2,k,n) +
Real(3.)*q(i,j-3,k,n));
187 q(i,j,k,n) =
Real(0.5)*(
Real(3.)*q(i,j-1,k,n) - q(i,j-2,k,n));
193 q(i,j,k,n) =
Real(j-jhi)*(q(i,jhi,k,n) - q(i,jhi-1,k,n)) + q(i,jhi,k,n);
198 q(i,j,k,n) = q(i,2*jhi-j+1,k,n);
203 q(i,j,k,n) = -q(i,2*jhi-j+1,k,n);
215 q(i,j,k,n) = q(i,j,klo,n);
222 q(i,j,k,n) = q(i,j,klo,n);
227 q(i,j,k,n) =
Real(0.125)*(
Real(15.)*q(i,j,k+1,n) -
Real(10.)*q(i,j,k+2,n) +
Real(3.)*q(i,j,k+3,n));
231 q(i,j,k,n) =
Real(0.5)*(
Real(3.)*q(i,j,k+1,n) - q(i,j,k+2,n));
237 q(i,j,k,n) =
Real(klo-k)*(q(i,j,klo,n) - q(i,j,klo+1,n)) + q(i,j,klo,n);
242 q(i,j,k,n) = q(i,j,2*klo-k-1,n);
247 q(i,j,k,n) = -q(i,j,2*klo-k-1,n);
258 q(i,j,k,n) = q(i,j,khi,n);
265 q(i,j,k,n) = q(i,j,khi,n);
270 q(i,j,k,n) =
Real(0.125)*(
Real(15.)*q(i,j,k-1,n) -
Real(10.)*q(i,j,k-2,n) +
Real(3.)*q(i,j,k-3,n));
274 q(i,j,k,n) =
Real(0.5)*(
Real(3.)*q(i,j,k-1,n) - q(i,j,k-2,n));
280 q(i,j,k,n) =
Real(k-khi)*(q(i,j,khi,n) - q(i,j,khi-1,n)) + q(i,j,khi,n);
285 q(i,j,k,n) = q(i,j,2*khi-k+1,n);
290 q(i,j,k,n) = -q(i,j,2*khi-k+1,n);