1 #ifndef ERF_TERRAINPOISSON_3D_K_H_
2 #define ERF_TERRAINPOISSON_3D_K_H_
4 #include <AMReX_FArrayBox.H>
7 AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE
9 amrex::Array4<T const>
const& sol,
10 amrex::Array4<T const>
const& zp,
18 Real px_lo = (sol(i,j,k) - sol(i-1,j,k)) * dxinv;
21 Real pz_lo_md_hi =
Real(0.5) * ( sol(i,j,k+1) + sol(i-1,j,k+1)
22 -sol(i,j,k ) - sol(i-1,j,k ) );
23 h_xi =
Real(0.25) * ( zp(i,j ,k+1) - zp(i-2,j ,k+1)
24 +zp(i,j+1,k+1) - zp(i-2,j+1,k+1) ) * dxinv;
25 h_zeta =
Real(0.25) * ( zp(i,j ,k+2) - zp(i ,j ,k )
26 +zp(i,j+1,k+2) - zp(i ,j+1,k ) );
27 pz_lo_md_hi *= h_xi / h_zeta;
30 Real pz_lo_md_lo =
Real(0.5) * ( sol(i,j,k ) + sol(i-1,j,k )
31 -sol(i,j,k-1) - sol(i-1,j,k-1) );
33 h_xi =
Real(0.25) * ( zp(i,j ,k ) - zp(i-2,j ,k )
34 +zp(i,j+1,k ) - zp(i-2,j+1,k ) ) * dxinv;
35 h_zeta =
Real(0.25) * ( zp(i,j ,k+1) - zp(i ,j ,k-1)
36 +zp(i,j+1,k+1) - zp(i ,j+1,k-1) );
37 pz_lo_md_lo *= h_xi / h_zeta;
40 px_lo -=
Real(0.5) * ( pz_lo_md_hi + pz_lo_md_lo );
45 AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE
47 amrex::Array4<T const>
const& sol,
48 amrex::Array4<T const>
const& zp,
55 Real py_lo = (sol(i,j,k) - sol(i,j-1,k)) * dyinv;
58 Real pz_md_lo_hi =
Real(0.5) * ( sol(i,j,k+1) + sol(i,j-1,k+1)
59 -sol(i,j,k ) - sol(i,j-1,k ) );
60 h_eta =
Real(0.25) * ( zp(i ,j,k+1) - zp(i ,j-2,k+1)
61 +zp(i+1,j,k+1) - zp(i+1,j-2,k+1) ) * dyinv;
62 h_zeta =
Real(0.25) * ( zp(i ,j,k+2) - zp(i ,j ,k )
63 +zp(i+1,j,k+2) - zp(i+1,j ,k ) );
64 pz_md_lo_hi *= h_eta/ h_zeta;
67 Real pz_md_lo_lo =
Real(0.5) * ( sol(i,j,k ) + sol(i,j-1,k )
68 -sol(i,j,k-1) - sol(i,j-1,k-1) );
70 h_eta =
Real(0.25) * ( zp(i ,j,k ) - zp(i ,j-2,k )
71 +zp(i+1,j,k ) - zp(i+1,j-2,k ) ) * dyinv;
72 h_zeta =
Real(0.25) * ( zp(i ,j,k+1) - zp(i ,j ,k-1)
73 +zp(i+1,j,k+1) - zp(i+1,j ,k-1) );
74 pz_md_lo_lo *= h_eta/ h_zeta;
77 py_lo -=
Real(0.5) * ( pz_md_lo_hi + pz_md_lo_lo );
82 AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE
84 amrex::Array4<T const>
const& sol,
85 amrex::Array4<T const>
const& zp,
86 T dxinv,
T dyinv) noexcept
90 Real h_xi, h_eta, h_zeta;
93 Real pz_lo = (sol(i,j,k ) - sol(i,j,k-1));
94 Real hzeta_inv_on_zlo = 8.0 / ( (zp(i,j,k+1) + zp(i+1,j,k+1) + zp(i,j+1,k+1) + zp(i+1,j+1,k+1))
95 -(zp(i,j,k-1) + zp(i+1,j,k-1) + zp(i,j+1,k-1) + zp(i+1,j+1,k-1)) );
96 pz_lo *= hzeta_inv_on_zlo;
99 Real px_hi_md_lo =
Real(0.5) * ( sol(i+1,j ,k ) - sol(i ,j ,k )
100 +sol(i+1,j ,k-1) - sol(i ,j ,k-1)) * dxinv;
101 Real px_lo_md_lo =
Real(0.5) * ( sol(i ,j ,k ) - sol(i-1,j ,k )
102 +sol(i ,j ,k-1) - sol(i-1,j ,k-1)) * dxinv;
103 Real py_md_hi_lo =
Real(0.5) * ( sol(i ,j+1,k ) - sol(i ,j ,k )
104 +sol(i ,j+1,k-1) - sol(i ,j ,k-1)) * dyinv;
105 Real py_md_lo_lo =
Real(0.5) * ( sol(i ,j ,k ) - sol(i ,j-1,k )
106 +sol(i ,j ,k-1) - sol(i ,j-1,k-1)) * dyinv;
109 Real pz_hi_md_lo =
Real(0.5) * ( sol(i+1,j,k ) + sol(i,j,k )
110 -sol(i+1,j,k-1) - sol(i,j,k-1) );
111 h_xi =
Real(0.25) * ( zp(i+1,j ,k ) - zp(i-1,j ,k )
112 +zp(i+1,j+1,k ) - zp(i-1,j+1,k ) ) * dxinv;
113 h_zeta =
Real(0.25) * ( zp(i+1,j ,k+1) - zp(i+1,j ,k-1)
114 +zp(i+1,j+1,k+1) - zp(i+1,j+1,k-1) );
115 pz_hi_md_lo *= h_xi / h_zeta;
118 Real pz_lo_md_lo =
Real(0.5) * ( sol(i,j,k ) + sol(i-1,j,k )
119 -sol(i,j,k-1) - sol(i-1,j,k-1) );
120 h_xi =
Real(0.25) * ( zp(i,j ,k ) - zp(i-2,j ,k )
121 +zp(i,j+1,k ) - zp(i-2,j+1,k ) ) * dxinv;
122 h_zeta =
Real(0.25) * ( zp(i,j ,k+1) - zp(i ,j ,k-1)
123 +zp(i,j+1,k+1) - zp(i ,j+1,k-1) );
124 pz_lo_md_lo *= h_xi / h_zeta;
127 Real pz_md_hi_lo =
Real(0.5) * ( sol(i,j+1,k ) + sol(i,j,k )
128 -sol(i,j+1,k-1) - sol(i,j,k-1) );
129 h_eta =
Real(0.25) * ( zp(i ,j+1,k ) - zp(i ,j-1,k)
130 +zp(i+1,j+1,k ) - zp(i+1,j-1,k) ) * dyinv;
131 h_zeta =
Real(0.25) * ( zp(i ,j+1,k+1) - zp(i ,j+1,k-1)
132 +zp(i+1,j+1,k+1) - zp(i+1,j+1,k-1) );
133 pz_md_hi_lo *= h_eta/ h_zeta;
136 Real pz_md_lo_lo =
Real(0.5) * ( sol(i,j,k ) + sol(i,j-1,k )
137 -sol(i,j,k-1) - sol(i,j-1,k-1) );
138 h_eta =
Real(0.25) * ( zp(i ,j,k ) - zp(i ,j-2,k )
139 +zp(i+1,j,k ) - zp(i+1,j-2,k ) ) * dyinv;
140 h_zeta =
Real(0.25) * ( zp(i ,j,k+1) - zp(i ,j ,k-1)
141 +zp(i+1,j,k+1) - zp(i+1,j ,k-1) );
142 pz_md_lo_lo *= h_eta/ h_zeta;
145 Real h_xi_on_zlo = 0.5 * (zp(i+1,j+1,k) + zp(i+1,j,k) - zp(i,j+1,k) - zp(i,j,k)) * dxinv;
146 Real h_eta_on_zlo = 0.5 * (zp(i+1,j+1,k) + zp(i,j+1,k) - zp(i+1,j,k) - zp(i,j,k)) * dyinv;
148 pz_lo -= 0.5 * h_xi_on_zlo * ( (px_hi_md_lo + px_lo_md_lo) - (pz_hi_md_lo + pz_lo_md_lo) );
149 pz_lo -= 0.5 * h_eta_on_zlo * ( (py_md_hi_lo + py_md_lo_lo) - (pz_md_hi_lo + pz_md_lo_lo) );
151 if (k == 0) pz_lo = 0.0;
160 template <
typename T>
161 AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE
163 amrex::Array4<T const>
const& sol,
164 amrex::Array4<T const>
const& zp,
165 T dxinv,
T dyinv) noexcept
169 Real h_xi, h_eta, h_zeta;
172 Real pz_lo = sol(i,j,k);
173 Real hzeta_inv_on_zlo = 8.0 / ( (zp(i,j,k+1) + zp(i+1,j,k+1) + zp(i,j+1,k+1) + zp(i+1,j+1,k+1))
174 -(zp(i,j,k ) + zp(i+1,j,k ) + zp(i,j+1,k ) + zp(i+1,j+1,k )) );
175 pz_lo *= hzeta_inv_on_zlo;
178 constexpr
Real px_hi_md_lo = 0.0;
179 constexpr
Real px_lo_md_lo = 0.0;
180 constexpr
Real py_md_hi_lo = 0.0;
181 constexpr
Real py_md_lo_lo = 0.0;
184 Real pz_hi_md_lo =
Real(0.5) * ( sol(i+1,j,k ) + sol(i,j,k ));
185 h_xi =
Real(0.25) * ( zp(i+1,j ,k ) - zp(i-1,j ,k )
186 +zp(i+1,j+1,k ) - zp(i-1,j+1,k ) ) * dxinv;
187 h_zeta =
Real(0.25) * ( zp(i+1,j ,k+1) - zp(i+1,j ,k )
188 +zp(i+1,j+1,k+1) - zp(i+1,j+1,k ) );
189 pz_hi_md_lo *= h_xi / h_zeta;
192 Real pz_lo_md_lo =
Real(0.5) * ( sol(i,j,k ) + sol(i-1,j,k ));
193 h_xi =
Real(0.25) * ( zp(i,j ,k ) - zp(i-2,j ,k )
194 +zp(i,j+1,k ) - zp(i-2,j+1,k ) ) * dxinv;
195 h_zeta =
Real(0.25) * ( zp(i,j ,k+1) - zp(i ,j ,k )
196 +zp(i,j+1,k+1) - zp(i ,j+1,k ) );
197 pz_lo_md_lo *= h_xi / h_zeta;
200 Real pz_md_hi_lo =
Real(0.5) * ( sol(i,j+1,k ) + sol(i,j,k ));
201 h_eta =
Real(0.25) * ( zp(i ,j+1,k ) - zp(i ,j-1,k)
202 +zp(i+1,j+1,k ) - zp(i+1,j-1,k) ) * dyinv;
203 h_zeta =
Real(0.25) * ( zp(i ,j+1,k+1) - zp(i ,j+1,k )
204 +zp(i+1,j+1,k+1) - zp(i+1,j+1,k ) );
205 pz_md_hi_lo *= h_eta/ h_zeta;
208 Real pz_md_lo_lo =
Real(0.5) * ( sol(i,j,k ) + sol(i,j-1,k ));
209 h_eta =
Real(0.25) * ( zp(i ,j,k ) - zp(i ,j-2,k )
210 +zp(i+1,j,k ) - zp(i+1,j-2,k ) ) * dyinv;
211 h_zeta =
Real(0.25) * ( zp(i ,j,k+1) - zp(i ,j ,k )
212 +zp(i+1,j,k+1) - zp(i+1,j ,k ) );
213 pz_md_lo_lo *= h_eta/ h_zeta;
216 Real h_xi_on_zlo = 0.5 * (zp(i+1,j+1,k) + zp(i+1,j,k) - zp(i,j+1,k) - zp(i,j,k)) * dxinv;
217 Real h_eta_on_zlo = 0.5 * (zp(i+1,j+1,k) + zp(i,j+1,k) - zp(i+1,j,k) - zp(i,j,k)) * dyinv;
219 pz_lo -= 0.5 * h_xi_on_zlo * ( (px_hi_md_lo + px_lo_md_lo) - (pz_hi_md_lo + pz_lo_md_lo) );
220 pz_lo -= 0.5 * h_eta_on_zlo * ( (py_md_hi_lo + py_md_lo_lo) - (pz_md_hi_lo + pz_md_lo_lo) );
225 template <
typename T>
226 AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE
228 amrex::Array4<T const>
const& x,
229 amrex::Array4<T const>
const& ax,
230 amrex::Array4<T const>
const& ay,
231 amrex::Array4<T const>
const& az,
232 amrex::Array4<T const>
const& dJ,
233 amrex::Array4<T const>
const& zp,
234 T dxinv,
T dyinv,
T dzinv) noexcept
237 Real h_xi, h_eta, h_zeta;
244 Real px_hi = (
x(i+1,j,k) -
x(i,j,k)) * dxinv;
247 Real pz_hi_md_hi =
Real(0.5) * (
x(i+1,j ,k+1) +
x(i ,j ,k+1)
248 -
x(i+1,j ,k ) -
x(i ,j ,k ) );
249 h_xi =
Real(0.25) * ( zp(i+1,j ,k+1) - zp(i-1,j ,k+1)
250 +zp(i+1,j+1,k+1) - zp(i-1,j+1,k+1) ) * dxinv;
251 h_zeta =
Real(0.25) * ( zp(i+1,j ,k+2) - zp(i+1,j ,k )
252 +zp(i+1,j+1,k+2) - zp(i+1,j+1,k ) );
253 pz_hi_md_hi *= h_xi / h_zeta;
256 Real pz_hi_md_lo =
Real(0.5) * (
x(i+1,j ,k ) +
x(i ,j ,k )
257 -
x(i+1,j ,k-1) -
x(i ,j ,k-1) );
258 h_xi =
Real(0.25) * ( zp(i+1,j ,k ) - zp(i-1,j ,k )
259 +zp(i+1,j+1,k ) - zp(i-1,j+1,k ) ) * dxinv;
260 h_zeta =
Real(0.25) * ( zp(i+1,j ,k+1) - zp(i+1,j ,k-1)
261 +zp(i+1,j+1,k+1) - zp(i+1,j+1,k-1) );
262 pz_hi_md_lo *= h_xi / h_zeta;
265 px_hi -=
Real(0.5) * ( pz_hi_md_hi + pz_hi_md_lo );
270 Real px_lo = (
x(i,j,k) -
x(i-1,j,k)) * dxinv;
273 Real pz_lo_md_hi =
Real(0.5) * (
x(i,j,k+1) +
x(i-1,j,k+1)
274 -
x(i,j,k ) -
x(i-1,j,k ) );
275 h_xi =
Real(0.25) * ( zp(i,j ,k+1) - zp(i-2,j ,k+1)
276 +zp(i,j+1,k+1) - zp(i-2,j+1,k+1) ) * dxinv;
277 h_zeta =
Real(0.25) * ( zp(i,j ,k+2) - zp(i ,j ,k )
278 +zp(i,j+1,k+2) - zp(i ,j+1,k ) );
279 pz_lo_md_hi *= h_xi / h_zeta;
282 Real pz_lo_md_lo =
Real(0.5) * (
x(i,j,k ) +
x(i-1,j,k )
283 -
x(i,j,k-1) -
x(i-1,j,k-1) );
284 h_xi =
Real(0.25) * ( zp(i,j ,k ) - zp(i-2,j ,k )
285 +zp(i,j+1,k ) - zp(i-2,j+1,k ) ) * dxinv;
286 h_zeta =
Real(0.25) * ( zp(i,j ,k+1) - zp(i ,j ,k-1)
287 +zp(i,j+1,k+1) - zp(i ,j+1,k-1) );
288 pz_lo_md_lo *= h_xi / h_zeta;
291 px_lo -=
Real(0.5) * ( pz_lo_md_hi + pz_lo_md_lo );
297 Real py_hi = (
x(i,j+1,k) -
x(i,j,k)) * dyinv;
300 Real pz_md_hi_hi =
Real(0.5) * (
x(i,j+1,k+1) +
x(i,j,k+1)
301 -
x(i,j+1,k ) -
x(i,j,k ) );
302 h_eta =
Real(0.25) * ( zp(i ,j+1,k+1) - zp(i ,j-1,k+1)
303 +zp(i+1,j+1,k+1) - zp(i+1,j-1,k+1) ) * dyinv;
304 h_zeta =
Real(0.25) * ( zp(i ,j+1,k+2) - zp(i ,j+1,k )
305 +zp(i+1,j+1,k+2) - zp(i+1,j+1,k ) );
306 pz_md_hi_hi *= h_eta/ h_zeta;
309 Real pz_md_hi_lo =
Real(0.5) * (
x(i,j+1,k ) +
x(i,j,k )
310 -
x(i,j+1,k-1) -
x(i,j,k-1) );
311 h_eta =
Real(0.25) * ( zp(i ,j+1,k ) - zp(i ,j-1,k)
312 +zp(i+1,j+1,k ) - zp(i+1,j-1,k) ) * dyinv;
313 h_zeta =
Real(0.25) * ( zp(i ,j+1,k+1) - zp(i ,j+1,k-1)
314 +zp(i+1,j+1,k+1) - zp(i+1,j+1,k-1) );
315 pz_md_hi_lo *= h_eta/ h_zeta;
318 py_hi -=
Real(0.5) * ( pz_md_hi_hi + pz_md_hi_lo );
324 Real py_lo = (
x(i,j,k) -
x(i,j-1,k)) * dyinv;
327 Real pz_md_lo_hi =
Real(0.5) * (
x(i ,j,k+1) +
x(i ,j-1,k+1)
328 -
x(i ,j,k ) -
x(i ,j-1,k ) );
329 h_eta =
Real(0.25) * ( zp(i ,j,k+1) - zp(i ,j-2,k+1)
330 +zp(i+1,j,k+1) - zp(i+1,j-2,k+1) ) * dyinv;
331 h_zeta =
Real(0.25) * ( zp(i ,j,k+2) - zp(i ,j ,k )
332 +zp(i+1,j,k+2) - zp(i+1,j ,k ) );
333 pz_md_lo_hi *= h_eta/ h_zeta;
336 Real pz_md_lo_lo =
Real(0.5) * (
x(i ,j,k ) +
x(i ,j-1,k )
337 -
x(i ,j,k-1) -
x(i ,j-1,k-1) );
338 h_eta =
Real(0.25) * ( zp(i ,j,k ) - zp(i ,j-2,k )
339 +zp(i+1,j,k ) - zp(i+1,j-2,k ) ) * dyinv;
340 h_zeta =
Real(0.25) * ( zp(i ,j,k+1) - zp(i ,j ,k-1)
341 +zp(i+1,j,k+1) - zp(i+1,j ,k-1) );
342 pz_md_lo_lo *= h_eta/ h_zeta;
345 py_lo -=
Real(0.5) * ( pz_md_lo_hi + pz_md_lo_lo );
351 Real pz_hi =
x(i,j,k+1) -
x(i,j,k );
352 Real hzeta_inv_on_zhi = 8.0 / ( (zp(i,j,k+2) + zp(i+1,j,k+2) + zp(i,j+1,k+2) + zp(i+1,j+1,k+2))
353 -(zp(i,j,k ) + zp(i+1,j,k ) + zp(i,j+1,k ) + zp(i+1,j+1,k )) );
354 pz_hi *= hzeta_inv_on_zhi;
357 Real px_hi_md_hi =
Real(0.5) * (
x(i+1,j,k+1) -
x(i ,j ,k+1)
358 +
x(i+1,j,k ) -
x(i ,j ,k )) * dxinv;
359 Real px_lo_md_hi =
Real(0.5) * (
x(i ,j,k+1) -
x(i-1,j ,k+1)
360 +
x(i ,j,k ) -
x(i-1,j ,k )) * dxinv;
361 Real py_md_hi_hi =
Real(0.5) * (
x(i,j+1,k+1) -
x(i ,j ,k+1)
362 +
x(i,j+1,k ) -
x(i ,j ,k )) * dyinv;
363 Real py_md_lo_hi =
Real(0.5) * (
x(i,j ,k+1) -
x(i ,j-1,k+1)
364 +
x(i,j ,k ) -
x(i ,j-1,k )) * dyinv;
367 Real h_xi_on_zhi = 0.5 * ( zp(i+1,j+1,k+1) + zp(i+1,j,k+1) - zp(i,j+1,k+1) - zp(i,j,k+1) ) * dxinv;
368 Real h_eta_on_zhi = 0.5 * ( zp(i+1,j+1,k+1) + zp(i,j+1,k+1) - zp(i+1,j,k+1) - zp(i,j,k+1) ) * dyinv;
372 pz_hi -= 0.5 * h_xi_on_zhi * ( (px_hi_md_hi + px_lo_md_hi) - (pz_hi_md_hi + pz_lo_md_hi) );
373 pz_hi -= 0.5 * h_eta_on_zhi * ( (py_md_hi_hi + py_md_lo_hi) - (pz_md_hi_hi + pz_md_lo_hi) );
379 Real pz_lo =
x(i,j,k ) -
x(i,j,k-1);
380 Real hzeta_inv_on_zlo = 8.0 / ( (zp(i,j,k+1) + zp(i+1,j,k+1) + zp(i,j+1,k+1) + zp(i+1,j+1,k+1))
381 -(zp(i,j,k-1) + zp(i+1,j,k-1) + zp(i,j+1,k-1) + zp(i+1,j+1,k-1)) );
382 pz_lo *= hzeta_inv_on_zlo;
385 Real px_hi_md_lo =
Real(0.5) * (
x(i+1,j ,k ) -
x(i ,j ,k )
386 +
x(i+1,j ,k-1) -
x(i ,j ,k-1)) * dxinv;
387 Real px_lo_md_lo =
Real(0.5) * (
x(i ,j ,k ) -
x(i-1,j ,k )
388 +
x(i ,j ,k-1) -
x(i-1,j ,k-1)) * dxinv;
389 Real py_md_hi_lo =
Real(0.5) * (
x(i ,j+1,k ) -
x(i ,j ,k )
390 +
x(i ,j+1,k-1) -
x(i ,j ,k-1)) * dyinv;
391 Real py_md_lo_lo =
Real(0.5) * (
x(i ,j ,k ) -
x(i ,j-1,k )
392 +
x(i ,j ,k-1) -
x(i ,j-1,k-1)) * dyinv;
395 Real h_xi_on_zlo = 0.5 * (zp(i+1,j+1,k) + zp(i+1,j,k) - zp(i,j+1,k) - zp(i,j,k)) * dxinv;
396 Real h_eta_on_zlo = 0.5 * (zp(i+1,j+1,k) + zp(i,j+1,k) - zp(i+1,j,k) - zp(i,j,k)) * dyinv;
400 pz_lo -= 0.5 * h_xi_on_zlo * ( (px_hi_md_lo + px_lo_md_lo) - (pz_hi_md_lo + pz_lo_md_lo) );
401 pz_lo -= 0.5 * h_eta_on_zlo * ( (py_md_hi_lo + py_md_lo_lo) - (pz_md_hi_lo + pz_md_lo_lo) );
424 if (k == 0) pz_lo = 0.0;
426 y(i,j,k) = (ax(i+1,j,k)*px_hi - ax(i,j,k)*px_lo) * dxinv
427 +(ay(i,j+1,k)*py_hi - ay(i,j,k)*py_lo) * dyinv
428 +(az(i,j,k+1)*pz_hi - az(i,j,k)*pz_lo) * dzinv;
429 y(i,j,k) /= dJ(i,j,k);
amrex::Real Real
Definition: ERF_ShocInterface.H:19
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE T terrpoisson_flux_x(int i, int j, int k, amrex::Array4< T const > const &sol, amrex::Array4< T const > const &zp, T dxinv) noexcept
Definition: ERF_TerrainPoisson_3D_K.H:8
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE T terrpoisson_flux_zlo_dir(int i, int j, int k, amrex::Array4< T const > const &sol, amrex::Array4< T const > const &zp, T dxinv, T dyinv) noexcept
Definition: ERF_TerrainPoisson_3D_K.H:162
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE T terrpoisson_flux_z(int i, int j, int k, amrex::Array4< T const > const &sol, amrex::Array4< T const > const &zp, T dxinv, T dyinv) noexcept
Definition: ERF_TerrainPoisson_3D_K.H:83
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void terrpoisson_adotx(int i, int j, int k, amrex::Array4< T > const &y, amrex::Array4< T const > const &x, amrex::Array4< T const > const &ax, amrex::Array4< T const > const &ay, amrex::Array4< T const > const &az, amrex::Array4< T const > const &dJ, amrex::Array4< T const > const &zp, T dxinv, T dyinv, T dzinv) noexcept
Definition: ERF_TerrainPoisson_3D_K.H:227
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE T terrpoisson_flux_y(int i, int j, int k, amrex::Array4< T const > const &sol, amrex::Array4< T const > const &zp, T dyinv) noexcept
Definition: ERF_TerrainPoisson_3D_K.H:46
@ T
Definition: ERF_IndexDefines.H:110