ERF
Energy Research and Forecasting: An Atmospheric Modeling Code
ERF_Diffusion.H
Go to the documentation of this file.
1 #ifndef ERF_DIFFUSION_H_
2 #define ERF_DIFFUSION_H_
3 
4 #include "AMReX.H"
5 #include "AMReX_MultiFab.H"
6 #include "AMReX_BCRec.H"
7 
8 #include "ERF_DataStruct.H"
9 #include "ERF_IndexDefines.H"
10 #include "ERF_SurfaceLayer.H"
11 #include "ERF_EB.H"
12 
13 void DiffusionSrcForMom (const amrex::Box& bxx, const amrex::Box& bxy, const amrex::Box& bxz,
14  const amrex::Array4< amrex::Real>& rho_u_rhs,
15  const amrex::Array4< amrex::Real>& rho_v_rhs,
16  const amrex::Array4< amrex::Real>& rho_w_rhs,
17  const amrex::Array4<const amrex::Real>& tau11 ,
18  const amrex::Array4<const amrex::Real>& tau22 ,
19  const amrex::Array4<const amrex::Real>& tau33 ,
20  const amrex::Array4<const amrex::Real>& tau12 , const amrex::Array4<const amrex::Real>& tau21,
21  const amrex::Array4<const amrex::Real>& tau13 , const amrex::Array4<const amrex::Real>& tau31,
22  const amrex::Array4<const amrex::Real>& tau23 , const amrex::Array4<const amrex::Real>& tau32,
23  const amrex::Array4<const amrex::Real>& detJ_arr ,
24  const amrex::Gpu::DeviceVector<amrex::Real>& stretched_dz_d,
25  const amrex::GpuArray<amrex::Real, AMREX_SPACEDIM>& dxInv,
26  const amrex::Array4<const amrex::Real>& mf_mx ,
27  const amrex::Array4<const amrex::Real>& mf_ux ,
28  const amrex::Array4<const amrex::Real>& mf_vx ,
29  const amrex::Array4<const amrex::Real>& mf_my ,
30  const amrex::Array4<const amrex::Real>& mf_uy ,
31  const amrex::Array4<const amrex::Real>& mf_vy ,
32  const bool use_stretched_dz, const bool use_variable_dz);
33 
34 void DiffusionSrcForMom_EB (const amrex::MFIter& mfi,
35  [[maybe_unused]] const amrex::Box& domain,
36  const amrex::Box& bxx, const amrex::Box& bxy, const amrex::Box& bxz,
37  const amrex::Array4< amrex::Real>& rho_u_rhs,
38  const amrex::Array4< amrex::Real>& rho_v_rhs,
39  const amrex::Array4< amrex::Real>& rho_w_rhs,
40  const amrex::Array4<const amrex::Real>& u_arr ,
41  const amrex::Array4<const amrex::Real>& v_arr ,
42  const amrex::Array4<const amrex::Real>& w_arr ,
43  const amrex::Array4<const amrex::Real>& tau11 ,
44  const amrex::Array4<const amrex::Real>& tau22 ,
45  const amrex::Array4<const amrex::Real>& tau33 ,
46  const amrex::Array4<const amrex::Real>& tau12 ,
47  const amrex::Array4<const amrex::Real>& tau13 ,
48  const amrex::Array4<const amrex::Real>& tau23 ,
49  const amrex::Real* dx_arr,
50  const amrex::GpuArray<amrex::Real, AMREX_SPACEDIM>& dxInv,
51  const amrex::Array4<const amrex::Real>& mf_mx ,
52  const amrex::Array4<const amrex::Real>& mf_ux ,
53  const amrex::Array4<const amrex::Real>& mf_vx ,
54  const amrex::Array4<const amrex::Real>& mf_my ,
55  const amrex::Array4<const amrex::Real>& mf_uy ,
56  const amrex::Array4<const amrex::Real>& mf_vy ,
57  const SolverChoice& solverChoice,
58  const eb_& ebfact,
59  [[maybe_unused]] const amrex::BCRec* bc_ptr);
60 
61 void DiffusionSrcForState_N (const amrex::Box& bx, const amrex::Box& domain,
62  int start_comp, int num_comp,
63  const amrex::Array4<const amrex::Real>& u,
64  const amrex::Array4<const amrex::Real>& v,
65  const amrex::Array4<const amrex::Real>& cell_data,
66  const amrex::Array4<const amrex::Real>& cell_prim,
67  const amrex::Array4<amrex::Real>& cell_rhs,
68  const amrex::Array4<amrex::Real>& xflux,
69  const amrex::Array4<amrex::Real>& yflux,
70  const amrex::Array4<amrex::Real>& zflux,
71  const amrex::GpuArray<amrex::Real, AMREX_SPACEDIM>& cellSizeInv,
72  const amrex::Array4<const amrex::Real>& SmnSmn_a,
73  const amrex::Array4<const amrex::Real>& mf_mx,
74  const amrex::Array4<const amrex::Real>& mf_ux,
75  const amrex::Array4<const amrex::Real>& mf_vx,
76  const amrex::Array4<const amrex::Real>& mf_my,
77  const amrex::Array4<const amrex::Real>& mf_uy,
78  const amrex::Array4<const amrex::Real>& mf_vy,
79  amrex::Array4< amrex::Real>& hfx_z,
80  amrex::Array4< amrex::Real>& qfx1_z,
81  amrex::Array4< amrex::Real>& qfx2_z,
82  amrex::Array4< amrex::Real>& diss,
83  const amrex::Array4<const amrex::Real>& mu_turb,
84  const SolverChoice& solverChoice,
85  const int level,
86  const amrex::Array4<const amrex::Real>& tm_arr,
87  const amrex::GpuArray<amrex::Real,AMREX_SPACEDIM> grav_gpu,
88  const amrex::BCRec* bc_ptr,
89  const bool use_SurfLayer,
90  const amrex::Real implicit_fac);
91 
92 void DiffusionSrcForState_S (const amrex::Box& bx, const amrex::Box& domain,
93  int start_comp, int num_comp,
94  const amrex::Array4<const amrex::Real>& u,
95  const amrex::Array4<const amrex::Real>& v,
96  const amrex::Array4<const amrex::Real>& cell_data,
97  const amrex::Array4<const amrex::Real>& cell_prim,
98  const amrex::Array4<amrex::Real>& cell_rhs,
99  const amrex::Array4<amrex::Real>& xflux,
100  const amrex::Array4<amrex::Real>& yflux,
101  const amrex::Array4<amrex::Real>& zflux,
102  const amrex::Gpu::DeviceVector<amrex::Real>& stretched_dz_d,
103  const amrex::GpuArray<amrex::Real, AMREX_SPACEDIM>& dxInv,
104  const amrex::Array4<const amrex::Real>& SmnSmn_a,
105  const amrex::Array4<const amrex::Real>& mf_mx,
106  const amrex::Array4<const amrex::Real>& mf_ux,
107  const amrex::Array4<const amrex::Real>& mf_vx,
108  const amrex::Array4<const amrex::Real>& mf_my,
109  const amrex::Array4<const amrex::Real>& mf_uy,
110  const amrex::Array4<const amrex::Real>& mf_vy,
111  amrex::Array4< amrex::Real>& hfx_z,
112  amrex::Array4< amrex::Real>& qfx1_z,
113  amrex::Array4< amrex::Real>& qfx2_z,
114  amrex::Array4< amrex::Real>& diss,
115  const amrex::Array4<const amrex::Real>& mu_turb,
116  const SolverChoice& solverChoice,
117  const int level,
118  const amrex::Array4<const amrex::Real>& tm_arr,
119  const amrex::GpuArray<amrex::Real,AMREX_SPACEDIM> grav_gpu,
120  const amrex::BCRec* bc_ptr,
121  const bool use_SurfLayer,
122  const amrex::Real implicit_fac);
123 
124 void DiffusionSrcForState_T (const amrex::Box& bx, const amrex::Box& domain,
125  int start_comp, int num_comp,
126  const bool& rotate,
127  const amrex::Array4<const amrex::Real>& u,
128  const amrex::Array4<const amrex::Real>& v,
129  const amrex::Array4<const amrex::Real>& cell_data,
130  const amrex::Array4<const amrex::Real>& cell_prim,
131  const amrex::Array4<amrex::Real>& cell_rhs,
132  const amrex::Array4<amrex::Real>& xflux,
133  const amrex::Array4<amrex::Real>& yflux,
134  const amrex::Array4<amrex::Real>& zflux,
135  const amrex::Array4<const amrex::Real>& z_nd,
136  const amrex::Array4<const amrex::Real>& z_cc,
137  const amrex::Array4<const amrex::Real>& ax,
138  const amrex::Array4<const amrex::Real>& ay,
139  const amrex::Array4<const amrex::Real>& az,
140  const amrex::Array4<const amrex::Real>& detJ,
141  const amrex::GpuArray<amrex::Real, AMREX_SPACEDIM>& dxInv,
142  const amrex::Array4<const amrex::Real>& SmnSmn_a,
143  const amrex::Array4<const amrex::Real>& mf_mx,
144  const amrex::Array4<const amrex::Real>& mf_ux,
145  const amrex::Array4<const amrex::Real>& mf_vx,
146  const amrex::Array4<const amrex::Real>& mf_my,
147  const amrex::Array4<const amrex::Real>& mf_uy,
148  const amrex::Array4<const amrex::Real>& mf_vy,
149  amrex::Array4< amrex::Real>& hfx_x,
150  amrex::Array4< amrex::Real>& hfx_y,
151  amrex::Array4< amrex::Real>& hfx_z,
152  amrex::Array4< amrex::Real>& qfx1_x,
153  amrex::Array4< amrex::Real>& qfx1_y,
154  amrex::Array4< amrex::Real>& qfx1_z,
155  amrex::Array4< amrex::Real>& qfx2_z,
156  amrex::Array4< amrex::Real>& diss,
157  const amrex::Array4<const amrex::Real>& mu_turb,
158  const SolverChoice& solverChoice,
159  const int level,
160  const amrex::Array4<const amrex::Real>& tm_arr,
161  const amrex::GpuArray<amrex::Real,AMREX_SPACEDIM> grav_gpu,
162  const amrex::BCRec* bc_ptr,
163  const bool use_SurfLayer,
164  const amrex::Real implicit_fac);
165 
166 void DiffusionSrcForState_EB (const amrex::Box& bx, const amrex::Box& domain,
167  int start_comp, int num_comp,
168  const amrex::Array4<const amrex::Real>& u,
169  const amrex::Array4<const amrex::Real>& v,
170  const amrex::Array4<const amrex::Real>& cell_data,
171  const amrex::Array4<const amrex::Real>& cell_prim,
172  const amrex::Array4<amrex::Real>& cell_rhs,
173  const amrex::Array4<amrex::Real>& xflux,
174  const amrex::Array4<amrex::Real>& yflux,
175  const amrex::Array4<amrex::Real>& zflux,
176  const amrex::Array4<const amrex::EBCellFlag>& cfg_arr,
177  const amrex::Array4<const amrex::Real>& ax_arr,
178  const amrex::Array4<const amrex::Real>& ay_arr,
179  const amrex::Array4<const amrex::Real>& az_arr,
180  const amrex::Array4<const amrex::Real>& detJ,
181  const amrex::GpuArray<amrex::Real, AMREX_SPACEDIM>& cellSizeInv,
182  amrex::Array4< amrex::Real>& hfx_z,
183  amrex::Array4< amrex::Real>& qfx1_z,
184  amrex::Array4< amrex::Real>& qfx2_z,
185  const amrex::Array4<const amrex::Real>& mu_turb,
186  const SolverChoice& solverChoice,
187  const int level,
188  const amrex::BCRec* bc_ptr,
189  const bool use_SurfLayer);
190 
191 void ComputeStressConsVisc_EB (amrex::Box bxcc,
192  amrex::Box tbxxy,
193  amrex::Box tbxxz,
194  amrex::Box tbxyz,
195  amrex::Real mu_eff,
196  const amrex::Array4<const amrex::Real>& cell_data,
197  amrex::Array4<amrex::Real>& tau11,
198  amrex::Array4<amrex::Real>& tau22,
199  amrex::Array4<amrex::Real>& tau33,
200  amrex::Array4<amrex::Real>& tau12,
201  amrex::Array4<amrex::Real>& tau13,
202  amrex::Array4<amrex::Real>& tau23,
203  const amrex::Array4<const amrex::Real>& er_arr,
204  amrex::Array4<const amrex::Real>& vfrac,
205  amrex::Array4<amrex::Real>& tau13i,
206  amrex::Array4<amrex::Real>& tau23i,
207  amrex::Array4<amrex::Real>& tau33i);
208 
209 void ComputeStressConsVisc_N (amrex::Box bxcc,
210  amrex::Box tbxxy,
211  amrex::Box tbxxz,
212  amrex::Box tbxyz,
213  amrex::Real mu_eff,
214  const amrex::Array4<const amrex::Real>& cell_data,
215  amrex::Array4<amrex::Real>& tau11,
216  amrex::Array4<amrex::Real>& tau22,
217  amrex::Array4<amrex::Real>& tau33,
218  amrex::Array4<amrex::Real>& tau12,
219  amrex::Array4<amrex::Real>& tau13,
220  amrex::Array4<amrex::Real>& tau23,
221  const amrex::Array4<const amrex::Real>& er_arr,
222  amrex::Array4<amrex::Real>& tau13i,
223  amrex::Array4<amrex::Real>& tau23i,
224  amrex::Array4<amrex::Real>& tau33i);
225 
226 void ComputeStressConsVisc_S (amrex::Box bxcc,
227  amrex::Box tbxxy,
228  amrex::Box tbxxz,
229  amrex::Box tbxyz,
230  amrex::Real mu_eff,
231  const amrex::Array4<const amrex::Real>& cell_data,
232  amrex::Array4<amrex::Real>& tau11,
233  amrex::Array4<amrex::Real>& tau22,
234  amrex::Array4<amrex::Real>& tau33,
235  amrex::Array4<amrex::Real>& tau12, amrex::Array4<amrex::Real>& tau21,
236  amrex::Array4<amrex::Real>& tau13, amrex::Array4<amrex::Real>& tau31,
237  amrex::Array4<amrex::Real>& tau23, amrex::Array4<amrex::Real>& tau32,
238  const amrex::Array4<const amrex::Real>& er_arr,
239  const amrex::Array4<const amrex::Real>& mf_mx,
240  const amrex::Array4<const amrex::Real>& mf_ux,
241  const amrex::Array4<const amrex::Real>& mf_vx,
242  const amrex::Array4<const amrex::Real>& mf_my,
243  const amrex::Array4<const amrex::Real>& mf_uy,
244  const amrex::Array4<const amrex::Real>& mf_vy,
245  amrex::Array4<amrex::Real>& tau13i,
246  amrex::Array4<amrex::Real>& tau23i,
247  amrex::Array4<amrex::Real>& tau33i);
248 
249 void ComputeStressConsVisc_T (amrex::Box bxcc,
250  amrex::Box tbxxy,
251  amrex::Box tbxxz,
252  amrex::Box tbxyz,
253  amrex::Real mu_eff,
254  const amrex::Array4<const amrex::Real>& cell_data,
255  amrex::Array4<amrex::Real>& tau11,
256  amrex::Array4<amrex::Real>& tau22,
257  amrex::Array4<amrex::Real>& tau33,
258  amrex::Array4<amrex::Real>& tau12, amrex::Array4<amrex::Real>& tau21,
259  amrex::Array4<amrex::Real>& tau13, amrex::Array4<amrex::Real>& tau31,
260  amrex::Array4<amrex::Real>& tau23, amrex::Array4<amrex::Real>& tau32,
261  const amrex::Array4<const amrex::Real>& er_arr,
262  const amrex::Array4<const amrex::Real>& z_nd,
263  const amrex::Array4<const amrex::Real>& detJ,
264  const amrex::GpuArray<amrex::Real, AMREX_SPACEDIM>& dxInv,
265  const amrex::Array4<const amrex::Real>& mf_mx,
266  const amrex::Array4<const amrex::Real>& mf_ux,
267  const amrex::Array4<const amrex::Real>& mf_vx,
268  const amrex::Array4<const amrex::Real>& mf_my,
269  const amrex::Array4<const amrex::Real>& mf_uy,
270  const amrex::Array4<const amrex::Real>& mf_vy,
271  amrex::Array4<amrex::Real>& tau13i,
272  amrex::Array4<amrex::Real>& tau23i,
273  amrex::Array4<amrex::Real>& tau33i);
274 
275 void ComputeStressVarVisc_EB (amrex::Box bxcc,
276  amrex::Box tbxxy,
277  amrex::Box tbxxz,
278  amrex::Box tbxyz,
279  amrex::Real mu_eff,
280  const amrex::Array4<const amrex::Real>& mu_turb,
281  const amrex::Array4<const amrex::Real>& cell_data,
282  amrex::Array4<amrex::Real>& tau11,
283  amrex::Array4<amrex::Real>& tau22,
284  amrex::Array4<amrex::Real>& tau33,
285  amrex::Array4<amrex::Real>& tau12,
286  amrex::Array4<amrex::Real>& tau13,
287  amrex::Array4<amrex::Real>& tau23,
288  const amrex::Array4<const amrex::Real>& er_arr,
289  amrex::Array4<const amrex::Real>& vfrac,
290  amrex::Array4<amrex::Real>& tau13i,
291  amrex::Array4<amrex::Real>& tau23i,
292  amrex::Array4<amrex::Real>& tau33i);
293 
294 void ComputeStressVarVisc_N (amrex::Box bxcc,
295  amrex::Box tbxxy,
296  amrex::Box tbxxz,
297  amrex::Box tbxyz,
298  amrex::Real mu_eff,
299  const amrex::Array4<const amrex::Real>& mu_turb,
300  const amrex::Array4<const amrex::Real>& cell_data,
301  amrex::Array4<amrex::Real>& tau11,
302  amrex::Array4<amrex::Real>& tau22,
303  amrex::Array4<amrex::Real>& tau33,
304  amrex::Array4<amrex::Real>& tau12,
305  amrex::Array4<amrex::Real>& tau13,
306  amrex::Array4<amrex::Real>& tau23,
307  const amrex::Array4<const amrex::Real>& er_arr,
308  amrex::Array4<amrex::Real>& tau13i,
309  amrex::Array4<amrex::Real>& tau23i,
310  amrex::Array4<amrex::Real>& tau33i);
311 
312 void ComputeStressVarVisc_S (amrex::Box bxcc,
313  amrex::Box tbxxy,
314  amrex::Box tbxxz,
315  amrex::Box tbxyz,
316  amrex::Real mu_eff,
317  const amrex::Array4<const amrex::Real>& mu_turb,
318  const amrex::Array4<const amrex::Real>& cell_data,
319  amrex::Array4<amrex::Real>& tau11,
320  amrex::Array4<amrex::Real>& tau22,
321  amrex::Array4<amrex::Real>& tau33,
322  amrex::Array4<amrex::Real>& tau12, amrex::Array4<amrex::Real>& tau21,
323  amrex::Array4<amrex::Real>& tau13, amrex::Array4<amrex::Real>& tau31,
324  amrex::Array4<amrex::Real>& tau23, amrex::Array4<amrex::Real>& tau32,
325  const amrex::Array4<const amrex::Real>& er_arr,
326  const amrex::Array4<const amrex::Real>& mf_mx,
327  const amrex::Array4<const amrex::Real>& mf_ux,
328  const amrex::Array4<const amrex::Real>& mf_vx,
329  const amrex::Array4<const amrex::Real>& mf_my,
330  const amrex::Array4<const amrex::Real>& mf_uy,
331  const amrex::Array4<const amrex::Real>& mf_vy,
332  amrex::Array4<amrex::Real>& tau13i,
333  amrex::Array4<amrex::Real>& tau23i,
334  amrex::Array4<amrex::Real>& tau33i);
335 
336 void ComputeStressVarVisc_T (amrex::Box bxcc,
337  amrex::Box tbxxy,
338  amrex::Box tbxxz,
339  amrex::Box tbxyz,
340  amrex::Real mu_eff,
341  const amrex::Array4<const amrex::Real>& mu_turb,
342  const amrex::Array4<const amrex::Real>& cell_data,
343  amrex::Array4<amrex::Real>& tau11,
344  amrex::Array4<amrex::Real>& tau22,
345  amrex::Array4<amrex::Real>& tau33,
346  amrex::Array4<amrex::Real>& tau12, amrex::Array4<amrex::Real>& tau21,
347  amrex::Array4<amrex::Real>& tau13, amrex::Array4<amrex::Real>& tau31,
348  amrex::Array4<amrex::Real>& tau23, amrex::Array4<amrex::Real>& tau32,
349  const amrex::Array4<const amrex::Real>& er_arr,
350  const amrex::Array4<const amrex::Real>& z_nd,
351  const amrex::Array4<const amrex::Real>& detJ,
352  const amrex::GpuArray<amrex::Real, AMREX_SPACEDIM>& dxInv,
353  const amrex::Array4<const amrex::Real>& mf_mx,
354  const amrex::Array4<const amrex::Real>& mf_ux,
355  const amrex::Array4<const amrex::Real>& mf_vx,
356  const amrex::Array4<const amrex::Real>& mf_my,
357  const amrex::Array4<const amrex::Real>& mf_uy,
358  const amrex::Array4<const amrex::Real>& mf_vy,
359  amrex::Array4<amrex::Real>& tau13i,
360  amrex::Array4<amrex::Real>& tau23i,
361  amrex::Array4<amrex::Real>& tau33i);
362 
363 void ComputeStrain_EB (const amrex::MFIter& mfi,
364  amrex::Box bxcc, amrex::Box tbxxy,
365  amrex::Box tbxxz, amrex::Box tbxyz, amrex::Box domain,
366  const amrex::Array4<const amrex::Real>& u,
367  const amrex::Array4<const amrex::Real>& v,
368  const amrex::Array4<const amrex::Real>& w,
369  amrex::Array4<amrex::Real>& tau11,
370  amrex::Array4<amrex::Real>& tau22,
371  amrex::Array4<amrex::Real>& tau33,
372  amrex::Array4<amrex::Real>& tau12,
373  amrex::Array4<amrex::Real>& tau13,
374  amrex::Array4<amrex::Real>& tau23,
375  const amrex::GpuArray<amrex::Real, AMREX_SPACEDIM>& dxInv,
376  const amrex::BCRec* bc_ptr,
377  const eb_& ebfact,
378  amrex::Array4<amrex::Real>& tau13i,
379  amrex::Array4<amrex::Real>& tau23i);
380 
381 void ComputeStrain_N (amrex::Box bxcc, amrex::Box tbxxy,
382  amrex::Box tbxxz, amrex::Box tbxyz, amrex::Box domain,
383  const amrex::Array4<const amrex::Real>& u,
384  const amrex::Array4<const amrex::Real>& v,
385  const amrex::Array4<const amrex::Real>& w,
386  amrex::Array4<amrex::Real>& tau11,
387  amrex::Array4<amrex::Real>& tau22,
388  amrex::Array4<amrex::Real>& tau33,
389  amrex::Array4<amrex::Real>& tau12,
390  amrex::Array4<amrex::Real>& tau13,
391  amrex::Array4<amrex::Real>& tau23,
392  const amrex::GpuArray<amrex::Real, AMREX_SPACEDIM>& dxInv,
393  const amrex::Array4<const amrex::Real>& mf_mx,
394  const amrex::Array4<const amrex::Real>& mf_ux,
395  const amrex::Array4<const amrex::Real>& mf_vx,
396  const amrex::Array4<const amrex::Real>& mf_my,
397  const amrex::Array4<const amrex::Real>& mf_uy,
398  const amrex::Array4<const amrex::Real>& mf_vy,
399  const amrex::BCRec* bc_ptr,
400  amrex::Array4<amrex::Real>& tau13i,
401  amrex::Array4<amrex::Real>& tau23i);
402 
403 void ComputeStrain_S (amrex::Box bxcc, amrex::Box tbxxy,
404  amrex::Box tbxxz, amrex::Box tbxyz, amrex::Box domain,
405  const amrex::Array4<const amrex::Real>& u,
406  const amrex::Array4<const amrex::Real>& v,
407  const amrex::Array4<const amrex::Real>& w,
408  amrex::Array4<amrex::Real>& tau11,
409  amrex::Array4<amrex::Real>& tau22,
410  amrex::Array4<amrex::Real>& tau33,
411  amrex::Array4<amrex::Real>& tau12, amrex::Array4<amrex::Real>& tau21,
412  amrex::Array4<amrex::Real>& tau13, amrex::Array4<amrex::Real>& tau31,
413  amrex::Array4<amrex::Real>& tau23, amrex::Array4<amrex::Real>& tau32,
414  const amrex::Gpu::DeviceVector<amrex::Real>& stretched_dz_d,
415  const amrex::GpuArray<amrex::Real, AMREX_SPACEDIM>& dxInv,
416  const amrex::Array4<const amrex::Real>& mf_mx,
417  const amrex::Array4<const amrex::Real>& mf_ux,
418  const amrex::Array4<const amrex::Real>& mf_vx,
419  const amrex::Array4<const amrex::Real>& mf_my,
420  const amrex::Array4<const amrex::Real>& mf_uy,
421  const amrex::Array4<const amrex::Real>& mf_vy,
422  const amrex::BCRec* bc_ptr,
423  amrex::Array4<amrex::Real>& tau13i,
424  amrex::Array4<amrex::Real>& tau23i);
425 
426 void ComputeStrain_T (amrex::Box bxcc, amrex::Box tbxxy,
427  amrex::Box tbxxz, amrex::Box tbxyz, amrex::Box domain,
428  const amrex::Array4<const amrex::Real>& u,
429  const amrex::Array4<const amrex::Real>& v,
430  const amrex::Array4<const amrex::Real>& w,
431  amrex::Array4<amrex::Real>& tau11,
432  amrex::Array4<amrex::Real>& tau22,
433  amrex::Array4<amrex::Real>& tau33,
434  amrex::Array4<amrex::Real>& tau12, amrex::Array4<amrex::Real>& tau21,
435  amrex::Array4<amrex::Real>& tau13, amrex::Array4<amrex::Real>& tau31,
436  amrex::Array4<amrex::Real>& tau23, amrex::Array4<amrex::Real>& tau32,
437  const amrex::Array4<const amrex::Real>& z_nd,
438  const amrex::Array4<const amrex::Real>& detJ,
439  const amrex::GpuArray<amrex::Real, AMREX_SPACEDIM>& dxInv,
440  const amrex::Array4<const amrex::Real>& mf_mx,
441  const amrex::Array4<const amrex::Real>& mf_ux,
442  const amrex::Array4<const amrex::Real>& mf_vx,
443  const amrex::Array4<const amrex::Real>& mf_my,
444  const amrex::Array4<const amrex::Real>& mf_uy,
445  const amrex::Array4<const amrex::Real>& mf_vy,
446  const amrex::BCRec* bc_ptr,
447  amrex::Array4<amrex::Real>& tau13i,
448  amrex::Array4<amrex::Real>& tau23i);
449 
450 void ImplicitDiffForState_N (const amrex::Box& bx, const amrex::Box& domain, const int level,
451  const amrex::Real dt,
452  /*int start_comp, int num_comp,*/
453  const amrex::GpuArray<amrex::Real, AMREX_SPACEDIM*2>& bc_neumann_vals,
454  const amrex::Array4< amrex::Real>& cell_data,
455  const amrex::GpuArray<amrex::Real, AMREX_SPACEDIM>& cellSizeInv,
456  const amrex::Array4<const amrex::Real>& hfx_z,
457  const amrex::Array4<const amrex::Real>& mu_turb,
458  const SolverChoice& solverChoice,
459  const amrex::BCRec* bc_ptr,
460  const bool use_SurfLayer,
461  const amrex::Real implicit_fac);
462 
463 void ImplicitDiffForState_S (const amrex::Box& bx, const amrex::Box& domain, const int level,
464  const amrex::Real dt,
465  /*int start_comp, int num_comp,*/
466  const amrex::GpuArray<amrex::Real, AMREX_SPACEDIM*2>& bc_neumann_vals,
467  const amrex::Array4< amrex::Real>& cell_data,
468  const amrex::Gpu::DeviceVector<amrex::Real>& stretched_dz_d,
469  const amrex::Array4<const amrex::Real>& hfx_z,
470  const amrex::Array4<const amrex::Real>& mu_turb,
471  const SolverChoice& solverChoice,
472  const amrex::BCRec* bc_ptr,
473  const bool use_SurfLayer,
474  const amrex::Real implicit_fac);
475 
476 void ImplicitDiffForState_T (const amrex::Box& bx, const amrex::Box& domain, const int level,
477  const amrex::Real dt,
478  /*int start_comp, int num_comp,*/
479  const amrex::GpuArray<amrex::Real, AMREX_SPACEDIM*2>& bc_neumann_vals,
480  const amrex::Array4< amrex::Real>& cell_data,
481  const amrex::Array4<const amrex::Real>& z_nd,
482  const amrex::Array4<const amrex::Real>& detJ,
483  const amrex::GpuArray<amrex::Real, AMREX_SPACEDIM>& cellSizeInv,
484  const amrex::Array4<const amrex::Real>& hfx_z,
485  const amrex::Array4<const amrex::Real>& mu_turb,
486  const SolverChoice& solverChoice,
487  const amrex::BCRec* bc_ptr,
488  const bool use_SurfLayer,
489  const amrex::Real implicit_fac);
490 
491 template <int stagdir>
492 void ImplicitDiffForMom_N (const amrex::Box& bx, const amrex::Box& domain, const int level,
493  const amrex::Real dt,
494  const amrex::Array4<const amrex::Real>& cell_data,
495  const amrex::Array4< amrex::Real>& face_data,
496  const amrex::Array4<const amrex::Real>& tau_corr,
497  const amrex::GpuArray<amrex::Real, AMREX_SPACEDIM>& cellSizeInv,
498  const amrex::Array4<const amrex::Real>& mu_turb,
499  const SolverChoice& solverChoice,
500  const amrex::BCRec* bc_ptr,
501  const bool use_SurfLayer,
502  const amrex::Real implicit_fac);
503 
504 template <int stagdir>
505 void ImplicitDiffForMom_S (const amrex::Box& bx, const amrex::Box& domain, const int level,
506  const amrex::Real dt,
507  const amrex::Array4<const amrex::Real>& cell_data,
508  const amrex::Array4< amrex::Real>& face_data,
509  const amrex::Array4<const amrex::Real>& tau_corr,
510  const amrex::Gpu::DeviceVector<amrex::Real>& stretched_dz_d,
511  const amrex::Array4<const amrex::Real>& mu_turb,
512  const SolverChoice& solverChoice,
513  const amrex::BCRec* bc_ptr,
514  const bool use_SurfLayer,
515  const amrex::Real implicit_fac);
516 
517 template <int stagdir>
518 void ImplicitDiffForMom_T (const amrex::Box& bx, const amrex::Box& domain, const int level,
519  const amrex::Real dt,
520  const amrex::Array4<const amrex::Real>& cell_data,
521  const amrex::Array4< amrex::Real>& face_data,
522  const amrex::Array4<const amrex::Real>& tau_corr,
523  const amrex::Array4<const amrex::Real>& z_nd,
524  const amrex::Array4<const amrex::Real>& detJ,
525  const amrex::GpuArray<amrex::Real, AMREX_SPACEDIM>& cellSizeInv,
526  const amrex::Array4<const amrex::Real>& mu_turb,
527  const SolverChoice& solverChoice,
528  const amrex::BCRec* bc_ptr,
529  const bool use_SurfLayer,
530  const amrex::Real implicit_fac);
531 #endif
@ tau12
Definition: ERF_DataStruct.H:32
@ tau23
Definition: ERF_DataStruct.H:32
@ tau33
Definition: ERF_DataStruct.H:32
@ tau22
Definition: ERF_DataStruct.H:32
@ tau11
Definition: ERF_DataStruct.H:32
@ tau32
Definition: ERF_DataStruct.H:32
@ tau31
Definition: ERF_DataStruct.H:32
@ tau21
Definition: ERF_DataStruct.H:32
@ tau13
Definition: ERF_DataStruct.H:32
void ComputeStressVarVisc_T(amrex::Box bxcc, amrex::Box tbxxy, amrex::Box tbxxz, amrex::Box tbxyz, amrex::Real mu_eff, const amrex::Array4< const amrex::Real > &mu_turb, const amrex::Array4< const amrex::Real > &cell_data, amrex::Array4< amrex::Real > &tau11, amrex::Array4< amrex::Real > &tau22, amrex::Array4< amrex::Real > &tau33, amrex::Array4< amrex::Real > &tau12, amrex::Array4< amrex::Real > &tau21, amrex::Array4< amrex::Real > &tau13, amrex::Array4< amrex::Real > &tau31, amrex::Array4< amrex::Real > &tau23, amrex::Array4< amrex::Real > &tau32, const amrex::Array4< const amrex::Real > &er_arr, const amrex::Array4< const amrex::Real > &z_nd, const amrex::Array4< const amrex::Real > &detJ, const amrex::GpuArray< amrex::Real, AMREX_SPACEDIM > &dxInv, const amrex::Array4< const amrex::Real > &mf_mx, const amrex::Array4< const amrex::Real > &mf_ux, const amrex::Array4< const amrex::Real > &mf_vx, const amrex::Array4< const amrex::Real > &mf_my, const amrex::Array4< const amrex::Real > &mf_uy, const amrex::Array4< const amrex::Real > &mf_vy, amrex::Array4< amrex::Real > &tau13i, amrex::Array4< amrex::Real > &tau23i, amrex::Array4< amrex::Real > &tau33i)
void ImplicitDiffForMom_T(const amrex::Box &bx, const amrex::Box &domain, const int level, const amrex::Real dt, const amrex::Array4< const amrex::Real > &cell_data, const amrex::Array4< amrex::Real > &face_data, const amrex::Array4< const amrex::Real > &tau_corr, const amrex::Array4< const amrex::Real > &z_nd, const amrex::Array4< const amrex::Real > &detJ, const amrex::GpuArray< amrex::Real, AMREX_SPACEDIM > &cellSizeInv, const amrex::Array4< const amrex::Real > &mu_turb, const SolverChoice &solverChoice, const amrex::BCRec *bc_ptr, const bool use_SurfLayer, const amrex::Real implicit_fac)
void DiffusionSrcForMom(const amrex::Box &bxx, const amrex::Box &bxy, const amrex::Box &bxz, const amrex::Array4< amrex::Real > &rho_u_rhs, const amrex::Array4< amrex::Real > &rho_v_rhs, const amrex::Array4< amrex::Real > &rho_w_rhs, const amrex::Array4< const amrex::Real > &tau11, const amrex::Array4< const amrex::Real > &tau22, const amrex::Array4< const amrex::Real > &tau33, const amrex::Array4< const amrex::Real > &tau12, const amrex::Array4< const amrex::Real > &tau21, const amrex::Array4< const amrex::Real > &tau13, const amrex::Array4< const amrex::Real > &tau31, const amrex::Array4< const amrex::Real > &tau23, const amrex::Array4< const amrex::Real > &tau32, const amrex::Array4< const amrex::Real > &detJ_arr, const amrex::Gpu::DeviceVector< amrex::Real > &stretched_dz_d, const amrex::GpuArray< amrex::Real, AMREX_SPACEDIM > &dxInv, const amrex::Array4< const amrex::Real > &mf_mx, const amrex::Array4< const amrex::Real > &mf_ux, const amrex::Array4< const amrex::Real > &mf_vx, const amrex::Array4< const amrex::Real > &mf_my, const amrex::Array4< const amrex::Real > &mf_uy, const amrex::Array4< const amrex::Real > &mf_vy, const bool use_stretched_dz, const bool use_variable_dz)
void ComputeStressConsVisc_N(amrex::Box bxcc, amrex::Box tbxxy, amrex::Box tbxxz, amrex::Box tbxyz, amrex::Real mu_eff, const amrex::Array4< const amrex::Real > &cell_data, amrex::Array4< amrex::Real > &tau11, amrex::Array4< amrex::Real > &tau22, amrex::Array4< amrex::Real > &tau33, amrex::Array4< amrex::Real > &tau12, amrex::Array4< amrex::Real > &tau13, amrex::Array4< amrex::Real > &tau23, const amrex::Array4< const amrex::Real > &er_arr, amrex::Array4< amrex::Real > &tau13i, amrex::Array4< amrex::Real > &tau23i, amrex::Array4< amrex::Real > &tau33i)
void DiffusionSrcForMom_EB(const amrex::MFIter &mfi, [[maybe_unused]] const amrex::Box &domain, const amrex::Box &bxx, const amrex::Box &bxy, const amrex::Box &bxz, const amrex::Array4< amrex::Real > &rho_u_rhs, const amrex::Array4< amrex::Real > &rho_v_rhs, const amrex::Array4< amrex::Real > &rho_w_rhs, const amrex::Array4< const amrex::Real > &u_arr, const amrex::Array4< const amrex::Real > &v_arr, const amrex::Array4< const amrex::Real > &w_arr, const amrex::Array4< const amrex::Real > &tau11, const amrex::Array4< const amrex::Real > &tau22, const amrex::Array4< const amrex::Real > &tau33, const amrex::Array4< const amrex::Real > &tau12, const amrex::Array4< const amrex::Real > &tau13, const amrex::Array4< const amrex::Real > &tau23, const amrex::Real *dx_arr, const amrex::GpuArray< amrex::Real, AMREX_SPACEDIM > &dxInv, const amrex::Array4< const amrex::Real > &mf_mx, const amrex::Array4< const amrex::Real > &mf_ux, const amrex::Array4< const amrex::Real > &mf_vx, const amrex::Array4< const amrex::Real > &mf_my, const amrex::Array4< const amrex::Real > &mf_uy, const amrex::Array4< const amrex::Real > &mf_vy, const SolverChoice &solverChoice, const eb_ &ebfact, [[maybe_unused]] const amrex::BCRec *bc_ptr)
void DiffusionSrcForState_S(const amrex::Box &bx, const amrex::Box &domain, int start_comp, int num_comp, const amrex::Array4< const amrex::Real > &u, const amrex::Array4< const amrex::Real > &v, const amrex::Array4< const amrex::Real > &cell_data, const amrex::Array4< const amrex::Real > &cell_prim, const amrex::Array4< amrex::Real > &cell_rhs, const amrex::Array4< amrex::Real > &xflux, const amrex::Array4< amrex::Real > &yflux, const amrex::Array4< amrex::Real > &zflux, const amrex::Gpu::DeviceVector< amrex::Real > &stretched_dz_d, const amrex::GpuArray< amrex::Real, AMREX_SPACEDIM > &dxInv, const amrex::Array4< const amrex::Real > &SmnSmn_a, const amrex::Array4< const amrex::Real > &mf_mx, const amrex::Array4< const amrex::Real > &mf_ux, const amrex::Array4< const amrex::Real > &mf_vx, const amrex::Array4< const amrex::Real > &mf_my, const amrex::Array4< const amrex::Real > &mf_uy, const amrex::Array4< const amrex::Real > &mf_vy, amrex::Array4< amrex::Real > &hfx_z, amrex::Array4< amrex::Real > &qfx1_z, amrex::Array4< amrex::Real > &qfx2_z, amrex::Array4< amrex::Real > &diss, const amrex::Array4< const amrex::Real > &mu_turb, const SolverChoice &solverChoice, const int level, const amrex::Array4< const amrex::Real > &tm_arr, const amrex::GpuArray< amrex::Real, AMREX_SPACEDIM > grav_gpu, const amrex::BCRec *bc_ptr, const bool use_SurfLayer, const amrex::Real implicit_fac)
void DiffusionSrcForState_T(const amrex::Box &bx, const amrex::Box &domain, int start_comp, int num_comp, const bool &rotate, const amrex::Array4< const amrex::Real > &u, const amrex::Array4< const amrex::Real > &v, const amrex::Array4< const amrex::Real > &cell_data, const amrex::Array4< const amrex::Real > &cell_prim, const amrex::Array4< amrex::Real > &cell_rhs, const amrex::Array4< amrex::Real > &xflux, const amrex::Array4< amrex::Real > &yflux, const amrex::Array4< amrex::Real > &zflux, const amrex::Array4< const amrex::Real > &z_nd, const amrex::Array4< const amrex::Real > &z_cc, const amrex::Array4< const amrex::Real > &ax, const amrex::Array4< const amrex::Real > &ay, const amrex::Array4< const amrex::Real > &az, const amrex::Array4< const amrex::Real > &detJ, const amrex::GpuArray< amrex::Real, AMREX_SPACEDIM > &dxInv, const amrex::Array4< const amrex::Real > &SmnSmn_a, const amrex::Array4< const amrex::Real > &mf_mx, const amrex::Array4< const amrex::Real > &mf_ux, const amrex::Array4< const amrex::Real > &mf_vx, const amrex::Array4< const amrex::Real > &mf_my, const amrex::Array4< const amrex::Real > &mf_uy, const amrex::Array4< const amrex::Real > &mf_vy, amrex::Array4< amrex::Real > &hfx_x, amrex::Array4< amrex::Real > &hfx_y, amrex::Array4< amrex::Real > &hfx_z, amrex::Array4< amrex::Real > &qfx1_x, amrex::Array4< amrex::Real > &qfx1_y, amrex::Array4< amrex::Real > &qfx1_z, amrex::Array4< amrex::Real > &qfx2_z, amrex::Array4< amrex::Real > &diss, const amrex::Array4< const amrex::Real > &mu_turb, const SolverChoice &solverChoice, const int level, const amrex::Array4< const amrex::Real > &tm_arr, const amrex::GpuArray< amrex::Real, AMREX_SPACEDIM > grav_gpu, const amrex::BCRec *bc_ptr, const bool use_SurfLayer, const amrex::Real implicit_fac)
void ComputeStrain_EB(const amrex::MFIter &mfi, amrex::Box bxcc, amrex::Box tbxxy, amrex::Box tbxxz, amrex::Box tbxyz, amrex::Box domain, const amrex::Array4< const amrex::Real > &u, const amrex::Array4< const amrex::Real > &v, const amrex::Array4< const amrex::Real > &w, amrex::Array4< amrex::Real > &tau11, amrex::Array4< amrex::Real > &tau22, amrex::Array4< amrex::Real > &tau33, amrex::Array4< amrex::Real > &tau12, amrex::Array4< amrex::Real > &tau13, amrex::Array4< amrex::Real > &tau23, const amrex::GpuArray< amrex::Real, AMREX_SPACEDIM > &dxInv, const amrex::BCRec *bc_ptr, const eb_ &ebfact, amrex::Array4< amrex::Real > &tau13i, amrex::Array4< amrex::Real > &tau23i)
void ComputeStrain_T(amrex::Box bxcc, amrex::Box tbxxy, amrex::Box tbxxz, amrex::Box tbxyz, amrex::Box domain, const amrex::Array4< const amrex::Real > &u, const amrex::Array4< const amrex::Real > &v, const amrex::Array4< const amrex::Real > &w, amrex::Array4< amrex::Real > &tau11, amrex::Array4< amrex::Real > &tau22, amrex::Array4< amrex::Real > &tau33, amrex::Array4< amrex::Real > &tau12, amrex::Array4< amrex::Real > &tau21, amrex::Array4< amrex::Real > &tau13, amrex::Array4< amrex::Real > &tau31, amrex::Array4< amrex::Real > &tau23, amrex::Array4< amrex::Real > &tau32, const amrex::Array4< const amrex::Real > &z_nd, const amrex::Array4< const amrex::Real > &detJ, const amrex::GpuArray< amrex::Real, AMREX_SPACEDIM > &dxInv, const amrex::Array4< const amrex::Real > &mf_mx, const amrex::Array4< const amrex::Real > &mf_ux, const amrex::Array4< const amrex::Real > &mf_vx, const amrex::Array4< const amrex::Real > &mf_my, const amrex::Array4< const amrex::Real > &mf_uy, const amrex::Array4< const amrex::Real > &mf_vy, const amrex::BCRec *bc_ptr, amrex::Array4< amrex::Real > &tau13i, amrex::Array4< amrex::Real > &tau23i)
void ComputeStressConsVisc_T(amrex::Box bxcc, amrex::Box tbxxy, amrex::Box tbxxz, amrex::Box tbxyz, amrex::Real mu_eff, const amrex::Array4< const amrex::Real > &cell_data, amrex::Array4< amrex::Real > &tau11, amrex::Array4< amrex::Real > &tau22, amrex::Array4< amrex::Real > &tau33, amrex::Array4< amrex::Real > &tau12, amrex::Array4< amrex::Real > &tau21, amrex::Array4< amrex::Real > &tau13, amrex::Array4< amrex::Real > &tau31, amrex::Array4< amrex::Real > &tau23, amrex::Array4< amrex::Real > &tau32, const amrex::Array4< const amrex::Real > &er_arr, const amrex::Array4< const amrex::Real > &z_nd, const amrex::Array4< const amrex::Real > &detJ, const amrex::GpuArray< amrex::Real, AMREX_SPACEDIM > &dxInv, const amrex::Array4< const amrex::Real > &mf_mx, const amrex::Array4< const amrex::Real > &mf_ux, const amrex::Array4< const amrex::Real > &mf_vx, const amrex::Array4< const amrex::Real > &mf_my, const amrex::Array4< const amrex::Real > &mf_uy, const amrex::Array4< const amrex::Real > &mf_vy, amrex::Array4< amrex::Real > &tau13i, amrex::Array4< amrex::Real > &tau23i, amrex::Array4< amrex::Real > &tau33i)
void ComputeStressConsVisc_EB(amrex::Box bxcc, amrex::Box tbxxy, amrex::Box tbxxz, amrex::Box tbxyz, amrex::Real mu_eff, const amrex::Array4< const amrex::Real > &cell_data, amrex::Array4< amrex::Real > &tau11, amrex::Array4< amrex::Real > &tau22, amrex::Array4< amrex::Real > &tau33, amrex::Array4< amrex::Real > &tau12, amrex::Array4< amrex::Real > &tau13, amrex::Array4< amrex::Real > &tau23, const amrex::Array4< const amrex::Real > &er_arr, amrex::Array4< const amrex::Real > &vfrac, amrex::Array4< amrex::Real > &tau13i, amrex::Array4< amrex::Real > &tau23i, amrex::Array4< amrex::Real > &tau33i)
void ImplicitDiffForMom_N(const amrex::Box &bx, const amrex::Box &domain, const int level, const amrex::Real dt, const amrex::Array4< const amrex::Real > &cell_data, const amrex::Array4< amrex::Real > &face_data, const amrex::Array4< const amrex::Real > &tau_corr, const amrex::GpuArray< amrex::Real, AMREX_SPACEDIM > &cellSizeInv, const amrex::Array4< const amrex::Real > &mu_turb, const SolverChoice &solverChoice, const amrex::BCRec *bc_ptr, const bool use_SurfLayer, const amrex::Real implicit_fac)
void ImplicitDiffForMom_S(const amrex::Box &bx, const amrex::Box &domain, const int level, const amrex::Real dt, const amrex::Array4< const amrex::Real > &cell_data, const amrex::Array4< amrex::Real > &face_data, const amrex::Array4< const amrex::Real > &tau_corr, const amrex::Gpu::DeviceVector< amrex::Real > &stretched_dz_d, const amrex::Array4< const amrex::Real > &mu_turb, const SolverChoice &solverChoice, const amrex::BCRec *bc_ptr, const bool use_SurfLayer, const amrex::Real implicit_fac)
void DiffusionSrcForState_N(const amrex::Box &bx, const amrex::Box &domain, int start_comp, int num_comp, const amrex::Array4< const amrex::Real > &u, const amrex::Array4< const amrex::Real > &v, const amrex::Array4< const amrex::Real > &cell_data, const amrex::Array4< const amrex::Real > &cell_prim, const amrex::Array4< amrex::Real > &cell_rhs, const amrex::Array4< amrex::Real > &xflux, const amrex::Array4< amrex::Real > &yflux, const amrex::Array4< amrex::Real > &zflux, const amrex::GpuArray< amrex::Real, AMREX_SPACEDIM > &cellSizeInv, const amrex::Array4< const amrex::Real > &SmnSmn_a, const amrex::Array4< const amrex::Real > &mf_mx, const amrex::Array4< const amrex::Real > &mf_ux, const amrex::Array4< const amrex::Real > &mf_vx, const amrex::Array4< const amrex::Real > &mf_my, const amrex::Array4< const amrex::Real > &mf_uy, const amrex::Array4< const amrex::Real > &mf_vy, amrex::Array4< amrex::Real > &hfx_z, amrex::Array4< amrex::Real > &qfx1_z, amrex::Array4< amrex::Real > &qfx2_z, amrex::Array4< amrex::Real > &diss, const amrex::Array4< const amrex::Real > &mu_turb, const SolverChoice &solverChoice, const int level, const amrex::Array4< const amrex::Real > &tm_arr, const amrex::GpuArray< amrex::Real, AMREX_SPACEDIM > grav_gpu, const amrex::BCRec *bc_ptr, const bool use_SurfLayer, const amrex::Real implicit_fac)
void ComputeStressVarVisc_EB(amrex::Box bxcc, amrex::Box tbxxy, amrex::Box tbxxz, amrex::Box tbxyz, amrex::Real mu_eff, const amrex::Array4< const amrex::Real > &mu_turb, const amrex::Array4< const amrex::Real > &cell_data, amrex::Array4< amrex::Real > &tau11, amrex::Array4< amrex::Real > &tau22, amrex::Array4< amrex::Real > &tau33, amrex::Array4< amrex::Real > &tau12, amrex::Array4< amrex::Real > &tau13, amrex::Array4< amrex::Real > &tau23, const amrex::Array4< const amrex::Real > &er_arr, amrex::Array4< const amrex::Real > &vfrac, amrex::Array4< amrex::Real > &tau13i, amrex::Array4< amrex::Real > &tau23i, amrex::Array4< amrex::Real > &tau33i)
void ComputeStressConsVisc_S(amrex::Box bxcc, amrex::Box tbxxy, amrex::Box tbxxz, amrex::Box tbxyz, amrex::Real mu_eff, const amrex::Array4< const amrex::Real > &cell_data, amrex::Array4< amrex::Real > &tau11, amrex::Array4< amrex::Real > &tau22, amrex::Array4< amrex::Real > &tau33, amrex::Array4< amrex::Real > &tau12, amrex::Array4< amrex::Real > &tau21, amrex::Array4< amrex::Real > &tau13, amrex::Array4< amrex::Real > &tau31, amrex::Array4< amrex::Real > &tau23, amrex::Array4< amrex::Real > &tau32, const amrex::Array4< const amrex::Real > &er_arr, const amrex::Array4< const amrex::Real > &mf_mx, const amrex::Array4< const amrex::Real > &mf_ux, const amrex::Array4< const amrex::Real > &mf_vx, const amrex::Array4< const amrex::Real > &mf_my, const amrex::Array4< const amrex::Real > &mf_uy, const amrex::Array4< const amrex::Real > &mf_vy, amrex::Array4< amrex::Real > &tau13i, amrex::Array4< amrex::Real > &tau23i, amrex::Array4< amrex::Real > &tau33i)
void ComputeStrain_N(amrex::Box bxcc, amrex::Box tbxxy, amrex::Box tbxxz, amrex::Box tbxyz, amrex::Box domain, const amrex::Array4< const amrex::Real > &u, const amrex::Array4< const amrex::Real > &v, const amrex::Array4< const amrex::Real > &w, amrex::Array4< amrex::Real > &tau11, amrex::Array4< amrex::Real > &tau22, amrex::Array4< amrex::Real > &tau33, amrex::Array4< amrex::Real > &tau12, amrex::Array4< amrex::Real > &tau13, amrex::Array4< amrex::Real > &tau23, const amrex::GpuArray< amrex::Real, AMREX_SPACEDIM > &dxInv, const amrex::Array4< const amrex::Real > &mf_mx, const amrex::Array4< const amrex::Real > &mf_ux, const amrex::Array4< const amrex::Real > &mf_vx, const amrex::Array4< const amrex::Real > &mf_my, const amrex::Array4< const amrex::Real > &mf_uy, const amrex::Array4< const amrex::Real > &mf_vy, const amrex::BCRec *bc_ptr, amrex::Array4< amrex::Real > &tau13i, amrex::Array4< amrex::Real > &tau23i)
void ComputeStressVarVisc_S(amrex::Box bxcc, amrex::Box tbxxy, amrex::Box tbxxz, amrex::Box tbxyz, amrex::Real mu_eff, const amrex::Array4< const amrex::Real > &mu_turb, const amrex::Array4< const amrex::Real > &cell_data, amrex::Array4< amrex::Real > &tau11, amrex::Array4< amrex::Real > &tau22, amrex::Array4< amrex::Real > &tau33, amrex::Array4< amrex::Real > &tau12, amrex::Array4< amrex::Real > &tau21, amrex::Array4< amrex::Real > &tau13, amrex::Array4< amrex::Real > &tau31, amrex::Array4< amrex::Real > &tau23, amrex::Array4< amrex::Real > &tau32, const amrex::Array4< const amrex::Real > &er_arr, const amrex::Array4< const amrex::Real > &mf_mx, const amrex::Array4< const amrex::Real > &mf_ux, const amrex::Array4< const amrex::Real > &mf_vx, const amrex::Array4< const amrex::Real > &mf_my, const amrex::Array4< const amrex::Real > &mf_uy, const amrex::Array4< const amrex::Real > &mf_vy, amrex::Array4< amrex::Real > &tau13i, amrex::Array4< amrex::Real > &tau23i, amrex::Array4< amrex::Real > &tau33i)
void ImplicitDiffForState_N(const amrex::Box &bx, const amrex::Box &domain, const int level, const amrex::Real dt, const amrex::GpuArray< amrex::Real, AMREX_SPACEDIM *2 > &bc_neumann_vals, const amrex::Array4< amrex::Real > &cell_data, const amrex::GpuArray< amrex::Real, AMREX_SPACEDIM > &cellSizeInv, const amrex::Array4< const amrex::Real > &hfx_z, const amrex::Array4< const amrex::Real > &mu_turb, const SolverChoice &solverChoice, const amrex::BCRec *bc_ptr, const bool use_SurfLayer, const amrex::Real implicit_fac)
void ImplicitDiffForState_S(const amrex::Box &bx, const amrex::Box &domain, const int level, const amrex::Real dt, const amrex::GpuArray< amrex::Real, AMREX_SPACEDIM *2 > &bc_neumann_vals, const amrex::Array4< amrex::Real > &cell_data, const amrex::Gpu::DeviceVector< amrex::Real > &stretched_dz_d, const amrex::Array4< const amrex::Real > &hfx_z, const amrex::Array4< const amrex::Real > &mu_turb, const SolverChoice &solverChoice, const amrex::BCRec *bc_ptr, const bool use_SurfLayer, const amrex::Real implicit_fac)
void ImplicitDiffForState_T(const amrex::Box &bx, const amrex::Box &domain, const int level, const amrex::Real dt, const amrex::GpuArray< amrex::Real, AMREX_SPACEDIM *2 > &bc_neumann_vals, const amrex::Array4< amrex::Real > &cell_data, const amrex::Array4< const amrex::Real > &z_nd, const amrex::Array4< const amrex::Real > &detJ, const amrex::GpuArray< amrex::Real, AMREX_SPACEDIM > &cellSizeInv, const amrex::Array4< const amrex::Real > &hfx_z, const amrex::Array4< const amrex::Real > &mu_turb, const SolverChoice &solverChoice, const amrex::BCRec *bc_ptr, const bool use_SurfLayer, const amrex::Real implicit_fac)
void ComputeStressVarVisc_N(amrex::Box bxcc, amrex::Box tbxxy, amrex::Box tbxxz, amrex::Box tbxyz, amrex::Real mu_eff, const amrex::Array4< const amrex::Real > &mu_turb, const amrex::Array4< const amrex::Real > &cell_data, amrex::Array4< amrex::Real > &tau11, amrex::Array4< amrex::Real > &tau22, amrex::Array4< amrex::Real > &tau33, amrex::Array4< amrex::Real > &tau12, amrex::Array4< amrex::Real > &tau13, amrex::Array4< amrex::Real > &tau23, const amrex::Array4< const amrex::Real > &er_arr, amrex::Array4< amrex::Real > &tau13i, amrex::Array4< amrex::Real > &tau23i, amrex::Array4< amrex::Real > &tau33i)
void ComputeStrain_S(amrex::Box bxcc, amrex::Box tbxxy, amrex::Box tbxxz, amrex::Box tbxyz, amrex::Box domain, const amrex::Array4< const amrex::Real > &u, const amrex::Array4< const amrex::Real > &v, const amrex::Array4< const amrex::Real > &w, amrex::Array4< amrex::Real > &tau11, amrex::Array4< amrex::Real > &tau22, amrex::Array4< amrex::Real > &tau33, amrex::Array4< amrex::Real > &tau12, amrex::Array4< amrex::Real > &tau21, amrex::Array4< amrex::Real > &tau13, amrex::Array4< amrex::Real > &tau31, amrex::Array4< amrex::Real > &tau23, amrex::Array4< amrex::Real > &tau32, const amrex::Gpu::DeviceVector< amrex::Real > &stretched_dz_d, const amrex::GpuArray< amrex::Real, AMREX_SPACEDIM > &dxInv, const amrex::Array4< const amrex::Real > &mf_mx, const amrex::Array4< const amrex::Real > &mf_ux, const amrex::Array4< const amrex::Real > &mf_vx, const amrex::Array4< const amrex::Real > &mf_my, const amrex::Array4< const amrex::Real > &mf_uy, const amrex::Array4< const amrex::Real > &mf_vy, const amrex::BCRec *bc_ptr, amrex::Array4< amrex::Real > &tau13i, amrex::Array4< amrex::Real > &tau23i)
void DiffusionSrcForState_EB(const amrex::Box &bx, const amrex::Box &domain, int start_comp, int num_comp, const amrex::Array4< const amrex::Real > &u, const amrex::Array4< const amrex::Real > &v, const amrex::Array4< const amrex::Real > &cell_data, const amrex::Array4< const amrex::Real > &cell_prim, const amrex::Array4< amrex::Real > &cell_rhs, const amrex::Array4< amrex::Real > &xflux, const amrex::Array4< amrex::Real > &yflux, const amrex::Array4< amrex::Real > &zflux, const amrex::Array4< const amrex::EBCellFlag > &cfg_arr, const amrex::Array4< const amrex::Real > &ax_arr, const amrex::Array4< const amrex::Real > &ay_arr, const amrex::Array4< const amrex::Real > &az_arr, const amrex::Array4< const amrex::Real > &detJ, const amrex::GpuArray< amrex::Real, AMREX_SPACEDIM > &cellSizeInv, amrex::Array4< amrex::Real > &hfx_z, amrex::Array4< amrex::Real > &qfx1_z, amrex::Array4< amrex::Real > &qfx2_z, const amrex::Array4< const amrex::Real > &mu_turb, const SolverChoice &solverChoice, const int level, const amrex::BCRec *bc_ptr, const bool use_SurfLayer)
amrex::GpuArray< Real, AMREX_SPACEDIM > dxInv
Definition: ERF_InitCustomPertVels_ParticleTests.H:16
amrex::Real Real
Definition: ERF_ShocInterface.H:19
Definition: ERF_EB.H:13
Definition: ERF_DataStruct.H:130