MFC
Exascale flow solver
Loading...
Searching...
No Matches
m_rhs.fpp.f90
Go to the documentation of this file.
1# 1 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2!>
3!! @file
4!! @brief Contains module m_rhs
5
6# 1 "/home/runner/work/MFC/MFC/src/common/include/case.fpp" 1
7! This file exists so that Fypp can be run without generating case.fpp files for
8! each target. This is useful when generating documentation, for example. This
9! should also let MFC be built with CMake directly, without invoking mfc.sh.
10
11! For pre-process.
12# 8 "/home/runner/work/MFC/MFC/src/common/include/case.fpp"
13
14! For moving immersed boundaries in simulation
15# 12 "/home/runner/work/MFC/MFC/src/common/include/case.fpp"
16# 6 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp" 2
17# 1 "/home/runner/work/MFC/MFC/src/common/include/macros.fpp" 1
18# 1 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp" 1
19# 1 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp" 1
20# 2 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
21# 3 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
22# 4 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
23# 5 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
24# 6 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
25
26# 8 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
27# 9 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
28# 10 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
29
30# 17 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
31
32# 46 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
33
34# 58 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
35
36# 68 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
37
38# 98 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
39
40# 110 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
41
42# 120 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
43
44# 145 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
45! New line at end of file is required for FYPP
46# 2 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp" 2
47# 1 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp" 1
48# 1 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp" 1
49# 2 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
50# 3 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
51# 4 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
52# 5 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
53# 6 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
54
55# 8 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
56# 9 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
57# 10 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
58
59# 17 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
60
61# 46 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
62
63# 58 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
64
65# 68 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
66
67# 98 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
68
69# 110 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
70
71# 120 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
72
73# 145 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
74! New line at end of file is required for FYPP
75# 2 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp" 2
76
77# 4 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
78# 5 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
79# 6 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
80# 7 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
81# 8 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
82
83# 20 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
84
85# 43 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
86
87# 48 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
88
89# 53 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
90
91# 58 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
92
93# 63 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
94
95# 68 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
96
97# 76 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
98
99# 81 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
100
101# 86 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
102
103# 91 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
104
105# 96 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
106
107# 101 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
108
109# 106 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
110
111# 111 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
112
113# 116 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
114
115# 121 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
116
117# 151 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
118
119# 192 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
120
121# 206 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
122
123# 231 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
124
125# 242 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
126
127# 244 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
128# 255 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
129
130# 284 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
131
132# 294 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
133
134# 304 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
135
136# 313 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
137
138# 330 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
139
140# 340 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
141
142# 347 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
143
144# 353 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
145
146# 359 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
147
148# 365 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
149
150# 371 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
151
152# 377 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
153! New line at end of file is required for FYPP
154# 3 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp" 2
155# 1 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp" 1
156# 1 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp" 1
157# 2 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
158# 3 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
159# 4 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
160# 5 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
161# 6 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
162
163# 8 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
164# 9 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
165# 10 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
166
167# 17 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
168
169# 46 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
170
171# 58 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
172
173# 68 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
174
175# 98 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
176
177# 110 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
178
179# 120 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
180
181# 145 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
182! New line at end of file is required for FYPP
183# 2 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp" 2
184
185# 7 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
186
187# 17 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
188
189# 22 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
190
191# 27 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
192
193# 32 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
194
195# 37 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
196
197# 42 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
198
199# 47 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
200
201# 52 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
202
203# 57 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
204
205# 62 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
206
207# 73 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
208
209# 78 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
210
211# 83 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
212
213# 88 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
214
215# 103 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
216
217# 131 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
218
219# 160 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
220
221# 175 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
222
223# 193 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
224
225# 215 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
226
227# 244 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
228
229# 259 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
230
231# 269 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
232
233# 278 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
234
235# 294 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
236
237# 304 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
238
239# 311 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
240! New line at end of file is required for FYPP
241# 4 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp" 2
242
243! GPU parallel region (scalar reductions, maxval/minval)
244# 23 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
245
246! GPU parallel loop over threads (most common GPU macro)
247# 43 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
248
249! Required closing for GPU_PARALLEL_LOOP
250# 55 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
251
252! Mark routine for device compilation
253# 112 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
254
255! Declare device-resident data
256# 130 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
257
258! Inner loop within a GPU parallel region
259# 145 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
260
261! Scoped GPU data region
262# 164 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
263
264! Host code with device pointers (for MPI with GPU buffers)
265# 193 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
266
267! Allocate device memory (unscoped)
268# 207 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
269
270! Free device memory
271# 219 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
272
273! Atomic operation on device
274# 231 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
275
276! End atomic capture block
277# 242 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
278
279! Copy data between host and device
280# 254 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
281
282! Synchronization barrier
283# 266 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
284
285! Import GPU library module (openacc or omp_lib)
286# 275 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
287
288! Emit code only for AMD compiler
289# 282 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
290
291! Emit code for non-Cray compilers
292# 289 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
293
294! Emit code only for Cray compiler
295# 296 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
296
297! Emit code for non-NVIDIA compilers
298# 303 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
299
300# 305 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
301# 306 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
302! New line at end of file is required for FYPP
303# 2 "/home/runner/work/MFC/MFC/src/common/include/macros.fpp" 2
304
305# 14 "/home/runner/work/MFC/MFC/src/common/include/macros.fpp"
306
307! Caution: This macro requires the use of a binding script to set CUDA_VISIBLE_DEVICES, such that we have one GPU device per MPI
308! rank. That's because for both cudaMemAdvise (preferred location) and cudaMemPrefetchAsync we use location = device_id = 0. For an
309! example see misc/nvidia_uvm/bind.sh. NVIDIA unified memory page placement hint
310# 57 "/home/runner/work/MFC/MFC/src/common/include/macros.fpp"
311
312! Allocate and create GPU device memory
313# 77 "/home/runner/work/MFC/MFC/src/common/include/macros.fpp"
314
315! Free GPU device memory and deallocate
316# 85 "/home/runner/work/MFC/MFC/src/common/include/macros.fpp"
317
318! Cray-specific GPU pointer setup for vector fields
319# 109 "/home/runner/work/MFC/MFC/src/common/include/macros.fpp"
320
321! Cray-specific GPU pointer setup for scalar fields
322# 125 "/home/runner/work/MFC/MFC/src/common/include/macros.fpp"
323
324! Cray-specific GPU pointer setup for acoustic source spatials
325# 150 "/home/runner/work/MFC/MFC/src/common/include/macros.fpp"
326
327# 156 "/home/runner/work/MFC/MFC/src/common/include/macros.fpp"
328
329# 163 "/home/runner/work/MFC/MFC/src/common/include/macros.fpp"
330! New line at end of file is required for FYPP
331# 7 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp" 2
332
333!> @brief Assembles the right-hand side of the governing equations using finite-volume flux differencing, Riemann solvers, and
334!! physical source terms
335module m_rhs
336
339 use m_mpi_proxy
341 use m_weno
344 use m_muscl
346 use m_cbc
347 use m_bubbles_ee
348 use m_bubbles_el
349 use m_qbmm
350 use m_hypoelastic
353 use m_viscous
354 use m_ibm
355 use m_nvtx
357 use m_helper
359 use m_body_forces
360 use m_chemistry
361 use m_igr
362 use m_thinc
364
365 implicit none
366
368
369 type(vector_field) :: q_cons_qp !< WENO-reconstructed cell-average conservative variables at quadrature points
370
371# 45 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
372#if defined(MFC_OpenACC)
373# 45 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
374!$acc declare create(q_cons_qp)
375# 45 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
376#elif defined(MFC_OpenMP)
377# 45 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
378!$omp declare target (q_cons_qp)
379# 45 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
380#endif
381
382 type(vector_field) :: q_prim_qp !< Primitive variables at cell-interior quadrature points
383
384# 48 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
385#if defined(MFC_OpenACC)
386# 48 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
387!$acc declare create(q_prim_qp)
388# 48 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
389#elif defined(MFC_OpenMP)
390# 48 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
391!$omp declare target (q_prim_qp)
392# 48 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
393#endif
394
395 !> @name The first-order spatial derivatives of the primitive variables at cell- interior Gaussian quadrature points. These are
396 !! WENO-reconstructed from their respective cell-average values, obtained through the application of the divergence theorem on
397 !! the integral-average cell-boundary values of the primitive variables, located in qK_prim_n, where K = L or R.
398 !> @{
399 type(vector_field), allocatable, dimension(:) :: dq_prim_dx_qp, dq_prim_dy_qp, dq_prim_dz_qp
400
401# 55 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
402#if defined(MFC_OpenACC)
403# 55 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
404!$acc declare create(dq_prim_dx_qp, dq_prim_dy_qp, dq_prim_dz_qp)
405# 55 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
406#elif defined(MFC_OpenMP)
407# 55 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
408!$omp declare target (dq_prim_dx_qp, dq_prim_dy_qp, dq_prim_dz_qp)
409# 55 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
410#endif
411 !> @}
412
413 !> @name The left and right WENO-reconstructed cell-boundary values of the cell- average first-order spatial derivatives of the
414 !! primitive variables. The cell-average of the first-order spatial derivatives may be found in the variables dq_prim_ds_qp,
415 !! where s = x, y or z.
416 !> @{
417 type(vector_field), allocatable, dimension(:) :: dql_prim_dx_n, dql_prim_dy_n, dql_prim_dz_n
418 type(vector_field), allocatable, dimension(:) :: dqr_prim_dx_n, dqr_prim_dy_n, dqr_prim_dz_n
419#if defined(MFC_OpenACC)
420
421# 65 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
422#if defined(MFC_OpenACC)
423# 65 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
424!$acc declare create(dqL_prim_dx_n, dqL_prim_dy_n, dqL_prim_dz_n)
425# 65 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
426#elif defined(MFC_OpenMP)
427# 65 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
428!$omp declare target (dqL_prim_dx_n, dqL_prim_dy_n, dqL_prim_dz_n)
429# 65 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
430#endif
431
432# 66 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
433#if defined(MFC_OpenACC)
434# 66 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
435!$acc declare create(dqR_prim_dx_n, dqR_prim_dy_n, dqR_prim_dz_n)
436# 66 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
437#elif defined(MFC_OpenMP)
438# 66 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
439!$omp declare target (dqR_prim_dx_n, dqR_prim_dy_n, dqR_prim_dz_n)
440# 66 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
441#endif
442#endif
443 !> @}
444
445 type(scalar_field), allocatable, dimension(:) :: tau_re_vf
446
447# 71 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
448#if defined(MFC_OpenACC)
449# 71 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
450!$acc declare create(tau_Re_vf)
451# 71 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
452#elif defined(MFC_OpenMP)
453# 71 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
454!$omp declare target (tau_Re_vf)
455# 71 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
456#endif
457
458 !> @name The cell-boundary values of the fluxes (src - source, gsrc - geometrical source). These are computed by applying the
459 !! chosen Riemann problem solver on the left and right cell-boundary values of the primitive variables
460 !> @{
461 type(vector_field), allocatable, dimension(:) :: flux_n
462 type(vector_field), allocatable, dimension(:) :: flux_src_n
463 type(vector_field), allocatable, dimension(:) :: flux_gsrc_n
464
465#if defined(MFC_OpenACC)
466
467# 81 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
468#if defined(MFC_OpenACC)
469# 81 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
470!$acc declare create(flux_n, flux_src_n, flux_gsrc_n)
471# 81 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
472#elif defined(MFC_OpenMP)
473# 81 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
474!$omp declare target (flux_n, flux_src_n, flux_gsrc_n)
475# 81 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
476#endif
477#endif
478 !> @}
479
480 type(vector_field), allocatable, dimension(:) :: ql_prim, qr_prim
481#if defined(MFC_OpenACC)
482
483# 87 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
484#if defined(MFC_OpenACC)
485# 87 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
486!$acc declare create(qL_prim, qR_prim)
487# 87 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
488#elif defined(MFC_OpenMP)
489# 87 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
490!$omp declare target (qL_prim, qR_prim)
491# 87 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
492#endif
493#endif
494
495 type(int_bounds_info) :: iv !< Vector field indical bounds
496
497# 91 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
498#if defined(MFC_OpenACC)
499# 91 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
500!$acc declare create(iv)
501# 91 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
502#elif defined(MFC_OpenMP)
503# 91 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
504!$omp declare target (iv)
505# 91 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
506#endif
507
508 !> @name Indical bounds in the x-, y- and z-directions
509 !> @{
511
512# 96 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
513#if defined(MFC_OpenACC)
514# 96 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
515!$acc declare create(irx, iry, irz)
516# 96 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
517#elif defined(MFC_OpenMP)
518# 96 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
519!$omp declare target (irx, iry, irz)
520# 96 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
521#endif
522
524 !> @}
525
526# 100 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
527#if defined(MFC_OpenACC)
528# 100 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
529!$acc declare create(is1, is2, is3)
530# 100 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
531#elif defined(MFC_OpenMP)
532# 100 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
533!$omp declare target (is1, is2, is3)
534# 100 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
535#endif
536
537 !> @name Saved fluxes for testing
538 !> @{
540 !> @}
541
542# 106 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
543#if defined(MFC_OpenACC)
544# 106 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
545!$acc declare create(alf_sum)
546# 106 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
547#elif defined(MFC_OpenMP)
548# 106 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
549!$omp declare target (alf_sum)
550# 106 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
551#endif
552
553 real(wp), allocatable, dimension(:,:,:) :: blkmod1, blkmod2, alpha1, alpha2, kterm
554 real(wp), allocatable, dimension(:,:,:,:) :: ql_rsx_vf, qr_rsx_vf
555 real(wp), allocatable, dimension(:,:,:,:) :: dql_rsx_vf, dqr_rsx_vf
556
557# 111 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
558#if defined(MFC_OpenACC)
559# 111 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
560!$acc declare create(blkmod1, blkmod2, alpha1, alpha2, Kterm)
561# 111 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
562#elif defined(MFC_OpenMP)
563# 111 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
564!$omp declare target (blkmod1, blkmod2, alpha1, alpha2, Kterm)
565# 111 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
566#endif
567
568# 112 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
569#if defined(MFC_OpenACC)
570# 112 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
571!$acc declare create(qL_rsx_vf, qR_rsx_vf)
572# 112 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
573#elif defined(MFC_OpenMP)
574# 112 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
575!$omp declare target (qL_rsx_vf, qR_rsx_vf)
576# 112 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
577#endif
578
579# 113 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
580#if defined(MFC_OpenACC)
581# 113 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
582!$acc declare create(dqL_rsx_vf, dqR_rsx_vf)
583# 113 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
584#elif defined(MFC_OpenMP)
585# 113 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
586!$omp declare target (dqL_rsx_vf, dqR_rsx_vf)
587# 113 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
588#endif
589
590 integer :: iglob
591
592# 116 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
593#if defined(MFC_OpenACC)
594# 116 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
595!$acc declare create(iglob)
596# 116 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
597#elif defined(MFC_OpenMP)
598# 116 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
599!$omp declare target (iglob)
600# 116 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
601#endif
602
603contains
604
605 !> Initialize the RHS module
606 impure subroutine s_initialize_rhs_module
607
608 integer :: i, j, k, l, id !< Generic loop iterators
609
610
611# 125 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
612#if defined(MFC_OpenACC)
613# 125 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
614!$acc enter data copyin(idwbuff)
615# 125 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
616#elif defined(MFC_OpenMP)
617# 125 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
618!$omp target enter data map(to:idwbuff)
619# 125 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
620#endif
621
622# 126 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
623#if defined(MFC_OpenACC)
624# 126 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
625!$acc update device(idwbuff)
626# 126 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
627#elif defined(MFC_OpenMP)
628# 126 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
629!$omp target update to(idwbuff)
630# 126 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
631#endif
632
633#ifdef MFC_DEBUG
634# 128 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
635 block
636# 128 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
637 use iso_fortran_env, only: output_unit
638# 128 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
639
640# 128 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
641 print *, 'm_rhs.fpp:128: ', '@:ALLOCATE(q_cons_qp%vf(1:sys_size))'
642# 128 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
643
644# 128 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
645 call flush (output_unit)
646# 128 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
647 end block
648# 128 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
649#endif
650# 128 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
651 allocate (q_cons_qp%vf(1:sys_size))
652# 128 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
653
654# 128 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
655
656# 128 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
657#if defined(MFC_OpenACC)
658# 128 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
659!$acc enter data create(q_cons_qp%vf)
660# 128 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
661#elif defined(MFC_OpenMP)
662# 128 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
663!$omp target enter data map(always,alloc:q_cons_qp%vf)
664# 128 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
665#endif
666#ifdef MFC_DEBUG
667# 129 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
668 block
669# 129 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
670 use iso_fortran_env, only: output_unit
671# 129 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
672
673# 129 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
674 print *, 'm_rhs.fpp:129: ', '@:ALLOCATE(q_prim_qp%vf(1:sys_size))'
675# 129 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
676
677# 129 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
678 call flush (output_unit)
679# 129 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
680 end block
681# 129 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
682#endif
683# 129 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
684 allocate (q_prim_qp%vf(1:sys_size))
685# 129 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
686
687# 129 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
688
689# 129 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
690#if defined(MFC_OpenACC)
691# 129 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
692!$acc enter data create(q_prim_qp%vf)
693# 129 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
694#elif defined(MFC_OpenMP)
695# 129 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
696!$omp target enter data map(always,alloc:q_prim_qp%vf)
697# 129 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
698#endif
699
700 if (.not. igr) then
701 do l = 1, sys_size
702#ifdef MFC_DEBUG
703# 133 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
704 block
705# 133 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
706 use iso_fortran_env, only: output_unit
707# 133 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
708
709# 133 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
710 print *, 'm_rhs.fpp:133: ', '@:ALLOCATE(q_cons_qp%vf(l)%sf(idwbuff(1)%beg:idwbuff(1)%end, idwbuff(2)%beg:idwbuff(2)%end, idwbuff(3)%beg:idwbuff(3)%end))'
711# 133 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
712
713# 133 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
714 call flush (output_unit)
715# 133 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
716 end block
717# 133 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
718#endif
719# 133 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
720 allocate (q_cons_qp%vf(l)%sf(idwbuff(1)%beg:idwbuff(1)%end, idwbuff(2)%beg:idwbuff(2)%end, idwbuff(3)%beg:idwbuff(3)%end))
721# 133 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
722
723# 133 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
724
725# 133 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
726#if defined(MFC_OpenACC)
727# 133 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
728!$acc enter data create(q_cons_qp%vf(l)%sf)
729# 133 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
730#elif defined(MFC_OpenMP)
731# 133 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
732!$omp target enter data map(always,alloc:q_cons_qp%vf(l)%sf)
733# 133 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
734#endif
735# 135 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
736 end do
737 do l = eqn_idx%mom%beg, eqn_idx%E
738#ifdef MFC_DEBUG
739# 137 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
740 block
741# 137 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
742 use iso_fortran_env, only: output_unit
743# 137 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
744
745# 137 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
746 print *, 'm_rhs.fpp:137: ', '@:ALLOCATE(q_prim_qp%vf(l)%sf(idwbuff(1)%beg:idwbuff(1)%end, idwbuff(2)%beg:idwbuff(2)%end, idwbuff(3)%beg:idwbuff(3)%end))'
747# 137 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
748
749# 137 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
750 call flush (output_unit)
751# 137 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
752 end block
753# 137 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
754#endif
755# 137 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
756 allocate (q_prim_qp%vf(l)%sf(idwbuff(1)%beg:idwbuff(1)%end, idwbuff(2)%beg:idwbuff(2)%end, idwbuff(3)%beg:idwbuff(3)%end))
757# 137 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
758
759# 137 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
760
761# 137 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
762#if defined(MFC_OpenACC)
763# 137 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
764!$acc enter data create(q_prim_qp%vf(l)%sf)
765# 137 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
766#elif defined(MFC_OpenMP)
767# 137 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
768!$omp target enter data map(always,alloc:q_prim_qp%vf(l)%sf)
769# 137 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
770#endif
771# 139 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
772 end do
773 end if
774
775 if (surface_tension) then
776 do l = eqn_idx%adv%end + 1, eqn_idx%c - 1
777#ifdef MFC_DEBUG
778# 144 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
779 block
780# 144 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
781 use iso_fortran_env, only: output_unit
782# 144 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
783
784# 144 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
785 print *, 'm_rhs.fpp:144: ', '@:ALLOCATE(q_prim_qp%vf(l)%sf(idwbuff(1)%beg:idwbuff(1)%end, idwbuff(2)%beg:idwbuff(2)%end, idwbuff(3)%beg:idwbuff(3)%end))'
786# 144 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
787
788# 144 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
789 call flush (output_unit)
790# 144 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
791 end block
792# 144 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
793#endif
794# 144 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
795 allocate (q_prim_qp%vf(l)%sf(idwbuff(1)%beg:idwbuff(1)%end, idwbuff(2)%beg:idwbuff(2)%end, idwbuff(3)%beg:idwbuff(3)%end))
796# 144 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
797
798# 144 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
799
800# 144 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
801#if defined(MFC_OpenACC)
802# 144 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
803!$acc enter data create(q_prim_qp%vf(l)%sf)
804# 144 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
805#elif defined(MFC_OpenMP)
806# 144 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
807!$omp target enter data map(always,alloc:q_prim_qp%vf(l)%sf)
808# 144 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
809#endif
810# 146 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
811 end do
812 else
813 do l = eqn_idx%adv%end + 1, sys_size
814#ifdef MFC_DEBUG
815# 149 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
816 block
817# 149 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
818 use iso_fortran_env, only: output_unit
819# 149 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
820
821# 149 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
822 print *, 'm_rhs.fpp:149: ', '@:ALLOCATE(q_prim_qp%vf(l)%sf(idwbuff(1)%beg:idwbuff(1)%end, idwbuff(2)%beg:idwbuff(2)%end, idwbuff(3)%beg:idwbuff(3)%end))'
823# 149 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
824
825# 149 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
826 call flush (output_unit)
827# 149 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
828 end block
829# 149 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
830#endif
831# 149 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
832 allocate (q_prim_qp%vf(l)%sf(idwbuff(1)%beg:idwbuff(1)%end, idwbuff(2)%beg:idwbuff(2)%end, idwbuff(3)%beg:idwbuff(3)%end))
833# 149 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
834
835# 149 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
836
837# 149 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
838#if defined(MFC_OpenACC)
839# 149 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
840!$acc enter data create(q_prim_qp%vf(l)%sf)
841# 149 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
842#elif defined(MFC_OpenMP)
843# 149 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
844!$omp target enter data map(always,alloc:q_prim_qp%vf(l)%sf)
845# 149 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
846#endif
847# 151 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
848 end do
849 end if
850
851 if (.not. igr) then
852#ifdef _CRAYFTN
853# 155 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
854 block
855# 155 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
856 integer :: macros_setup_vfs_i
857# 155 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
858
859# 155 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
860#ifdef MFC_DEBUG
861# 155 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
862 block
863# 155 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
864 use iso_fortran_env, only: output_unit
865# 155 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
866
867# 155 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
868 print *, 'm_rhs.fpp:155: ', '@:ACC_SETUP_VFs(q_cons_qp, q_prim_qp)'
869# 155 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
870
871# 155 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
872 call flush (output_unit)
873# 155 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
874 end block
875# 155 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
876#endif
877# 155 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
878
879# 155 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
880
881# 155 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
882#if defined(MFC_OpenACC)
883# 155 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
884!$acc enter data copyin(q_cons_qp)
885# 155 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
886#elif defined(MFC_OpenMP)
887# 155 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
888!$omp target enter data map(to:q_cons_qp)
889# 155 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
890#endif
891# 155 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
892
893# 155 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
894#if defined(MFC_OpenACC)
895# 155 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
896!$acc enter data copyin(q_cons_qp%vf)
897# 155 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
898#elif defined(MFC_OpenMP)
899# 155 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
900!$omp target enter data map(to:q_cons_qp%vf)
901# 155 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
902#endif
903# 155 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
904 if (allocated(q_cons_qp%vf)) then
905# 155 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
906 do macros_setup_vfs_i = lbound(q_cons_qp%vf, 1), ubound(q_cons_qp%vf, 1)
907# 155 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
908 if (associated(q_cons_qp%vf(macros_setup_vfs_i)%sf)) then
909# 155 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
910
911# 155 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
912#if defined(MFC_OpenACC)
913# 155 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
914!$acc enter data copyin(q_cons_qp%vf(macros_setup_vfs_i))
915# 155 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
916#elif defined(MFC_OpenMP)
917# 155 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
918!$omp target enter data map(to:q_cons_qp%vf(macros_setup_vfs_i))
919# 155 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
920#endif
921# 155 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
922
923# 155 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
924#if defined(MFC_OpenACC)
925# 155 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
926!$acc enter data copyin(q_cons_qp%vf(macros_setup_vfs_i)%sf)
927# 155 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
928#elif defined(MFC_OpenMP)
929# 155 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
930!$omp target enter data map(to:q_cons_qp%vf(macros_setup_vfs_i)%sf)
931# 155 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
932#endif
933# 155 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
934 end if
935# 155 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
936 end do
937# 155 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
938 end if
939# 155 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
940
941# 155 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
942#if defined(MFC_OpenACC)
943# 155 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
944!$acc enter data copyin(q_prim_qp)
945# 155 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
946#elif defined(MFC_OpenMP)
947# 155 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
948!$omp target enter data map(to:q_prim_qp)
949# 155 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
950#endif
951# 155 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
952
953# 155 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
954#if defined(MFC_OpenACC)
955# 155 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
956!$acc enter data copyin(q_prim_qp%vf)
957# 155 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
958#elif defined(MFC_OpenMP)
959# 155 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
960!$omp target enter data map(to:q_prim_qp%vf)
961# 155 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
962#endif
963# 155 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
964 if (allocated(q_prim_qp%vf)) then
965# 155 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
966 do macros_setup_vfs_i = lbound(q_prim_qp%vf, 1), ubound(q_prim_qp%vf, 1)
967# 155 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
968 if (associated(q_prim_qp%vf(macros_setup_vfs_i)%sf)) then
969# 155 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
970
971# 155 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
972#if defined(MFC_OpenACC)
973# 155 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
974!$acc enter data copyin(q_prim_qp%vf(macros_setup_vfs_i))
975# 155 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
976#elif defined(MFC_OpenMP)
977# 155 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
978!$omp target enter data map(to:q_prim_qp%vf(macros_setup_vfs_i))
979# 155 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
980#endif
981# 155 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
982
983# 155 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
984#if defined(MFC_OpenACC)
985# 155 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
986!$acc enter data copyin(q_prim_qp%vf(macros_setup_vfs_i)%sf)
987# 155 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
988#elif defined(MFC_OpenMP)
989# 155 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
990!$omp target enter data map(to:q_prim_qp%vf(macros_setup_vfs_i)%sf)
991# 155 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
992#endif
993# 155 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
994 end if
995# 155 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
996 end do
997# 155 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
998 end if
999# 155 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1000 end block
1001# 155 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1002#endif
1003
1004 do l = 1, eqn_idx%cont%end
1005 if (relativity) then
1006 ! Cons and Prim densities are different for relativity
1007#ifdef MFC_DEBUG
1008# 160 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1009 block
1010# 160 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1011 use iso_fortran_env, only: output_unit
1012# 160 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1013
1014# 160 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1015 print *, 'm_rhs.fpp:160: ', '@:ALLOCATE(q_prim_qp%vf(l)%sf(idwbuff(1)%beg:idwbuff(1)%end, idwbuff(2)%beg:idwbuff(2)%end, idwbuff(3)%beg:idwbuff(3)%end))'
1016# 160 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1017
1018# 160 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1019 call flush (output_unit)
1020# 160 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1021 end block
1022# 160 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1023#endif
1024# 160 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1025 allocate (q_prim_qp%vf(l)%sf(idwbuff(1)%beg:idwbuff(1)%end, idwbuff(2)%beg:idwbuff(2)%end, idwbuff(3)%beg:idwbuff(3)%end))
1026# 160 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1027
1028# 160 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1029
1030# 160 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1031#if defined(MFC_OpenACC)
1032# 160 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1033!$acc enter data create(q_prim_qp%vf(l)%sf)
1034# 160 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1035#elif defined(MFC_OpenMP)
1036# 160 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1037!$omp target enter data map(always,alloc:q_prim_qp%vf(l)%sf)
1038# 160 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1039#endif
1040# 162 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1041 else
1042 q_prim_qp%vf(l)%sf => q_cons_qp%vf(l)%sf
1043
1044# 164 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1045#if defined(MFC_OpenACC)
1046# 164 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1047!$acc enter data copyin(q_prim_qp%vf(l)%sf)
1048# 164 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1049#elif defined(MFC_OpenMP)
1050# 164 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1051!$omp target enter data map(to:q_prim_qp%vf(l)%sf)
1052# 164 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1053#endif
1054
1055# 165 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1056#if defined(MFC_OpenACC)
1057# 165 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1058!$acc enter data attach(q_prim_qp%vf(l)%sf)
1059# 165 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1060#elif defined(MFC_OpenMP)
1061# 165 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1062!$omp target enter data map(always,to:q_prim_qp%vf(l)%sf)
1063# 165 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1064#endif
1065 end if
1066 end do
1067
1068 do l = eqn_idx%adv%beg, eqn_idx%adv%end
1069 q_prim_qp%vf(l)%sf => q_cons_qp%vf(l)%sf
1070
1071# 171 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1072#if defined(MFC_OpenACC)
1073# 171 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1074!$acc enter data copyin(q_prim_qp%vf(l)%sf)
1075# 171 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1076#elif defined(MFC_OpenMP)
1077# 171 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1078!$omp target enter data map(to:q_prim_qp%vf(l)%sf)
1079# 171 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1080#endif
1081
1082# 172 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1083#if defined(MFC_OpenACC)
1084# 172 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1085!$acc enter data attach(q_prim_qp%vf(l)%sf)
1086# 172 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1087#elif defined(MFC_OpenMP)
1088# 172 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1089!$omp target enter data map(always,to:q_prim_qp%vf(l)%sf)
1090# 172 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1091#endif
1092 end do
1093 end if
1094
1095 if (surface_tension) then
1096 q_prim_qp%vf(eqn_idx%c)%sf => q_cons_qp%vf(eqn_idx%c)%sf
1097
1098# 178 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1099#if defined(MFC_OpenACC)
1100# 178 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1101!$acc enter data copyin(q_prim_qp%vf(eqn_idx%c)%sf)
1102# 178 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1103#elif defined(MFC_OpenMP)
1104# 178 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1105!$omp target enter data map(to:q_prim_qp%vf(eqn_idx%c)%sf)
1106# 178 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1107#endif
1108
1109# 179 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1110#if defined(MFC_OpenACC)
1111# 179 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1112!$acc enter data attach(q_prim_qp%vf(eqn_idx%c)%sf)
1113# 179 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1114#elif defined(MFC_OpenMP)
1115# 179 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1116!$omp target enter data map(always,to:q_prim_qp%vf(eqn_idx%c)%sf)
1117# 179 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1118#endif
1119 end if
1120
1121 if (hyper_cleaning) then
1122 q_prim_qp%vf(eqn_idx%psi)%sf => q_cons_qp%vf(eqn_idx%psi)%sf
1123
1124# 184 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1125#if defined(MFC_OpenACC)
1126# 184 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1127!$acc enter data copyin(q_prim_qp%vf(eqn_idx%psi)%sf)
1128# 184 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1129#elif defined(MFC_OpenMP)
1130# 184 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1131!$omp target enter data map(to:q_prim_qp%vf(eqn_idx%psi)%sf)
1132# 184 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1133#endif
1134
1135# 185 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1136#if defined(MFC_OpenACC)
1137# 185 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1138!$acc enter data attach(q_prim_qp%vf(eqn_idx%psi)%sf)
1139# 185 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1140#elif defined(MFC_OpenMP)
1141# 185 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1142!$omp target enter data map(always,to:q_prim_qp%vf(eqn_idx%psi)%sf)
1143# 185 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1144#endif
1145 end if
1146
1147 if (.not. igr) then
1148#ifdef MFC_DEBUG
1149# 189 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1150 block
1151# 189 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1152 use iso_fortran_env, only: output_unit
1153# 189 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1154
1155# 189 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1156 print *, 'm_rhs.fpp:189: ', '@:ALLOCATE(flux_n(1:num_dims))'
1157# 189 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1158
1159# 189 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1160 call flush (output_unit)
1161# 189 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1162 end block
1163# 189 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1164#endif
1165# 189 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1166 allocate (flux_n(1:num_dims))
1167# 189 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1168
1169# 189 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1170
1171# 189 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1172#if defined(MFC_OpenACC)
1173# 189 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1174!$acc enter data create(flux_n)
1175# 189 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1176#elif defined(MFC_OpenMP)
1177# 189 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1178!$omp target enter data map(always,alloc:flux_n)
1179# 189 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1180#endif
1181#ifdef MFC_DEBUG
1182# 190 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1183 block
1184# 190 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1185 use iso_fortran_env, only: output_unit
1186# 190 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1187
1188# 190 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1189 print *, 'm_rhs.fpp:190: ', '@:ALLOCATE(flux_src_n(1:num_dims))'
1190# 190 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1191
1192# 190 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1193 call flush (output_unit)
1194# 190 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1195 end block
1196# 190 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1197#endif
1198# 190 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1199 allocate (flux_src_n(1:num_dims))
1200# 190 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1201
1202# 190 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1203
1204# 190 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1205#if defined(MFC_OpenACC)
1206# 190 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1207!$acc enter data create(flux_src_n)
1208# 190 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1209#elif defined(MFC_OpenMP)
1210# 190 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1211!$omp target enter data map(always,alloc:flux_src_n)
1212# 190 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1213#endif
1214#ifdef MFC_DEBUG
1215# 191 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1216 block
1217# 191 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1218 use iso_fortran_env, only: output_unit
1219# 191 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1220
1221# 191 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1222 print *, 'm_rhs.fpp:191: ', '@:ALLOCATE(flux_gsrc_n(1:num_dims))'
1223# 191 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1224
1225# 191 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1226 call flush (output_unit)
1227# 191 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1228 end block
1229# 191 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1230#endif
1231# 191 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1232 allocate (flux_gsrc_n(1:num_dims))
1233# 191 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1234
1235# 191 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1236
1237# 191 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1238#if defined(MFC_OpenACC)
1239# 191 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1240!$acc enter data create(flux_gsrc_n)
1241# 191 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1242#elif defined(MFC_OpenMP)
1243# 191 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1244!$omp target enter data map(always,alloc:flux_gsrc_n)
1245# 191 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1246#endif
1247
1248 do i = 1, num_dims
1249#ifdef MFC_DEBUG
1250# 194 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1251 block
1252# 194 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1253 use iso_fortran_env, only: output_unit
1254# 194 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1255
1256# 194 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1257 print *, 'm_rhs.fpp:194: ', '@:ALLOCATE(flux_n(i)%vf(1:sys_size))'
1258# 194 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1259
1260# 194 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1261 call flush (output_unit)
1262# 194 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1263 end block
1264# 194 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1265#endif
1266# 194 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1267 allocate (flux_n(i)%vf(1:sys_size))
1268# 194 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1269
1270# 194 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1271
1272# 194 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1273#if defined(MFC_OpenACC)
1274# 194 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1275!$acc enter data create(flux_n(i)%vf)
1276# 194 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1277#elif defined(MFC_OpenMP)
1278# 194 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1279!$omp target enter data map(always,alloc:flux_n(i)%vf)
1280# 194 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1281#endif
1282#ifdef MFC_DEBUG
1283# 195 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1284 block
1285# 195 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1286 use iso_fortran_env, only: output_unit
1287# 195 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1288
1289# 195 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1290 print *, 'm_rhs.fpp:195: ', '@:ALLOCATE(flux_src_n(i)%vf(1:sys_size))'
1291# 195 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1292
1293# 195 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1294 call flush (output_unit)
1295# 195 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1296 end block
1297# 195 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1298#endif
1299# 195 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1300 allocate (flux_src_n(i)%vf(1:sys_size))
1301# 195 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1302
1303# 195 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1304
1305# 195 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1306#if defined(MFC_OpenACC)
1307# 195 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1308!$acc enter data create(flux_src_n(i)%vf)
1309# 195 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1310#elif defined(MFC_OpenMP)
1311# 195 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1312!$omp target enter data map(always,alloc:flux_src_n(i)%vf)
1313# 195 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1314#endif
1315#ifdef MFC_DEBUG
1316# 196 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1317 block
1318# 196 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1319 use iso_fortran_env, only: output_unit
1320# 196 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1321
1322# 196 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1323 print *, 'm_rhs.fpp:196: ', '@:ALLOCATE(flux_gsrc_n(i)%vf(1:sys_size))'
1324# 196 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1325
1326# 196 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1327 call flush (output_unit)
1328# 196 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1329 end block
1330# 196 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1331#endif
1332# 196 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1333 allocate (flux_gsrc_n(i)%vf(1:sys_size))
1334# 196 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1335
1336# 196 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1337
1338# 196 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1339#if defined(MFC_OpenACC)
1340# 196 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1341!$acc enter data create(flux_gsrc_n(i)%vf)
1342# 196 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1343#elif defined(MFC_OpenMP)
1344# 196 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1345!$omp target enter data map(always,alloc:flux_gsrc_n(i)%vf)
1346# 196 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1347#endif
1348
1349 if (i == 1) then
1350 do l = 1, sys_size
1351#ifdef MFC_DEBUG
1352# 200 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1353 block
1354# 200 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1355 use iso_fortran_env, only: output_unit
1356# 200 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1357
1358# 200 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1359 print *, 'm_rhs.fpp:200: ', '@:ALLOCATE(flux_n(i)%vf(l)%sf(idwbuff(1)%beg:idwbuff(1)%end, idwbuff(2)%beg:idwbuff(2)%end, idwbuff(3)%beg:idwbuff(3)%end))'
1360# 200 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1361
1362# 200 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1363 call flush (output_unit)
1364# 200 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1365 end block
1366# 200 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1367#endif
1368# 200 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1369 allocate (flux_n(i)%vf(l)%sf(idwbuff(1)%beg:idwbuff(1)%end, idwbuff(2)%beg:idwbuff(2)%end, idwbuff(3)%beg:idwbuff(3)%end))
1370# 200 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1371
1372# 200 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1373
1374# 200 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1375#if defined(MFC_OpenACC)
1376# 200 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1377!$acc enter data create(flux_n(i)%vf(l)%sf)
1378# 200 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1379#elif defined(MFC_OpenMP)
1380# 200 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1381!$omp target enter data map(always,alloc:flux_n(i)%vf(l)%sf)
1382# 200 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1383#endif
1384# 202 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1385#ifdef MFC_DEBUG
1386# 202 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1387 block
1388# 202 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1389 use iso_fortran_env, only: output_unit
1390# 202 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1391
1392# 202 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1393 print *, 'm_rhs.fpp:202: ', '@:ALLOCATE(flux_gsrc_n(i)%vf(l)%sf(idwbuff(1)%beg:idwbuff(1)%end, idwbuff(2)%beg:idwbuff(2)%end, idwbuff(3)%beg:idwbuff(3)%end))'
1394# 202 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1395
1396# 202 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1397 call flush (output_unit)
1398# 202 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1399 end block
1400# 202 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1401#endif
1402# 202 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1403 allocate (flux_gsrc_n(i)%vf(l)%sf(idwbuff(1)%beg:idwbuff(1)%end, idwbuff(2)%beg:idwbuff(2)%end, idwbuff(3)%beg:idwbuff(3)%end))
1404# 202 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1405
1406# 202 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1407
1408# 202 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1409#if defined(MFC_OpenACC)
1410# 202 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1411!$acc enter data create(flux_gsrc_n(i)%vf(l)%sf)
1412# 202 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1413#elif defined(MFC_OpenMP)
1414# 202 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1415!$omp target enter data map(always,alloc:flux_gsrc_n(i)%vf(l)%sf)
1416# 202 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1417#endif
1418# 204 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1419 end do
1420
1421 if (viscous .or. surface_tension) then
1422 do l = eqn_idx%mom%beg, eqn_idx%E
1423#ifdef MFC_DEBUG
1424# 208 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1425 block
1426# 208 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1427 use iso_fortran_env, only: output_unit
1428# 208 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1429
1430# 208 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1431 print *, 'm_rhs.fpp:208: ', '@:ALLOCATE(flux_src_n(i)%vf(l)%sf(idwbuff(1)%beg:idwbuff(1)%end, idwbuff(2)%beg:idwbuff(2)%end, idwbuff(3)%beg:idwbuff(3)%end))'
1432# 208 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1433
1434# 208 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1435 call flush (output_unit)
1436# 208 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1437 end block
1438# 208 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1439#endif
1440# 208 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1441 allocate (flux_src_n(i)%vf(l)%sf(idwbuff(1)%beg:idwbuff(1)%end, idwbuff(2)%beg:idwbuff(2)%end, idwbuff(3)%beg:idwbuff(3)%end))
1442# 208 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1443
1444# 208 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1445
1446# 208 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1447#if defined(MFC_OpenACC)
1448# 208 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1449!$acc enter data create(flux_src_n(i)%vf(l)%sf)
1450# 208 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1451#elif defined(MFC_OpenMP)
1452# 208 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1453!$omp target enter data map(always,alloc:flux_src_n(i)%vf(l)%sf)
1454# 208 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1455#endif
1456# 210 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1457 end do
1458 end if
1459
1460#ifdef MFC_DEBUG
1461# 213 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1462 block
1463# 213 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1464 use iso_fortran_env, only: output_unit
1465# 213 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1466
1467# 213 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1468 print *, 'm_rhs.fpp:213: ', '@:ALLOCATE(flux_src_n(i)%vf(eqn_idx%adv%beg)%sf(idwbuff(1)%beg:idwbuff(1)%end, idwbuff(2)%beg:idwbuff(2)%end, idwbuff(3)%beg:idwbuff(3)%end))'
1469# 213 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1470
1471# 213 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1472 call flush (output_unit)
1473# 213 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1474 end block
1475# 213 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1476#endif
1477# 213 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1478 allocate (flux_src_n(i)%vf(eqn_idx%adv%beg)%sf(idwbuff(1)%beg:idwbuff(1)%end, idwbuff(2)%beg:idwbuff(2)%end, idwbuff(3)%beg:idwbuff(3)%end))
1479# 213 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1480
1481# 213 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1482
1483# 213 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1484#if defined(MFC_OpenACC)
1485# 213 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1486!$acc enter data create(flux_src_n(i)%vf(eqn_idx%adv%beg)%sf)
1487# 213 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1488#elif defined(MFC_OpenMP)
1489# 213 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1490!$omp target enter data map(always,alloc:flux_src_n(i)%vf(eqn_idx%adv%beg)%sf)
1491# 213 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1492#endif
1493# 215 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1494
1495 if (riemann_solver == riemann_solver_hll .or. riemann_solver == riemann_solver_hlld) then
1496 do l = eqn_idx%adv%beg + 1, eqn_idx%adv%end
1497#ifdef MFC_DEBUG
1498# 218 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1499 block
1500# 218 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1501 use iso_fortran_env, only: output_unit
1502# 218 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1503
1504# 218 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1505 print *, 'm_rhs.fpp:218: ', '@:ALLOCATE(flux_src_n(i)%vf(l)%sf(idwbuff(1)%beg:idwbuff(1)%end, idwbuff(2)%beg:idwbuff(2)%end, idwbuff(3)%beg:idwbuff(3)%end))'
1506# 218 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1507
1508# 218 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1509 call flush (output_unit)
1510# 218 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1511 end block
1512# 218 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1513#endif
1514# 218 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1515 allocate (flux_src_n(i)%vf(l)%sf(idwbuff(1)%beg:idwbuff(1)%end, idwbuff(2)%beg:idwbuff(2)%end, idwbuff(3)%beg:idwbuff(3)%end))
1516# 218 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1517
1518# 218 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1519
1520# 218 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1521#if defined(MFC_OpenACC)
1522# 218 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1523!$acc enter data create(flux_src_n(i)%vf(l)%sf)
1524# 218 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1525#elif defined(MFC_OpenMP)
1526# 218 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1527!$omp target enter data map(always,alloc:flux_src_n(i)%vf(l)%sf)
1528# 218 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1529#endif
1530# 220 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1531 end do
1532 end if
1533
1534 if (chemistry) then
1535 do l = eqn_idx%species%beg, eqn_idx%species%end
1536#ifdef MFC_DEBUG
1537# 225 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1538 block
1539# 225 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1540 use iso_fortran_env, only: output_unit
1541# 225 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1542
1543# 225 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1544 print *, 'm_rhs.fpp:225: ', '@:ALLOCATE(flux_src_n(i)%vf(l)%sf(idwbuff(1)%beg:idwbuff(1)%end, idwbuff(2)%beg:idwbuff(2)%end, idwbuff(3)%beg:idwbuff(3)%end))'
1545# 225 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1546
1547# 225 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1548 call flush (output_unit)
1549# 225 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1550 end block
1551# 225 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1552#endif
1553# 225 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1554 allocate (flux_src_n(i)%vf(l)%sf(idwbuff(1)%beg:idwbuff(1)%end, idwbuff(2)%beg:idwbuff(2)%end, idwbuff(3)%beg:idwbuff(3)%end))
1555# 225 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1556
1557# 225 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1558
1559# 225 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1560#if defined(MFC_OpenACC)
1561# 225 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1562!$acc enter data create(flux_src_n(i)%vf(l)%sf)
1563# 225 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1564#elif defined(MFC_OpenMP)
1565# 225 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1566!$omp target enter data map(always,alloc:flux_src_n(i)%vf(l)%sf)
1567# 225 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1568#endif
1569# 227 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1570 end do
1571 if (chem_params%diffusion .and. .not. viscous) then
1572#ifdef MFC_DEBUG
1573# 229 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1574 block
1575# 229 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1576 use iso_fortran_env, only: output_unit
1577# 229 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1578
1579# 229 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1580 print *, 'm_rhs.fpp:229: ', '@:ALLOCATE(flux_src_n(i)%vf(eqn_idx%E)%sf(idwbuff(1)%beg:idwbuff(1)%end, idwbuff(2)%beg:idwbuff(2)%end, idwbuff(3)%beg:idwbuff(3)%end))'
1581# 229 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1582
1583# 229 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1584 call flush (output_unit)
1585# 229 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1586 end block
1587# 229 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1588#endif
1589# 229 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1590 allocate (flux_src_n(i)%vf(eqn_idx%E)%sf(idwbuff(1)%beg:idwbuff(1)%end, idwbuff(2)%beg:idwbuff(2)%end, idwbuff(3)%beg:idwbuff(3)%end))
1591# 229 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1592
1593# 229 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1594
1595# 229 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1596#if defined(MFC_OpenACC)
1597# 229 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1598!$acc enter data create(flux_src_n(i)%vf(eqn_idx%E)%sf)
1599# 229 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1600#elif defined(MFC_OpenMP)
1601# 229 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1602!$omp target enter data map(always,alloc:flux_src_n(i)%vf(eqn_idx%E)%sf)
1603# 229 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1604#endif
1605# 231 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1606 end if
1607 end if
1608 else
1609 do l = 1, sys_size
1610#ifdef MFC_DEBUG
1611# 235 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1612 block
1613# 235 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1614 use iso_fortran_env, only: output_unit
1615# 235 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1616
1617# 235 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1618 print *, 'm_rhs.fpp:235: ', '@:ALLOCATE(flux_gsrc_n(i)%vf(l)%sf(idwbuff(1)%beg:idwbuff(1)%end, idwbuff(2)%beg:idwbuff(2)%end, idwbuff(3)%beg:idwbuff(3)%end))'
1619# 235 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1620
1621# 235 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1622 call flush (output_unit)
1623# 235 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1624 end block
1625# 235 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1626#endif
1627# 235 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1628 allocate (flux_gsrc_n(i)%vf(l)%sf(idwbuff(1)%beg:idwbuff(1)%end, idwbuff(2)%beg:idwbuff(2)%end, idwbuff(3)%beg:idwbuff(3)%end))
1629# 235 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1630
1631# 235 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1632
1633# 235 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1634#if defined(MFC_OpenACC)
1635# 235 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1636!$acc enter data create(flux_gsrc_n(i)%vf(l)%sf)
1637# 235 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1638#elif defined(MFC_OpenMP)
1639# 235 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1640!$omp target enter data map(always,alloc:flux_gsrc_n(i)%vf(l)%sf)
1641# 235 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1642#endif
1643# 237 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1644 end do
1645 end if
1646
1647#ifdef _CRAYFTN
1648# 240 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1649 block
1650# 240 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1651 integer :: macros_setup_vfs_i
1652# 240 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1653
1654# 240 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1655#ifdef MFC_DEBUG
1656# 240 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1657 block
1658# 240 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1659 use iso_fortran_env, only: output_unit
1660# 240 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1661
1662# 240 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1663 print *, 'm_rhs.fpp:240: ', '@:ACC_SETUP_VFs(flux_n(i))'
1664# 240 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1665
1666# 240 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1667 call flush (output_unit)
1668# 240 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1669 end block
1670# 240 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1671#endif
1672# 240 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1673
1674# 240 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1675
1676# 240 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1677#if defined(MFC_OpenACC)
1678# 240 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1679!$acc enter data copyin(flux_n(i))
1680# 240 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1681#elif defined(MFC_OpenMP)
1682# 240 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1683!$omp target enter data map(to:flux_n(i))
1684# 240 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1685#endif
1686# 240 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1687
1688# 240 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1689#if defined(MFC_OpenACC)
1690# 240 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1691!$acc enter data copyin(flux_n(i)%vf)
1692# 240 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1693#elif defined(MFC_OpenMP)
1694# 240 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1695!$omp target enter data map(to:flux_n(i)%vf)
1696# 240 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1697#endif
1698# 240 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1699 if (allocated(flux_n(i)%vf)) then
1700# 240 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1701 do macros_setup_vfs_i = lbound(flux_n(i)%vf, 1), ubound(flux_n(i)%vf, 1)
1702# 240 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1703 if (associated(flux_n(i)%vf(macros_setup_vfs_i)%sf)) then
1704# 240 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1705
1706# 240 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1707#if defined(MFC_OpenACC)
1708# 240 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1709!$acc enter data copyin(flux_n(i)%vf(macros_setup_vfs_i))
1710# 240 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1711#elif defined(MFC_OpenMP)
1712# 240 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1713!$omp target enter data map(to:flux_n(i)%vf(macros_setup_vfs_i))
1714# 240 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1715#endif
1716# 240 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1717
1718# 240 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1719#if defined(MFC_OpenACC)
1720# 240 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1721!$acc enter data copyin(flux_n(i)%vf(macros_setup_vfs_i)%sf)
1722# 240 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1723#elif defined(MFC_OpenMP)
1724# 240 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1725!$omp target enter data map(to:flux_n(i)%vf(macros_setup_vfs_i)%sf)
1726# 240 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1727#endif
1728# 240 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1729 end if
1730# 240 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1731 end do
1732# 240 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1733 end if
1734# 240 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1735 end block
1736# 240 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1737#endif
1738#ifdef _CRAYFTN
1739# 241 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1740 block
1741# 241 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1742 integer :: macros_setup_vfs_i
1743# 241 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1744
1745# 241 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1746#ifdef MFC_DEBUG
1747# 241 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1748 block
1749# 241 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1750 use iso_fortran_env, only: output_unit
1751# 241 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1752
1753# 241 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1754 print *, 'm_rhs.fpp:241: ', '@:ACC_SETUP_VFs(flux_src_n(i), flux_gsrc_n(i))'
1755# 241 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1756
1757# 241 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1758 call flush (output_unit)
1759# 241 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1760 end block
1761# 241 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1762#endif
1763# 241 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1764
1765# 241 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1766
1767# 241 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1768#if defined(MFC_OpenACC)
1769# 241 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1770!$acc enter data copyin(flux_src_n(i))
1771# 241 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1772#elif defined(MFC_OpenMP)
1773# 241 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1774!$omp target enter data map(to:flux_src_n(i))
1775# 241 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1776#endif
1777# 241 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1778
1779# 241 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1780#if defined(MFC_OpenACC)
1781# 241 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1782!$acc enter data copyin(flux_src_n(i)%vf)
1783# 241 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1784#elif defined(MFC_OpenMP)
1785# 241 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1786!$omp target enter data map(to:flux_src_n(i)%vf)
1787# 241 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1788#endif
1789# 241 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1790 if (allocated(flux_src_n(i)%vf)) then
1791# 241 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1792 do macros_setup_vfs_i = lbound(flux_src_n(i)%vf, 1), ubound(flux_src_n(i)%vf, 1)
1793# 241 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1794 if (associated(flux_src_n(i)%vf(macros_setup_vfs_i)%sf)) then
1795# 241 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1796
1797# 241 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1798#if defined(MFC_OpenACC)
1799# 241 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1800!$acc enter data copyin(flux_src_n(i)%vf(macros_setup_vfs_i))
1801# 241 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1802#elif defined(MFC_OpenMP)
1803# 241 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1804!$omp target enter data map(to:flux_src_n(i)%vf(macros_setup_vfs_i))
1805# 241 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1806#endif
1807# 241 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1808
1809# 241 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1810#if defined(MFC_OpenACC)
1811# 241 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1812!$acc enter data copyin(flux_src_n(i)%vf(macros_setup_vfs_i)%sf)
1813# 241 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1814#elif defined(MFC_OpenMP)
1815# 241 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1816!$omp target enter data map(to:flux_src_n(i)%vf(macros_setup_vfs_i)%sf)
1817# 241 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1818#endif
1819# 241 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1820 end if
1821# 241 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1822 end do
1823# 241 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1824 end if
1825# 241 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1826
1827# 241 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1828#if defined(MFC_OpenACC)
1829# 241 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1830!$acc enter data copyin(flux_gsrc_n(i))
1831# 241 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1832#elif defined(MFC_OpenMP)
1833# 241 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1834!$omp target enter data map(to:flux_gsrc_n(i))
1835# 241 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1836#endif
1837# 241 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1838
1839# 241 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1840#if defined(MFC_OpenACC)
1841# 241 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1842!$acc enter data copyin(flux_gsrc_n(i)%vf)
1843# 241 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1844#elif defined(MFC_OpenMP)
1845# 241 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1846!$omp target enter data map(to:flux_gsrc_n(i)%vf)
1847# 241 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1848#endif
1849# 241 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1850 if (allocated(flux_gsrc_n(i)%vf)) then
1851# 241 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1852 do macros_setup_vfs_i = lbound(flux_gsrc_n(i)%vf, 1), ubound(flux_gsrc_n(i)%vf, 1)
1853# 241 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1854 if (associated(flux_gsrc_n(i)%vf(macros_setup_vfs_i)%sf)) then
1855# 241 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1856
1857# 241 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1858#if defined(MFC_OpenACC)
1859# 241 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1860!$acc enter data copyin(flux_gsrc_n(i)%vf(macros_setup_vfs_i))
1861# 241 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1862#elif defined(MFC_OpenMP)
1863# 241 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1864!$omp target enter data map(to:flux_gsrc_n(i)%vf(macros_setup_vfs_i))
1865# 241 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1866#endif
1867# 241 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1868
1869# 241 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1870#if defined(MFC_OpenACC)
1871# 241 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1872!$acc enter data copyin(flux_gsrc_n(i)%vf(macros_setup_vfs_i)%sf)
1873# 241 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1874#elif defined(MFC_OpenMP)
1875# 241 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1876!$omp target enter data map(to:flux_gsrc_n(i)%vf(macros_setup_vfs_i)%sf)
1877# 241 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1878#endif
1879# 241 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1880 end if
1881# 241 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1882 end do
1883# 241 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1884 end if
1885# 241 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1886 end block
1887# 241 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1888#endif
1889
1890 if (i == 1) then
1891 if (riemann_solver /= riemann_solver_hll) then
1892 do l = eqn_idx%adv%beg + 1, eqn_idx%adv%end
1893 flux_src_n(i)%vf(l)%sf => flux_src_n(i)%vf(eqn_idx%adv%beg)%sf
1894
1895# 247 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1896#if defined(MFC_OpenACC)
1897# 247 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1898!$acc enter data attach(flux_src_n(i)%vf(l)%sf)
1899# 247 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1900#elif defined(MFC_OpenMP)
1901# 247 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1902!$omp target enter data map(always,to:flux_src_n(i)%vf(l)%sf)
1903# 247 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1904#endif
1905 end do
1906 end if
1907 else
1908 do l = 1, sys_size
1909 flux_n(i)%vf(l)%sf => flux_n(1)%vf(l)%sf
1910
1911# 253 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1912#if defined(MFC_OpenACC)
1913# 253 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1914!$acc enter data attach(flux_n(i)%vf(l)%sf)
1915# 253 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1916#elif defined(MFC_OpenMP)
1917# 253 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1918!$omp target enter data map(always,to:flux_n(i)%vf(l)%sf)
1919# 253 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1920#endif
1921 flux_src_n(i)%vf(l)%sf => flux_src_n(1)%vf(l)%sf
1922
1923# 255 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1924#if defined(MFC_OpenACC)
1925# 255 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1926!$acc enter data attach(flux_src_n(i)%vf(l)%sf)
1927# 255 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1928#elif defined(MFC_OpenMP)
1929# 255 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1930!$omp target enter data map(always,to:flux_src_n(i)%vf(l)%sf)
1931# 255 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1932#endif
1933 end do
1934 end if
1935 end do
1936 end if
1937
1938 if ((.not. igr)) then
1939#ifdef MFC_DEBUG
1940# 262 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1941 block
1942# 262 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1943 use iso_fortran_env, only: output_unit
1944# 262 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1945
1946# 262 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1947 print *, 'm_rhs.fpp:262: ', '@:ALLOCATE(dq_prim_dx_qp(1:1))'
1948# 262 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1949
1950# 262 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1951 call flush (output_unit)
1952# 262 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1953 end block
1954# 262 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1955#endif
1956# 262 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1957 allocate (dq_prim_dx_qp(1:1))
1958# 262 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1959
1960# 262 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1961
1962# 262 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1963#if defined(MFC_OpenACC)
1964# 262 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1965!$acc enter data create(dq_prim_dx_qp)
1966# 262 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1967#elif defined(MFC_OpenMP)
1968# 262 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1969!$omp target enter data map(always,alloc:dq_prim_dx_qp)
1970# 262 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1971#endif
1972#ifdef MFC_DEBUG
1973# 263 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1974 block
1975# 263 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1976 use iso_fortran_env, only: output_unit
1977# 263 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1978
1979# 263 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1980 print *, 'm_rhs.fpp:263: ', '@:ALLOCATE(dq_prim_dy_qp(1:1))'
1981# 263 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1982
1983# 263 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1984 call flush (output_unit)
1985# 263 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1986 end block
1987# 263 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1988#endif
1989# 263 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1990 allocate (dq_prim_dy_qp(1:1))
1991# 263 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1992
1993# 263 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1994
1995# 263 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1996#if defined(MFC_OpenACC)
1997# 263 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1998!$acc enter data create(dq_prim_dy_qp)
1999# 263 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2000#elif defined(MFC_OpenMP)
2001# 263 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2002!$omp target enter data map(always,alloc:dq_prim_dy_qp)
2003# 263 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2004#endif
2005#ifdef MFC_DEBUG
2006# 264 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2007 block
2008# 264 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2009 use iso_fortran_env, only: output_unit
2010# 264 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2011
2012# 264 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2013 print *, 'm_rhs.fpp:264: ', '@:ALLOCATE(dq_prim_dz_qp(1:1))'
2014# 264 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2015
2016# 264 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2017 call flush (output_unit)
2018# 264 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2019 end block
2020# 264 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2021#endif
2022# 264 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2023 allocate (dq_prim_dz_qp(1:1))
2024# 264 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2025
2026# 264 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2027
2028# 264 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2029#if defined(MFC_OpenACC)
2030# 264 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2031!$acc enter data create(dq_prim_dz_qp)
2032# 264 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2033#elif defined(MFC_OpenMP)
2034# 264 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2035!$omp target enter data map(always,alloc:dq_prim_dz_qp)
2036# 264 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2037#endif
2038
2039#ifdef MFC_DEBUG
2040# 266 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2041 block
2042# 266 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2043 use iso_fortran_env, only: output_unit
2044# 266 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2045
2046# 266 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2047 print *, 'm_rhs.fpp:266: ', '@:ALLOCATE(qL_prim(1:num_dims))'
2048# 266 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2049
2050# 266 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2051 call flush (output_unit)
2052# 266 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2053 end block
2054# 266 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2055#endif
2056# 266 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2057 allocate (ql_prim(1:num_dims))
2058# 266 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2059
2060# 266 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2061
2062# 266 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2063#if defined(MFC_OpenACC)
2064# 266 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2065!$acc enter data create(qL_prim)
2066# 266 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2067#elif defined(MFC_OpenMP)
2068# 266 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2069!$omp target enter data map(always,alloc:qL_prim)
2070# 266 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2071#endif
2072#ifdef MFC_DEBUG
2073# 267 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2074 block
2075# 267 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2076 use iso_fortran_env, only: output_unit
2077# 267 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2078
2079# 267 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2080 print *, 'm_rhs.fpp:267: ', '@:ALLOCATE(qR_prim(1:num_dims))'
2081# 267 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2082
2083# 267 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2084 call flush (output_unit)
2085# 267 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2086 end block
2087# 267 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2088#endif
2089# 267 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2090 allocate (qr_prim(1:num_dims))
2091# 267 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2092
2093# 267 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2094
2095# 267 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2096#if defined(MFC_OpenACC)
2097# 267 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2098!$acc enter data create(qR_prim)
2099# 267 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2100#elif defined(MFC_OpenMP)
2101# 267 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2102!$omp target enter data map(always,alloc:qR_prim)
2103# 267 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2104#endif
2105
2106#ifdef MFC_DEBUG
2107# 269 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2108 block
2109# 269 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2110 use iso_fortran_env, only: output_unit
2111# 269 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2112
2113# 269 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2114 print *, 'm_rhs.fpp:269: ', '@:ALLOCATE(dqL_prim_dx_n(1:num_dims))'
2115# 269 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2116
2117# 269 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2118 call flush (output_unit)
2119# 269 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2120 end block
2121# 269 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2122#endif
2123# 269 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2124 allocate (dql_prim_dx_n(1:num_dims))
2125# 269 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2126
2127# 269 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2128
2129# 269 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2130#if defined(MFC_OpenACC)
2131# 269 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2132!$acc enter data create(dqL_prim_dx_n)
2133# 269 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2134#elif defined(MFC_OpenMP)
2135# 269 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2136!$omp target enter data map(always,alloc:dqL_prim_dx_n)
2137# 269 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2138#endif
2139#ifdef MFC_DEBUG
2140# 270 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2141 block
2142# 270 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2143 use iso_fortran_env, only: output_unit
2144# 270 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2145
2146# 270 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2147 print *, 'm_rhs.fpp:270: ', '@:ALLOCATE(dqL_prim_dy_n(1:num_dims))'
2148# 270 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2149
2150# 270 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2151 call flush (output_unit)
2152# 270 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2153 end block
2154# 270 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2155#endif
2156# 270 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2157 allocate (dql_prim_dy_n(1:num_dims))
2158# 270 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2159
2160# 270 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2161
2162# 270 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2163#if defined(MFC_OpenACC)
2164# 270 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2165!$acc enter data create(dqL_prim_dy_n)
2166# 270 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2167#elif defined(MFC_OpenMP)
2168# 270 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2169!$omp target enter data map(always,alloc:dqL_prim_dy_n)
2170# 270 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2171#endif
2172#ifdef MFC_DEBUG
2173# 271 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2174 block
2175# 271 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2176 use iso_fortran_env, only: output_unit
2177# 271 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2178
2179# 271 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2180 print *, 'm_rhs.fpp:271: ', '@:ALLOCATE(dqL_prim_dz_n(1:num_dims))'
2181# 271 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2182
2183# 271 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2184 call flush (output_unit)
2185# 271 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2186 end block
2187# 271 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2188#endif
2189# 271 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2190 allocate (dql_prim_dz_n(1:num_dims))
2191# 271 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2192
2193# 271 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2194
2195# 271 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2196#if defined(MFC_OpenACC)
2197# 271 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2198!$acc enter data create(dqL_prim_dz_n)
2199# 271 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2200#elif defined(MFC_OpenMP)
2201# 271 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2202!$omp target enter data map(always,alloc:dqL_prim_dz_n)
2203# 271 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2204#endif
2205#ifdef MFC_DEBUG
2206# 272 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2207 block
2208# 272 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2209 use iso_fortran_env, only: output_unit
2210# 272 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2211
2212# 272 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2213 print *, 'm_rhs.fpp:272: ', '@:ALLOCATE(dqR_prim_dx_n(1:num_dims))'
2214# 272 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2215
2216# 272 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2217 call flush (output_unit)
2218# 272 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2219 end block
2220# 272 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2221#endif
2222# 272 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2223 allocate (dqr_prim_dx_n(1:num_dims))
2224# 272 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2225
2226# 272 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2227
2228# 272 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2229#if defined(MFC_OpenACC)
2230# 272 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2231!$acc enter data create(dqR_prim_dx_n)
2232# 272 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2233#elif defined(MFC_OpenMP)
2234# 272 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2235!$omp target enter data map(always,alloc:dqR_prim_dx_n)
2236# 272 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2237#endif
2238#ifdef MFC_DEBUG
2239# 273 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2240 block
2241# 273 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2242 use iso_fortran_env, only: output_unit
2243# 273 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2244
2245# 273 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2246 print *, 'm_rhs.fpp:273: ', '@:ALLOCATE(dqR_prim_dy_n(1:num_dims))'
2247# 273 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2248
2249# 273 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2250 call flush (output_unit)
2251# 273 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2252 end block
2253# 273 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2254#endif
2255# 273 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2256 allocate (dqr_prim_dy_n(1:num_dims))
2257# 273 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2258
2259# 273 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2260
2261# 273 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2262#if defined(MFC_OpenACC)
2263# 273 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2264!$acc enter data create(dqR_prim_dy_n)
2265# 273 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2266#elif defined(MFC_OpenMP)
2267# 273 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2268!$omp target enter data map(always,alloc:dqR_prim_dy_n)
2269# 273 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2270#endif
2271#ifdef MFC_DEBUG
2272# 274 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2273 block
2274# 274 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2275 use iso_fortran_env, only: output_unit
2276# 274 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2277
2278# 274 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2279 print *, 'm_rhs.fpp:274: ', '@:ALLOCATE(dqR_prim_dz_n(1:num_dims))'
2280# 274 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2281
2282# 274 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2283 call flush (output_unit)
2284# 274 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2285 end block
2286# 274 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2287#endif
2288# 274 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2289 allocate (dqr_prim_dz_n(1:num_dims))
2290# 274 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2291
2292# 274 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2293
2294# 274 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2295#if defined(MFC_OpenACC)
2296# 274 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2297!$acc enter data create(dqR_prim_dz_n)
2298# 274 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2299#elif defined(MFC_OpenMP)
2300# 274 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2301!$omp target enter data map(always,alloc:dqR_prim_dz_n)
2302# 274 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2303#endif
2304
2305 do i = 1, num_dims
2306#ifdef MFC_DEBUG
2307# 277 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2308 block
2309# 277 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2310 use iso_fortran_env, only: output_unit
2311# 277 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2312
2313# 277 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2314 print *, 'm_rhs.fpp:277: ', '@:ALLOCATE(qL_prim(i)%vf(1:sys_size))'
2315# 277 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2316
2317# 277 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2318 call flush (output_unit)
2319# 277 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2320 end block
2321# 277 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2322#endif
2323# 277 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2324 allocate (ql_prim(i)%vf(1:sys_size))
2325# 277 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2326
2327# 277 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2328
2329# 277 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2330#if defined(MFC_OpenACC)
2331# 277 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2332!$acc enter data create(qL_prim(i)%vf)
2333# 277 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2334#elif defined(MFC_OpenMP)
2335# 277 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2336!$omp target enter data map(always,alloc:qL_prim(i)%vf)
2337# 277 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2338#endif
2339#ifdef MFC_DEBUG
2340# 278 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2341 block
2342# 278 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2343 use iso_fortran_env, only: output_unit
2344# 278 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2345
2346# 278 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2347 print *, 'm_rhs.fpp:278: ', '@:ALLOCATE(qR_prim(i)%vf(1:sys_size))'
2348# 278 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2349
2350# 278 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2351 call flush (output_unit)
2352# 278 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2353 end block
2354# 278 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2355#endif
2356# 278 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2357 allocate (qr_prim(i)%vf(1:sys_size))
2358# 278 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2359
2360# 278 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2361
2362# 278 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2363#if defined(MFC_OpenACC)
2364# 278 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2365!$acc enter data create(qR_prim(i)%vf)
2366# 278 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2367#elif defined(MFC_OpenMP)
2368# 278 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2369!$omp target enter data map(always,alloc:qR_prim(i)%vf)
2370# 278 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2371#endif
2372 do l = eqn_idx%mom%beg, eqn_idx%mom%end
2373#ifdef MFC_DEBUG
2374# 280 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2375 block
2376# 280 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2377 use iso_fortran_env, only: output_unit
2378# 280 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2379
2380# 280 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2381 print *, 'm_rhs.fpp:280: ', '@:ALLOCATE(qL_prim(i)%vf(l)%sf(idwbuff(1)%beg:idwbuff(1)%end, idwbuff(2)%beg:idwbuff(2)%end, idwbuff(3)%beg:idwbuff(3)%end))'
2382# 280 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2383
2384# 280 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2385 call flush (output_unit)
2386# 280 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2387 end block
2388# 280 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2389#endif
2390# 280 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2391 allocate (ql_prim(i)%vf(l)%sf(idwbuff(1)%beg:idwbuff(1)%end, idwbuff(2)%beg:idwbuff(2)%end, idwbuff(3)%beg:idwbuff(3)%end))
2392# 280 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2393
2394# 280 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2395
2396# 280 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2397#if defined(MFC_OpenACC)
2398# 280 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2399!$acc enter data create(qL_prim(i)%vf(l)%sf)
2400# 280 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2401#elif defined(MFC_OpenMP)
2402# 280 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2403!$omp target enter data map(always,alloc:qL_prim(i)%vf(l)%sf)
2404# 280 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2405#endif
2406# 282 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2407#ifdef MFC_DEBUG
2408# 282 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2409 block
2410# 282 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2411 use iso_fortran_env, only: output_unit
2412# 282 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2413
2414# 282 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2415 print *, 'm_rhs.fpp:282: ', '@:ALLOCATE(qR_prim(i)%vf(l)%sf(idwbuff(1)%beg:idwbuff(1)%end, idwbuff(2)%beg:idwbuff(2)%end, idwbuff(3)%beg:idwbuff(3)%end))'
2416# 282 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2417
2418# 282 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2419 call flush (output_unit)
2420# 282 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2421 end block
2422# 282 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2423#endif
2424# 282 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2425 allocate (qr_prim(i)%vf(l)%sf(idwbuff(1)%beg:idwbuff(1)%end, idwbuff(2)%beg:idwbuff(2)%end, idwbuff(3)%beg:idwbuff(3)%end))
2426# 282 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2427
2428# 282 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2429
2430# 282 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2431#if defined(MFC_OpenACC)
2432# 282 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2433!$acc enter data create(qR_prim(i)%vf(l)%sf)
2434# 282 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2435#elif defined(MFC_OpenMP)
2436# 282 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2437!$omp target enter data map(always,alloc:qR_prim(i)%vf(l)%sf)
2438# 282 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2439#endif
2440# 284 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2441 end do
2442#ifdef _CRAYFTN
2443# 285 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2444 block
2445# 285 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2446 integer :: macros_setup_vfs_i
2447# 285 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2448
2449# 285 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2450#ifdef MFC_DEBUG
2451# 285 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2452 block
2453# 285 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2454 use iso_fortran_env, only: output_unit
2455# 285 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2456
2457# 285 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2458 print *, 'm_rhs.fpp:285: ', '@:ACC_SETUP_VFs(qL_prim(i), qR_prim(i))'
2459# 285 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2460
2461# 285 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2462 call flush (output_unit)
2463# 285 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2464 end block
2465# 285 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2466#endif
2467# 285 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2468
2469# 285 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2470
2471# 285 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2472#if defined(MFC_OpenACC)
2473# 285 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2474!$acc enter data copyin(qL_prim(i))
2475# 285 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2476#elif defined(MFC_OpenMP)
2477# 285 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2478!$omp target enter data map(to:qL_prim(i))
2479# 285 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2480#endif
2481# 285 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2482
2483# 285 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2484#if defined(MFC_OpenACC)
2485# 285 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2486!$acc enter data copyin(qL_prim(i)%vf)
2487# 285 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2488#elif defined(MFC_OpenMP)
2489# 285 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2490!$omp target enter data map(to:qL_prim(i)%vf)
2491# 285 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2492#endif
2493# 285 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2494 if (allocated(ql_prim(i)%vf)) then
2495# 285 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2496 do macros_setup_vfs_i = lbound(ql_prim(i)%vf, 1), ubound(ql_prim(i)%vf, 1)
2497# 285 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2498 if (associated(ql_prim(i)%vf(macros_setup_vfs_i)%sf)) then
2499# 285 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2500
2501# 285 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2502#if defined(MFC_OpenACC)
2503# 285 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2504!$acc enter data copyin(qL_prim(i)%vf(macros_setup_vfs_i))
2505# 285 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2506#elif defined(MFC_OpenMP)
2507# 285 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2508!$omp target enter data map(to:qL_prim(i)%vf(macros_setup_vfs_i))
2509# 285 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2510#endif
2511# 285 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2512
2513# 285 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2514#if defined(MFC_OpenACC)
2515# 285 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2516!$acc enter data copyin(qL_prim(i)%vf(macros_setup_vfs_i)%sf)
2517# 285 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2518#elif defined(MFC_OpenMP)
2519# 285 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2520!$omp target enter data map(to:qL_prim(i)%vf(macros_setup_vfs_i)%sf)
2521# 285 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2522#endif
2523# 285 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2524 end if
2525# 285 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2526 end do
2527# 285 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2528 end if
2529# 285 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2530
2531# 285 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2532#if defined(MFC_OpenACC)
2533# 285 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2534!$acc enter data copyin(qR_prim(i))
2535# 285 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2536#elif defined(MFC_OpenMP)
2537# 285 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2538!$omp target enter data map(to:qR_prim(i))
2539# 285 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2540#endif
2541# 285 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2542
2543# 285 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2544#if defined(MFC_OpenACC)
2545# 285 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2546!$acc enter data copyin(qR_prim(i)%vf)
2547# 285 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2548#elif defined(MFC_OpenMP)
2549# 285 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2550!$omp target enter data map(to:qR_prim(i)%vf)
2551# 285 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2552#endif
2553# 285 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2554 if (allocated(qr_prim(i)%vf)) then
2555# 285 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2556 do macros_setup_vfs_i = lbound(qr_prim(i)%vf, 1), ubound(qr_prim(i)%vf, 1)
2557# 285 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2558 if (associated(qr_prim(i)%vf(macros_setup_vfs_i)%sf)) then
2559# 285 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2560
2561# 285 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2562#if defined(MFC_OpenACC)
2563# 285 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2564!$acc enter data copyin(qR_prim(i)%vf(macros_setup_vfs_i))
2565# 285 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2566#elif defined(MFC_OpenMP)
2567# 285 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2568!$omp target enter data map(to:qR_prim(i)%vf(macros_setup_vfs_i))
2569# 285 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2570#endif
2571# 285 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2572
2573# 285 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2574#if defined(MFC_OpenACC)
2575# 285 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2576!$acc enter data copyin(qR_prim(i)%vf(macros_setup_vfs_i)%sf)
2577# 285 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2578#elif defined(MFC_OpenMP)
2579# 285 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2580!$omp target enter data map(to:qR_prim(i)%vf(macros_setup_vfs_i)%sf)
2581# 285 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2582#endif
2583# 285 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2584 end if
2585# 285 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2586 end do
2587# 285 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2588 end if
2589# 285 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2590 end block
2591# 285 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2592#endif
2593 end do
2594
2595#ifdef MFC_DEBUG
2596# 288 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2597 block
2598# 288 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2599 use iso_fortran_env, only: output_unit
2600# 288 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2601
2602# 288 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2603 print *, 'm_rhs.fpp:288: ', '@:ALLOCATE(qL_rsx_vf(idwbuff(1)%beg:idwbuff(1)%end, idwbuff(2)%beg:idwbuff(2)%end, idwbuff(3)%beg:idwbuff(3)%end, 1:sys_size))'
2604# 288 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2605
2606# 288 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2607 call flush (output_unit)
2608# 288 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2609 end block
2610# 288 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2611#endif
2612# 288 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2613 allocate (ql_rsx_vf(idwbuff(1)%beg:idwbuff(1)%end, idwbuff(2)%beg:idwbuff(2)%end, idwbuff(3)%beg:idwbuff(3)%end, 1:sys_size))
2614# 288 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2615
2616# 288 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2617
2618# 288 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2619#if defined(MFC_OpenACC)
2620# 288 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2621!$acc enter data create(qL_rsx_vf)
2622# 288 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2623#elif defined(MFC_OpenMP)
2624# 288 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2625!$omp target enter data map(always,alloc:qL_rsx_vf)
2626# 288 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2627#endif
2628# 290 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2629#ifdef MFC_DEBUG
2630# 290 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2631 block
2632# 290 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2633 use iso_fortran_env, only: output_unit
2634# 290 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2635
2636# 290 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2637 print *, 'm_rhs.fpp:290: ', '@:ALLOCATE(qR_rsx_vf(idwbuff(1)%beg:idwbuff(1)%end, idwbuff(2)%beg:idwbuff(2)%end, idwbuff(3)%beg:idwbuff(3)%end, 1:sys_size))'
2638# 290 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2639
2640# 290 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2641 call flush (output_unit)
2642# 290 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2643 end block
2644# 290 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2645#endif
2646# 290 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2647 allocate (qr_rsx_vf(idwbuff(1)%beg:idwbuff(1)%end, idwbuff(2)%beg:idwbuff(2)%end, idwbuff(3)%beg:idwbuff(3)%end, 1:sys_size))
2648# 290 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2649
2650# 290 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2651
2652# 290 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2653#if defined(MFC_OpenACC)
2654# 290 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2655!$acc enter data create(qR_rsx_vf)
2656# 290 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2657#elif defined(MFC_OpenMP)
2658# 290 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2659!$omp target enter data map(always,alloc:qR_rsx_vf)
2660# 290 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2661#endif
2662# 292 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2663
2664 if (.not. viscous) then
2665 do i = 1, num_dims
2666#ifdef MFC_DEBUG
2667# 295 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2668 block
2669# 295 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2670 use iso_fortran_env, only: output_unit
2671# 295 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2672
2673# 295 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2674 print *, 'm_rhs.fpp:295: ', '@:ALLOCATE(dqL_prim_dx_n(i)%vf(1:sys_size))'
2675# 295 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2676
2677# 295 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2678 call flush (output_unit)
2679# 295 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2680 end block
2681# 295 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2682#endif
2683# 295 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2684 allocate (dql_prim_dx_n(i)%vf(1:sys_size))
2685# 295 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2686
2687# 295 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2688
2689# 295 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2690#if defined(MFC_OpenACC)
2691# 295 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2692!$acc enter data create(dqL_prim_dx_n(i)%vf)
2693# 295 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2694#elif defined(MFC_OpenMP)
2695# 295 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2696!$omp target enter data map(always,alloc:dqL_prim_dx_n(i)%vf)
2697# 295 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2698#endif
2699#ifdef MFC_DEBUG
2700# 296 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2701 block
2702# 296 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2703 use iso_fortran_env, only: output_unit
2704# 296 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2705
2706# 296 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2707 print *, 'm_rhs.fpp:296: ', '@:ALLOCATE(dqL_prim_dy_n(i)%vf(1:sys_size))'
2708# 296 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2709
2710# 296 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2711 call flush (output_unit)
2712# 296 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2713 end block
2714# 296 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2715#endif
2716# 296 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2717 allocate (dql_prim_dy_n(i)%vf(1:sys_size))
2718# 296 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2719
2720# 296 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2721
2722# 296 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2723#if defined(MFC_OpenACC)
2724# 296 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2725!$acc enter data create(dqL_prim_dy_n(i)%vf)
2726# 296 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2727#elif defined(MFC_OpenMP)
2728# 296 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2729!$omp target enter data map(always,alloc:dqL_prim_dy_n(i)%vf)
2730# 296 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2731#endif
2732#ifdef MFC_DEBUG
2733# 297 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2734 block
2735# 297 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2736 use iso_fortran_env, only: output_unit
2737# 297 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2738
2739# 297 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2740 print *, 'm_rhs.fpp:297: ', '@:ALLOCATE(dqL_prim_dz_n(i)%vf(1:sys_size))'
2741# 297 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2742
2743# 297 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2744 call flush (output_unit)
2745# 297 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2746 end block
2747# 297 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2748#endif
2749# 297 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2750 allocate (dql_prim_dz_n(i)%vf(1:sys_size))
2751# 297 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2752
2753# 297 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2754
2755# 297 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2756#if defined(MFC_OpenACC)
2757# 297 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2758!$acc enter data create(dqL_prim_dz_n(i)%vf)
2759# 297 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2760#elif defined(MFC_OpenMP)
2761# 297 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2762!$omp target enter data map(always,alloc:dqL_prim_dz_n(i)%vf)
2763# 297 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2764#endif
2765#ifdef MFC_DEBUG
2766# 298 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2767 block
2768# 298 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2769 use iso_fortran_env, only: output_unit
2770# 298 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2771
2772# 298 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2773 print *, 'm_rhs.fpp:298: ', '@:ALLOCATE(dqR_prim_dx_n(i)%vf(1:sys_size))'
2774# 298 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2775
2776# 298 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2777 call flush (output_unit)
2778# 298 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2779 end block
2780# 298 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2781#endif
2782# 298 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2783 allocate (dqr_prim_dx_n(i)%vf(1:sys_size))
2784# 298 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2785
2786# 298 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2787
2788# 298 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2789#if defined(MFC_OpenACC)
2790# 298 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2791!$acc enter data create(dqR_prim_dx_n(i)%vf)
2792# 298 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2793#elif defined(MFC_OpenMP)
2794# 298 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2795!$omp target enter data map(always,alloc:dqR_prim_dx_n(i)%vf)
2796# 298 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2797#endif
2798#ifdef MFC_DEBUG
2799# 299 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2800 block
2801# 299 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2802 use iso_fortran_env, only: output_unit
2803# 299 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2804
2805# 299 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2806 print *, 'm_rhs.fpp:299: ', '@:ALLOCATE(dqR_prim_dy_n(i)%vf(1:sys_size))'
2807# 299 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2808
2809# 299 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2810 call flush (output_unit)
2811# 299 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2812 end block
2813# 299 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2814#endif
2815# 299 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2816 allocate (dqr_prim_dy_n(i)%vf(1:sys_size))
2817# 299 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2818
2819# 299 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2820
2821# 299 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2822#if defined(MFC_OpenACC)
2823# 299 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2824!$acc enter data create(dqR_prim_dy_n(i)%vf)
2825# 299 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2826#elif defined(MFC_OpenMP)
2827# 299 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2828!$omp target enter data map(always,alloc:dqR_prim_dy_n(i)%vf)
2829# 299 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2830#endif
2831#ifdef MFC_DEBUG
2832# 300 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2833 block
2834# 300 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2835 use iso_fortran_env, only: output_unit
2836# 300 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2837
2838# 300 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2839 print *, 'm_rhs.fpp:300: ', '@:ALLOCATE(dqR_prim_dz_n(i)%vf(1:sys_size))'
2840# 300 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2841
2842# 300 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2843 call flush (output_unit)
2844# 300 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2845 end block
2846# 300 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2847#endif
2848# 300 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2849 allocate (dqr_prim_dz_n(i)%vf(1:sys_size))
2850# 300 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2851
2852# 300 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2853
2854# 300 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2855#if defined(MFC_OpenACC)
2856# 300 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2857!$acc enter data create(dqR_prim_dz_n(i)%vf)
2858# 300 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2859#elif defined(MFC_OpenMP)
2860# 300 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2861!$omp target enter data map(always,alloc:dqR_prim_dz_n(i)%vf)
2862# 300 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2863#endif
2864
2865 do l = eqn_idx%mom%beg, eqn_idx%mom%end
2866#ifdef MFC_DEBUG
2867# 303 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2868 block
2869# 303 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2870 use iso_fortran_env, only: output_unit
2871# 303 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2872
2873# 303 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2874 print *, 'm_rhs.fpp:303: ', '@:ALLOCATE(dqL_prim_dx_n(i)%vf(l)%sf(1:1, 1:1, 1:1))'
2875# 303 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2876
2877# 303 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2878 call flush (output_unit)
2879# 303 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2880 end block
2881# 303 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2882#endif
2883# 303 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2884 allocate (dql_prim_dx_n(i)%vf(l)%sf(1:1, 1:1, 1:1))
2885# 303 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2886
2887# 303 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2888
2889# 303 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2890#if defined(MFC_OpenACC)
2891# 303 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2892!$acc enter data create(dqL_prim_dx_n(i)%vf(l)%sf)
2893# 303 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2894#elif defined(MFC_OpenMP)
2895# 303 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2896!$omp target enter data map(always,alloc:dqL_prim_dx_n(i)%vf(l)%sf)
2897# 303 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2898#endif
2899#ifdef MFC_DEBUG
2900# 304 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2901 block
2902# 304 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2903 use iso_fortran_env, only: output_unit
2904# 304 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2905
2906# 304 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2907 print *, 'm_rhs.fpp:304: ', '@:ALLOCATE(dqL_prim_dy_n(i)%vf(l)%sf(1:1, 1:1, 1:1))'
2908# 304 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2909
2910# 304 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2911 call flush (output_unit)
2912# 304 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2913 end block
2914# 304 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2915#endif
2916# 304 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2917 allocate (dql_prim_dy_n(i)%vf(l)%sf(1:1, 1:1, 1:1))
2918# 304 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2919
2920# 304 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2921
2922# 304 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2923#if defined(MFC_OpenACC)
2924# 304 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2925!$acc enter data create(dqL_prim_dy_n(i)%vf(l)%sf)
2926# 304 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2927#elif defined(MFC_OpenMP)
2928# 304 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2929!$omp target enter data map(always,alloc:dqL_prim_dy_n(i)%vf(l)%sf)
2930# 304 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2931#endif
2932#ifdef MFC_DEBUG
2933# 305 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2934 block
2935# 305 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2936 use iso_fortran_env, only: output_unit
2937# 305 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2938
2939# 305 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2940 print *, 'm_rhs.fpp:305: ', '@:ALLOCATE(dqL_prim_dz_n(i)%vf(l)%sf(1:1, 1:1, 1:1))'
2941# 305 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2942
2943# 305 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2944 call flush (output_unit)
2945# 305 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2946 end block
2947# 305 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2948#endif
2949# 305 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2950 allocate (dql_prim_dz_n(i)%vf(l)%sf(1:1, 1:1, 1:1))
2951# 305 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2952
2953# 305 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2954
2955# 305 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2956#if defined(MFC_OpenACC)
2957# 305 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2958!$acc enter data create(dqL_prim_dz_n(i)%vf(l)%sf)
2959# 305 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2960#elif defined(MFC_OpenMP)
2961# 305 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2962!$omp target enter data map(always,alloc:dqL_prim_dz_n(i)%vf(l)%sf)
2963# 305 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2964#endif
2965#ifdef MFC_DEBUG
2966# 306 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2967 block
2968# 306 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2969 use iso_fortran_env, only: output_unit
2970# 306 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2971
2972# 306 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2973 print *, 'm_rhs.fpp:306: ', '@:ALLOCATE(dqR_prim_dx_n(i)%vf(l)%sf(1:1, 1:1, 1:1))'
2974# 306 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2975
2976# 306 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2977 call flush (output_unit)
2978# 306 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2979 end block
2980# 306 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2981#endif
2982# 306 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2983 allocate (dqr_prim_dx_n(i)%vf(l)%sf(1:1, 1:1, 1:1))
2984# 306 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2985
2986# 306 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2987
2988# 306 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2989#if defined(MFC_OpenACC)
2990# 306 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2991!$acc enter data create(dqR_prim_dx_n(i)%vf(l)%sf)
2992# 306 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2993#elif defined(MFC_OpenMP)
2994# 306 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2995!$omp target enter data map(always,alloc:dqR_prim_dx_n(i)%vf(l)%sf)
2996# 306 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2997#endif
2998#ifdef MFC_DEBUG
2999# 307 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3000 block
3001# 307 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3002 use iso_fortran_env, only: output_unit
3003# 307 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3004
3005# 307 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3006 print *, 'm_rhs.fpp:307: ', '@:ALLOCATE(dqR_prim_dy_n(i)%vf(l)%sf(1:1, 1:1, 1:1))'
3007# 307 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3008
3009# 307 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3010 call flush (output_unit)
3011# 307 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3012 end block
3013# 307 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3014#endif
3015# 307 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3016 allocate (dqr_prim_dy_n(i)%vf(l)%sf(1:1, 1:1, 1:1))
3017# 307 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3018
3019# 307 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3020
3021# 307 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3022#if defined(MFC_OpenACC)
3023# 307 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3024!$acc enter data create(dqR_prim_dy_n(i)%vf(l)%sf)
3025# 307 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3026#elif defined(MFC_OpenMP)
3027# 307 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3028!$omp target enter data map(always,alloc:dqR_prim_dy_n(i)%vf(l)%sf)
3029# 307 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3030#endif
3031#ifdef MFC_DEBUG
3032# 308 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3033 block
3034# 308 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3035 use iso_fortran_env, only: output_unit
3036# 308 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3037
3038# 308 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3039 print *, 'm_rhs.fpp:308: ', '@:ALLOCATE(dqR_prim_dz_n(i)%vf(l)%sf(1:1, 1:1, 1:1))'
3040# 308 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3041
3042# 308 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3043 call flush (output_unit)
3044# 308 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3045 end block
3046# 308 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3047#endif
3048# 308 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3049 allocate (dqr_prim_dz_n(i)%vf(l)%sf(1:1, 1:1, 1:1))
3050# 308 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3051
3052# 308 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3053
3054# 308 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3055#if defined(MFC_OpenACC)
3056# 308 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3057!$acc enter data create(dqR_prim_dz_n(i)%vf(l)%sf)
3058# 308 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3059#elif defined(MFC_OpenMP)
3060# 308 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3061!$omp target enter data map(always,alloc:dqR_prim_dz_n(i)%vf(l)%sf)
3062# 308 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3063#endif
3064 end do
3065#ifdef _CRAYFTN
3066# 310 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3067 block
3068# 310 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3069 integer :: macros_setup_vfs_i
3070# 310 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3071
3072# 310 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3073#ifdef MFC_DEBUG
3074# 310 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3075 block
3076# 310 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3077 use iso_fortran_env, only: output_unit
3078# 310 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3079
3080# 310 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3081 print *, 'm_rhs.fpp:310: ', '@:ACC_SETUP_VFs(dqL_prim_dx_n(i), dqL_prim_dy_n(i), dqL_prim_dz_n(i))'
3082# 310 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3083
3084# 310 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3085 call flush (output_unit)
3086# 310 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3087 end block
3088# 310 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3089#endif
3090# 310 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3091
3092# 310 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3093
3094# 310 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3095#if defined(MFC_OpenACC)
3096# 310 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3097!$acc enter data copyin(dqL_prim_dx_n(i))
3098# 310 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3099#elif defined(MFC_OpenMP)
3100# 310 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3101!$omp target enter data map(to:dqL_prim_dx_n(i))
3102# 310 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3103#endif
3104# 310 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3105
3106# 310 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3107#if defined(MFC_OpenACC)
3108# 310 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3109!$acc enter data copyin(dqL_prim_dx_n(i)%vf)
3110# 310 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3111#elif defined(MFC_OpenMP)
3112# 310 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3113!$omp target enter data map(to:dqL_prim_dx_n(i)%vf)
3114# 310 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3115#endif
3116# 310 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3117 if (allocated(dql_prim_dx_n(i)%vf)) then
3118# 310 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3119 do macros_setup_vfs_i = lbound(dql_prim_dx_n(i)%vf, 1), ubound(dql_prim_dx_n(i)%vf, 1)
3120# 310 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3121 if (associated(dql_prim_dx_n(i)%vf(macros_setup_vfs_i)%sf)) then
3122# 310 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3123
3124# 310 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3125#if defined(MFC_OpenACC)
3126# 310 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3127!$acc enter data copyin(dqL_prim_dx_n(i)%vf(macros_setup_vfs_i))
3128# 310 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3129#elif defined(MFC_OpenMP)
3130# 310 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3131!$omp target enter data map(to:dqL_prim_dx_n(i)%vf(macros_setup_vfs_i))
3132# 310 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3133#endif
3134# 310 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3135
3136# 310 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3137#if defined(MFC_OpenACC)
3138# 310 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3139!$acc enter data copyin(dqL_prim_dx_n(i)%vf(macros_setup_vfs_i)%sf)
3140# 310 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3141#elif defined(MFC_OpenMP)
3142# 310 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3143!$omp target enter data map(to:dqL_prim_dx_n(i)%vf(macros_setup_vfs_i)%sf)
3144# 310 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3145#endif
3146# 310 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3147 end if
3148# 310 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3149 end do
3150# 310 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3151 end if
3152# 310 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3153
3154# 310 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3155#if defined(MFC_OpenACC)
3156# 310 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3157!$acc enter data copyin(dqL_prim_dy_n(i))
3158# 310 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3159#elif defined(MFC_OpenMP)
3160# 310 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3161!$omp target enter data map(to:dqL_prim_dy_n(i))
3162# 310 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3163#endif
3164# 310 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3165
3166# 310 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3167#if defined(MFC_OpenACC)
3168# 310 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3169!$acc enter data copyin(dqL_prim_dy_n(i)%vf)
3170# 310 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3171#elif defined(MFC_OpenMP)
3172# 310 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3173!$omp target enter data map(to:dqL_prim_dy_n(i)%vf)
3174# 310 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3175#endif
3176# 310 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3177 if (allocated(dql_prim_dy_n(i)%vf)) then
3178# 310 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3179 do macros_setup_vfs_i = lbound(dql_prim_dy_n(i)%vf, 1), ubound(dql_prim_dy_n(i)%vf, 1)
3180# 310 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3181 if (associated(dql_prim_dy_n(i)%vf(macros_setup_vfs_i)%sf)) then
3182# 310 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3183
3184# 310 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3185#if defined(MFC_OpenACC)
3186# 310 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3187!$acc enter data copyin(dqL_prim_dy_n(i)%vf(macros_setup_vfs_i))
3188# 310 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3189#elif defined(MFC_OpenMP)
3190# 310 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3191!$omp target enter data map(to:dqL_prim_dy_n(i)%vf(macros_setup_vfs_i))
3192# 310 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3193#endif
3194# 310 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3195
3196# 310 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3197#if defined(MFC_OpenACC)
3198# 310 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3199!$acc enter data copyin(dqL_prim_dy_n(i)%vf(macros_setup_vfs_i)%sf)
3200# 310 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3201#elif defined(MFC_OpenMP)
3202# 310 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3203!$omp target enter data map(to:dqL_prim_dy_n(i)%vf(macros_setup_vfs_i)%sf)
3204# 310 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3205#endif
3206# 310 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3207 end if
3208# 310 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3209 end do
3210# 310 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3211 end if
3212# 310 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3213
3214# 310 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3215#if defined(MFC_OpenACC)
3216# 310 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3217!$acc enter data copyin(dqL_prim_dz_n(i))
3218# 310 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3219#elif defined(MFC_OpenMP)
3220# 310 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3221!$omp target enter data map(to:dqL_prim_dz_n(i))
3222# 310 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3223#endif
3224# 310 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3225
3226# 310 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3227#if defined(MFC_OpenACC)
3228# 310 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3229!$acc enter data copyin(dqL_prim_dz_n(i)%vf)
3230# 310 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3231#elif defined(MFC_OpenMP)
3232# 310 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3233!$omp target enter data map(to:dqL_prim_dz_n(i)%vf)
3234# 310 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3235#endif
3236# 310 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3237 if (allocated(dql_prim_dz_n(i)%vf)) then
3238# 310 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3239 do macros_setup_vfs_i = lbound(dql_prim_dz_n(i)%vf, 1), ubound(dql_prim_dz_n(i)%vf, 1)
3240# 310 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3241 if (associated(dql_prim_dz_n(i)%vf(macros_setup_vfs_i)%sf)) then
3242# 310 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3243
3244# 310 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3245#if defined(MFC_OpenACC)
3246# 310 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3247!$acc enter data copyin(dqL_prim_dz_n(i)%vf(macros_setup_vfs_i))
3248# 310 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3249#elif defined(MFC_OpenMP)
3250# 310 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3251!$omp target enter data map(to:dqL_prim_dz_n(i)%vf(macros_setup_vfs_i))
3252# 310 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3253#endif
3254# 310 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3255
3256# 310 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3257#if defined(MFC_OpenACC)
3258# 310 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3259!$acc enter data copyin(dqL_prim_dz_n(i)%vf(macros_setup_vfs_i)%sf)
3260# 310 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3261#elif defined(MFC_OpenMP)
3262# 310 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3263!$omp target enter data map(to:dqL_prim_dz_n(i)%vf(macros_setup_vfs_i)%sf)
3264# 310 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3265#endif
3266# 310 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3267 end if
3268# 310 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3269 end do
3270# 310 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3271 end if
3272# 310 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3273 end block
3274# 310 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3275#endif
3276#ifdef _CRAYFTN
3277# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3278 block
3279# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3280 integer :: macros_setup_vfs_i
3281# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3282
3283# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3284#ifdef MFC_DEBUG
3285# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3286 block
3287# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3288 use iso_fortran_env, only: output_unit
3289# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3290
3291# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3292 print *, 'm_rhs.fpp:311: ', '@:ACC_SETUP_VFs(dqR_prim_dx_n(i), dqR_prim_dy_n(i), dqR_prim_dz_n(i))'
3293# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3294
3295# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3296 call flush (output_unit)
3297# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3298 end block
3299# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3300#endif
3301# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3302
3303# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3304
3305# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3306#if defined(MFC_OpenACC)
3307# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3308!$acc enter data copyin(dqR_prim_dx_n(i))
3309# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3310#elif defined(MFC_OpenMP)
3311# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3312!$omp target enter data map(to:dqR_prim_dx_n(i))
3313# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3314#endif
3315# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3316
3317# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3318#if defined(MFC_OpenACC)
3319# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3320!$acc enter data copyin(dqR_prim_dx_n(i)%vf)
3321# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3322#elif defined(MFC_OpenMP)
3323# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3324!$omp target enter data map(to:dqR_prim_dx_n(i)%vf)
3325# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3326#endif
3327# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3328 if (allocated(dqr_prim_dx_n(i)%vf)) then
3329# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3330 do macros_setup_vfs_i = lbound(dqr_prim_dx_n(i)%vf, 1), ubound(dqr_prim_dx_n(i)%vf, 1)
3331# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3332 if (associated(dqr_prim_dx_n(i)%vf(macros_setup_vfs_i)%sf)) then
3333# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3334
3335# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3336#if defined(MFC_OpenACC)
3337# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3338!$acc enter data copyin(dqR_prim_dx_n(i)%vf(macros_setup_vfs_i))
3339# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3340#elif defined(MFC_OpenMP)
3341# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3342!$omp target enter data map(to:dqR_prim_dx_n(i)%vf(macros_setup_vfs_i))
3343# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3344#endif
3345# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3346
3347# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3348#if defined(MFC_OpenACC)
3349# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3350!$acc enter data copyin(dqR_prim_dx_n(i)%vf(macros_setup_vfs_i)%sf)
3351# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3352#elif defined(MFC_OpenMP)
3353# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3354!$omp target enter data map(to:dqR_prim_dx_n(i)%vf(macros_setup_vfs_i)%sf)
3355# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3356#endif
3357# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3358 end if
3359# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3360 end do
3361# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3362 end if
3363# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3364
3365# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3366#if defined(MFC_OpenACC)
3367# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3368!$acc enter data copyin(dqR_prim_dy_n(i))
3369# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3370#elif defined(MFC_OpenMP)
3371# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3372!$omp target enter data map(to:dqR_prim_dy_n(i))
3373# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3374#endif
3375# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3376
3377# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3378#if defined(MFC_OpenACC)
3379# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3380!$acc enter data copyin(dqR_prim_dy_n(i)%vf)
3381# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3382#elif defined(MFC_OpenMP)
3383# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3384!$omp target enter data map(to:dqR_prim_dy_n(i)%vf)
3385# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3386#endif
3387# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3388 if (allocated(dqr_prim_dy_n(i)%vf)) then
3389# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3390 do macros_setup_vfs_i = lbound(dqr_prim_dy_n(i)%vf, 1), ubound(dqr_prim_dy_n(i)%vf, 1)
3391# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3392 if (associated(dqr_prim_dy_n(i)%vf(macros_setup_vfs_i)%sf)) then
3393# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3394
3395# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3396#if defined(MFC_OpenACC)
3397# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3398!$acc enter data copyin(dqR_prim_dy_n(i)%vf(macros_setup_vfs_i))
3399# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3400#elif defined(MFC_OpenMP)
3401# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3402!$omp target enter data map(to:dqR_prim_dy_n(i)%vf(macros_setup_vfs_i))
3403# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3404#endif
3405# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3406
3407# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3408#if defined(MFC_OpenACC)
3409# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3410!$acc enter data copyin(dqR_prim_dy_n(i)%vf(macros_setup_vfs_i)%sf)
3411# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3412#elif defined(MFC_OpenMP)
3413# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3414!$omp target enter data map(to:dqR_prim_dy_n(i)%vf(macros_setup_vfs_i)%sf)
3415# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3416#endif
3417# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3418 end if
3419# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3420 end do
3421# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3422 end if
3423# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3424
3425# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3426#if defined(MFC_OpenACC)
3427# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3428!$acc enter data copyin(dqR_prim_dz_n(i))
3429# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3430#elif defined(MFC_OpenMP)
3431# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3432!$omp target enter data map(to:dqR_prim_dz_n(i))
3433# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3434#endif
3435# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3436
3437# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3438#if defined(MFC_OpenACC)
3439# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3440!$acc enter data copyin(dqR_prim_dz_n(i)%vf)
3441# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3442#elif defined(MFC_OpenMP)
3443# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3444!$omp target enter data map(to:dqR_prim_dz_n(i)%vf)
3445# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3446#endif
3447# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3448 if (allocated(dqr_prim_dz_n(i)%vf)) then
3449# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3450 do macros_setup_vfs_i = lbound(dqr_prim_dz_n(i)%vf, 1), ubound(dqr_prim_dz_n(i)%vf, 1)
3451# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3452 if (associated(dqr_prim_dz_n(i)%vf(macros_setup_vfs_i)%sf)) then
3453# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3454
3455# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3456#if defined(MFC_OpenACC)
3457# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3458!$acc enter data copyin(dqR_prim_dz_n(i)%vf(macros_setup_vfs_i))
3459# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3460#elif defined(MFC_OpenMP)
3461# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3462!$omp target enter data map(to:dqR_prim_dz_n(i)%vf(macros_setup_vfs_i))
3463# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3464#endif
3465# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3466
3467# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3468#if defined(MFC_OpenACC)
3469# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3470!$acc enter data copyin(dqR_prim_dz_n(i)%vf(macros_setup_vfs_i)%sf)
3471# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3472#elif defined(MFC_OpenMP)
3473# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3474!$omp target enter data map(to:dqR_prim_dz_n(i)%vf(macros_setup_vfs_i)%sf)
3475# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3476#endif
3477# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3478 end if
3479# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3480 end do
3481# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3482 end if
3483# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3484 end block
3485# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3486#endif
3487 end do
3488 end if
3489
3490 if (viscous) then
3491#ifdef MFC_DEBUG
3492# 316 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3493 block
3494# 316 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3495 use iso_fortran_env, only: output_unit
3496# 316 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3497
3498# 316 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3499 print *, 'm_rhs.fpp:316: ', '@:ALLOCATE(tau_Re_vf(1:sys_size))'
3500# 316 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3501
3502# 316 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3503 call flush (output_unit)
3504# 316 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3505 end block
3506# 316 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3507#endif
3508# 316 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3509 allocate (tau_re_vf(1:sys_size))
3510# 316 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3511
3512# 316 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3513
3514# 316 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3515#if defined(MFC_OpenACC)
3516# 316 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3517!$acc enter data create(tau_Re_vf)
3518# 316 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3519#elif defined(MFC_OpenMP)
3520# 316 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3521!$omp target enter data map(always,alloc:tau_Re_vf)
3522# 316 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3523#endif
3524 do i = 1, num_dims
3525#ifdef MFC_DEBUG
3526# 318 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3527 block
3528# 318 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3529 use iso_fortran_env, only: output_unit
3530# 318 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3531
3532# 318 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3533 print *, 'm_rhs.fpp:318: ', '@:ALLOCATE(tau_Re_vf(eqn_idx%cont%end + i)%sf(idwbuff(1)%beg:idwbuff(1)%end, idwbuff(2)%beg:idwbuff(2)%end, idwbuff(3)%beg:idwbuff(3)%end))'
3534# 318 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3535
3536# 318 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3537 call flush (output_unit)
3538# 318 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3539 end block
3540# 318 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3541#endif
3542# 318 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3543 allocate (tau_re_vf(eqn_idx%cont%end + i)%sf(idwbuff(1)%beg:idwbuff(1)%end, idwbuff(2)%beg:idwbuff(2)%end, idwbuff(3)%beg:idwbuff(3)%end))
3544# 318 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3545
3546# 318 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3547
3548# 318 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3549#if defined(MFC_OpenACC)
3550# 318 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3551!$acc enter data create(tau_Re_vf(eqn_idx%cont%end + i)%sf)
3552# 318 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3553#elif defined(MFC_OpenMP)
3554# 318 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3555!$omp target enter data map(always,alloc:tau_Re_vf(eqn_idx%cont%end + i)%sf)
3556# 318 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3557#endif
3558# 320 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3559#ifdef _CRAYFTN
3560# 320 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3561 block
3562# 320 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3563#ifdef MFC_DEBUG
3564# 320 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3565 block
3566# 320 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3567 use iso_fortran_env, only: output_unit
3568# 320 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3569
3570# 320 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3571 print *, 'm_rhs.fpp:320: ', '@:ACC_SETUP_SFs(tau_Re_vf(eqn_idx%cont%end + i))'
3572# 320 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3573
3574# 320 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3575 call flush (output_unit)
3576# 320 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3577 end block
3578# 320 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3579#endif
3580# 320 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3581
3582# 320 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3583
3584# 320 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3585#if defined(MFC_OpenACC)
3586# 320 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3587!$acc enter data copyin(tau_Re_vf(eqn_idx%cont%end + i))
3588# 320 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3589#elif defined(MFC_OpenMP)
3590# 320 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3591!$omp target enter data map(to:tau_Re_vf(eqn_idx%cont%end + i))
3592# 320 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3593#endif
3594# 320 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3595 if (associated(tau_re_vf(eqn_idx%cont%end + i)%sf)) then
3596# 320 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3597
3598# 320 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3599#if defined(MFC_OpenACC)
3600# 320 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3601!$acc enter data copyin(tau_Re_vf(eqn_idx%cont%end + i)%sf)
3602# 320 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3603#elif defined(MFC_OpenMP)
3604# 320 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3605!$omp target enter data map(to:tau_Re_vf(eqn_idx%cont%end + i)%sf)
3606# 320 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3607#endif
3608# 320 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3609 end if
3610# 320 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3611 end block
3612# 320 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3613#endif
3614 end do
3615#ifdef MFC_DEBUG
3616# 322 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3617 block
3618# 322 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3619 use iso_fortran_env, only: output_unit
3620# 322 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3621
3622# 322 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3623 print *, 'm_rhs.fpp:322: ', '@:ALLOCATE(tau_Re_vf(eqn_idx%E)%sf(idwbuff(1)%beg:idwbuff(1)%end, idwbuff(2)%beg:idwbuff(2)%end, idwbuff(3)%beg:idwbuff(3)%end))'
3624# 322 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3625
3626# 322 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3627 call flush (output_unit)
3628# 322 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3629 end block
3630# 322 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3631#endif
3632# 322 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3633 allocate (tau_re_vf(eqn_idx%E)%sf(idwbuff(1)%beg:idwbuff(1)%end, idwbuff(2)%beg:idwbuff(2)%end, idwbuff(3)%beg:idwbuff(3)%end))
3634# 322 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3635
3636# 322 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3637
3638# 322 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3639#if defined(MFC_OpenACC)
3640# 322 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3641!$acc enter data create(tau_Re_vf(eqn_idx%E)%sf)
3642# 322 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3643#elif defined(MFC_OpenMP)
3644# 322 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3645!$omp target enter data map(always,alloc:tau_Re_vf(eqn_idx%E)%sf)
3646# 322 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3647#endif
3648# 324 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3649#ifdef _CRAYFTN
3650# 324 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3651 block
3652# 324 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3653#ifdef MFC_DEBUG
3654# 324 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3655 block
3656# 324 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3657 use iso_fortran_env, only: output_unit
3658# 324 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3659
3660# 324 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3661 print *, 'm_rhs.fpp:324: ', '@:ACC_SETUP_SFs(tau_Re_vf(eqn_idx%E))'
3662# 324 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3663
3664# 324 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3665 call flush (output_unit)
3666# 324 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3667 end block
3668# 324 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3669#endif
3670# 324 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3671
3672# 324 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3673
3674# 324 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3675#if defined(MFC_OpenACC)
3676# 324 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3677!$acc enter data copyin(tau_Re_vf(eqn_idx%E))
3678# 324 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3679#elif defined(MFC_OpenMP)
3680# 324 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3681!$omp target enter data map(to:tau_Re_vf(eqn_idx%E))
3682# 324 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3683#endif
3684# 324 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3685 if (associated(tau_re_vf(eqn_idx%E)%sf)) then
3686# 324 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3687
3688# 324 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3689#if defined(MFC_OpenACC)
3690# 324 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3691!$acc enter data copyin(tau_Re_vf(eqn_idx%E)%sf)
3692# 324 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3693#elif defined(MFC_OpenMP)
3694# 324 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3695!$omp target enter data map(to:tau_Re_vf(eqn_idx%E)%sf)
3696# 324 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3697#endif
3698# 324 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3699 end if
3700# 324 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3701 end block
3702# 324 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3703#endif
3704
3705#ifdef MFC_DEBUG
3706# 326 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3707 block
3708# 326 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3709 use iso_fortran_env, only: output_unit
3710# 326 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3711
3712# 326 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3713 print *, 'm_rhs.fpp:326: ', '@:ALLOCATE(dq_prim_dx_qp(1)%vf(1:sys_size))'
3714# 326 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3715
3716# 326 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3717 call flush (output_unit)
3718# 326 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3719 end block
3720# 326 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3721#endif
3722# 326 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3723 allocate (dq_prim_dx_qp(1)%vf(1:sys_size))
3724# 326 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3725
3726# 326 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3727
3728# 326 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3729#if defined(MFC_OpenACC)
3730# 326 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3731!$acc enter data create(dq_prim_dx_qp(1)%vf)
3732# 326 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3733#elif defined(MFC_OpenMP)
3734# 326 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3735!$omp target enter data map(always,alloc:dq_prim_dx_qp(1)%vf)
3736# 326 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3737#endif
3738#ifdef MFC_DEBUG
3739# 327 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3740 block
3741# 327 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3742 use iso_fortran_env, only: output_unit
3743# 327 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3744
3745# 327 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3746 print *, 'm_rhs.fpp:327: ', '@:ALLOCATE(dq_prim_dy_qp(1)%vf(1:sys_size))'
3747# 327 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3748
3749# 327 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3750 call flush (output_unit)
3751# 327 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3752 end block
3753# 327 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3754#endif
3755# 327 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3756 allocate (dq_prim_dy_qp(1)%vf(1:sys_size))
3757# 327 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3758
3759# 327 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3760
3761# 327 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3762#if defined(MFC_OpenACC)
3763# 327 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3764!$acc enter data create(dq_prim_dy_qp(1)%vf)
3765# 327 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3766#elif defined(MFC_OpenMP)
3767# 327 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3768!$omp target enter data map(always,alloc:dq_prim_dy_qp(1)%vf)
3769# 327 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3770#endif
3771#ifdef MFC_DEBUG
3772# 328 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3773 block
3774# 328 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3775 use iso_fortran_env, only: output_unit
3776# 328 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3777
3778# 328 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3779 print *, 'm_rhs.fpp:328: ', '@:ALLOCATE(dq_prim_dz_qp(1)%vf(1:sys_size))'
3780# 328 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3781
3782# 328 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3783 call flush (output_unit)
3784# 328 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3785 end block
3786# 328 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3787#endif
3788# 328 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3789 allocate (dq_prim_dz_qp(1)%vf(1:sys_size))
3790# 328 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3791
3792# 328 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3793
3794# 328 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3795#if defined(MFC_OpenACC)
3796# 328 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3797!$acc enter data create(dq_prim_dz_qp(1)%vf)
3798# 328 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3799#elif defined(MFC_OpenMP)
3800# 328 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3801!$omp target enter data map(always,alloc:dq_prim_dz_qp(1)%vf)
3802# 328 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3803#endif
3804
3805 do l = eqn_idx%mom%beg, eqn_idx%mom%end
3806#ifdef MFC_DEBUG
3807# 331 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3808 block
3809# 331 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3810 use iso_fortran_env, only: output_unit
3811# 331 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3812
3813# 331 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3814 print *, 'm_rhs.fpp:331: ', '@:ALLOCATE(dq_prim_dx_qp(1)%vf(l)%sf(idwbuff(1)%beg:idwbuff(1)%end, idwbuff(2)%beg:idwbuff(2)%end, idwbuff(3)%beg:idwbuff(3)%end))'
3815# 331 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3816
3817# 331 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3818 call flush (output_unit)
3819# 331 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3820 end block
3821# 331 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3822#endif
3823# 331 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3824 allocate (dq_prim_dx_qp(1)%vf(l)%sf(idwbuff(1)%beg:idwbuff(1)%end, idwbuff(2)%beg:idwbuff(2)%end, idwbuff(3)%beg:idwbuff(3)%end))
3825# 331 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3826
3827# 331 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3828
3829# 331 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3830#if defined(MFC_OpenACC)
3831# 331 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3832!$acc enter data create(dq_prim_dx_qp(1)%vf(l)%sf)
3833# 331 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3834#elif defined(MFC_OpenMP)
3835# 331 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3836!$omp target enter data map(always,alloc:dq_prim_dx_qp(1)%vf(l)%sf)
3837# 331 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3838#endif
3839# 333 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3840 end do
3841
3842#ifdef _CRAYFTN
3843# 335 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3844 block
3845# 335 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3846 integer :: macros_setup_vfs_i
3847# 335 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3848
3849# 335 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3850#ifdef MFC_DEBUG
3851# 335 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3852 block
3853# 335 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3854 use iso_fortran_env, only: output_unit
3855# 335 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3856
3857# 335 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3858 print *, 'm_rhs.fpp:335: ', '@:ACC_SETUP_VFs(dq_prim_dx_qp(1))'
3859# 335 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3860
3861# 335 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3862 call flush (output_unit)
3863# 335 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3864 end block
3865# 335 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3866#endif
3867# 335 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3868
3869# 335 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3870
3871# 335 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3872#if defined(MFC_OpenACC)
3873# 335 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3874!$acc enter data copyin(dq_prim_dx_qp(1))
3875# 335 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3876#elif defined(MFC_OpenMP)
3877# 335 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3878!$omp target enter data map(to:dq_prim_dx_qp(1))
3879# 335 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3880#endif
3881# 335 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3882
3883# 335 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3884#if defined(MFC_OpenACC)
3885# 335 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3886!$acc enter data copyin(dq_prim_dx_qp(1)%vf)
3887# 335 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3888#elif defined(MFC_OpenMP)
3889# 335 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3890!$omp target enter data map(to:dq_prim_dx_qp(1)%vf)
3891# 335 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3892#endif
3893# 335 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3894 if (allocated(dq_prim_dx_qp(1)%vf)) then
3895# 335 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3896 do macros_setup_vfs_i = lbound(dq_prim_dx_qp(1)%vf, 1), ubound(dq_prim_dx_qp(1)%vf, 1)
3897# 335 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3898 if (associated(dq_prim_dx_qp(1)%vf(macros_setup_vfs_i)%sf)) then
3899# 335 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3900
3901# 335 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3902#if defined(MFC_OpenACC)
3903# 335 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3904!$acc enter data copyin(dq_prim_dx_qp(1)%vf(macros_setup_vfs_i))
3905# 335 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3906#elif defined(MFC_OpenMP)
3907# 335 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3908!$omp target enter data map(to:dq_prim_dx_qp(1)%vf(macros_setup_vfs_i))
3909# 335 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3910#endif
3911# 335 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3912
3913# 335 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3914#if defined(MFC_OpenACC)
3915# 335 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3916!$acc enter data copyin(dq_prim_dx_qp(1)%vf(macros_setup_vfs_i)%sf)
3917# 335 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3918#elif defined(MFC_OpenMP)
3919# 335 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3920!$omp target enter data map(to:dq_prim_dx_qp(1)%vf(macros_setup_vfs_i)%sf)
3921# 335 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3922#endif
3923# 335 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3924 end if
3925# 335 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3926 end do
3927# 335 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3928 end if
3929# 335 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3930 end block
3931# 335 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3932#endif
3933
3934 if (n > 0) then
3935 do l = eqn_idx%mom%beg, eqn_idx%mom%end
3936#ifdef MFC_DEBUG
3937# 339 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3938 block
3939# 339 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3940 use iso_fortran_env, only: output_unit
3941# 339 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3942
3943# 339 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3944 print *, 'm_rhs.fpp:339: ', '@:ALLOCATE(dq_prim_dy_qp(1)%vf(l)%sf(idwbuff(1)%beg:idwbuff(1)%end, idwbuff(2)%beg:idwbuff(2)%end, idwbuff(3)%beg:idwbuff(3)%end))'
3945# 339 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3946
3947# 339 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3948 call flush (output_unit)
3949# 339 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3950 end block
3951# 339 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3952#endif
3953# 339 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3954 allocate (dq_prim_dy_qp(1)%vf(l)%sf(idwbuff(1)%beg:idwbuff(1)%end, idwbuff(2)%beg:idwbuff(2)%end, idwbuff(3)%beg:idwbuff(3)%end))
3955# 339 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3956
3957# 339 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3958
3959# 339 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3960#if defined(MFC_OpenACC)
3961# 339 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3962!$acc enter data create(dq_prim_dy_qp(1)%vf(l)%sf)
3963# 339 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3964#elif defined(MFC_OpenMP)
3965# 339 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3966!$omp target enter data map(always,alloc:dq_prim_dy_qp(1)%vf(l)%sf)
3967# 339 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3968#endif
3969# 341 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3970 end do
3971
3972#ifdef _CRAYFTN
3973# 343 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3974 block
3975# 343 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3976 integer :: macros_setup_vfs_i
3977# 343 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3978
3979# 343 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3980#ifdef MFC_DEBUG
3981# 343 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3982 block
3983# 343 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3984 use iso_fortran_env, only: output_unit
3985# 343 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3986
3987# 343 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3988 print *, 'm_rhs.fpp:343: ', '@:ACC_SETUP_VFs(dq_prim_dy_qp(1))'
3989# 343 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3990
3991# 343 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3992 call flush (output_unit)
3993# 343 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3994 end block
3995# 343 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3996#endif
3997# 343 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3998
3999# 343 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4000
4001# 343 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4002#if defined(MFC_OpenACC)
4003# 343 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4004!$acc enter data copyin(dq_prim_dy_qp(1))
4005# 343 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4006#elif defined(MFC_OpenMP)
4007# 343 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4008!$omp target enter data map(to:dq_prim_dy_qp(1))
4009# 343 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4010#endif
4011# 343 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4012
4013# 343 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4014#if defined(MFC_OpenACC)
4015# 343 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4016!$acc enter data copyin(dq_prim_dy_qp(1)%vf)
4017# 343 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4018#elif defined(MFC_OpenMP)
4019# 343 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4020!$omp target enter data map(to:dq_prim_dy_qp(1)%vf)
4021# 343 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4022#endif
4023# 343 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4024 if (allocated(dq_prim_dy_qp(1)%vf)) then
4025# 343 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4026 do macros_setup_vfs_i = lbound(dq_prim_dy_qp(1)%vf, 1), ubound(dq_prim_dy_qp(1)%vf, 1)
4027# 343 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4028 if (associated(dq_prim_dy_qp(1)%vf(macros_setup_vfs_i)%sf)) then
4029# 343 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4030
4031# 343 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4032#if defined(MFC_OpenACC)
4033# 343 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4034!$acc enter data copyin(dq_prim_dy_qp(1)%vf(macros_setup_vfs_i))
4035# 343 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4036#elif defined(MFC_OpenMP)
4037# 343 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4038!$omp target enter data map(to:dq_prim_dy_qp(1)%vf(macros_setup_vfs_i))
4039# 343 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4040#endif
4041# 343 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4042
4043# 343 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4044#if defined(MFC_OpenACC)
4045# 343 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4046!$acc enter data copyin(dq_prim_dy_qp(1)%vf(macros_setup_vfs_i)%sf)
4047# 343 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4048#elif defined(MFC_OpenMP)
4049# 343 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4050!$omp target enter data map(to:dq_prim_dy_qp(1)%vf(macros_setup_vfs_i)%sf)
4051# 343 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4052#endif
4053# 343 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4054 end if
4055# 343 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4056 end do
4057# 343 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4058 end if
4059# 343 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4060 end block
4061# 343 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4062#endif
4063
4064 if (p > 0) then
4065 do l = eqn_idx%mom%beg, eqn_idx%mom%end
4066#ifdef MFC_DEBUG
4067# 347 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4068 block
4069# 347 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4070 use iso_fortran_env, only: output_unit
4071# 347 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4072
4073# 347 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4074 print *, 'm_rhs.fpp:347: ', '@:ALLOCATE(dq_prim_dz_qp(1)%vf(l)%sf(idwbuff(1)%beg:idwbuff(1)%end, idwbuff(2)%beg:idwbuff(2)%end, idwbuff(3)%beg:idwbuff(3)%end))'
4075# 347 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4076
4077# 347 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4078 call flush (output_unit)
4079# 347 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4080 end block
4081# 347 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4082#endif
4083# 347 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4084 allocate (dq_prim_dz_qp(1)%vf(l)%sf(idwbuff(1)%beg:idwbuff(1)%end, idwbuff(2)%beg:idwbuff(2)%end, idwbuff(3)%beg:idwbuff(3)%end))
4085# 347 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4086
4087# 347 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4088
4089# 347 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4090#if defined(MFC_OpenACC)
4091# 347 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4092!$acc enter data create(dq_prim_dz_qp(1)%vf(l)%sf)
4093# 347 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4094#elif defined(MFC_OpenMP)
4095# 347 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4096!$omp target enter data map(always,alloc:dq_prim_dz_qp(1)%vf(l)%sf)
4097# 347 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4098#endif
4099# 349 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4100 end do
4101#ifdef _CRAYFTN
4102# 350 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4103 block
4104# 350 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4105 integer :: macros_setup_vfs_i
4106# 350 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4107
4108# 350 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4109#ifdef MFC_DEBUG
4110# 350 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4111 block
4112# 350 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4113 use iso_fortran_env, only: output_unit
4114# 350 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4115
4116# 350 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4117 print *, 'm_rhs.fpp:350: ', '@:ACC_SETUP_VFs(dq_prim_dz_qp(1))'
4118# 350 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4119
4120# 350 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4121 call flush (output_unit)
4122# 350 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4123 end block
4124# 350 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4125#endif
4126# 350 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4127
4128# 350 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4129
4130# 350 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4131#if defined(MFC_OpenACC)
4132# 350 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4133!$acc enter data copyin(dq_prim_dz_qp(1))
4134# 350 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4135#elif defined(MFC_OpenMP)
4136# 350 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4137!$omp target enter data map(to:dq_prim_dz_qp(1))
4138# 350 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4139#endif
4140# 350 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4141
4142# 350 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4143#if defined(MFC_OpenACC)
4144# 350 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4145!$acc enter data copyin(dq_prim_dz_qp(1)%vf)
4146# 350 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4147#elif defined(MFC_OpenMP)
4148# 350 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4149!$omp target enter data map(to:dq_prim_dz_qp(1)%vf)
4150# 350 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4151#endif
4152# 350 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4153 if (allocated(dq_prim_dz_qp(1)%vf)) then
4154# 350 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4155 do macros_setup_vfs_i = lbound(dq_prim_dz_qp(1)%vf, 1), ubound(dq_prim_dz_qp(1)%vf, 1)
4156# 350 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4157 if (associated(dq_prim_dz_qp(1)%vf(macros_setup_vfs_i)%sf)) then
4158# 350 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4159
4160# 350 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4161#if defined(MFC_OpenACC)
4162# 350 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4163!$acc enter data copyin(dq_prim_dz_qp(1)%vf(macros_setup_vfs_i))
4164# 350 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4165#elif defined(MFC_OpenMP)
4166# 350 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4167!$omp target enter data map(to:dq_prim_dz_qp(1)%vf(macros_setup_vfs_i))
4168# 350 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4169#endif
4170# 350 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4171
4172# 350 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4173#if defined(MFC_OpenACC)
4174# 350 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4175!$acc enter data copyin(dq_prim_dz_qp(1)%vf(macros_setup_vfs_i)%sf)
4176# 350 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4177#elif defined(MFC_OpenMP)
4178# 350 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4179!$omp target enter data map(to:dq_prim_dz_qp(1)%vf(macros_setup_vfs_i)%sf)
4180# 350 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4181#endif
4182# 350 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4183 end if
4184# 350 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4185 end do
4186# 350 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4187 end if
4188# 350 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4189 end block
4190# 350 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4191#endif
4192 end if
4193 end if
4194
4195 do i = 1, num_dims
4196#ifdef MFC_DEBUG
4197# 355 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4198 block
4199# 355 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4200 use iso_fortran_env, only: output_unit
4201# 355 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4202
4203# 355 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4204 print *, 'm_rhs.fpp:355: ', '@:ALLOCATE(dqL_prim_dx_n(i)%vf(1:sys_size))'
4205# 355 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4206
4207# 355 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4208 call flush (output_unit)
4209# 355 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4210 end block
4211# 355 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4212#endif
4213# 355 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4214 allocate (dql_prim_dx_n(i)%vf(1:sys_size))
4215# 355 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4216
4217# 355 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4218
4219# 355 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4220#if defined(MFC_OpenACC)
4221# 355 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4222!$acc enter data create(dqL_prim_dx_n(i)%vf)
4223# 355 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4224#elif defined(MFC_OpenMP)
4225# 355 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4226!$omp target enter data map(always,alloc:dqL_prim_dx_n(i)%vf)
4227# 355 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4228#endif
4229#ifdef MFC_DEBUG
4230# 356 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4231 block
4232# 356 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4233 use iso_fortran_env, only: output_unit
4234# 356 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4235
4236# 356 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4237 print *, 'm_rhs.fpp:356: ', '@:ALLOCATE(dqL_prim_dy_n(i)%vf(1:sys_size))'
4238# 356 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4239
4240# 356 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4241 call flush (output_unit)
4242# 356 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4243 end block
4244# 356 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4245#endif
4246# 356 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4247 allocate (dql_prim_dy_n(i)%vf(1:sys_size))
4248# 356 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4249
4250# 356 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4251
4252# 356 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4253#if defined(MFC_OpenACC)
4254# 356 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4255!$acc enter data create(dqL_prim_dy_n(i)%vf)
4256# 356 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4257#elif defined(MFC_OpenMP)
4258# 356 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4259!$omp target enter data map(always,alloc:dqL_prim_dy_n(i)%vf)
4260# 356 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4261#endif
4262#ifdef MFC_DEBUG
4263# 357 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4264 block
4265# 357 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4266 use iso_fortran_env, only: output_unit
4267# 357 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4268
4269# 357 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4270 print *, 'm_rhs.fpp:357: ', '@:ALLOCATE(dqL_prim_dz_n(i)%vf(1:sys_size))'
4271# 357 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4272
4273# 357 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4274 call flush (output_unit)
4275# 357 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4276 end block
4277# 357 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4278#endif
4279# 357 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4280 allocate (dql_prim_dz_n(i)%vf(1:sys_size))
4281# 357 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4282
4283# 357 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4284
4285# 357 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4286#if defined(MFC_OpenACC)
4287# 357 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4288!$acc enter data create(dqL_prim_dz_n(i)%vf)
4289# 357 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4290#elif defined(MFC_OpenMP)
4291# 357 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4292!$omp target enter data map(always,alloc:dqL_prim_dz_n(i)%vf)
4293# 357 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4294#endif
4295#ifdef MFC_DEBUG
4296# 358 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4297 block
4298# 358 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4299 use iso_fortran_env, only: output_unit
4300# 358 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4301
4302# 358 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4303 print *, 'm_rhs.fpp:358: ', '@:ALLOCATE(dqR_prim_dx_n(i)%vf(1:sys_size))'
4304# 358 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4305
4306# 358 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4307 call flush (output_unit)
4308# 358 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4309 end block
4310# 358 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4311#endif
4312# 358 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4313 allocate (dqr_prim_dx_n(i)%vf(1:sys_size))
4314# 358 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4315
4316# 358 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4317
4318# 358 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4319#if defined(MFC_OpenACC)
4320# 358 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4321!$acc enter data create(dqR_prim_dx_n(i)%vf)
4322# 358 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4323#elif defined(MFC_OpenMP)
4324# 358 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4325!$omp target enter data map(always,alloc:dqR_prim_dx_n(i)%vf)
4326# 358 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4327#endif
4328#ifdef MFC_DEBUG
4329# 359 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4330 block
4331# 359 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4332 use iso_fortran_env, only: output_unit
4333# 359 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4334
4335# 359 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4336 print *, 'm_rhs.fpp:359: ', '@:ALLOCATE(dqR_prim_dy_n(i)%vf(1:sys_size))'
4337# 359 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4338
4339# 359 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4340 call flush (output_unit)
4341# 359 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4342 end block
4343# 359 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4344#endif
4345# 359 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4346 allocate (dqr_prim_dy_n(i)%vf(1:sys_size))
4347# 359 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4348
4349# 359 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4350
4351# 359 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4352#if defined(MFC_OpenACC)
4353# 359 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4354!$acc enter data create(dqR_prim_dy_n(i)%vf)
4355# 359 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4356#elif defined(MFC_OpenMP)
4357# 359 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4358!$omp target enter data map(always,alloc:dqR_prim_dy_n(i)%vf)
4359# 359 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4360#endif
4361#ifdef MFC_DEBUG
4362# 360 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4363 block
4364# 360 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4365 use iso_fortran_env, only: output_unit
4366# 360 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4367
4368# 360 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4369 print *, 'm_rhs.fpp:360: ', '@:ALLOCATE(dqR_prim_dz_n(i)%vf(1:sys_size))'
4370# 360 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4371
4372# 360 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4373 call flush (output_unit)
4374# 360 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4375 end block
4376# 360 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4377#endif
4378# 360 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4379 allocate (dqr_prim_dz_n(i)%vf(1:sys_size))
4380# 360 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4381
4382# 360 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4383
4384# 360 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4385#if defined(MFC_OpenACC)
4386# 360 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4387!$acc enter data create(dqR_prim_dz_n(i)%vf)
4388# 360 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4389#elif defined(MFC_OpenMP)
4390# 360 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4391!$omp target enter data map(always,alloc:dqR_prim_dz_n(i)%vf)
4392# 360 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4393#endif
4394 end do
4395
4396 do i = 1, num_dims
4397 do l = eqn_idx%mom%beg, eqn_idx%mom%end
4398#ifdef MFC_DEBUG
4399# 365 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4400 block
4401# 365 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4402 use iso_fortran_env, only: output_unit
4403# 365 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4404
4405# 365 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4406 print *, 'm_rhs.fpp:365: ', '@:ALLOCATE(dqL_prim_dx_n(i)%vf(l)%sf(idwbuff(1)%beg:idwbuff(1)%end, idwbuff(2)%beg:idwbuff(2)%end, idwbuff(3)%beg:idwbuff(3)%end))'
4407# 365 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4408
4409# 365 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4410 call flush (output_unit)
4411# 365 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4412 end block
4413# 365 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4414#endif
4415# 365 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4416 allocate (dql_prim_dx_n(i)%vf(l)%sf(idwbuff(1)%beg:idwbuff(1)%end, idwbuff(2)%beg:idwbuff(2)%end, idwbuff(3)%beg:idwbuff(3)%end))
4417# 365 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4418
4419# 365 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4420
4421# 365 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4422#if defined(MFC_OpenACC)
4423# 365 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4424!$acc enter data create(dqL_prim_dx_n(i)%vf(l)%sf)
4425# 365 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4426#elif defined(MFC_OpenMP)
4427# 365 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4428!$omp target enter data map(always,alloc:dqL_prim_dx_n(i)%vf(l)%sf)
4429# 365 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4430#endif
4431# 367 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4432#ifdef MFC_DEBUG
4433# 367 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4434 block
4435# 367 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4436 use iso_fortran_env, only: output_unit
4437# 367 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4438
4439# 367 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4440 print *, 'm_rhs.fpp:367: ', '@:ALLOCATE(dqR_prim_dx_n(i)%vf(l)%sf(idwbuff(1)%beg:idwbuff(1)%end, idwbuff(2)%beg:idwbuff(2)%end, idwbuff(3)%beg:idwbuff(3)%end))'
4441# 367 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4442
4443# 367 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4444 call flush (output_unit)
4445# 367 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4446 end block
4447# 367 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4448#endif
4449# 367 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4450 allocate (dqr_prim_dx_n(i)%vf(l)%sf(idwbuff(1)%beg:idwbuff(1)%end, idwbuff(2)%beg:idwbuff(2)%end, idwbuff(3)%beg:idwbuff(3)%end))
4451# 367 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4452
4453# 367 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4454
4455# 367 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4456#if defined(MFC_OpenACC)
4457# 367 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4458!$acc enter data create(dqR_prim_dx_n(i)%vf(l)%sf)
4459# 367 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4460#elif defined(MFC_OpenMP)
4461# 367 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4462!$omp target enter data map(always,alloc:dqR_prim_dx_n(i)%vf(l)%sf)
4463# 367 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4464#endif
4465# 369 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4466 end do
4467
4468 if (n > 0) then
4469 do l = eqn_idx%mom%beg, eqn_idx%mom%end
4470#ifdef MFC_DEBUG
4471# 373 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4472 block
4473# 373 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4474 use iso_fortran_env, only: output_unit
4475# 373 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4476
4477# 373 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4478 print *, 'm_rhs.fpp:373: ', '@:ALLOCATE(dqL_prim_dy_n(i)%vf(l)%sf(idwbuff(1)%beg:idwbuff(1)%end, idwbuff(2)%beg:idwbuff(2)%end, idwbuff(3)%beg:idwbuff(3)%end))'
4479# 373 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4480
4481# 373 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4482 call flush (output_unit)
4483# 373 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4484 end block
4485# 373 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4486#endif
4487# 373 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4488 allocate (dql_prim_dy_n(i)%vf(l)%sf(idwbuff(1)%beg:idwbuff(1)%end, idwbuff(2)%beg:idwbuff(2)%end, idwbuff(3)%beg:idwbuff(3)%end))
4489# 373 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4490
4491# 373 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4492
4493# 373 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4494#if defined(MFC_OpenACC)
4495# 373 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4496!$acc enter data create(dqL_prim_dy_n(i)%vf(l)%sf)
4497# 373 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4498#elif defined(MFC_OpenMP)
4499# 373 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4500!$omp target enter data map(always,alloc:dqL_prim_dy_n(i)%vf(l)%sf)
4501# 373 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4502#endif
4503# 375 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4504#ifdef MFC_DEBUG
4505# 375 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4506 block
4507# 375 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4508 use iso_fortran_env, only: output_unit
4509# 375 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4510
4511# 375 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4512 print *, 'm_rhs.fpp:375: ', '@:ALLOCATE(dqR_prim_dy_n(i)%vf(l)%sf(idwbuff(1)%beg:idwbuff(1)%end, idwbuff(2)%beg:idwbuff(2)%end, idwbuff(3)%beg:idwbuff(3)%end))'
4513# 375 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4514
4515# 375 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4516 call flush (output_unit)
4517# 375 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4518 end block
4519# 375 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4520#endif
4521# 375 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4522 allocate (dqr_prim_dy_n(i)%vf(l)%sf(idwbuff(1)%beg:idwbuff(1)%end, idwbuff(2)%beg:idwbuff(2)%end, idwbuff(3)%beg:idwbuff(3)%end))
4523# 375 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4524
4525# 375 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4526
4527# 375 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4528#if defined(MFC_OpenACC)
4529# 375 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4530!$acc enter data create(dqR_prim_dy_n(i)%vf(l)%sf)
4531# 375 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4532#elif defined(MFC_OpenMP)
4533# 375 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4534!$omp target enter data map(always,alloc:dqR_prim_dy_n(i)%vf(l)%sf)
4535# 375 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4536#endif
4537# 377 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4538 end do
4539 end if
4540
4541 if (p > 0) then
4542 do l = eqn_idx%mom%beg, eqn_idx%mom%end
4543#ifdef MFC_DEBUG
4544# 382 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4545 block
4546# 382 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4547 use iso_fortran_env, only: output_unit
4548# 382 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4549
4550# 382 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4551 print *, 'm_rhs.fpp:382: ', '@:ALLOCATE(dqL_prim_dz_n(i)%vf(l)%sf(idwbuff(1)%beg:idwbuff(1)%end, idwbuff(2)%beg:idwbuff(2)%end, idwbuff(3)%beg:idwbuff(3)%end))'
4552# 382 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4553
4554# 382 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4555 call flush (output_unit)
4556# 382 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4557 end block
4558# 382 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4559#endif
4560# 382 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4561 allocate (dql_prim_dz_n(i)%vf(l)%sf(idwbuff(1)%beg:idwbuff(1)%end, idwbuff(2)%beg:idwbuff(2)%end, idwbuff(3)%beg:idwbuff(3)%end))
4562# 382 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4563
4564# 382 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4565
4566# 382 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4567#if defined(MFC_OpenACC)
4568# 382 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4569!$acc enter data create(dqL_prim_dz_n(i)%vf(l)%sf)
4570# 382 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4571#elif defined(MFC_OpenMP)
4572# 382 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4573!$omp target enter data map(always,alloc:dqL_prim_dz_n(i)%vf(l)%sf)
4574# 382 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4575#endif
4576# 384 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4577#ifdef MFC_DEBUG
4578# 384 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4579 block
4580# 384 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4581 use iso_fortran_env, only: output_unit
4582# 384 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4583
4584# 384 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4585 print *, 'm_rhs.fpp:384: ', '@:ALLOCATE(dqR_prim_dz_n(i)%vf(l)%sf(idwbuff(1)%beg:idwbuff(1)%end, idwbuff(2)%beg:idwbuff(2)%end, idwbuff(3)%beg:idwbuff(3)%end))'
4586# 384 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4587
4588# 384 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4589 call flush (output_unit)
4590# 384 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4591 end block
4592# 384 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4593#endif
4594# 384 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4595 allocate (dqr_prim_dz_n(i)%vf(l)%sf(idwbuff(1)%beg:idwbuff(1)%end, idwbuff(2)%beg:idwbuff(2)%end, idwbuff(3)%beg:idwbuff(3)%end))
4596# 384 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4597
4598# 384 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4599
4600# 384 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4601#if defined(MFC_OpenACC)
4602# 384 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4603!$acc enter data create(dqR_prim_dz_n(i)%vf(l)%sf)
4604# 384 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4605#elif defined(MFC_OpenMP)
4606# 384 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4607!$omp target enter data map(always,alloc:dqR_prim_dz_n(i)%vf(l)%sf)
4608# 384 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4609#endif
4610# 386 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4611 end do
4612 end if
4613
4614#ifdef _CRAYFTN
4615# 389 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4616 block
4617# 389 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4618 integer :: macros_setup_vfs_i
4619# 389 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4620
4621# 389 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4622#ifdef MFC_DEBUG
4623# 389 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4624 block
4625# 389 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4626 use iso_fortran_env, only: output_unit
4627# 389 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4628
4629# 389 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4630 print *, 'm_rhs.fpp:389: ', '@:ACC_SETUP_VFs(dqL_prim_dx_n(i), dqL_prim_dy_n(i), dqL_prim_dz_n(i))'
4631# 389 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4632
4633# 389 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4634 call flush (output_unit)
4635# 389 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4636 end block
4637# 389 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4638#endif
4639# 389 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4640
4641# 389 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4642
4643# 389 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4644#if defined(MFC_OpenACC)
4645# 389 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4646!$acc enter data copyin(dqL_prim_dx_n(i))
4647# 389 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4648#elif defined(MFC_OpenMP)
4649# 389 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4650!$omp target enter data map(to:dqL_prim_dx_n(i))
4651# 389 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4652#endif
4653# 389 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4654
4655# 389 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4656#if defined(MFC_OpenACC)
4657# 389 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4658!$acc enter data copyin(dqL_prim_dx_n(i)%vf)
4659# 389 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4660#elif defined(MFC_OpenMP)
4661# 389 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4662!$omp target enter data map(to:dqL_prim_dx_n(i)%vf)
4663# 389 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4664#endif
4665# 389 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4666 if (allocated(dql_prim_dx_n(i)%vf)) then
4667# 389 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4668 do macros_setup_vfs_i = lbound(dql_prim_dx_n(i)%vf, 1), ubound(dql_prim_dx_n(i)%vf, 1)
4669# 389 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4670 if (associated(dql_prim_dx_n(i)%vf(macros_setup_vfs_i)%sf)) then
4671# 389 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4672
4673# 389 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4674#if defined(MFC_OpenACC)
4675# 389 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4676!$acc enter data copyin(dqL_prim_dx_n(i)%vf(macros_setup_vfs_i))
4677# 389 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4678#elif defined(MFC_OpenMP)
4679# 389 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4680!$omp target enter data map(to:dqL_prim_dx_n(i)%vf(macros_setup_vfs_i))
4681# 389 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4682#endif
4683# 389 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4684
4685# 389 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4686#if defined(MFC_OpenACC)
4687# 389 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4688!$acc enter data copyin(dqL_prim_dx_n(i)%vf(macros_setup_vfs_i)%sf)
4689# 389 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4690#elif defined(MFC_OpenMP)
4691# 389 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4692!$omp target enter data map(to:dqL_prim_dx_n(i)%vf(macros_setup_vfs_i)%sf)
4693# 389 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4694#endif
4695# 389 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4696 end if
4697# 389 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4698 end do
4699# 389 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4700 end if
4701# 389 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4702
4703# 389 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4704#if defined(MFC_OpenACC)
4705# 389 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4706!$acc enter data copyin(dqL_prim_dy_n(i))
4707# 389 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4708#elif defined(MFC_OpenMP)
4709# 389 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4710!$omp target enter data map(to:dqL_prim_dy_n(i))
4711# 389 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4712#endif
4713# 389 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4714
4715# 389 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4716#if defined(MFC_OpenACC)
4717# 389 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4718!$acc enter data copyin(dqL_prim_dy_n(i)%vf)
4719# 389 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4720#elif defined(MFC_OpenMP)
4721# 389 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4722!$omp target enter data map(to:dqL_prim_dy_n(i)%vf)
4723# 389 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4724#endif
4725# 389 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4726 if (allocated(dql_prim_dy_n(i)%vf)) then
4727# 389 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4728 do macros_setup_vfs_i = lbound(dql_prim_dy_n(i)%vf, 1), ubound(dql_prim_dy_n(i)%vf, 1)
4729# 389 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4730 if (associated(dql_prim_dy_n(i)%vf(macros_setup_vfs_i)%sf)) then
4731# 389 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4732
4733# 389 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4734#if defined(MFC_OpenACC)
4735# 389 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4736!$acc enter data copyin(dqL_prim_dy_n(i)%vf(macros_setup_vfs_i))
4737# 389 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4738#elif defined(MFC_OpenMP)
4739# 389 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4740!$omp target enter data map(to:dqL_prim_dy_n(i)%vf(macros_setup_vfs_i))
4741# 389 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4742#endif
4743# 389 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4744
4745# 389 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4746#if defined(MFC_OpenACC)
4747# 389 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4748!$acc enter data copyin(dqL_prim_dy_n(i)%vf(macros_setup_vfs_i)%sf)
4749# 389 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4750#elif defined(MFC_OpenMP)
4751# 389 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4752!$omp target enter data map(to:dqL_prim_dy_n(i)%vf(macros_setup_vfs_i)%sf)
4753# 389 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4754#endif
4755# 389 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4756 end if
4757# 389 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4758 end do
4759# 389 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4760 end if
4761# 389 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4762
4763# 389 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4764#if defined(MFC_OpenACC)
4765# 389 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4766!$acc enter data copyin(dqL_prim_dz_n(i))
4767# 389 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4768#elif defined(MFC_OpenMP)
4769# 389 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4770!$omp target enter data map(to:dqL_prim_dz_n(i))
4771# 389 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4772#endif
4773# 389 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4774
4775# 389 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4776#if defined(MFC_OpenACC)
4777# 389 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4778!$acc enter data copyin(dqL_prim_dz_n(i)%vf)
4779# 389 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4780#elif defined(MFC_OpenMP)
4781# 389 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4782!$omp target enter data map(to:dqL_prim_dz_n(i)%vf)
4783# 389 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4784#endif
4785# 389 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4786 if (allocated(dql_prim_dz_n(i)%vf)) then
4787# 389 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4788 do macros_setup_vfs_i = lbound(dql_prim_dz_n(i)%vf, 1), ubound(dql_prim_dz_n(i)%vf, 1)
4789# 389 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4790 if (associated(dql_prim_dz_n(i)%vf(macros_setup_vfs_i)%sf)) then
4791# 389 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4792
4793# 389 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4794#if defined(MFC_OpenACC)
4795# 389 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4796!$acc enter data copyin(dqL_prim_dz_n(i)%vf(macros_setup_vfs_i))
4797# 389 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4798#elif defined(MFC_OpenMP)
4799# 389 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4800!$omp target enter data map(to:dqL_prim_dz_n(i)%vf(macros_setup_vfs_i))
4801# 389 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4802#endif
4803# 389 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4804
4805# 389 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4806#if defined(MFC_OpenACC)
4807# 389 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4808!$acc enter data copyin(dqL_prim_dz_n(i)%vf(macros_setup_vfs_i)%sf)
4809# 389 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4810#elif defined(MFC_OpenMP)
4811# 389 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4812!$omp target enter data map(to:dqL_prim_dz_n(i)%vf(macros_setup_vfs_i)%sf)
4813# 389 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4814#endif
4815# 389 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4816 end if
4817# 389 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4818 end do
4819# 389 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4820 end if
4821# 389 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4822 end block
4823# 389 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4824#endif
4825#ifdef _CRAYFTN
4826# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4827 block
4828# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4829 integer :: macros_setup_vfs_i
4830# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4831
4832# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4833#ifdef MFC_DEBUG
4834# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4835 block
4836# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4837 use iso_fortran_env, only: output_unit
4838# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4839
4840# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4841 print *, 'm_rhs.fpp:390: ', '@:ACC_SETUP_VFs(dqR_prim_dx_n(i), dqR_prim_dy_n(i), dqR_prim_dz_n(i))'
4842# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4843
4844# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4845 call flush (output_unit)
4846# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4847 end block
4848# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4849#endif
4850# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4851
4852# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4853
4854# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4855#if defined(MFC_OpenACC)
4856# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4857!$acc enter data copyin(dqR_prim_dx_n(i))
4858# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4859#elif defined(MFC_OpenMP)
4860# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4861!$omp target enter data map(to:dqR_prim_dx_n(i))
4862# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4863#endif
4864# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4865
4866# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4867#if defined(MFC_OpenACC)
4868# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4869!$acc enter data copyin(dqR_prim_dx_n(i)%vf)
4870# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4871#elif defined(MFC_OpenMP)
4872# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4873!$omp target enter data map(to:dqR_prim_dx_n(i)%vf)
4874# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4875#endif
4876# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4877 if (allocated(dqr_prim_dx_n(i)%vf)) then
4878# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4879 do macros_setup_vfs_i = lbound(dqr_prim_dx_n(i)%vf, 1), ubound(dqr_prim_dx_n(i)%vf, 1)
4880# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4881 if (associated(dqr_prim_dx_n(i)%vf(macros_setup_vfs_i)%sf)) then
4882# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4883
4884# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4885#if defined(MFC_OpenACC)
4886# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4887!$acc enter data copyin(dqR_prim_dx_n(i)%vf(macros_setup_vfs_i))
4888# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4889#elif defined(MFC_OpenMP)
4890# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4891!$omp target enter data map(to:dqR_prim_dx_n(i)%vf(macros_setup_vfs_i))
4892# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4893#endif
4894# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4895
4896# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4897#if defined(MFC_OpenACC)
4898# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4899!$acc enter data copyin(dqR_prim_dx_n(i)%vf(macros_setup_vfs_i)%sf)
4900# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4901#elif defined(MFC_OpenMP)
4902# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4903!$omp target enter data map(to:dqR_prim_dx_n(i)%vf(macros_setup_vfs_i)%sf)
4904# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4905#endif
4906# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4907 end if
4908# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4909 end do
4910# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4911 end if
4912# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4913
4914# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4915#if defined(MFC_OpenACC)
4916# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4917!$acc enter data copyin(dqR_prim_dy_n(i))
4918# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4919#elif defined(MFC_OpenMP)
4920# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4921!$omp target enter data map(to:dqR_prim_dy_n(i))
4922# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4923#endif
4924# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4925
4926# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4927#if defined(MFC_OpenACC)
4928# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4929!$acc enter data copyin(dqR_prim_dy_n(i)%vf)
4930# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4931#elif defined(MFC_OpenMP)
4932# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4933!$omp target enter data map(to:dqR_prim_dy_n(i)%vf)
4934# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4935#endif
4936# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4937 if (allocated(dqr_prim_dy_n(i)%vf)) then
4938# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4939 do macros_setup_vfs_i = lbound(dqr_prim_dy_n(i)%vf, 1), ubound(dqr_prim_dy_n(i)%vf, 1)
4940# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4941 if (associated(dqr_prim_dy_n(i)%vf(macros_setup_vfs_i)%sf)) then
4942# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4943
4944# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4945#if defined(MFC_OpenACC)
4946# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4947!$acc enter data copyin(dqR_prim_dy_n(i)%vf(macros_setup_vfs_i))
4948# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4949#elif defined(MFC_OpenMP)
4950# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4951!$omp target enter data map(to:dqR_prim_dy_n(i)%vf(macros_setup_vfs_i))
4952# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4953#endif
4954# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4955
4956# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4957#if defined(MFC_OpenACC)
4958# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4959!$acc enter data copyin(dqR_prim_dy_n(i)%vf(macros_setup_vfs_i)%sf)
4960# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4961#elif defined(MFC_OpenMP)
4962# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4963!$omp target enter data map(to:dqR_prim_dy_n(i)%vf(macros_setup_vfs_i)%sf)
4964# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4965#endif
4966# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4967 end if
4968# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4969 end do
4970# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4971 end if
4972# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4973
4974# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4975#if defined(MFC_OpenACC)
4976# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4977!$acc enter data copyin(dqR_prim_dz_n(i))
4978# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4979#elif defined(MFC_OpenMP)
4980# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4981!$omp target enter data map(to:dqR_prim_dz_n(i))
4982# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4983#endif
4984# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4985
4986# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4987#if defined(MFC_OpenACC)
4988# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4989!$acc enter data copyin(dqR_prim_dz_n(i)%vf)
4990# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4991#elif defined(MFC_OpenMP)
4992# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4993!$omp target enter data map(to:dqR_prim_dz_n(i)%vf)
4994# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4995#endif
4996# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4997 if (allocated(dqr_prim_dz_n(i)%vf)) then
4998# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4999 do macros_setup_vfs_i = lbound(dqr_prim_dz_n(i)%vf, 1), ubound(dqr_prim_dz_n(i)%vf, 1)
5000# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5001 if (associated(dqr_prim_dz_n(i)%vf(macros_setup_vfs_i)%sf)) then
5002# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5003
5004# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5005#if defined(MFC_OpenACC)
5006# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5007!$acc enter data copyin(dqR_prim_dz_n(i)%vf(macros_setup_vfs_i))
5008# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5009#elif defined(MFC_OpenMP)
5010# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5011!$omp target enter data map(to:dqR_prim_dz_n(i)%vf(macros_setup_vfs_i))
5012# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5013#endif
5014# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5015
5016# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5017#if defined(MFC_OpenACC)
5018# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5019!$acc enter data copyin(dqR_prim_dz_n(i)%vf(macros_setup_vfs_i)%sf)
5020# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5021#elif defined(MFC_OpenMP)
5022# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5023!$omp target enter data map(to:dqR_prim_dz_n(i)%vf(macros_setup_vfs_i)%sf)
5024# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5025#endif
5026# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5027 end if
5028# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5029 end do
5030# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5031 end if
5032# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5033 end block
5034# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5035#endif
5036 end do
5037
5038 if (weno_re_flux) then
5039#ifdef MFC_DEBUG
5040# 394 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5041 block
5042# 394 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5043 use iso_fortran_env, only: output_unit
5044# 394 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5045
5046# 394 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5047 print *, 'm_rhs.fpp:394: ', '@:ALLOCATE(dqL_rsx_vf(idwbuff(1)%beg:idwbuff(1)%end, idwbuff(2)%beg:idwbuff(2)%end, idwbuff(3)%beg:idwbuff(3)%end, eqn_idx%mom%beg:eqn_idx%mom%end))'
5048# 394 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5049
5050# 394 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5051 call flush (output_unit)
5052# 394 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5053 end block
5054# 394 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5055#endif
5056# 394 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5057 allocate (dql_rsx_vf(idwbuff(1)%beg:idwbuff(1)%end, idwbuff(2)%beg:idwbuff(2)%end, idwbuff(3)%beg:idwbuff(3)%end, eqn_idx%mom%beg:eqn_idx%mom%end))
5058# 394 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5059
5060# 394 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5061
5062# 394 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5063#if defined(MFC_OpenACC)
5064# 394 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5065!$acc enter data create(dqL_rsx_vf)
5066# 394 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5067#elif defined(MFC_OpenMP)
5068# 394 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5069!$omp target enter data map(always,alloc:dqL_rsx_vf)
5070# 394 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5071#endif
5072# 396 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5073#ifdef MFC_DEBUG
5074# 396 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5075 block
5076# 396 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5077 use iso_fortran_env, only: output_unit
5078# 396 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5079
5080# 396 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5081 print *, 'm_rhs.fpp:396: ', '@:ALLOCATE(dqR_rsx_vf(idwbuff(1)%beg:idwbuff(1)%end, idwbuff(2)%beg:idwbuff(2)%end, idwbuff(3)%beg:idwbuff(3)%end, eqn_idx%mom%beg:eqn_idx%mom%end))'
5082# 396 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5083
5084# 396 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5085 call flush (output_unit)
5086# 396 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5087 end block
5088# 396 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5089#endif
5090# 396 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5091 allocate (dqr_rsx_vf(idwbuff(1)%beg:idwbuff(1)%end, idwbuff(2)%beg:idwbuff(2)%end, idwbuff(3)%beg:idwbuff(3)%end, eqn_idx%mom%beg:eqn_idx%mom%end))
5092# 396 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5093
5094# 396 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5095
5096# 396 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5097#if defined(MFC_OpenACC)
5098# 396 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5099!$acc enter data create(dqR_rsx_vf)
5100# 396 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5101#elif defined(MFC_OpenMP)
5102# 396 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5103!$omp target enter data map(always,alloc:dqR_rsx_vf)
5104# 396 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5105#endif
5106# 398 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5107 end if
5108 else
5109#ifdef MFC_DEBUG
5110# 400 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5111 block
5112# 400 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5113 use iso_fortran_env, only: output_unit
5114# 400 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5115
5116# 400 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5117 print *, 'm_rhs.fpp:400: ', '@:ALLOCATE(dq_prim_dx_qp(1)%vf(1:sys_size))'
5118# 400 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5119
5120# 400 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5121 call flush (output_unit)
5122# 400 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5123 end block
5124# 400 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5125#endif
5126# 400 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5127 allocate (dq_prim_dx_qp(1)%vf(1:sys_size))
5128# 400 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5129
5130# 400 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5131
5132# 400 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5133#if defined(MFC_OpenACC)
5134# 400 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5135!$acc enter data create(dq_prim_dx_qp(1)%vf)
5136# 400 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5137#elif defined(MFC_OpenMP)
5138# 400 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5139!$omp target enter data map(always,alloc:dq_prim_dx_qp(1)%vf)
5140# 400 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5141#endif
5142#ifdef MFC_DEBUG
5143# 401 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5144 block
5145# 401 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5146 use iso_fortran_env, only: output_unit
5147# 401 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5148
5149# 401 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5150 print *, 'm_rhs.fpp:401: ', '@:ALLOCATE(dq_prim_dy_qp(1)%vf(1:sys_size))'
5151# 401 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5152
5153# 401 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5154 call flush (output_unit)
5155# 401 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5156 end block
5157# 401 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5158#endif
5159# 401 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5160 allocate (dq_prim_dy_qp(1)%vf(1:sys_size))
5161# 401 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5162
5163# 401 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5164
5165# 401 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5166#if defined(MFC_OpenACC)
5167# 401 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5168!$acc enter data create(dq_prim_dy_qp(1)%vf)
5169# 401 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5170#elif defined(MFC_OpenMP)
5171# 401 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5172!$omp target enter data map(always,alloc:dq_prim_dy_qp(1)%vf)
5173# 401 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5174#endif
5175#ifdef MFC_DEBUG
5176# 402 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5177 block
5178# 402 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5179 use iso_fortran_env, only: output_unit
5180# 402 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5181
5182# 402 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5183 print *, 'm_rhs.fpp:402: ', '@:ALLOCATE(dq_prim_dz_qp(1)%vf(1:sys_size))'
5184# 402 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5185
5186# 402 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5187 call flush (output_unit)
5188# 402 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5189 end block
5190# 402 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5191#endif
5192# 402 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5193 allocate (dq_prim_dz_qp(1)%vf(1:sys_size))
5194# 402 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5195
5196# 402 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5197
5198# 402 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5199#if defined(MFC_OpenACC)
5200# 402 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5201!$acc enter data create(dq_prim_dz_qp(1)%vf)
5202# 402 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5203#elif defined(MFC_OpenMP)
5204# 402 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5205!$omp target enter data map(always,alloc:dq_prim_dz_qp(1)%vf)
5206# 402 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5207#endif
5208
5209 do l = eqn_idx%mom%beg, eqn_idx%mom%end
5210#ifdef MFC_DEBUG
5211# 405 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5212 block
5213# 405 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5214 use iso_fortran_env, only: output_unit
5215# 405 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5216
5217# 405 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5218 print *, 'm_rhs.fpp:405: ', '@:ALLOCATE(dq_prim_dx_qp(1)%vf(l)%sf(0, 0, 0))'
5219# 405 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5220
5221# 405 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5222 call flush (output_unit)
5223# 405 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5224 end block
5225# 405 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5226#endif
5227# 405 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5228 allocate (dq_prim_dx_qp(1)%vf(l)%sf(0, 0, 0))
5229# 405 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5230
5231# 405 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5232
5233# 405 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5234#if defined(MFC_OpenACC)
5235# 405 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5236!$acc enter data create(dq_prim_dx_qp(1)%vf(l)%sf)
5237# 405 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5238#elif defined(MFC_OpenMP)
5239# 405 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5240!$omp target enter data map(always,alloc:dq_prim_dx_qp(1)%vf(l)%sf)
5241# 405 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5242#endif
5243#ifdef _CRAYFTN
5244# 406 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5245 block
5246# 406 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5247 integer :: macros_setup_vfs_i
5248# 406 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5249
5250# 406 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5251#ifdef MFC_DEBUG
5252# 406 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5253 block
5254# 406 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5255 use iso_fortran_env, only: output_unit
5256# 406 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5257
5258# 406 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5259 print *, 'm_rhs.fpp:406: ', '@:ACC_SETUP_VFs(dq_prim_dx_qp(1))'
5260# 406 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5261
5262# 406 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5263 call flush (output_unit)
5264# 406 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5265 end block
5266# 406 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5267#endif
5268# 406 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5269
5270# 406 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5271
5272# 406 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5273#if defined(MFC_OpenACC)
5274# 406 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5275!$acc enter data copyin(dq_prim_dx_qp(1))
5276# 406 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5277#elif defined(MFC_OpenMP)
5278# 406 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5279!$omp target enter data map(to:dq_prim_dx_qp(1))
5280# 406 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5281#endif
5282# 406 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5283
5284# 406 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5285#if defined(MFC_OpenACC)
5286# 406 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5287!$acc enter data copyin(dq_prim_dx_qp(1)%vf)
5288# 406 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5289#elif defined(MFC_OpenMP)
5290# 406 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5291!$omp target enter data map(to:dq_prim_dx_qp(1)%vf)
5292# 406 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5293#endif
5294# 406 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5295 if (allocated(dq_prim_dx_qp(1)%vf)) then
5296# 406 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5297 do macros_setup_vfs_i = lbound(dq_prim_dx_qp(1)%vf, 1), ubound(dq_prim_dx_qp(1)%vf, 1)
5298# 406 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5299 if (associated(dq_prim_dx_qp(1)%vf(macros_setup_vfs_i)%sf)) then
5300# 406 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5301
5302# 406 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5303#if defined(MFC_OpenACC)
5304# 406 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5305!$acc enter data copyin(dq_prim_dx_qp(1)%vf(macros_setup_vfs_i))
5306# 406 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5307#elif defined(MFC_OpenMP)
5308# 406 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5309!$omp target enter data map(to:dq_prim_dx_qp(1)%vf(macros_setup_vfs_i))
5310# 406 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5311#endif
5312# 406 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5313
5314# 406 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5315#if defined(MFC_OpenACC)
5316# 406 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5317!$acc enter data copyin(dq_prim_dx_qp(1)%vf(macros_setup_vfs_i)%sf)
5318# 406 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5319#elif defined(MFC_OpenMP)
5320# 406 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5321!$omp target enter data map(to:dq_prim_dx_qp(1)%vf(macros_setup_vfs_i)%sf)
5322# 406 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5323#endif
5324# 406 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5325 end if
5326# 406 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5327 end do
5328# 406 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5329 end if
5330# 406 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5331 end block
5332# 406 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5333#endif
5334 if (n > 0) then
5335#ifdef MFC_DEBUG
5336# 408 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5337 block
5338# 408 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5339 use iso_fortran_env, only: output_unit
5340# 408 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5341
5342# 408 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5343 print *, 'm_rhs.fpp:408: ', '@:ALLOCATE(dq_prim_dy_qp(1)%vf(l)%sf(0, 0, 0))'
5344# 408 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5345
5346# 408 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5347 call flush (output_unit)
5348# 408 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5349 end block
5350# 408 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5351#endif
5352# 408 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5353 allocate (dq_prim_dy_qp(1)%vf(l)%sf(0, 0, 0))
5354# 408 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5355
5356# 408 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5357
5358# 408 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5359#if defined(MFC_OpenACC)
5360# 408 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5361!$acc enter data create(dq_prim_dy_qp(1)%vf(l)%sf)
5362# 408 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5363#elif defined(MFC_OpenMP)
5364# 408 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5365!$omp target enter data map(always,alloc:dq_prim_dy_qp(1)%vf(l)%sf)
5366# 408 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5367#endif
5368#ifdef _CRAYFTN
5369# 409 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5370 block
5371# 409 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5372 integer :: macros_setup_vfs_i
5373# 409 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5374
5375# 409 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5376#ifdef MFC_DEBUG
5377# 409 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5378 block
5379# 409 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5380 use iso_fortran_env, only: output_unit
5381# 409 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5382
5383# 409 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5384 print *, 'm_rhs.fpp:409: ', '@:ACC_SETUP_VFs(dq_prim_dy_qp(1))'
5385# 409 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5386
5387# 409 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5388 call flush (output_unit)
5389# 409 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5390 end block
5391# 409 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5392#endif
5393# 409 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5394
5395# 409 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5396
5397# 409 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5398#if defined(MFC_OpenACC)
5399# 409 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5400!$acc enter data copyin(dq_prim_dy_qp(1))
5401# 409 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5402#elif defined(MFC_OpenMP)
5403# 409 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5404!$omp target enter data map(to:dq_prim_dy_qp(1))
5405# 409 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5406#endif
5407# 409 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5408
5409# 409 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5410#if defined(MFC_OpenACC)
5411# 409 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5412!$acc enter data copyin(dq_prim_dy_qp(1)%vf)
5413# 409 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5414#elif defined(MFC_OpenMP)
5415# 409 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5416!$omp target enter data map(to:dq_prim_dy_qp(1)%vf)
5417# 409 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5418#endif
5419# 409 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5420 if (allocated(dq_prim_dy_qp(1)%vf)) then
5421# 409 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5422 do macros_setup_vfs_i = lbound(dq_prim_dy_qp(1)%vf, 1), ubound(dq_prim_dy_qp(1)%vf, 1)
5423# 409 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5424 if (associated(dq_prim_dy_qp(1)%vf(macros_setup_vfs_i)%sf)) then
5425# 409 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5426
5427# 409 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5428#if defined(MFC_OpenACC)
5429# 409 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5430!$acc enter data copyin(dq_prim_dy_qp(1)%vf(macros_setup_vfs_i))
5431# 409 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5432#elif defined(MFC_OpenMP)
5433# 409 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5434!$omp target enter data map(to:dq_prim_dy_qp(1)%vf(macros_setup_vfs_i))
5435# 409 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5436#endif
5437# 409 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5438
5439# 409 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5440#if defined(MFC_OpenACC)
5441# 409 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5442!$acc enter data copyin(dq_prim_dy_qp(1)%vf(macros_setup_vfs_i)%sf)
5443# 409 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5444#elif defined(MFC_OpenMP)
5445# 409 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5446!$omp target enter data map(to:dq_prim_dy_qp(1)%vf(macros_setup_vfs_i)%sf)
5447# 409 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5448#endif
5449# 409 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5450 end if
5451# 409 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5452 end do
5453# 409 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5454 end if
5455# 409 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5456 end block
5457# 409 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5458#endif
5459 if (p > 0) then
5460#ifdef MFC_DEBUG
5461# 411 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5462 block
5463# 411 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5464 use iso_fortran_env, only: output_unit
5465# 411 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5466
5467# 411 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5468 print *, 'm_rhs.fpp:411: ', '@:ALLOCATE(dq_prim_dz_qp(1)%vf(l)%sf(0, 0, 0))'
5469# 411 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5470
5471# 411 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5472 call flush (output_unit)
5473# 411 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5474 end block
5475# 411 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5476#endif
5477# 411 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5478 allocate (dq_prim_dz_qp(1)%vf(l)%sf(0, 0, 0))
5479# 411 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5480
5481# 411 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5482
5483# 411 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5484#if defined(MFC_OpenACC)
5485# 411 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5486!$acc enter data create(dq_prim_dz_qp(1)%vf(l)%sf)
5487# 411 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5488#elif defined(MFC_OpenMP)
5489# 411 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5490!$omp target enter data map(always,alloc:dq_prim_dz_qp(1)%vf(l)%sf)
5491# 411 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5492#endif
5493#ifdef _CRAYFTN
5494# 412 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5495 block
5496# 412 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5497 integer :: macros_setup_vfs_i
5498# 412 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5499
5500# 412 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5501#ifdef MFC_DEBUG
5502# 412 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5503 block
5504# 412 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5505 use iso_fortran_env, only: output_unit
5506# 412 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5507
5508# 412 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5509 print *, 'm_rhs.fpp:412: ', '@:ACC_SETUP_VFs(dq_prim_dz_qp(1))'
5510# 412 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5511
5512# 412 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5513 call flush (output_unit)
5514# 412 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5515 end block
5516# 412 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5517#endif
5518# 412 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5519
5520# 412 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5521
5522# 412 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5523#if defined(MFC_OpenACC)
5524# 412 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5525!$acc enter data copyin(dq_prim_dz_qp(1))
5526# 412 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5527#elif defined(MFC_OpenMP)
5528# 412 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5529!$omp target enter data map(to:dq_prim_dz_qp(1))
5530# 412 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5531#endif
5532# 412 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5533
5534# 412 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5535#if defined(MFC_OpenACC)
5536# 412 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5537!$acc enter data copyin(dq_prim_dz_qp(1)%vf)
5538# 412 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5539#elif defined(MFC_OpenMP)
5540# 412 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5541!$omp target enter data map(to:dq_prim_dz_qp(1)%vf)
5542# 412 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5543#endif
5544# 412 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5545 if (allocated(dq_prim_dz_qp(1)%vf)) then
5546# 412 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5547 do macros_setup_vfs_i = lbound(dq_prim_dz_qp(1)%vf, 1), ubound(dq_prim_dz_qp(1)%vf, 1)
5548# 412 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5549 if (associated(dq_prim_dz_qp(1)%vf(macros_setup_vfs_i)%sf)) then
5550# 412 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5551
5552# 412 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5553#if defined(MFC_OpenACC)
5554# 412 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5555!$acc enter data copyin(dq_prim_dz_qp(1)%vf(macros_setup_vfs_i))
5556# 412 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5557#elif defined(MFC_OpenMP)
5558# 412 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5559!$omp target enter data map(to:dq_prim_dz_qp(1)%vf(macros_setup_vfs_i))
5560# 412 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5561#endif
5562# 412 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5563
5564# 412 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5565#if defined(MFC_OpenACC)
5566# 412 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5567!$acc enter data copyin(dq_prim_dz_qp(1)%vf(macros_setup_vfs_i)%sf)
5568# 412 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5569#elif defined(MFC_OpenMP)
5570# 412 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5571!$omp target enter data map(to:dq_prim_dz_qp(1)%vf(macros_setup_vfs_i)%sf)
5572# 412 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5573#endif
5574# 412 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5575 end if
5576# 412 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5577 end do
5578# 412 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5579 end if
5580# 412 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5581 end block
5582# 412 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5583#endif
5584 end if
5585 end if
5586 end do
5587 end if
5588
5589
5590# 418 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5591
5592# 418 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5593#if defined(MFC_OpenACC)
5594# 418 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5595!$acc parallel loop collapse(4) gang vector default(present) private(i, j, k, l, id)
5596# 418 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5597#elif defined(MFC_OpenMP)
5598# 418 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5599
5600# 418 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5601
5602# 418 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5603
5604# 418 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5605!$omp target teams loop defaultmap(firstprivate:scalar) bind(teams,parallel) collapse(4) defaultmap(tofrom:aggregate) defaultmap(tofrom:allocatable) defaultmap(tofrom:pointer) private(i, j, k, l, id)
5606# 418 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5607#endif
5608 do id = 1, num_dims
5609 do i = 1, sys_size
5610 do l = idwbuff(3)%beg, idwbuff(3)%end
5611 do k = idwbuff(2)%beg, idwbuff(2)%end
5612 do j = idwbuff(1)%beg, idwbuff(1)%end
5613 flux_gsrc_n(id)%vf(i)%sf(j, k, l) = 0._wp
5614 end do
5615 end do
5616 end do
5617 end do
5618 end do
5619
5620# 430 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5621#if defined(MFC_OpenACC)
5622# 430 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5623!$acc end parallel loop
5624# 430 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5625#elif defined(MFC_OpenMP)
5626# 430 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5627
5628# 430 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5629!$omp end target teams loop
5630# 430 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5631#endif
5632 end if
5633
5634 if (qbmm) then
5635#ifdef MFC_DEBUG
5636# 434 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5637 block
5638# 434 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5639 use iso_fortran_env, only: output_unit
5640# 434 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5641
5642# 434 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5643 print *, 'm_rhs.fpp:434: ', '@:ALLOCATE(mom_sp(1:nmomsp), mom_3d(0:2, 0:2, nb))'
5644# 434 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5645
5646# 434 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5647 call flush (output_unit)
5648# 434 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5649 end block
5650# 434 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5651#endif
5652# 434 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5653 allocate (mom_sp(1:nmomsp), mom_3d(0:2, 0:2, nb))
5654# 434 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5655
5656# 434 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5657
5658# 434 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5659
5660# 434 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5661#if defined(MFC_OpenACC)
5662# 434 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5663!$acc enter data create(mom_sp, mom_3d)
5664# 434 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5665#elif defined(MFC_OpenMP)
5666# 434 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5667!$omp target enter data map(always,alloc:mom_sp, mom_3d)
5668# 434 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5669#endif
5670
5671 do i = 0, 2
5672 do j = 0, 2
5673 do k = 1, nb
5674#ifdef MFC_DEBUG
5675# 439 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5676 block
5677# 439 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5678 use iso_fortran_env, only: output_unit
5679# 439 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5680
5681# 439 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5682 print *, 'm_rhs.fpp:439: ', '@:ALLOCATE(mom_3d(i, j, k)%sf(idwbuff(1)%beg:idwbuff(1)%end, idwbuff(2)%beg:idwbuff(2)%end, idwbuff(3)%beg:idwbuff(3)%end))'
5683# 439 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5684
5685# 439 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5686 call flush (output_unit)
5687# 439 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5688 end block
5689# 439 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5690#endif
5691# 439 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5692 allocate (mom_3d(i, j, k)%sf(idwbuff(1)%beg:idwbuff(1)%end, idwbuff(2)%beg:idwbuff(2)%end, idwbuff(3)%beg:idwbuff(3)%end))
5693# 439 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5694
5695# 439 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5696
5697# 439 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5698#if defined(MFC_OpenACC)
5699# 439 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5700!$acc enter data create(mom_3d(i, j, k)%sf)
5701# 439 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5702#elif defined(MFC_OpenMP)
5703# 439 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5704!$omp target enter data map(always,alloc:mom_3d(i, j, k)%sf)
5705# 439 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5706#endif
5707# 441 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5708#ifdef _CRAYFTN
5709# 441 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5710 block
5711# 441 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5712#ifdef MFC_DEBUG
5713# 441 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5714 block
5715# 441 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5716 use iso_fortran_env, only: output_unit
5717# 441 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5718
5719# 441 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5720 print *, 'm_rhs.fpp:441: ', '@:ACC_SETUP_SFs(mom_3d(i, j, k))'
5721# 441 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5722
5723# 441 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5724 call flush (output_unit)
5725# 441 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5726 end block
5727# 441 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5728#endif
5729# 441 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5730
5731# 441 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5732
5733# 441 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5734#if defined(MFC_OpenACC)
5735# 441 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5736!$acc enter data copyin(mom_3d(i, j, k))
5737# 441 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5738#elif defined(MFC_OpenMP)
5739# 441 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5740!$omp target enter data map(to:mom_3d(i, j, k))
5741# 441 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5742#endif
5743# 441 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5744 if (associated(mom_3d(i, j, k)%sf)) then
5745# 441 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5746
5747# 441 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5748#if defined(MFC_OpenACC)
5749# 441 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5750!$acc enter data copyin(mom_3d(i, j, k)%sf)
5751# 441 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5752#elif defined(MFC_OpenMP)
5753# 441 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5754!$omp target enter data map(to:mom_3d(i, j, k)%sf)
5755# 441 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5756#endif
5757# 441 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5758 end if
5759# 441 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5760 end block
5761# 441 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5762#endif
5763 end do
5764 end do
5765 end do
5766
5767 do i = 1, nmomsp
5768#ifdef MFC_DEBUG
5769# 447 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5770 block
5771# 447 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5772 use iso_fortran_env, only: output_unit
5773# 447 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5774
5775# 447 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5776 print *, 'm_rhs.fpp:447: ', '@:ALLOCATE(mom_sp(i)%sf(idwbuff(1)%beg:idwbuff(1)%end, idwbuff(2)%beg:idwbuff(2)%end, idwbuff(3)%beg:idwbuff(3)%end))'
5777# 447 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5778
5779# 447 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5780 call flush (output_unit)
5781# 447 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5782 end block
5783# 447 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5784#endif
5785# 447 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5786 allocate (mom_sp(i)%sf(idwbuff(1)%beg:idwbuff(1)%end, idwbuff(2)%beg:idwbuff(2)%end, idwbuff(3)%beg:idwbuff(3)%end))
5787# 447 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5788
5789# 447 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5790
5791# 447 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5792#if defined(MFC_OpenACC)
5793# 447 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5794!$acc enter data create(mom_sp(i)%sf)
5795# 447 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5796#elif defined(MFC_OpenMP)
5797# 447 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5798!$omp target enter data map(always,alloc:mom_sp(i)%sf)
5799# 447 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5800#endif
5801# 449 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5802#ifdef _CRAYFTN
5803# 449 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5804 block
5805# 449 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5806#ifdef MFC_DEBUG
5807# 449 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5808 block
5809# 449 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5810 use iso_fortran_env, only: output_unit
5811# 449 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5812
5813# 449 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5814 print *, 'm_rhs.fpp:449: ', '@:ACC_SETUP_SFs(mom_sp(i))'
5815# 449 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5816
5817# 449 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5818 call flush (output_unit)
5819# 449 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5820 end block
5821# 449 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5822#endif
5823# 449 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5824
5825# 449 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5826
5827# 449 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5828#if defined(MFC_OpenACC)
5829# 449 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5830!$acc enter data copyin(mom_sp(i))
5831# 449 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5832#elif defined(MFC_OpenMP)
5833# 449 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5834!$omp target enter data map(to:mom_sp(i))
5835# 449 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5836#endif
5837# 449 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5838 if (associated(mom_sp(i)%sf)) then
5839# 449 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5840
5841# 449 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5842#if defined(MFC_OpenACC)
5843# 449 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5844!$acc enter data copyin(mom_sp(i)%sf)
5845# 449 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5846#elif defined(MFC_OpenMP)
5847# 449 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5848!$omp target enter data map(to:mom_sp(i)%sf)
5849# 449 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5850#endif
5851# 449 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5852 end if
5853# 449 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5854 end block
5855# 449 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5856#endif
5857 end do
5858 end if
5859
5860 if (mpp_lim .and. bubbles_euler) then
5861#ifdef MFC_DEBUG
5862# 454 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5863 block
5864# 454 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5865 use iso_fortran_env, only: output_unit
5866# 454 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5867
5868# 454 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5869 print *, 'm_rhs.fpp:454: ', '@:ALLOCATE(alf_sum%sf(idwbuff(1)%beg:idwbuff(1)%end, idwbuff(2)%beg:idwbuff(2)%end, idwbuff(3)%beg:idwbuff(3)%end))'
5870# 454 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5871
5872# 454 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5873 call flush (output_unit)
5874# 454 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5875 end block
5876# 454 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5877#endif
5878# 454 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5879 allocate (alf_sum%sf(idwbuff(1)%beg:idwbuff(1)%end, idwbuff(2)%beg:idwbuff(2)%end, idwbuff(3)%beg:idwbuff(3)%end))
5880# 454 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5881
5882# 454 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5883
5884# 454 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5885#if defined(MFC_OpenACC)
5886# 454 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5887!$acc enter data create(alf_sum%sf)
5888# 454 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5889#elif defined(MFC_OpenMP)
5890# 454 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5891!$omp target enter data map(always,alloc:alf_sum%sf)
5892# 454 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5893#endif
5894 end if
5895 if (alt_soundspeed) then
5896#ifdef MFC_DEBUG
5897# 457 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5898 block
5899# 457 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5900 use iso_fortran_env, only: output_unit
5901# 457 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5902
5903# 457 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5904 print *, 'm_rhs.fpp:457: ', '@:ALLOCATE(blkmod1(0:m, 0:n, 0:p), blkmod2(0:m, 0:n, 0:p), alpha1(0:m, 0:n, 0:p), alpha2(0:m, 0:n, 0:p), Kterm(0:m, 0:n, 0:p))'
5905# 457 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5906
5907# 457 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5908 call flush (output_unit)
5909# 457 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5910 end block
5911# 457 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5912#endif
5913# 457 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5914 allocate (blkmod1(0:m, 0:n, 0:p), blkmod2(0:m, 0:n, 0:p), alpha1(0:m, 0:n, 0:p), alpha2(0:m, 0:n, 0:p), kterm(0:m, 0:n, 0:p))
5915# 457 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5916
5917# 457 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5918
5919# 457 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5920
5921# 457 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5922
5923# 457 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5924
5925# 457 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5926
5927# 457 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5928#if defined(MFC_OpenACC)
5929# 457 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5930!$acc enter data create(blkmod1, blkmod2, alpha1, alpha2, Kterm)
5931# 457 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5932#elif defined(MFC_OpenMP)
5933# 457 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5934!$omp target enter data map(always,alloc:blkmod1, blkmod2, alpha1, alpha2, Kterm)
5935# 457 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5936#endif
5937# 459 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5938 end if
5939
5940 call s_initialize_pressure_relaxation_module
5941
5942 end subroutine s_initialize_rhs_module
5943
5944 !> Compute the right-hand side of the semi-discrete governing equations for a single time stage
5945 impure subroutine s_compute_rhs(q_cons_vf, q_T_sf, q_prim_vf, bc_type, rhs_vf, pb_in, rhs_pb, mv_in, rhs_mv, t_step, &
5946 & time_avg, stage)
5947
5948 type(scalar_field), dimension(sys_size), intent(inout) :: q_cons_vf
5949 type(scalar_field), intent(inout) :: q_t_sf
5950 type(scalar_field), dimension(sys_size), intent(inout) :: q_prim_vf
5951 type(integer_field), dimension(1:num_dims,1:2), intent(in) :: bc_type
5952 type(scalar_field), dimension(sys_size), intent(inout) :: rhs_vf
5953 real(stp), dimension(idwbuff(1)%beg:,idwbuff(2)%beg:,idwbuff(3)%beg:,1:,1:), intent(inout) :: pb_in
5954
5955 ! TODO :: I think these other two variables need to be stp as well, but it doesn't compile like that right now
5956 real(wp), dimension(idwbuff(1)%beg:,idwbuff(2)%beg:,idwbuff(3)%beg:,1:,1:), intent(inout) :: rhs_pb
5957 real(stp), dimension(idwbuff(1)%beg:,idwbuff(2)%beg:,idwbuff(3)%beg:,1:,1:), intent(inout) :: mv_in
5958 real(wp), dimension(idwbuff(1)%beg:,idwbuff(2)%beg:,idwbuff(3)%beg:,1:,1:), intent(inout) :: rhs_mv
5959 integer, intent(in) :: t_step
5960 real(wp), intent(inout) :: time_avg
5961 integer, intent(in) :: stage
5962 real(wp) :: t_start, t_finish
5963 integer :: id
5964 integer(kind=8) :: i, j, k, l, q !< Generic loop iterators
5965
5966 ! RHS: halo exchange -> reconstruct -> Riemann solve -> flux difference -> source terms
5967
5968 call nvtxstartrange("COMPUTE-RHS")
5969
5970 call cpu_time(t_start)
5971
5972 if (.not. igr) then
5973 ! Association/Population of Working Variables
5974
5975# 495 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5976
5977# 495 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5978#if defined(MFC_OpenACC)
5979# 495 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5980!$acc parallel loop collapse(4) gang vector default(present) private(i, j, k, l)
5981# 495 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5982#elif defined(MFC_OpenMP)
5983# 495 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5984
5985# 495 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5986
5987# 495 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5988
5989# 495 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5990!$omp target teams loop defaultmap(firstprivate:scalar) bind(teams,parallel) collapse(4) defaultmap(tofrom:aggregate) defaultmap(tofrom:allocatable) defaultmap(tofrom:pointer) private(i, j, k, l)
5991# 495 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5992#endif
5993 do i = 1, sys_size
5994 do l = idwbuff(3)%beg, idwbuff(3)%end
5995 do k = idwbuff(2)%beg, idwbuff(2)%end
5996 do j = idwbuff(1)%beg, idwbuff(1)%end
5997 q_cons_qp%vf(i)%sf(j, k, l) = q_cons_vf(i)%sf(j, k, l)
5998 end do
5999 end do
6000 end do
6001 end do
6002
6003# 505 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6004#if defined(MFC_OpenACC)
6005# 505 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6006!$acc end parallel loop
6007# 505 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6008#elif defined(MFC_OpenMP)
6009# 505 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6010
6011# 505 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6012!$omp end target teams loop
6013# 505 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6014#endif
6015
6016 ! Converting Conservative to Primitive Variables
6017
6018 if (mpp_lim .and. bubbles_euler) then
6019
6020# 510 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6021
6022# 510 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6023#if defined(MFC_OpenACC)
6024# 510 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6025!$acc parallel loop collapse(3) gang vector default(present) private(j, k, l)
6026# 510 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6027#elif defined(MFC_OpenMP)
6028# 510 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6029
6030# 510 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6031
6032# 510 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6033
6034# 510 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6035!$omp target teams loop defaultmap(firstprivate:scalar) bind(teams,parallel) collapse(3) defaultmap(tofrom:aggregate) defaultmap(tofrom:allocatable) defaultmap(tofrom:pointer) private(j, k, l)
6036# 510 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6037#endif
6038 do l = idwbuff(3)%beg, idwbuff(3)%end
6039 do k = idwbuff(2)%beg, idwbuff(2)%end
6040 do j = idwbuff(1)%beg, idwbuff(1)%end
6041 alf_sum%sf(j, k, l) = 0._wp
6042
6043# 515 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6044#if defined(MFC_OpenACC)
6045# 515 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6046!$acc loop seq
6047# 515 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6048#elif defined(MFC_OpenMP)
6049# 515 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6050
6051# 515 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6052#endif
6053 do i = eqn_idx%adv%beg, eqn_idx%adv%end - 1
6054 alf_sum%sf(j, k, l) = alf_sum%sf(j, k, l) + q_cons_qp%vf(i)%sf(j, k, l)
6055 end do
6056
6057# 519 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6058#if defined(MFC_OpenACC)
6059# 519 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6060!$acc loop seq
6061# 519 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6062#elif defined(MFC_OpenMP)
6063# 519 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6064
6065# 519 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6066#endif
6067 do i = eqn_idx%adv%beg, eqn_idx%adv%end - 1
6068 q_cons_qp%vf(i)%sf(j, k, l) = q_cons_qp%vf(i)%sf(j, k, &
6069 & l)*(1._wp - q_cons_qp%vf(eqn_idx%alf)%sf(j, k, l))/alf_sum%sf(j, k, l)
6070 end do
6071 end do
6072 end do
6073 end do
6074
6075# 527 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6076#if defined(MFC_OpenACC)
6077# 527 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6078!$acc end parallel loop
6079# 527 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6080#elif defined(MFC_OpenMP)
6081# 527 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6082
6083# 527 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6084!$omp end target teams loop
6085# 527 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6086#endif
6087 end if
6088 end if
6089
6090 if (igr) then
6091 call nvtxstartrange("RHS-COMMUNICATION")
6092 call s_populate_variables_buffers(bc_type, q_cons_vf, pb_in, mv_in, q_t_sf)
6093 call nvtxendrange
6094 end if
6095 if (.not. igr) then
6096 call nvtxstartrange("RHS-CONVERT")
6097 call s_convert_conservative_to_primitive_variables(q_cons_qp%vf, q_t_sf, q_prim_qp%vf, idwint)
6098 call nvtxendrange
6099
6100 call nvtxstartrange("RHS-COMMUNICATION")
6101 call s_populate_variables_buffers(bc_type, q_prim_qp%vf, pb_in, mv_in, q_t_sf)
6102 call nvtxendrange
6103 end if
6104
6105 call nvtxstartrange("RHS-ELASTIC")
6106 if (hyperelasticity) call s_hyperelastic_rmt_stress_update(q_cons_qp%vf, q_prim_qp%vf)
6107 call nvtxendrange
6108
6109 if (cfl_dt) then
6110 if (mytime >= t_stop) return
6111 else
6112 if (t_step == t_step_stop) return
6113 end if
6114
6115 if (qbmm) call s_mom_inv(q_cons_qp%vf, q_prim_qp%vf, mom_sp, mom_3d, pb_in, rhs_pb, mv_in, rhs_mv, idwbuff(1), &
6116 & idwbuff(2), idwbuff(3))
6117
6118 if ((viscous .and. .not. igr)) then
6119 call nvtxstartrange("RHS-VISCOUS")
6122 & idwbuff(1), idwbuff(2), idwbuff(3))
6123 call nvtxendrange
6124 end if
6125
6126 if (surface_tension) then
6127 call nvtxstartrange("RHS-SURFACE-TENSION")
6128 call s_get_capillary(q_prim_qp%vf, bc_type)
6129 call nvtxendrange
6130 end if
6131
6132 if (int_comp == int_comp_mthinc .and. n > 0) then
6133 call nvtxstartrange("RHS-COMPRESSION-NORMALS")
6134 call s_compute_mthinc_normals(q_prim_qp%vf)
6135 call nvtxendrange
6136 end if
6137
6138 ! Loop over coordinate directions for dimensional splitting
6139 do id = 1, num_dims
6140 if (igr) then
6141 if (id == 1) then
6142
6143# 583 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6144
6145# 583 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6146#if defined(MFC_OpenACC)
6147# 583 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6148!$acc parallel loop collapse(4) gang vector default(present) private(i, j, k, l)
6149# 583 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6150#elif defined(MFC_OpenMP)
6151# 583 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6152
6153# 583 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6154
6155# 583 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6156
6157# 583 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6158!$omp target teams loop defaultmap(firstprivate:scalar) bind(teams,parallel) collapse(4) defaultmap(tofrom:aggregate) defaultmap(tofrom:allocatable) defaultmap(tofrom:pointer) private(i, j, k, l)
6159# 583 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6160#endif
6161 do l = -1, p + 1
6162 do k = -1, n + 1
6163 do j = -1, m + 1
6164 do i = 1, sys_size
6165 rhs_vf(i)%sf(j, k, l) = 0._stp
6166 end do
6167 end do
6168 end do
6169 end do
6170
6171# 593 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6172#if defined(MFC_OpenACC)
6173# 593 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6174!$acc end parallel loop
6175# 593 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6176#elif defined(MFC_OpenMP)
6177# 593 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6178
6179# 593 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6180!$omp end target teams loop
6181# 593 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6182#endif
6183 end if
6184
6185 call nvtxstartrange("IGR_RIEMANN")
6186 call s_igr_riemann_solver(q_cons_vf, rhs_vf, id)
6187 call nvtxendrange
6188
6189 if (id == 1) then
6190 call nvtxstartrange("IGR_Jacobi")
6191 call s_igr_iterative_solve(q_cons_vf, bc_type, t_step)
6192 call nvtxendrange
6193
6194 call nvtxstartrange("IGR_SIGMA")
6195 call s_igr_sigma_x(q_cons_vf, rhs_vf)
6196 call nvtxendrange
6197 end if
6198 end if
6199 if (.not. igr) then
6200 ! Reconstructing Primitive/Conservative Variables
6201 call nvtxstartrange("RHS-RECONSTRUCTION")
6202
6203 if (.not. surface_tension) then
6204 if ((.not. weno_re_flux) .or. int_comp > 0) then
6205 ! Reconstruct densitiess
6206 iv%beg = 1; iv%end = sys_size
6208 else
6209 iv%beg = 1; iv%end = eqn_idx%cont%end
6211
6212 iv%beg = eqn_idx%mom%beg; iv%end = eqn_idx%mom%end; iglob = id
6213
6214# 624 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6215#if defined(MFC_OpenACC)
6216# 624 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6217!$acc update device(iv, iglob)
6218# 624 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6219#elif defined(MFC_OpenMP)
6220# 624 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6221!$omp target update to(iv, iglob)
6222# 624 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6223#endif
6224
6225
6226# 626 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6227
6228# 626 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6229#if defined(MFC_OpenACC)
6230# 626 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6231!$acc parallel loop collapse(4) gang vector default(present) private(i, j, k, l)
6232# 626 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6233#elif defined(MFC_OpenMP)
6234# 626 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6235
6236# 626 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6237
6238# 626 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6239
6240# 626 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6241!$omp target teams loop defaultmap(firstprivate:scalar) bind(teams,parallel) collapse(4) defaultmap(tofrom:aggregate) defaultmap(tofrom:allocatable) defaultmap(tofrom:pointer) private(i, j, k, l)
6242# 626 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6243#endif
6244 do i = iv%beg, iv%end
6245 do l = idwbuff(3)%beg, idwbuff(3)%end
6246 do k = idwbuff(2)%beg, idwbuff(2)%end
6247 do j = idwbuff(1)%beg, idwbuff(1)%end
6248 ql_rsx_vf(j, k, l, i) = ql_prim(iglob)%vf(i)%sf(j, k, l)
6249 qr_rsx_vf(j, k, l, i) = qr_prim(iglob)%vf(i)%sf(j, k, l)
6250 end do
6251 end do
6252 end do
6253 end do
6254
6255# 637 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6256#if defined(MFC_OpenACC)
6257# 637 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6258!$acc end parallel loop
6259# 637 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6260#elif defined(MFC_OpenMP)
6261# 637 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6262
6263# 637 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6264!$omp end target teams loop
6265# 637 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6266#endif
6267
6268 iv%beg = eqn_idx%E; iv%end = sys_size
6270 end if
6271 else
6272 if (int_comp > 0) then
6273 ! THINC reads cont and adv from v_rs_ws; must reconstruct full sys_size range to populate both
6274 iv%beg = 1; iv%end = sys_size
6276 ! Surface tension requires first-order energy; overwrite the higher-order result from the full pass above
6277 iv%beg = eqn_idx%E; iv%end = eqn_idx%E
6279 else if ((.not. weno_re_flux)) then
6280 iv%beg = 1; iv%end = eqn_idx%E - 1
6282
6283 iv%beg = eqn_idx%E; iv%end = eqn_idx%E
6285
6286 iv%beg = eqn_idx%E + 1; iv%end = sys_size
6288 else
6289 iv%beg = 1; iv%end = eqn_idx%cont%end
6291
6292 iv%beg = eqn_idx%mom%beg; iv%end = eqn_idx%mom%end; iglob = id
6293
6294# 664 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6295#if defined(MFC_OpenACC)
6296# 664 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6297!$acc update device(iv, iglob)
6298# 664 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6299#elif defined(MFC_OpenMP)
6300# 664 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6301!$omp target update to(iv, iglob)
6302# 664 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6303#endif
6304
6305
6306# 666 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6307
6308# 666 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6309#if defined(MFC_OpenACC)
6310# 666 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6311!$acc parallel loop collapse(4) gang vector default(present) private(i, j, k, l)
6312# 666 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6313#elif defined(MFC_OpenMP)
6314# 666 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6315
6316# 666 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6317
6318# 666 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6319
6320# 666 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6321!$omp target teams loop defaultmap(firstprivate:scalar) bind(teams,parallel) collapse(4) defaultmap(tofrom:aggregate) defaultmap(tofrom:allocatable) defaultmap(tofrom:pointer) private(i, j, k, l)
6322# 666 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6323#endif
6324 do i = iv%beg, iv%end
6325 do l = idwbuff(3)%beg, idwbuff(3)%end
6326 do k = idwbuff(2)%beg, idwbuff(2)%end
6327 do j = idwbuff(1)%beg, idwbuff(1)%end
6328 ql_rsx_vf(j, k, l, i) = ql_prim(iglob)%vf(i)%sf(j, k, l)
6329 qr_rsx_vf(j, k, l, i) = qr_prim(iglob)%vf(i)%sf(j, k, l)
6330 end do
6331 end do
6332 end do
6333 end do
6334
6335# 677 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6336#if defined(MFC_OpenACC)
6337# 677 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6338!$acc end parallel loop
6339# 677 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6340#elif defined(MFC_OpenMP)
6341# 677 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6342
6343# 677 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6344!$omp end target teams loop
6345# 677 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6346#endif
6347
6348 iv%beg = eqn_idx%E; iv%end = eqn_idx%E
6350
6351 iv%beg = eqn_idx%E + 1; iv%end = sys_size
6353 end if
6354 end if
6355
6356 ! Reconstruct viscous derivatives for viscosity
6357 if (weno_re_flux) then
6358 iv%beg = eqn_idx%mom%beg; iv%end = eqn_idx%mom%end
6359 call s_reconstruct_cell_boundary_values_visc_deriv(dq_prim_dx_qp(1)%vf(iv%beg:iv%end), dql_rsx_vf, &
6360 & dqr_rsx_vf, id, dql_prim_dx_n(id)%vf(iv%beg:iv%end), dqr_prim_dx_n(id)%vf(iv%beg:iv%end), idwbuff(1), &
6361 & idwbuff(2), idwbuff(3))
6362 if (n > 0) then
6363 call s_reconstruct_cell_boundary_values_visc_deriv(dq_prim_dy_qp(1)%vf(iv%beg:iv%end), dql_rsx_vf, &
6364 & dqr_rsx_vf, id, dql_prim_dy_n(id)%vf(iv%beg:iv%end), dqr_prim_dy_n(id)%vf(iv%beg:iv%end), &
6365 & idwbuff(1), idwbuff(2), idwbuff(3))
6366 if (p > 0) then
6367 call s_reconstruct_cell_boundary_values_visc_deriv(dq_prim_dz_qp(1)%vf(iv%beg:iv%end), dql_rsx_vf, &
6368 & dqr_rsx_vf, id, dql_prim_dz_n(id)%vf(iv%beg:iv%end), dqr_prim_dz_n(id)%vf(iv%beg:iv%end), &
6369 & idwbuff(1), idwbuff(2), idwbuff(3))
6370 end if
6371 end if
6372 end if
6373
6374 call nvtxendrange
6375
6376 ! Configuring Coordinate Direction Indexes
6377 if (id == 1) then
6378 irx%beg = -1; iry%beg = 0; irz%beg = 0
6379 else if (id == 2) then
6380 irx%beg = 0; iry%beg = -1; irz%beg = 0
6381 else
6382 irx%beg = 0; iry%beg = 0; irz%beg = -1
6383 end if
6384 irx%end = m; iry%end = n; irz%end = p
6385
6386 ! Computing Riemann Solver Flux and Source Flux
6387 call nvtxstartrange("RHS-RIEMANN-SOLVER")
6388 call s_riemann_solver(qr_rsx_vf, dqr_prim_dx_n(id)%vf, dqr_prim_dy_n(id)%vf, dqr_prim_dz_n(id)%vf, &
6389 & qr_prim(id)%vf, ql_rsx_vf, dql_prim_dx_n(id)%vf, dql_prim_dy_n(id)%vf, &
6390 & dql_prim_dz_n(id)%vf, ql_prim(id)%vf, q_prim_qp%vf, flux_n(id)%vf, flux_src_n(id)%vf, &
6391 & flux_gsrc_n(id)%vf, id, irx, iry, irz)
6392 call nvtxendrange
6393
6394 ! Additional physics and source terms RHS addition for advection source
6395 call nvtxstartrange("RHS-ADVECTION-SRC")
6397 call nvtxendrange
6398
6399 ! RHS additions for hypoelasticity
6400 call nvtxstartrange("RHS-HYPOELASTICITY")
6401 if (hypoelasticity) call s_compute_hypoelastic_rhs(id, q_prim_qp%vf, rhs_vf)
6402 call nvtxendrange
6403
6404 ! RHS for diffusion
6405 if (chemistry .and. chem_params%diffusion) then
6406 call nvtxstartrange("RHS-CHEM-DIFFUSION")
6407 call s_compute_chemistry_diffusion_flux(id, q_prim_qp%vf, flux_src_n(id)%vf, irx, iry, irz, q_t_sf)
6408 call nvtxendrange
6409 end if
6410
6411 ! Viscous stress contribution to RHS
6412 if (viscous .or. surface_tension .or. chem_params%diffusion) then
6413 call nvtxstartrange("RHS-ADD-PHYSICS")
6414 call s_compute_additional_physics_rhs(id, q_prim_qp%vf, rhs_vf, flux_src_n(id)%vf, dq_prim_dx_qp(1)%vf, &
6415 & dq_prim_dy_qp(1)%vf, dq_prim_dz_qp(1)%vf)
6416 call nvtxendrange
6417 end if
6418
6419 ! Bubble dynamics source terms
6420 if (bubbles_euler) then
6421 call nvtxstartrange("RHS-BUBBLES-COMPUTE")
6422 call s_compute_bubbles_ee_rhs(id, q_prim_qp%vf, divu)
6423 call nvtxendrange
6424 end if
6425
6426 ! RHS additions for qbmm bubbles
6427 if (qbmm) then
6428 call nvtxstartrange("RHS-QBMM")
6429 call s_compute_qbmm_rhs(id, q_cons_qp%vf, q_prim_qp%vf, rhs_vf, flux_n(id)%vf, pb_in, rhs_pb)
6430 call nvtxendrange
6431 end if
6432 ! END: Additional physics and source terms
6433
6434 if (hyper_cleaning) then
6435
6436# 766 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6437
6438# 766 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6439#if defined(MFC_OpenACC)
6440# 766 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6441!$acc parallel loop collapse(3) gang vector default(present) private(j, k, l)
6442# 766 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6443#elif defined(MFC_OpenMP)
6444# 766 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6445
6446# 766 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6447
6448# 766 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6449
6450# 766 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6451!$omp target teams loop defaultmap(firstprivate:scalar) bind(teams,parallel) collapse(3) defaultmap(tofrom:aggregate) defaultmap(tofrom:allocatable) defaultmap(tofrom:pointer) private(j, k, l)
6452# 766 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6453#endif
6454 do l = 0, p
6455 do k = 0, n
6456 do j = 0, m
6457 rhs_vf(eqn_idx%psi)%sf(j, k, l) = rhs_vf(eqn_idx%psi)%sf(j, k, l) - q_prim_vf(eqn_idx%psi)%sf(j, &
6458 & k, l)/hyper_cleaning_tau
6459 end do
6460 end do
6461 end do
6462
6463# 775 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6464#if defined(MFC_OpenACC)
6465# 775 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6466!$acc end parallel loop
6467# 775 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6468#elif defined(MFC_OpenMP)
6469# 775 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6470
6471# 775 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6472!$omp end target teams loop
6473# 775 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6474#endif
6475 end if
6476
6477 ! END: Additional physics and source terms
6478 end if
6479 end do
6480 ! END: Dimensional Splitting Loop
6481
6482 if (ib) then
6483
6484# 784 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6485
6486# 784 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6487#if defined(MFC_OpenACC)
6488# 784 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6489!$acc parallel loop collapse(3) gang vector default(present) private(i, j, k, l)
6490# 784 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6491#elif defined(MFC_OpenMP)
6492# 784 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6493
6494# 784 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6495
6496# 784 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6497
6498# 784 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6499!$omp target teams loop defaultmap(firstprivate:scalar) bind(teams,parallel) collapse(3) defaultmap(tofrom:aggregate) defaultmap(tofrom:allocatable) defaultmap(tofrom:pointer) private(i, j, k, l)
6500# 784 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6501#endif
6502 do l = 0, p
6503 do k = 0, n
6504 do j = 0, m
6505 if (ib_markers%sf(j, k, l) /= 0) then
6506 do i = 1, sys_size
6507 rhs_vf(i)%sf(j, k, l) = 0._wp
6508 end do
6509 end if
6510 end do
6511 end do
6512 end do
6513
6514# 796 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6515#if defined(MFC_OpenACC)
6516# 796 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6517!$acc end parallel loop
6518# 796 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6519#elif defined(MFC_OpenMP)
6520# 796 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6521
6522# 796 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6523!$omp end target teams loop
6524# 796 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6525#endif
6526 end if
6527
6528 ! Additional Physics and Source Terms Additions for acoustic_source
6529 if (acoustic_source) then
6530 call nvtxstartrange("RHS-ACOUSTIC-SRC")
6531 call s_acoustic_src_calculations(q_cons_qp%vf(1:sys_size), q_prim_qp%vf(1:sys_size), rhs_vf)
6532 call nvtxendrange
6533 end if
6534
6535 ! Add bubbles source term
6536 if (bubbles_euler .and. (.not. adap_dt) .and. (.not. qbmm)) then
6537 call nvtxstartrange("RHS-BUBBLES-SRC")
6538 call s_compute_bubble_ee_source(q_cons_qp%vf(1:sys_size), q_prim_qp%vf(1:sys_size), rhs_vf, divu)
6539 call nvtxendrange
6540 end if
6541
6542 if (bubbles_lagrange) then
6543 ! RHS additions for sub-grid bubbles_lagrange
6544 call nvtxstartrange("RHS-EL-BUBBLES-SRC")
6545 call s_compute_bubbles_el_source(q_cons_qp%vf(1:sys_size), q_prim_qp%vf(1:sys_size), rhs_vf)
6546 call nvtxendrange
6547 ! Compute bubble dynamics
6548 if (.not. adap_dt) then
6549 call nvtxstartrange("RHS-EL-BUBBLES-DYN")
6550 call s_compute_bubble_el_dynamics(q_prim_qp%vf(1:sys_size), stage)
6551 call nvtxendrange
6552 end if
6553 end if
6554
6555 if (chemistry .and. chem_params%reactions) then
6556 call nvtxstartrange("RHS-CHEM-REACTIONS")
6557 call s_compute_chemistry_reaction_flux(rhs_vf, q_cons_qp%vf, q_t_sf, q_prim_qp%vf, idwint)
6558 call nvtxendrange
6559 end if
6560
6561 if (cont_damage) call s_compute_damage_state(q_cons_qp%vf, rhs_vf)
6562
6563 ! END: Additional physics and source terms
6564
6565 if (run_time_info .or. probe_wrt .or. ib .or. bubbles_lagrange) then
6566 if (.not. igr) then
6567
6568# 838 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6569
6570# 838 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6571#if defined(MFC_OpenACC)
6572# 838 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6573!$acc parallel loop collapse(4) gang vector default(present) private(i, j, k, l)
6574# 838 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6575#elif defined(MFC_OpenMP)
6576# 838 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6577
6578# 838 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6579
6580# 838 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6581
6582# 838 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6583!$omp target teams loop defaultmap(firstprivate:scalar) bind(teams,parallel) collapse(4) defaultmap(tofrom:aggregate) defaultmap(tofrom:allocatable) defaultmap(tofrom:pointer) private(i, j, k, l)
6584# 838 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6585#endif
6586 do i = 1, sys_size
6587 do l = idwbuff(3)%beg, idwbuff(3)%end
6588 do k = idwbuff(2)%beg, idwbuff(2)%end
6589 do j = idwbuff(1)%beg, idwbuff(1)%end
6590 q_prim_vf(i)%sf(j, k, l) = q_prim_qp%vf(i)%sf(j, k, l)
6591 end do
6592 end do
6593 end do
6594 end do
6595
6596# 848 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6597#if defined(MFC_OpenACC)
6598# 848 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6599!$acc end parallel loop
6600# 848 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6601#elif defined(MFC_OpenMP)
6602# 848 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6603
6604# 848 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6605!$omp end target teams loop
6606# 848 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6607#endif
6608 end if
6609 end if
6610
6611 call cpu_time(t_finish)
6612
6613 if (t_step >= 2) then
6614 time_avg = (abs(t_finish - t_start) + (t_step - 2)*time_avg)/(t_step - 1)
6615 else
6616 time_avg = 0._wp
6617 end if
6618
6619 call nvtxendrange
6620
6621 end subroutine s_compute_rhs
6622
6623 !> Accumulate advection source contributions from a given coordinate direction into the RHS
6624 subroutine s_compute_advection_source_term(idir, rhs_vf, q_cons_vf, q_prim_vf, flux_src_n_vf)
6625
6626 integer, intent(in) :: idir
6627 type(scalar_field), dimension(sys_size), intent(inout) :: rhs_vf
6628 type(vector_field), intent(inout) :: q_cons_vf
6629 type(vector_field), intent(inout) :: q_prim_vf
6630 type(vector_field), intent(inout) :: flux_src_n_vf
6631 integer :: j, k, l, q !< Loop iterators from original, meaning varies
6632 integer :: k_loop, l_loop, q_loop !< Standardized spatial loop iterators 0:m, 0:n, 0:p
6633 integer :: i_fluid_loop
6634 real(wp) :: inv_ds, flux_face1, flux_face2
6635 real(wp) :: advected_qty_val, pressure_val, velocity_val
6636
6637 if (alt_soundspeed) then
6638
6639# 879 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6640
6641# 879 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6642#if defined(MFC_OpenACC)
6643# 879 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6644!$acc parallel loop collapse(3) gang vector default(present) private(k_loop, l_loop, q_loop)
6645# 879 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6646#elif defined(MFC_OpenMP)
6647# 879 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6648
6649# 879 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6650
6651# 879 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6652
6653# 879 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6654!$omp target teams loop defaultmap(firstprivate:scalar) bind(teams,parallel) collapse(3) defaultmap(tofrom:aggregate) defaultmap(tofrom:allocatable) defaultmap(tofrom:pointer) &
6655# 879 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6656!$omp& private(k_loop, l_loop, q_loop)
6657# 879 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6658#endif
6659 do q_loop = 0, p
6660 do l_loop = 0, n
6661 do k_loop = 0, m
6662 blkmod1(k_loop, l_loop, q_loop) = ((gammas(1) + 1._wp)*q_prim_vf%vf(eqn_idx%E)%sf(k_loop, l_loop, &
6663 & q_loop) + pi_infs(1))/gammas(1)
6664 blkmod2(k_loop, l_loop, q_loop) = ((gammas(2) + 1._wp)*q_prim_vf%vf(eqn_idx%E)%sf(k_loop, l_loop, &
6665 & q_loop) + pi_infs(2))/gammas(2)
6666 alpha1(k_loop, l_loop, q_loop) = q_cons_vf%vf(eqn_idx%adv%beg)%sf(k_loop, l_loop, q_loop)
6667
6668 if (bubbles_euler) then
6669 alpha2(k_loop, l_loop, q_loop) = q_cons_vf%vf(eqn_idx%alf - 1)%sf(k_loop, l_loop, q_loop)
6670 else
6671 alpha2(k_loop, l_loop, q_loop) = q_cons_vf%vf(eqn_idx%adv%end)%sf(k_loop, l_loop, q_loop)
6672 end if
6673
6674 kterm(k_loop, l_loop, q_loop) = alpha1(k_loop, l_loop, q_loop)*alpha2(k_loop, l_loop, &
6675 & q_loop)*(blkmod2(k_loop, l_loop, q_loop) - blkmod1(k_loop, l_loop, q_loop))/(alpha1(k_loop, &
6676 & l_loop, q_loop)*blkmod2(k_loop, l_loop, q_loop) + alpha2(k_loop, l_loop, q_loop)*blkmod1(k_loop, &
6677 & l_loop, q_loop))
6678 end do
6679 end do
6680 end do
6681
6682# 902 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6683#if defined(MFC_OpenACC)
6684# 902 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6685!$acc end parallel loop
6686# 902 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6687#elif defined(MFC_OpenMP)
6688# 902 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6689
6690# 902 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6691!$omp end target teams loop
6692# 902 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6693#endif
6694 end if
6695
6696 select case (idir)
6697 case (1) ! x-direction
6698 if (bc_x%beg <= bc_char_slip_wall .and. bc_x%beg >= bc_char_sup_outflow) then
6699 call s_cbc(q_prim_vf%vf, flux_n(idir)%vf, flux_src_n_vf%vf, idir, -1, irx, iry, irz)
6700 end if
6701 if (bc_x%end <= bc_char_slip_wall .and. bc_x%end >= bc_char_sup_outflow) then
6702 call s_cbc(q_prim_vf%vf, flux_n(idir)%vf, flux_src_n_vf%vf, idir, 1, irx, iry, irz)
6703 end if
6704
6705
6706# 914 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6707
6708# 914 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6709#if defined(MFC_OpenACC)
6710# 914 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6711!$acc parallel loop collapse(4) gang vector default(present) private(j, k_loop, l_loop, q_loop, inv_ds, flux_face1, flux_face2)
6712# 914 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6713#elif defined(MFC_OpenMP)
6714# 914 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6715
6716# 914 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6717
6718# 914 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6719
6720# 914 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6721!$omp target teams loop defaultmap(firstprivate:scalar) bind(teams,parallel) collapse(4) defaultmap(tofrom:aggregate) defaultmap(tofrom:allocatable) defaultmap(tofrom:pointer) &
6722# 914 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6723!$omp& private(j, k_loop, l_loop, q_loop, inv_ds, flux_face1, flux_face2)
6724# 914 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6725#endif
6726 do j = 1, sys_size
6727 do q_loop = 0, p
6728 do l_loop = 0, n
6729 do k_loop = 0, m
6730 inv_ds = 1._wp/dx(k_loop)
6731 flux_face1 = flux_n(1)%vf(j)%sf(k_loop - 1, l_loop, q_loop)
6732 flux_face2 = flux_n(1)%vf(j)%sf(k_loop, l_loop, q_loop)
6733 rhs_vf(j)%sf(k_loop, l_loop, q_loop) = inv_ds*(flux_face1 - flux_face2)
6734 end do
6735 end do
6736 end do
6737 end do
6738
6739# 927 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6740#if defined(MFC_OpenACC)
6741# 927 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6742!$acc end parallel loop
6743# 927 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6744#elif defined(MFC_OpenMP)
6745# 927 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6746
6747# 927 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6748!$omp end target teams loop
6749# 927 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6750#endif
6751
6752 if (model_eqns == model_eqns_6eq) then
6753
6754# 930 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6755
6756# 930 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6757#if defined(MFC_OpenACC)
6758# 930 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6759!$acc parallel loop collapse(4) gang vector default(present) private(i_fluid_loop, k_loop, l_loop, q_loop, inv_ds, advected_qty_val, pressure_val, flux_face1, flux_face2)
6760# 930 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6761#elif defined(MFC_OpenMP)
6762# 930 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6763
6764# 930 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6765
6766# 930 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6767
6768# 930 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6769!$omp target teams loop defaultmap(firstprivate:scalar) bind(teams,parallel) collapse(4) defaultmap(tofrom:aggregate) defaultmap(tofrom:allocatable) defaultmap(tofrom:pointer) &
6770# 930 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6771!$omp& private(i_fluid_loop, k_loop, l_loop, q_loop, inv_ds, advected_qty_val, pressure_val, flux_face1, flux_face2)
6772# 930 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6773#endif
6774# 932 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6775 do q_loop = 0, p
6776 do l_loop = 0, n
6777 do k_loop = 0, m
6778 do i_fluid_loop = 1, num_fluids
6779 inv_ds = 1._wp/dx(k_loop)
6780 advected_qty_val = q_cons_vf%vf(i_fluid_loop + eqn_idx%adv%beg - 1)%sf(k_loop, l_loop, q_loop)
6781 pressure_val = q_prim_vf%vf(eqn_idx%E)%sf(k_loop, l_loop, q_loop)
6782 flux_face1 = flux_src_n_vf%vf(eqn_idx%adv%beg)%sf(k_loop, l_loop, q_loop)
6783 flux_face2 = flux_src_n_vf%vf(eqn_idx%adv%beg)%sf(k_loop - 1, l_loop, q_loop)
6784 rhs_vf(i_fluid_loop + eqn_idx%int_en%beg - 1)%sf(k_loop, l_loop, &
6785 & q_loop) = rhs_vf(i_fluid_loop + eqn_idx%int_en%beg - 1)%sf(k_loop, l_loop, &
6786 & q_loop) - inv_ds*advected_qty_val*pressure_val*(flux_face1 - flux_face2)
6787 end do
6788 end do
6789 end do
6790 end do
6791
6792# 948 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6793#if defined(MFC_OpenACC)
6794# 948 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6795!$acc end parallel loop
6796# 948 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6797#elif defined(MFC_OpenMP)
6798# 948 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6799
6800# 948 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6801!$omp end target teams loop
6802# 948 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6803#endif
6804 end if
6805
6806 call s_add_directional_advection_source_terms(idir, rhs_vf, q_cons_vf, q_prim_vf, flux_src_n_vf, kterm)
6807 case (2) ! y-direction
6808 if (bc_y%beg <= bc_char_slip_wall .and. bc_y%beg >= bc_char_sup_outflow) then
6809 call s_cbc(q_prim_vf%vf, flux_n(idir)%vf, flux_src_n_vf%vf, idir, -1, irx, iry, irz)
6810 end if
6811 if (bc_y%end <= bc_char_slip_wall .and. bc_y%end >= bc_char_sup_outflow) then
6812 call s_cbc(q_prim_vf%vf, flux_n(idir)%vf, flux_src_n_vf%vf, idir, 1, irx, iry, irz)
6813 end if
6814
6815
6816# 960 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6817
6818# 960 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6819#if defined(MFC_OpenACC)
6820# 960 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6821!$acc parallel loop collapse(4) gang vector default(present) private(j, k, l, q, inv_ds, flux_face1, flux_face2)
6822# 960 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6823#elif defined(MFC_OpenMP)
6824# 960 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6825
6826# 960 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6827
6828# 960 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6829
6830# 960 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6831!$omp target teams loop defaultmap(firstprivate:scalar) bind(teams,parallel) collapse(4) defaultmap(tofrom:aggregate) defaultmap(tofrom:allocatable) defaultmap(tofrom:pointer) &
6832# 960 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6833!$omp& private(j, k, l, q, inv_ds, flux_face1, flux_face2)
6834# 960 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6835#endif
6836 do j = 1, sys_size
6837 do l = 0, p
6838 do k = 0, n
6839 do q = 0, m
6840 inv_ds = 1._wp/dy(k)
6841 flux_face1 = flux_n(2)%vf(j)%sf(q, k - 1, l)
6842 flux_face2 = flux_n(2)%vf(j)%sf(q, k, l)
6843 rhs_vf(j)%sf(q, k, l) = rhs_vf(j)%sf(q, k, l) + inv_ds*(flux_face1 - flux_face2)
6844 end do
6845 end do
6846 end do
6847 end do
6848
6849# 973 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6850#if defined(MFC_OpenACC)
6851# 973 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6852!$acc end parallel loop
6853# 973 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6854#elif defined(MFC_OpenMP)
6855# 973 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6856
6857# 973 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6858!$omp end target teams loop
6859# 973 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6860#endif
6861
6862 if (model_eqns == model_eqns_6eq) then
6863
6864# 976 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6865
6866# 976 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6867#if defined(MFC_OpenACC)
6868# 976 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6869!$acc parallel loop collapse(4) gang vector default(present) private(i_fluid_loop, k, l, q, inv_ds, advected_qty_val, pressure_val, flux_face1, flux_face2)
6870# 976 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6871#elif defined(MFC_OpenMP)
6872# 976 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6873
6874# 976 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6875
6876# 976 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6877
6878# 976 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6879!$omp target teams loop defaultmap(firstprivate:scalar) bind(teams,parallel) collapse(4) defaultmap(tofrom:aggregate) defaultmap(tofrom:allocatable) defaultmap(tofrom:pointer) &
6880# 976 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6881!$omp& private(i_fluid_loop, k, l, q, inv_ds, advected_qty_val, pressure_val, flux_face1, flux_face2)
6882# 976 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6883#endif
6884# 978 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6885 do l = 0, p
6886 do k = 0, n
6887 do q = 0, m
6888 do i_fluid_loop = 1, num_fluids
6889 inv_ds = 1._wp/dy(k)
6890 advected_qty_val = q_cons_vf%vf(i_fluid_loop + eqn_idx%adv%beg - 1)%sf(q, k, l)
6891 pressure_val = q_prim_vf%vf(eqn_idx%E)%sf(q, k, l)
6892 flux_face1 = flux_src_n_vf%vf(eqn_idx%adv%beg)%sf(q, k, l)
6893 flux_face2 = flux_src_n_vf%vf(eqn_idx%adv%beg)%sf(q, k - 1, l)
6894 rhs_vf(i_fluid_loop + eqn_idx%int_en%beg - 1)%sf(q, k, &
6895 & l) = rhs_vf(i_fluid_loop + eqn_idx%int_en%beg - 1)%sf(q, k, &
6896 & l) - inv_ds*advected_qty_val*pressure_val*(flux_face1 - flux_face2)
6897 if (cyl_coord) then
6898 rhs_vf(i_fluid_loop + eqn_idx%int_en%beg - 1)%sf(q, k, &
6899 & l) = rhs_vf(i_fluid_loop + eqn_idx%int_en%beg - 1)%sf(q, k, &
6900 & l) - 5.e-1_wp/y_cc(k)*advected_qty_val*pressure_val*(flux_face1 + flux_face2)
6901 end if
6902 end do
6903 end do
6904 end do
6905 end do
6906
6907# 999 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6908#if defined(MFC_OpenACC)
6909# 999 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6910!$acc end parallel loop
6911# 999 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6912#elif defined(MFC_OpenMP)
6913# 999 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6914
6915# 999 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6916!$omp end target teams loop
6917# 999 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6918#endif
6919 end if
6920
6921 if (cyl_coord) then
6922
6923# 1003 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6924
6925# 1003 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6926#if defined(MFC_OpenACC)
6927# 1003 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6928!$acc parallel loop collapse(4) gang vector default(present) private(j, k, l, q, flux_face1, flux_face2)
6929# 1003 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6930#elif defined(MFC_OpenMP)
6931# 1003 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6932
6933# 1003 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6934
6935# 1003 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6936
6937# 1003 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6938!$omp target teams loop defaultmap(firstprivate:scalar) bind(teams,parallel) collapse(4) defaultmap(tofrom:aggregate) defaultmap(tofrom:allocatable) defaultmap(tofrom:pointer) &
6939# 1003 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6940!$omp& private(j, k, l, q, flux_face1, flux_face2)
6941# 1003 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6942#endif
6943 do j = 1, sys_size
6944 do l = 0, p
6945 do k = 0, n
6946 do q = 0, m
6947 flux_face1 = flux_gsrc_n(2)%vf(j)%sf(q, k - 1, l)
6948 flux_face2 = flux_gsrc_n(2)%vf(j)%sf(q, k, l)
6949 rhs_vf(j)%sf(q, k, l) = rhs_vf(j)%sf(q, k, l) - 5.e-1_wp/y_cc(k)*(flux_face1 + flux_face2)
6950 end do
6951 end do
6952 end do
6953 end do
6954
6955# 1015 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6956#if defined(MFC_OpenACC)
6957# 1015 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6958!$acc end parallel loop
6959# 1015 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6960#elif defined(MFC_OpenMP)
6961# 1015 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6962
6963# 1015 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6964!$omp end target teams loop
6965# 1015 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6966#endif
6967 end if
6968
6969 call s_add_directional_advection_source_terms(idir, rhs_vf, q_cons_vf, q_prim_vf, flux_src_n_vf, kterm)
6970 case (3) ! z-direction
6971 if (bc_z%beg <= bc_char_slip_wall .and. bc_z%beg >= bc_char_sup_outflow) then
6972 call s_cbc(q_prim_vf%vf, flux_n(idir)%vf, flux_src_n_vf%vf, idir, -1, irx, iry, irz)
6973 end if
6974 if (bc_z%end <= bc_char_slip_wall .and. bc_z%end >= bc_char_sup_outflow) then
6975 call s_cbc(q_prim_vf%vf, flux_n(idir)%vf, flux_src_n_vf%vf, idir, 1, irx, iry, irz)
6976 end if
6977
6978 if (grid_geometry == 3) then ! Cylindrical Coordinates
6979
6980# 1028 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6981
6982# 1028 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6983#if defined(MFC_OpenACC)
6984# 1028 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6985!$acc parallel loop collapse(4) gang vector default(present) private(j, k, l, q, inv_ds, velocity_val, flux_face1, flux_face2)
6986# 1028 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6987#elif defined(MFC_OpenMP)
6988# 1028 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6989
6990# 1028 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6991
6992# 1028 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6993
6994# 1028 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6995!$omp target teams loop defaultmap(firstprivate:scalar) bind(teams,parallel) collapse(4) defaultmap(tofrom:aggregate) defaultmap(tofrom:allocatable) defaultmap(tofrom:pointer) &
6996# 1028 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6997!$omp& private(j, k, l, q, inv_ds, velocity_val, flux_face1, flux_face2)
6998# 1028 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6999#endif
7000 do j = 1, sys_size
7001 do k = 0, p
7002 do q = 0, n
7003 do l = 0, m
7004 inv_ds = 1._wp/(dz(k)*y_cc(q))
7005 velocity_val = q_prim_vf%vf(eqn_idx%cont%end + idir)%sf(l, q, k)
7006 flux_face1 = flux_n(3)%vf(j)%sf(l, q, k - 1)
7007 flux_face2 = flux_n(3)%vf(j)%sf(l, q, k)
7008 rhs_vf(j)%sf(l, q, k) = rhs_vf(j)%sf(l, q, k) + inv_ds*velocity_val*(flux_face1 - flux_face2)
7009 end do
7010 end do
7011 end do
7012 end do
7013
7014# 1042 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7015#if defined(MFC_OpenACC)
7016# 1042 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7017!$acc end parallel loop
7018# 1042 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7019#elif defined(MFC_OpenMP)
7020# 1042 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7021
7022# 1042 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7023!$omp end target teams loop
7024# 1042 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7025#endif
7026
7027# 1043 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7028
7029# 1043 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7030#if defined(MFC_OpenACC)
7031# 1043 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7032!$acc parallel loop collapse(4) gang vector default(present) private(j, k, l, q, flux_face1, flux_face2)
7033# 1043 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7034#elif defined(MFC_OpenMP)
7035# 1043 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7036
7037# 1043 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7038
7039# 1043 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7040
7041# 1043 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7042!$omp target teams loop defaultmap(firstprivate:scalar) bind(teams,parallel) collapse(4) defaultmap(tofrom:aggregate) defaultmap(tofrom:allocatable) defaultmap(tofrom:pointer) &
7043# 1043 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7044!$omp& private(j, k, l, q, flux_face1, flux_face2)
7045# 1043 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7046#endif
7047 do j = 1, sys_size
7048 do k = 0, p
7049 do q = 0, n
7050 do l = 0, m
7051 flux_face1 = flux_gsrc_n(3)%vf(j)%sf(l, q, k - 1)
7052 flux_face2 = flux_gsrc_n(3)%vf(j)%sf(l, q, k)
7053 rhs_vf(j)%sf(l, q, k) = rhs_vf(j)%sf(l, q, k) - 5.e-1_wp/y_cc(q)*(flux_face1 + flux_face2)
7054 end do
7055 end do
7056 end do
7057 end do
7058
7059# 1055 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7060#if defined(MFC_OpenACC)
7061# 1055 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7062!$acc end parallel loop
7063# 1055 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7064#elif defined(MFC_OpenMP)
7065# 1055 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7066
7067# 1055 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7068!$omp end target teams loop
7069# 1055 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7070#endif
7071 else
7072
7073# 1057 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7074
7075# 1057 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7076#if defined(MFC_OpenACC)
7077# 1057 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7078!$acc parallel loop collapse(4) gang vector default(present) private(j, k, l, q, inv_ds, flux_face1, flux_face2)
7079# 1057 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7080#elif defined(MFC_OpenMP)
7081# 1057 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7082
7083# 1057 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7084
7085# 1057 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7086
7087# 1057 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7088!$omp target teams loop defaultmap(firstprivate:scalar) bind(teams,parallel) collapse(4) defaultmap(tofrom:aggregate) defaultmap(tofrom:allocatable) defaultmap(tofrom:pointer) &
7089# 1057 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7090!$omp& private(j, k, l, q, inv_ds, flux_face1, flux_face2)
7091# 1057 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7092#endif
7093 do j = 1, sys_size
7094 do k = 0, p
7095 do q = 0, n
7096 do l = 0, m
7097 inv_ds = 1._wp/dz(k)
7098 flux_face1 = flux_n(3)%vf(j)%sf(l, q, k - 1)
7099 flux_face2 = flux_n(3)%vf(j)%sf(l, q, k)
7100 rhs_vf(j)%sf(l, q, k) = rhs_vf(j)%sf(l, q, k) + inv_ds*(flux_face1 - flux_face2)
7101 end do
7102 end do
7103 end do
7104 end do
7105
7106# 1070 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7107#if defined(MFC_OpenACC)
7108# 1070 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7109!$acc end parallel loop
7110# 1070 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7111#elif defined(MFC_OpenMP)
7112# 1070 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7113
7114# 1070 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7115!$omp end target teams loop
7116# 1070 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7117#endif
7118 end if
7119
7120 if (model_eqns == model_eqns_6eq) then
7121
7122# 1074 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7123
7124# 1074 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7125#if defined(MFC_OpenACC)
7126# 1074 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7127!$acc parallel loop collapse(4) gang vector default(present) private(i_fluid_loop, k, l, q, inv_ds, advected_qty_val, pressure_val, flux_face1, flux_face2)
7128# 1074 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7129#elif defined(MFC_OpenMP)
7130# 1074 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7131
7132# 1074 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7133
7134# 1074 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7135
7136# 1074 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7137!$omp target teams loop defaultmap(firstprivate:scalar) bind(teams,parallel) collapse(4) defaultmap(tofrom:aggregate) defaultmap(tofrom:allocatable) defaultmap(tofrom:pointer) &
7138# 1074 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7139!$omp& private(i_fluid_loop, k, l, q, inv_ds, advected_qty_val, pressure_val, flux_face1, flux_face2)
7140# 1074 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7141#endif
7142# 1076 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7143 do k = 0, p
7144 do q = 0, n
7145 do l = 0, m
7146 do i_fluid_loop = 1, num_fluids
7147 inv_ds = 1._wp/dz(k)
7148 advected_qty_val = q_cons_vf%vf(i_fluid_loop + eqn_idx%adv%beg - 1)%sf(l, q, k)
7149 pressure_val = q_prim_vf%vf(eqn_idx%E)%sf(l, q, k)
7150 flux_face1 = flux_src_n_vf%vf(eqn_idx%adv%beg)%sf(l, q, k)
7151 flux_face2 = flux_src_n_vf%vf(eqn_idx%adv%beg)%sf(l, q, k - 1)
7152 rhs_vf(i_fluid_loop + eqn_idx%int_en%beg - 1)%sf(l, q, &
7153 & k) = rhs_vf(i_fluid_loop + eqn_idx%int_en%beg - 1)%sf(l, q, &
7154 & k) - inv_ds*advected_qty_val*pressure_val*(flux_face1 - flux_face2)
7155 end do
7156 end do
7157 end do
7158 end do
7159
7160# 1092 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7161#if defined(MFC_OpenACC)
7162# 1092 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7163!$acc end parallel loop
7164# 1092 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7165#elif defined(MFC_OpenMP)
7166# 1092 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7167
7168# 1092 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7169!$omp end target teams loop
7170# 1092 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7171#endif
7172 end if
7173
7174 call s_add_directional_advection_source_terms(idir, rhs_vf, q_cons_vf, q_prim_vf, flux_src_n_vf, kterm)
7175 end select
7176
7177 contains
7178
7179 !> Add the advection source flux-difference terms for a single coordinate direction to the RHS
7180 subroutine s_add_directional_advection_source_terms(current_idir, rhs_vf_arg, q_cons_vf_arg, q_prim_vf_arg, &
7181 & flux_src_n_vf_arg, Kterm_arg)
7182 integer, intent(in) :: current_idir
7183 type(scalar_field), dimension(sys_size), intent(inout) :: rhs_vf_arg
7184 type(vector_field), intent(in) :: q_cons_vf_arg
7185 type(vector_field), intent(in) :: q_prim_vf_arg
7186 type(vector_field), intent(in) :: flux_src_n_vf_arg
7187 ! CORRECTED DECLARATION FOR Kterm_arg:
7188 real(wp), allocatable, dimension(:,:,:), intent(in) :: Kterm_arg
7189 integer :: j_adv, k_idx, l_idx, q_idx
7190 real(wp) :: local_inv_ds, local_term_coeff, local_flux1, local_flux2
7191 real(wp) :: local_q_cons_val, local_k_term_val
7192 logical :: use_standard_riemann
7193
7194 select case (current_idir)
7195 case (1) ! x-direction
7196 use_standard_riemann = (riemann_solver == riemann_solver_hll .or. riemann_solver == riemann_solver_hlld)
7197 if (use_standard_riemann) then
7198
7199# 1119 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7200
7201# 1119 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7202#if defined(MFC_OpenACC)
7203# 1119 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7204!$acc parallel loop collapse(4) gang vector default(present) private(j_adv, k_idx, l_idx, q_idx, local_inv_ds, local_term_coeff, local_flux1, local_flux2)
7205# 1119 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7206#elif defined(MFC_OpenMP)
7207# 1119 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7208
7209# 1119 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7210
7211# 1119 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7212
7213# 1119 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7214!$omp target teams loop defaultmap(firstprivate:scalar) bind(teams,parallel) collapse(4) defaultmap(tofrom:aggregate) defaultmap(tofrom:allocatable) defaultmap(tofrom:pointer) &
7215# 1119 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7216!$omp& private(j_adv, k_idx, l_idx, q_idx, local_inv_ds, local_term_coeff, local_flux1, local_flux2)
7217# 1119 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7218#endif
7219# 1121 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7220 do j_adv = eqn_idx%adv%beg, eqn_idx%adv%end
7221 do q_idx = 0, p ! z_extent
7222 do l_idx = 0, n ! y_extent
7223 do k_idx = 0, m ! x_extent
7224 local_inv_ds = 1._wp/dx(k_idx)
7225 local_term_coeff = q_prim_vf_arg%vf(eqn_idx%cont%end + current_idir)%sf(k_idx, l_idx, q_idx)
7226 local_flux1 = flux_src_n_vf_arg%vf(j_adv)%sf(k_idx - 1, l_idx, q_idx)
7227 local_flux2 = flux_src_n_vf_arg%vf(j_adv)%sf(k_idx, l_idx, q_idx)
7228 rhs_vf_arg(j_adv)%sf(k_idx, l_idx, q_idx) = rhs_vf_arg(j_adv)%sf(k_idx, l_idx, &
7229 & q_idx) + local_inv_ds*local_term_coeff*(local_flux1 - local_flux2)
7230 end do
7231 end do
7232 end do
7233 end do
7234
7235# 1135 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7236#if defined(MFC_OpenACC)
7237# 1135 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7238!$acc end parallel loop
7239# 1135 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7240#elif defined(MFC_OpenMP)
7241# 1135 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7242
7243# 1135 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7244!$omp end target teams loop
7245# 1135 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7246#endif
7247 else
7248 if (alt_soundspeed) then
7249 if (bubbles_euler .neqv. .true.) then
7250
7251# 1139 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7252
7253# 1139 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7254#if defined(MFC_OpenACC)
7255# 1139 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7256!$acc parallel loop collapse(3) gang vector default(present) private(k_idx, l_idx, q_idx, local_inv_ds, local_q_cons_val, local_k_term_val, local_term_coeff, local_flux1, local_flux2)
7257# 1139 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7258#elif defined(MFC_OpenMP)
7259# 1139 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7260
7261# 1139 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7262
7263# 1139 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7264
7265# 1139 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7266!$omp target teams loop defaultmap(firstprivate:scalar) bind(teams,parallel) collapse(3) defaultmap(tofrom:aggregate) defaultmap(tofrom:allocatable) defaultmap(tofrom:pointer) &
7267# 1139 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7268!$omp& private(k_idx, l_idx, q_idx, local_inv_ds, local_q_cons_val, local_k_term_val, local_term_coeff, local_flux1, local_flux2)
7269# 1139 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7270#endif
7271# 1141 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7272 do q_idx = 0, p; do l_idx = 0, n; do k_idx = 0, m
7273 local_inv_ds = 1._wp/dx(k_idx)
7274 local_q_cons_val = q_cons_vf_arg%vf(eqn_idx%adv%end)%sf(k_idx, l_idx, q_idx)
7275 local_k_term_val = kterm_arg(k_idx, l_idx, q_idx) ! Access is safe due to outer alt_soundspeed check
7276 local_term_coeff = local_q_cons_val - local_k_term_val
7277 local_flux1 = flux_src_n_vf_arg%vf(eqn_idx%adv%end)%sf(k_idx, l_idx, q_idx)
7278 local_flux2 = flux_src_n_vf_arg%vf(eqn_idx%adv%end)%sf(k_idx - 1, l_idx, q_idx)
7279 rhs_vf_arg(eqn_idx%adv%end)%sf(k_idx, l_idx, q_idx) = rhs_vf_arg(eqn_idx%adv%end)%sf(k_idx, &
7280 & l_idx, q_idx) + local_inv_ds*local_term_coeff*(local_flux1 - local_flux2)
7281 end do; end do; end do
7282
7283# 1151 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7284#if defined(MFC_OpenACC)
7285# 1151 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7286!$acc end parallel loop
7287# 1151 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7288#elif defined(MFC_OpenMP)
7289# 1151 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7290
7291# 1151 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7292!$omp end target teams loop
7293# 1151 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7294#endif
7295
7296
7297# 1153 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7298
7299# 1153 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7300#if defined(MFC_OpenACC)
7301# 1153 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7302!$acc parallel loop collapse(3) gang vector default(present) private(k_idx, l_idx, q_idx, local_inv_ds, local_q_cons_val, local_k_term_val, local_term_coeff, local_flux1, local_flux2)
7303# 1153 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7304#elif defined(MFC_OpenMP)
7305# 1153 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7306
7307# 1153 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7308
7309# 1153 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7310
7311# 1153 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7312!$omp target teams loop defaultmap(firstprivate:scalar) bind(teams,parallel) collapse(3) defaultmap(tofrom:aggregate) defaultmap(tofrom:allocatable) defaultmap(tofrom:pointer) &
7313# 1153 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7314!$omp& private(k_idx, l_idx, q_idx, local_inv_ds, local_q_cons_val, local_k_term_val, local_term_coeff, local_flux1, local_flux2)
7315# 1153 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7316#endif
7317# 1155 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7318 do q_idx = 0, p; do l_idx = 0, n; do k_idx = 0, m
7319 local_inv_ds = 1._wp/dx(k_idx)
7320 local_q_cons_val = q_cons_vf_arg%vf(eqn_idx%adv%beg)%sf(k_idx, l_idx, q_idx)
7321 local_k_term_val = kterm_arg(k_idx, l_idx, q_idx) ! Access is safe
7322 local_term_coeff = local_q_cons_val + local_k_term_val
7323 local_flux1 = flux_src_n_vf_arg%vf(eqn_idx%adv%beg)%sf(k_idx, l_idx, q_idx)
7324 local_flux2 = flux_src_n_vf_arg%vf(eqn_idx%adv%beg)%sf(k_idx - 1, l_idx, q_idx)
7325 rhs_vf_arg(eqn_idx%adv%beg)%sf(k_idx, l_idx, q_idx) = rhs_vf_arg(eqn_idx%adv%beg)%sf(k_idx, &
7326 & l_idx, q_idx) + local_inv_ds*local_term_coeff*(local_flux1 - local_flux2)
7327 end do; end do; end do
7328
7329# 1165 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7330#if defined(MFC_OpenACC)
7331# 1165 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7332!$acc end parallel loop
7333# 1165 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7334#elif defined(MFC_OpenMP)
7335# 1165 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7336
7337# 1165 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7338!$omp end target teams loop
7339# 1165 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7340#endif
7341 end if
7342 else
7343
7344# 1168 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7345
7346# 1168 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7347#if defined(MFC_OpenACC)
7348# 1168 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7349!$acc parallel loop collapse(4) gang vector default(present) private(j_adv, k_idx, l_idx, q_idx, local_inv_ds, local_term_coeff, local_flux1, local_flux2)
7350# 1168 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7351#elif defined(MFC_OpenMP)
7352# 1168 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7353
7354# 1168 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7355
7356# 1168 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7357
7358# 1168 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7359!$omp target teams loop defaultmap(firstprivate:scalar) bind(teams,parallel) collapse(4) defaultmap(tofrom:aggregate) defaultmap(tofrom:allocatable) defaultmap(tofrom:pointer) &
7360# 1168 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7361!$omp& private(j_adv, k_idx, l_idx, q_idx, local_inv_ds, local_term_coeff, local_flux1, local_flux2)
7362# 1168 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7363#endif
7364# 1170 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7365 do j_adv = eqn_idx%adv%beg, eqn_idx%adv%end
7366 do q_idx = 0, p; do l_idx = 0, n; do k_idx = 0, m
7367 local_inv_ds = 1._wp/dx(k_idx)
7368 local_term_coeff = q_cons_vf_arg%vf(j_adv)%sf(k_idx, l_idx, q_idx)
7369 local_flux1 = flux_src_n_vf_arg%vf(j_adv)%sf(k_idx, l_idx, q_idx)
7370 local_flux2 = flux_src_n_vf_arg%vf(j_adv)%sf(k_idx - 1, l_idx, q_idx)
7371 rhs_vf_arg(j_adv)%sf(k_idx, l_idx, q_idx) = rhs_vf_arg(j_adv)%sf(k_idx, l_idx, &
7372 & q_idx) + local_inv_ds*local_term_coeff*(local_flux1 - local_flux2)
7373 end do; end do; end do
7374 end do
7375
7376# 1180 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7377#if defined(MFC_OpenACC)
7378# 1180 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7379!$acc end parallel loop
7380# 1180 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7381#elif defined(MFC_OpenMP)
7382# 1180 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7383
7384# 1180 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7385!$omp end target teams loop
7386# 1180 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7387#endif
7388 end if
7389 end if
7390 case (2)
7391 ! y-direction: loops q_idx (x), k_idx (y), l_idx (z); sf(q_idx, k_idx, l_idx); dy(k_idx); Kterm(q_idx,k_idx,l_idx)
7392 use_standard_riemann = (riemann_solver == riemann_solver_hll .or. riemann_solver == riemann_solver_hlld)
7393 if (use_standard_riemann) then
7394
7395# 1187 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7396
7397# 1187 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7398#if defined(MFC_OpenACC)
7399# 1187 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7400!$acc parallel loop collapse(4) gang vector default(present) private(j_adv, k_idx, l_idx, q_idx, local_inv_ds, local_term_coeff, local_flux1, local_flux2)
7401# 1187 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7402#elif defined(MFC_OpenMP)
7403# 1187 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7404
7405# 1187 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7406
7407# 1187 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7408
7409# 1187 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7410!$omp target teams loop defaultmap(firstprivate:scalar) bind(teams,parallel) collapse(4) defaultmap(tofrom:aggregate) defaultmap(tofrom:allocatable) defaultmap(tofrom:pointer) &
7411# 1187 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7412!$omp& private(j_adv, k_idx, l_idx, q_idx, local_inv_ds, local_term_coeff, local_flux1, local_flux2)
7413# 1187 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7414#endif
7415# 1189 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7416 do j_adv = eqn_idx%adv%beg, eqn_idx%adv%end
7417 do l_idx = 0, p ! z_extent
7418 do k_idx = 0, n ! y_extent
7419 do q_idx = 0, m ! x_extent
7420 local_inv_ds = 1._wp/dy(k_idx)
7421 local_term_coeff = q_prim_vf_arg%vf(eqn_idx%cont%end + current_idir)%sf(q_idx, k_idx, l_idx)
7422 local_flux1 = flux_src_n_vf_arg%vf(j_adv)%sf(q_idx, k_idx - 1, l_idx)
7423 local_flux2 = flux_src_n_vf_arg%vf(j_adv)%sf(q_idx, k_idx, l_idx)
7424 rhs_vf_arg(j_adv)%sf(q_idx, k_idx, l_idx) = rhs_vf_arg(j_adv)%sf(q_idx, k_idx, &
7425 & l_idx) + local_inv_ds*local_term_coeff*(local_flux1 - local_flux2)
7426 end do
7427 end do
7428 end do
7429 end do
7430
7431# 1203 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7432#if defined(MFC_OpenACC)
7433# 1203 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7434!$acc end parallel loop
7435# 1203 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7436#elif defined(MFC_OpenMP)
7437# 1203 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7438
7439# 1203 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7440!$omp end target teams loop
7441# 1203 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7442#endif
7443 else
7444 if (alt_soundspeed) then
7445 if (bubbles_euler .neqv. .true.) then
7446
7447# 1207 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7448
7449# 1207 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7450#if defined(MFC_OpenACC)
7451# 1207 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7452!$acc parallel loop collapse(3) gang vector default(present) private(k_idx, l_idx, q_idx, local_inv_ds, local_q_cons_val, local_k_term_val, local_term_coeff, local_flux1, local_flux2)
7453# 1207 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7454#elif defined(MFC_OpenMP)
7455# 1207 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7456
7457# 1207 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7458
7459# 1207 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7460
7461# 1207 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7462!$omp target teams loop defaultmap(firstprivate:scalar) bind(teams,parallel) collapse(3) defaultmap(tofrom:aggregate) defaultmap(tofrom:allocatable) defaultmap(tofrom:pointer) &
7463# 1207 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7464!$omp& private(k_idx, l_idx, q_idx, local_inv_ds, local_q_cons_val, local_k_term_val, local_term_coeff, local_flux1, local_flux2)
7465# 1207 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7466#endif
7467# 1209 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7468 do l_idx = 0, p; do k_idx = 0, n; do q_idx = 0, m
7469 local_inv_ds = 1._wp/dy(k_idx)
7470 local_q_cons_val = q_cons_vf_arg%vf(eqn_idx%adv%end)%sf(q_idx, k_idx, l_idx)
7471 local_k_term_val = kterm_arg(q_idx, k_idx, l_idx) ! Access is safe
7472 local_term_coeff = local_q_cons_val - local_k_term_val
7473 local_flux1 = flux_src_n_vf_arg%vf(eqn_idx%adv%end)%sf(q_idx, k_idx, l_idx)
7474 local_flux2 = flux_src_n_vf_arg%vf(eqn_idx%adv%end)%sf(q_idx, k_idx - 1, l_idx)
7475 rhs_vf_arg(eqn_idx%adv%end)%sf(q_idx, k_idx, l_idx) = rhs_vf_arg(eqn_idx%adv%end)%sf(q_idx, &
7476 & k_idx, l_idx) + local_inv_ds*local_term_coeff*(local_flux1 - local_flux2)
7477 if (cyl_coord) then
7478 rhs_vf_arg(eqn_idx%adv%end)%sf(q_idx, k_idx, l_idx) = rhs_vf_arg(eqn_idx%adv%end)%sf(q_idx, &
7479 & k_idx, l_idx) - (local_k_term_val/(2._wp*y_cc(k_idx)))*(local_flux1 + local_flux2)
7480 end if
7481 end do; end do; end do
7482
7483# 1223 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7484#if defined(MFC_OpenACC)
7485# 1223 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7486!$acc end parallel loop
7487# 1223 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7488#elif defined(MFC_OpenMP)
7489# 1223 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7490
7491# 1223 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7492!$omp end target teams loop
7493# 1223 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7494#endif
7495
7496
7497# 1225 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7498
7499# 1225 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7500#if defined(MFC_OpenACC)
7501# 1225 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7502!$acc parallel loop collapse(3) gang vector default(present) private(k_idx, l_idx, q_idx, local_inv_ds, local_q_cons_val, local_k_term_val, local_term_coeff, local_flux1, local_flux2)
7503# 1225 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7504#elif defined(MFC_OpenMP)
7505# 1225 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7506
7507# 1225 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7508
7509# 1225 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7510
7511# 1225 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7512!$omp target teams loop defaultmap(firstprivate:scalar) bind(teams,parallel) collapse(3) defaultmap(tofrom:aggregate) defaultmap(tofrom:allocatable) defaultmap(tofrom:pointer) &
7513# 1225 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7514!$omp& private(k_idx, l_idx, q_idx, local_inv_ds, local_q_cons_val, local_k_term_val, local_term_coeff, local_flux1, local_flux2)
7515# 1225 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7516#endif
7517# 1227 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7518 do l_idx = 0, p; do k_idx = 0, n; do q_idx = 0, m
7519 local_inv_ds = 1._wp/dy(k_idx)
7520 local_q_cons_val = q_cons_vf_arg%vf(eqn_idx%adv%beg)%sf(q_idx, k_idx, l_idx)
7521 local_k_term_val = kterm_arg(q_idx, k_idx, l_idx) ! Access is safe
7522 local_term_coeff = local_q_cons_val + local_k_term_val
7523 local_flux1 = flux_src_n_vf_arg%vf(eqn_idx%adv%beg)%sf(q_idx, k_idx, l_idx)
7524 local_flux2 = flux_src_n_vf_arg%vf(eqn_idx%adv%beg)%sf(q_idx, k_idx - 1, l_idx)
7525 rhs_vf_arg(eqn_idx%adv%beg)%sf(q_idx, k_idx, l_idx) = rhs_vf_arg(eqn_idx%adv%beg)%sf(q_idx, &
7526 & k_idx, l_idx) + local_inv_ds*local_term_coeff*(local_flux1 - local_flux2)
7527 if (cyl_coord) then
7528 rhs_vf_arg(eqn_idx%adv%beg)%sf(q_idx, k_idx, l_idx) = rhs_vf_arg(eqn_idx%adv%beg)%sf(q_idx, &
7529 & k_idx, l_idx) + (local_k_term_val/(2._wp*y_cc(k_idx)))*(local_flux1 + local_flux2)
7530 end if
7531 end do; end do; end do
7532
7533# 1241 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7534#if defined(MFC_OpenACC)
7535# 1241 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7536!$acc end parallel loop
7537# 1241 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7538#elif defined(MFC_OpenMP)
7539# 1241 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7540
7541# 1241 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7542!$omp end target teams loop
7543# 1241 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7544#endif
7545 end if
7546 else
7547
7548# 1244 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7549
7550# 1244 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7551#if defined(MFC_OpenACC)
7552# 1244 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7553!$acc parallel loop collapse(4) gang vector default(present) private(j_adv, k_idx, l_idx, q_idx, local_inv_ds, local_term_coeff, local_flux1, local_flux2)
7554# 1244 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7555#elif defined(MFC_OpenMP)
7556# 1244 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7557
7558# 1244 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7559
7560# 1244 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7561
7562# 1244 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7563!$omp target teams loop defaultmap(firstprivate:scalar) bind(teams,parallel) collapse(4) defaultmap(tofrom:aggregate) defaultmap(tofrom:allocatable) defaultmap(tofrom:pointer) &
7564# 1244 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7565!$omp& private(j_adv, k_idx, l_idx, q_idx, local_inv_ds, local_term_coeff, local_flux1, local_flux2)
7566# 1244 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7567#endif
7568# 1246 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7569 do j_adv = eqn_idx%adv%beg, eqn_idx%adv%end
7570 do l_idx = 0, p; do k_idx = 0, n; do q_idx = 0, m
7571 local_inv_ds = 1._wp/dy(k_idx)
7572 local_term_coeff = q_cons_vf_arg%vf(j_adv)%sf(q_idx, k_idx, l_idx)
7573 local_flux1 = flux_src_n_vf_arg%vf(j_adv)%sf(q_idx, k_idx, l_idx)
7574 local_flux2 = flux_src_n_vf_arg%vf(j_adv)%sf(q_idx, k_idx - 1, l_idx)
7575 rhs_vf_arg(j_adv)%sf(q_idx, k_idx, l_idx) = rhs_vf_arg(j_adv)%sf(q_idx, k_idx, &
7576 & l_idx) + local_inv_ds*local_term_coeff*(local_flux1 - local_flux2)
7577 end do; end do; end do
7578 end do
7579
7580# 1256 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7581#if defined(MFC_OpenACC)
7582# 1256 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7583!$acc end parallel loop
7584# 1256 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7585#elif defined(MFC_OpenMP)
7586# 1256 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7587
7588# 1256 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7589!$omp end target teams loop
7590# 1256 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7591#endif
7592 end if
7593 end if
7594 case (3)
7595 ! z-direction: loops l_idx (x), q_idx (y), k_idx (z); sf(l_idx, q_idx, k_idx); dz(k_idx); Kterm(l_idx,q_idx,k_idx)
7596 if (grid_geometry == 3) then
7597 use_standard_riemann = (riemann_solver == riemann_solver_hll)
7598 else
7599 use_standard_riemann = (riemann_solver == riemann_solver_hll .or. riemann_solver == riemann_solver_hlld)
7600 end if
7601
7602 if (use_standard_riemann) then
7603
7604# 1268 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7605
7606# 1268 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7607#if defined(MFC_OpenACC)
7608# 1268 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7609!$acc parallel loop collapse(4) gang vector default(present) private(j_adv, k_idx, l_idx, q_idx, local_inv_ds, local_term_coeff, local_flux1, local_flux2)
7610# 1268 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7611#elif defined(MFC_OpenMP)
7612# 1268 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7613
7614# 1268 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7615
7616# 1268 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7617
7618# 1268 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7619!$omp target teams loop defaultmap(firstprivate:scalar) bind(teams,parallel) collapse(4) defaultmap(tofrom:aggregate) defaultmap(tofrom:allocatable) defaultmap(tofrom:pointer) &
7620# 1268 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7621!$omp& private(j_adv, k_idx, l_idx, q_idx, local_inv_ds, local_term_coeff, local_flux1, local_flux2)
7622# 1268 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7623#endif
7624# 1270 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7625 do j_adv = eqn_idx%adv%beg, eqn_idx%adv%end
7626 do k_idx = 0, p ! z_extent
7627 do q_idx = 0, n ! y_extent
7628 do l_idx = 0, m ! x_extent
7629 local_inv_ds = 1._wp/dz(k_idx)
7630 local_term_coeff = q_prim_vf_arg%vf(eqn_idx%cont%end + current_idir)%sf(l_idx, q_idx, k_idx)
7631 local_flux1 = flux_src_n_vf_arg%vf(j_adv)%sf(l_idx, q_idx, k_idx - 1)
7632 local_flux2 = flux_src_n_vf_arg%vf(j_adv)%sf(l_idx, q_idx, k_idx)
7633 rhs_vf_arg(j_adv)%sf(l_idx, q_idx, k_idx) = rhs_vf_arg(j_adv)%sf(l_idx, q_idx, &
7634 & k_idx) + local_inv_ds*local_term_coeff*(local_flux1 - local_flux2)
7635 end do
7636 end do
7637 end do
7638 end do
7639
7640# 1284 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7641#if defined(MFC_OpenACC)
7642# 1284 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7643!$acc end parallel loop
7644# 1284 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7645#elif defined(MFC_OpenMP)
7646# 1284 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7647
7648# 1284 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7649!$omp end target teams loop
7650# 1284 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7651#endif
7652 else
7653 if (alt_soundspeed) then
7654 if (bubbles_euler .neqv. .true.) then
7655
7656# 1288 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7657
7658# 1288 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7659#if defined(MFC_OpenACC)
7660# 1288 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7661!$acc parallel loop collapse(3) gang vector default(present) private(k_idx, l_idx, q_idx, local_inv_ds, local_q_cons_val, local_k_term_val, local_term_coeff, local_flux1, local_flux2)
7662# 1288 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7663#elif defined(MFC_OpenMP)
7664# 1288 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7665
7666# 1288 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7667
7668# 1288 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7669
7670# 1288 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7671!$omp target teams loop defaultmap(firstprivate:scalar) bind(teams,parallel) collapse(3) defaultmap(tofrom:aggregate) defaultmap(tofrom:allocatable) defaultmap(tofrom:pointer) &
7672# 1288 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7673!$omp& private(k_idx, l_idx, q_idx, local_inv_ds, local_q_cons_val, local_k_term_val, local_term_coeff, local_flux1, local_flux2)
7674# 1288 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7675#endif
7676# 1290 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7677 do k_idx = 0, p; do q_idx = 0, n; do l_idx = 0, m
7678 local_inv_ds = 1._wp/dz(k_idx)
7679 local_q_cons_val = q_cons_vf_arg%vf(eqn_idx%adv%end)%sf(l_idx, q_idx, k_idx)
7680 local_k_term_val = kterm_arg(l_idx, q_idx, k_idx) ! Access is safe
7681 local_term_coeff = local_q_cons_val - local_k_term_val
7682 local_flux1 = flux_src_n_vf_arg%vf(eqn_idx%adv%end)%sf(l_idx, q_idx, k_idx)
7683 local_flux2 = flux_src_n_vf_arg%vf(eqn_idx%adv%end)%sf(l_idx, q_idx, k_idx - 1)
7684 rhs_vf_arg(eqn_idx%adv%end)%sf(l_idx, q_idx, k_idx) = rhs_vf_arg(eqn_idx%adv%end)%sf(l_idx, &
7685 & q_idx, k_idx) + local_inv_ds*local_term_coeff*(local_flux1 - local_flux2)
7686 end do; end do; end do
7687
7688# 1300 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7689#if defined(MFC_OpenACC)
7690# 1300 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7691!$acc end parallel loop
7692# 1300 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7693#elif defined(MFC_OpenMP)
7694# 1300 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7695
7696# 1300 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7697!$omp end target teams loop
7698# 1300 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7699#endif
7700
7701
7702# 1302 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7703
7704# 1302 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7705#if defined(MFC_OpenACC)
7706# 1302 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7707!$acc parallel loop collapse(3) gang vector default(present) private(k_idx, l_idx, q_idx, local_inv_ds, local_q_cons_val, local_k_term_val, local_term_coeff, local_flux1, local_flux2)
7708# 1302 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7709#elif defined(MFC_OpenMP)
7710# 1302 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7711
7712# 1302 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7713
7714# 1302 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7715
7716# 1302 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7717!$omp target teams loop defaultmap(firstprivate:scalar) bind(teams,parallel) collapse(3) defaultmap(tofrom:aggregate) defaultmap(tofrom:allocatable) defaultmap(tofrom:pointer) &
7718# 1302 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7719!$omp& private(k_idx, l_idx, q_idx, local_inv_ds, local_q_cons_val, local_k_term_val, local_term_coeff, local_flux1, local_flux2)
7720# 1302 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7721#endif
7722# 1304 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7723 do k_idx = 0, p; do q_idx = 0, n; do l_idx = 0, m
7724 local_inv_ds = 1._wp/dz(k_idx)
7725 local_q_cons_val = q_cons_vf_arg%vf(eqn_idx%adv%beg)%sf(l_idx, q_idx, k_idx)
7726 local_k_term_val = kterm_arg(l_idx, q_idx, k_idx) ! Access is safe
7727 local_term_coeff = local_q_cons_val + local_k_term_val
7728 local_flux1 = flux_src_n_vf_arg%vf(eqn_idx%adv%beg)%sf(l_idx, q_idx, k_idx)
7729 local_flux2 = flux_src_n_vf_arg%vf(eqn_idx%adv%beg)%sf(l_idx, q_idx, k_idx - 1)
7730 rhs_vf_arg(eqn_idx%adv%beg)%sf(l_idx, q_idx, k_idx) = rhs_vf_arg(eqn_idx%adv%beg)%sf(l_idx, &
7731 & q_idx, k_idx) + local_inv_ds*local_term_coeff*(local_flux1 - local_flux2)
7732 end do; end do; end do
7733
7734# 1314 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7735#if defined(MFC_OpenACC)
7736# 1314 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7737!$acc end parallel loop
7738# 1314 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7739#elif defined(MFC_OpenMP)
7740# 1314 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7741
7742# 1314 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7743!$omp end target teams loop
7744# 1314 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7745#endif
7746 end if
7747 else
7748
7749# 1317 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7750
7751# 1317 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7752#if defined(MFC_OpenACC)
7753# 1317 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7754!$acc parallel loop collapse(4) gang vector default(present) private(j_adv, k_idx, l_idx, q_idx, local_inv_ds, local_term_coeff, local_flux1, local_flux2)
7755# 1317 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7756#elif defined(MFC_OpenMP)
7757# 1317 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7758
7759# 1317 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7760
7761# 1317 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7762
7763# 1317 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7764!$omp target teams loop defaultmap(firstprivate:scalar) bind(teams,parallel) collapse(4) defaultmap(tofrom:aggregate) defaultmap(tofrom:allocatable) defaultmap(tofrom:pointer) &
7765# 1317 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7766!$omp& private(j_adv, k_idx, l_idx, q_idx, local_inv_ds, local_term_coeff, local_flux1, local_flux2)
7767# 1317 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7768#endif
7769# 1319 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7770 do j_adv = eqn_idx%adv%beg, eqn_idx%adv%end
7771 do k_idx = 0, p; do q_idx = 0, n; do l_idx = 0, m
7772 local_inv_ds = 1._wp/dz(k_idx)
7773 local_term_coeff = q_cons_vf_arg%vf(j_adv)%sf(l_idx, q_idx, k_idx)
7774 local_flux1 = flux_src_n_vf_arg%vf(j_adv)%sf(l_idx, q_idx, k_idx)
7775 local_flux2 = flux_src_n_vf_arg%vf(j_adv)%sf(l_idx, q_idx, k_idx - 1)
7776 rhs_vf_arg(j_adv)%sf(l_idx, q_idx, k_idx) = rhs_vf_arg(j_adv)%sf(l_idx, q_idx, &
7777 & k_idx) + local_inv_ds*local_term_coeff*(local_flux1 - local_flux2)
7778 end do; end do; end do
7779 end do
7780
7781# 1329 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7782#if defined(MFC_OpenACC)
7783# 1329 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7784!$acc end parallel loop
7785# 1329 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7786#elif defined(MFC_OpenMP)
7787# 1329 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7788
7789# 1329 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7790!$omp end target teams loop
7791# 1329 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7792#endif
7793 end if
7794 end if
7795 end select
7796
7798
7799 end subroutine s_compute_advection_source_term
7800
7801 !> Add viscous, surface-tension, and species-diffusion source flux contributions to the RHS for a given direction
7802 subroutine s_compute_additional_physics_rhs(idir, q_prim_vf, rhs_vf, flux_src_n_in, dq_prim_dx_vf, dq_prim_dy_vf, dq_prim_dz_vf)
7803
7804 integer, intent(in) :: idir
7805 type(scalar_field), dimension(sys_size), intent(in) :: q_prim_vf
7806 type(scalar_field), dimension(sys_size), intent(inout) :: rhs_vf
7807 type(scalar_field), dimension(sys_size), intent(in) :: flux_src_n_in
7808 type(scalar_field), dimension(sys_size), intent(in) :: dq_prim_dx_vf, dq_prim_dy_vf, dq_prim_dz_vf
7809 integer :: i, j, k, l
7810
7811 if (idir == 1) then ! x-direction
7812 if (surface_tension) then
7813
7814# 1350 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7815
7816# 1350 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7817#if defined(MFC_OpenACC)
7818# 1350 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7819!$acc parallel loop collapse(3) gang vector default(present) private(j, k, l)
7820# 1350 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7821#elif defined(MFC_OpenMP)
7822# 1350 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7823
7824# 1350 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7825
7826# 1350 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7827
7828# 1350 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7829!$omp target teams loop defaultmap(firstprivate:scalar) bind(teams,parallel) collapse(3) defaultmap(tofrom:aggregate) defaultmap(tofrom:allocatable) defaultmap(tofrom:pointer) private(j, k, l)
7830# 1350 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7831#endif
7832 do l = 0, p
7833 do k = 0, n
7834 do j = 0, m
7835 rhs_vf(eqn_idx%c)%sf(j, k, l) = rhs_vf(eqn_idx%c)%sf(j, k, &
7836 & l) + 1._wp/dx(j)*q_prim_vf(eqn_idx%c)%sf(j, k, l)*(flux_src_n_in(eqn_idx%adv%beg)%sf(j, k, &
7837 & l) - flux_src_n_in(eqn_idx%adv%beg)%sf(j - 1, k, l))
7838 end do
7839 end do
7840 end do
7841
7842# 1360 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7843#if defined(MFC_OpenACC)
7844# 1360 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7845!$acc end parallel loop
7846# 1360 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7847#elif defined(MFC_OpenMP)
7848# 1360 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7849
7850# 1360 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7851!$omp end target teams loop
7852# 1360 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7853#endif
7854 end if
7855
7856 if ((surface_tension .or. viscous) .or. chem_params%diffusion) then
7857
7858# 1364 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7859
7860# 1364 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7861#if defined(MFC_OpenACC)
7862# 1364 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7863!$acc parallel loop collapse(3) gang vector default(present) private(j, k, l)
7864# 1364 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7865#elif defined(MFC_OpenMP)
7866# 1364 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7867
7868# 1364 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7869
7870# 1364 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7871
7872# 1364 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7873!$omp target teams loop defaultmap(firstprivate:scalar) bind(teams,parallel) collapse(3) defaultmap(tofrom:aggregate) defaultmap(tofrom:allocatable) defaultmap(tofrom:pointer) private(j, k, l)
7874# 1364 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7875#endif
7876 do l = 0, p
7877 do k = 0, n
7878 do j = 0, m
7879 if (surface_tension .or. viscous) then
7880
7881# 1369 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7882#if defined(MFC_OpenACC)
7883# 1369 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7884!$acc loop seq
7885# 1369 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7886#elif defined(MFC_OpenMP)
7887# 1369 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7888
7889# 1369 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7890#endif
7891 do i = eqn_idx%mom%beg, eqn_idx%E
7892 rhs_vf(i)%sf(j, k, l) = rhs_vf(i)%sf(j, k, l) + 1._wp/dx(j)*(flux_src_n_in(i)%sf(j - 1, k, &
7893 & l) - flux_src_n_in(i)%sf(j, k, l))
7894 end do
7895 end if
7896
7897 if (chem_params%diffusion) then
7898
7899# 1377 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7900#if defined(MFC_OpenACC)
7901# 1377 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7902!$acc loop seq
7903# 1377 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7904#elif defined(MFC_OpenMP)
7905# 1377 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7906
7907# 1377 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7908#endif
7909 do i = eqn_idx%species%beg, eqn_idx%species%end
7910 rhs_vf(i)%sf(j, k, l) = rhs_vf(i)%sf(j, k, l) + 1._wp/dx(j)*(flux_src_n_in(i)%sf(j - 1, k, &
7911 & l) - flux_src_n_in(i)%sf(j, k, l))
7912 end do
7913
7914 if (.not. viscous) then
7915 rhs_vf(eqn_idx%E)%sf(j, k, l) = rhs_vf(eqn_idx%E)%sf(j, k, &
7916 & l) + 1._wp/dx(j)*(flux_src_n_in(eqn_idx%E)%sf(j - 1, k, &
7917 & l) - flux_src_n_in(eqn_idx%E)%sf(j, k, l))
7918 end if
7919 end if
7920 end do
7921 end do
7922 end do
7923
7924# 1392 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7925#if defined(MFC_OpenACC)
7926# 1392 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7927!$acc end parallel loop
7928# 1392 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7929#elif defined(MFC_OpenMP)
7930# 1392 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7931
7932# 1392 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7933!$omp end target teams loop
7934# 1392 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7935#endif
7936 end if
7937 else if (idir == 2) then ! y-direction
7938 if (surface_tension) then
7939
7940# 1396 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7941
7942# 1396 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7943#if defined(MFC_OpenACC)
7944# 1396 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7945!$acc parallel loop collapse(3) gang vector default(present) private(j, k, l)
7946# 1396 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7947#elif defined(MFC_OpenMP)
7948# 1396 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7949
7950# 1396 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7951
7952# 1396 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7953
7954# 1396 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7955!$omp target teams loop defaultmap(firstprivate:scalar) bind(teams,parallel) collapse(3) defaultmap(tofrom:aggregate) defaultmap(tofrom:allocatable) defaultmap(tofrom:pointer) private(j, k, l)
7956# 1396 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7957#endif
7958 do l = 0, p
7959 do k = 0, n
7960 do j = 0, m
7961 rhs_vf(eqn_idx%c)%sf(j, k, l) = rhs_vf(eqn_idx%c)%sf(j, k, &
7962 & l) + 1._wp/dy(k)*q_prim_vf(eqn_idx%c)%sf(j, k, l)*(flux_src_n_in(eqn_idx%adv%beg)%sf(j, k, &
7963 & l) - flux_src_n_in(eqn_idx%adv%beg)%sf(j, k - 1, l))
7964 end do
7965 end do
7966 end do
7967
7968# 1406 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7969#if defined(MFC_OpenACC)
7970# 1406 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7971!$acc end parallel loop
7972# 1406 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7973#elif defined(MFC_OpenMP)
7974# 1406 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7975
7976# 1406 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7977!$omp end target teams loop
7978# 1406 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7979#endif
7980 end if
7981
7982 if (cyl_coord .and. ((bc_y%beg == -2) .or. (bc_y%beg == -14))) then
7983 if (viscous) then
7984 if (p > 0) then
7985 call s_compute_viscous_stress_cylindrical_boundary(q_prim_vf, &
7986 & dq_prim_dx_vf(eqn_idx%mom%beg:eqn_idx%mom%end), dq_prim_dy_vf(eqn_idx%mom%beg:eqn_idx%mom%end), &
7987 & dq_prim_dz_vf(eqn_idx%mom%beg:eqn_idx%mom%end), tau_re_vf, idwbuff(1), idwbuff(2), idwbuff(3))
7988 else
7989 call s_compute_viscous_stress_cylindrical_boundary(q_prim_vf, &
7990 & dq_prim_dx_vf(eqn_idx%mom%beg:eqn_idx%mom%end), dq_prim_dy_vf(eqn_idx%mom%beg:eqn_idx%mom%end), &
7991 & dq_prim_dz_vf(eqn_idx%mom%beg:eqn_idx%mom%end), tau_re_vf, idwbuff(1), idwbuff(2), idwbuff(3))
7992 end if
7993
7994
7995# 1421 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7996
7997# 1421 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7998#if defined(MFC_OpenACC)
7999# 1421 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8000!$acc parallel loop collapse(2) gang vector default(present) private(i, j, l)
8001# 1421 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8002#elif defined(MFC_OpenMP)
8003# 1421 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8004
8005# 1421 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8006
8007# 1421 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8008
8009# 1421 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8010!$omp target teams loop defaultmap(firstprivate:scalar) bind(teams,parallel) collapse(2) defaultmap(tofrom:aggregate) defaultmap(tofrom:allocatable) defaultmap(tofrom:pointer) private(i, j, l)
8011# 1421 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8012#endif
8013 do l = 0, p
8014 do j = 0, m
8015
8016# 1424 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8017#if defined(MFC_OpenACC)
8018# 1424 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8019!$acc loop seq
8020# 1424 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8021#elif defined(MFC_OpenMP)
8022# 1424 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8023
8024# 1424 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8025#endif
8026 do i = eqn_idx%mom%beg, eqn_idx%E
8027 rhs_vf(i)%sf(j, 0, l) = rhs_vf(i)%sf(j, 0, l) + 1._wp/(y_cc(1) - y_cc(-1))*(tau_re_vf(i)%sf(j, &
8028 & -1, l) - tau_re_vf(i)%sf(j, 1, l))
8029 end do
8030 end do
8031 end do
8032
8033# 1431 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8034#if defined(MFC_OpenACC)
8035# 1431 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8036!$acc end parallel loop
8037# 1431 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8038#elif defined(MFC_OpenMP)
8039# 1431 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8040
8041# 1431 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8042!$omp end target teams loop
8043# 1431 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8044#endif
8045 end if
8046
8047
8048# 1434 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8049
8050# 1434 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8051#if defined(MFC_OpenACC)
8052# 1434 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8053!$acc parallel loop collapse(3) gang vector default(present) private(i, j, k, l)
8054# 1434 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8055#elif defined(MFC_OpenMP)
8056# 1434 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8057
8058# 1434 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8059
8060# 1434 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8061
8062# 1434 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8063!$omp target teams loop defaultmap(firstprivate:scalar) bind(teams,parallel) collapse(3) defaultmap(tofrom:aggregate) defaultmap(tofrom:allocatable) defaultmap(tofrom:pointer) private(i, j, k, l)
8064# 1434 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8065#endif
8066 do l = 0, p
8067 do k = 1, n
8068 do j = 0, m
8069
8070# 1438 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8071#if defined(MFC_OpenACC)
8072# 1438 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8073!$acc loop seq
8074# 1438 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8075#elif defined(MFC_OpenMP)
8076# 1438 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8077
8078# 1438 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8079#endif
8080 do i = eqn_idx%mom%beg, eqn_idx%E
8081 rhs_vf(i)%sf(j, k, l) = rhs_vf(i)%sf(j, k, l) + 1._wp/dy(k)*(flux_src_n_in(i)%sf(j, k - 1, &
8082 & l) - flux_src_n_in(i)%sf(j, k, l))
8083 end do
8084 end do
8085 end do
8086 end do
8087
8088# 1446 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8089#if defined(MFC_OpenACC)
8090# 1446 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8091!$acc end parallel loop
8092# 1446 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8093#elif defined(MFC_OpenMP)
8094# 1446 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8095
8096# 1446 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8097!$omp end target teams loop
8098# 1446 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8099#endif
8100 else
8101 if ((surface_tension .or. viscous) .or. chem_params%diffusion) then
8102
8103# 1449 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8104
8105# 1449 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8106#if defined(MFC_OpenACC)
8107# 1449 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8108!$acc parallel loop collapse(3) gang vector default(present) private(i, j, k, l)
8109# 1449 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8110#elif defined(MFC_OpenMP)
8111# 1449 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8112
8113# 1449 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8114
8115# 1449 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8116
8117# 1449 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8118!$omp target teams loop defaultmap(firstprivate:scalar) bind(teams,parallel) collapse(3) defaultmap(tofrom:aggregate) defaultmap(tofrom:allocatable) defaultmap(tofrom:pointer) private(i, j, k, l)
8119# 1449 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8120#endif
8121 do l = 0, p
8122 do k = 0, n
8123 do j = 0, m
8124 if (surface_tension .or. viscous) then
8125
8126# 1454 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8127#if defined(MFC_OpenACC)
8128# 1454 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8129!$acc loop seq
8130# 1454 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8131#elif defined(MFC_OpenMP)
8132# 1454 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8133
8134# 1454 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8135#endif
8136 do i = eqn_idx%mom%beg, eqn_idx%E
8137 rhs_vf(i)%sf(j, k, l) = rhs_vf(i)%sf(j, k, l) + 1._wp/dy(k)*(flux_src_n_in(i)%sf(j, &
8138 & k - 1, l) - flux_src_n_in(i)%sf(j, k, l))
8139 end do
8140 end if
8141
8142 if (chem_params%diffusion) then
8143
8144# 1462 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8145#if defined(MFC_OpenACC)
8146# 1462 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8147!$acc loop seq
8148# 1462 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8149#elif defined(MFC_OpenMP)
8150# 1462 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8151
8152# 1462 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8153#endif
8154 do i = eqn_idx%species%beg, eqn_idx%species%end
8155 rhs_vf(i)%sf(j, k, l) = rhs_vf(i)%sf(j, k, l) + 1._wp/dy(k)*(flux_src_n_in(i)%sf(j, &
8156 & k - 1, l) - flux_src_n_in(i)%sf(j, k, l))
8157 end do
8158 if (.not. viscous) then
8159 rhs_vf(eqn_idx%E)%sf(j, k, l) = rhs_vf(eqn_idx%E)%sf(j, k, &
8160 & l) + 1._wp/dy(k)*(flux_src_n_in(eqn_idx%E)%sf(j, k - 1, &
8161 & l) - flux_src_n_in(eqn_idx%E)%sf(j, k, l))
8162 end if
8163 end if
8164 end do
8165 end do
8166 end do
8167
8168# 1476 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8169#if defined(MFC_OpenACC)
8170# 1476 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8171!$acc end parallel loop
8172# 1476 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8173#elif defined(MFC_OpenMP)
8174# 1476 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8175
8176# 1476 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8177!$omp end target teams loop
8178# 1476 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8179#endif
8180 end if
8181 end if
8182
8183 ! Applying the geometrical viscous Riemann source fluxes calculated as average of values at cell boundaries
8184 if (cyl_coord) then
8185 if ((bc_y%beg == -2) .or. (bc_y%beg == -14)) then
8186
8187# 1483 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8188
8189# 1483 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8190#if defined(MFC_OpenACC)
8191# 1483 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8192!$acc parallel loop collapse(3) gang vector default(present) private(i, j, k, l)
8193# 1483 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8194#elif defined(MFC_OpenMP)
8195# 1483 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8196
8197# 1483 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8198
8199# 1483 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8200
8201# 1483 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8202!$omp target teams loop defaultmap(firstprivate:scalar) bind(teams,parallel) collapse(3) defaultmap(tofrom:aggregate) defaultmap(tofrom:allocatable) defaultmap(tofrom:pointer) private(i, j, k, l)
8203# 1483 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8204#endif
8205 do l = 0, p
8206 do k = 1, n
8207 do j = 0, m
8208
8209# 1487 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8210#if defined(MFC_OpenACC)
8211# 1487 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8212!$acc loop seq
8213# 1487 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8214#elif defined(MFC_OpenMP)
8215# 1487 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8216
8217# 1487 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8218#endif
8219 do i = eqn_idx%mom%beg, eqn_idx%E
8220 rhs_vf(i)%sf(j, k, l) = rhs_vf(i)%sf(j, k, l) - 5.e-1_wp/y_cc(k)*(flux_src_n_in(i)%sf(j, &
8221 & k - 1, l) + flux_src_n_in(i)%sf(j, k, l))
8222 end do
8223 end do
8224 end do
8225 end do
8226
8227# 1495 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8228#if defined(MFC_OpenACC)
8229# 1495 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8230!$acc end parallel loop
8231# 1495 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8232#elif defined(MFC_OpenMP)
8233# 1495 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8234
8235# 1495 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8236!$omp end target teams loop
8237# 1495 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8238#endif
8239
8240 if (viscous) then
8241
8242# 1498 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8243
8244# 1498 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8245#if defined(MFC_OpenACC)
8246# 1498 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8247!$acc parallel loop collapse(2) gang vector default(present) private(i, j, l)
8248# 1498 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8249#elif defined(MFC_OpenMP)
8250# 1498 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8251
8252# 1498 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8253
8254# 1498 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8255
8256# 1498 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8257!$omp target teams loop defaultmap(firstprivate:scalar) bind(teams,parallel) collapse(2) defaultmap(tofrom:aggregate) defaultmap(tofrom:allocatable) defaultmap(tofrom:pointer) private(i, j, l)
8258# 1498 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8259#endif
8260 do l = 0, p
8261 do j = 0, m
8262
8263# 1501 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8264#if defined(MFC_OpenACC)
8265# 1501 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8266!$acc loop seq
8267# 1501 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8268#elif defined(MFC_OpenMP)
8269# 1501 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8270
8271# 1501 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8272#endif
8273 do i = eqn_idx%mom%beg, eqn_idx%E
8274 rhs_vf(i)%sf(j, 0, l) = rhs_vf(i)%sf(j, 0, l) - 1._wp/y_cc(0)*tau_re_vf(i)%sf(j, 0, l)
8275 end do
8276 end do
8277 end do
8278
8279# 1507 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8280#if defined(MFC_OpenACC)
8281# 1507 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8282!$acc end parallel loop
8283# 1507 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8284#elif defined(MFC_OpenMP)
8285# 1507 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8286
8287# 1507 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8288!$omp end target teams loop
8289# 1507 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8290#endif
8291 end if
8292 else
8293
8294# 1510 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8295
8296# 1510 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8297#if defined(MFC_OpenACC)
8298# 1510 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8299!$acc parallel loop collapse(3) gang vector default(present) private(i, j, k, l)
8300# 1510 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8301#elif defined(MFC_OpenMP)
8302# 1510 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8303
8304# 1510 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8305
8306# 1510 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8307
8308# 1510 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8309!$omp target teams loop defaultmap(firstprivate:scalar) bind(teams,parallel) collapse(3) defaultmap(tofrom:aggregate) defaultmap(tofrom:allocatable) defaultmap(tofrom:pointer) private(i, j, k, l)
8310# 1510 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8311#endif
8312 do l = 0, p
8313 do k = 0, n
8314 do j = 0, m
8315
8316# 1514 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8317#if defined(MFC_OpenACC)
8318# 1514 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8319!$acc loop seq
8320# 1514 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8321#elif defined(MFC_OpenMP)
8322# 1514 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8323
8324# 1514 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8325#endif
8326 do i = eqn_idx%mom%beg, eqn_idx%E
8327 rhs_vf(i)%sf(j, k, l) = rhs_vf(i)%sf(j, k, l) - 5.e-1_wp/y_cc(k)*(flux_src_n_in(i)%sf(j, &
8328 & k - 1, l) + flux_src_n_in(i)%sf(j, k, l))
8329 end do
8330 end do
8331 end do
8332 end do
8333
8334# 1522 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8335#if defined(MFC_OpenACC)
8336# 1522 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8337!$acc end parallel loop
8338# 1522 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8339#elif defined(MFC_OpenMP)
8340# 1522 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8341
8342# 1522 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8343!$omp end target teams loop
8344# 1522 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8345#endif
8346 end if
8347 end if
8348 else if (idir == 3) then ! z-direction
8349 if (surface_tension) then
8350
8351# 1527 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8352
8353# 1527 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8354#if defined(MFC_OpenACC)
8355# 1527 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8356!$acc parallel loop collapse(3) gang vector default(present) private(j, k, l)
8357# 1527 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8358#elif defined(MFC_OpenMP)
8359# 1527 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8360
8361# 1527 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8362
8363# 1527 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8364
8365# 1527 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8366!$omp target teams loop defaultmap(firstprivate:scalar) bind(teams,parallel) collapse(3) defaultmap(tofrom:aggregate) defaultmap(tofrom:allocatable) defaultmap(tofrom:pointer) private(j, k, l)
8367# 1527 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8368#endif
8369 do l = 0, p
8370 do k = 0, n
8371 do j = 0, m
8372 rhs_vf(eqn_idx%c)%sf(j, k, l) = rhs_vf(eqn_idx%c)%sf(j, k, &
8373 & l) + 1._wp/dz(l)*q_prim_vf(eqn_idx%c)%sf(j, k, l)*(flux_src_n_in(eqn_idx%adv%beg)%sf(j, k, &
8374 & l) - flux_src_n_in(eqn_idx%adv%beg)%sf(j, k, l - 1))
8375 end do
8376 end do
8377 end do
8378
8379# 1537 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8380#if defined(MFC_OpenACC)
8381# 1537 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8382!$acc end parallel loop
8383# 1537 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8384#elif defined(MFC_OpenMP)
8385# 1537 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8386
8387# 1537 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8388!$omp end target teams loop
8389# 1537 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8390#endif
8391 end if
8392
8393 if ((surface_tension .or. viscous) .or. chem_params%diffusion) then
8394
8395# 1541 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8396
8397# 1541 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8398#if defined(MFC_OpenACC)
8399# 1541 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8400!$acc parallel loop collapse(3) gang vector default(present) private(i, j, k, l)
8401# 1541 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8402#elif defined(MFC_OpenMP)
8403# 1541 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8404
8405# 1541 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8406
8407# 1541 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8408
8409# 1541 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8410!$omp target teams loop defaultmap(firstprivate:scalar) bind(teams,parallel) collapse(3) defaultmap(tofrom:aggregate) defaultmap(tofrom:allocatable) defaultmap(tofrom:pointer) private(i, j, k, l)
8411# 1541 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8412#endif
8413 do l = 0, p
8414 do k = 0, n
8415 do j = 0, m
8416 if (surface_tension .or. viscous) then
8417
8418# 1546 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8419#if defined(MFC_OpenACC)
8420# 1546 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8421!$acc loop seq
8422# 1546 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8423#elif defined(MFC_OpenMP)
8424# 1546 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8425
8426# 1546 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8427#endif
8428 do i = eqn_idx%mom%beg, eqn_idx%E
8429 rhs_vf(i)%sf(j, k, l) = rhs_vf(i)%sf(j, k, l) + 1._wp/dz(l)*(flux_src_n_in(i)%sf(j, k, &
8430 & l - 1) - flux_src_n_in(i)%sf(j, k, l))
8431 end do
8432 end if
8433
8434 if (chem_params%diffusion) then
8435
8436# 1554 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8437#if defined(MFC_OpenACC)
8438# 1554 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8439!$acc loop seq
8440# 1554 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8441#elif defined(MFC_OpenMP)
8442# 1554 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8443
8444# 1554 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8445#endif
8446 do i = eqn_idx%species%beg, eqn_idx%species%end
8447 rhs_vf(i)%sf(j, k, l) = rhs_vf(i)%sf(j, k, l) + 1._wp/dz(l)*(flux_src_n_in(i)%sf(j, k, &
8448 & l - 1) - flux_src_n_in(i)%sf(j, k, l))
8449 end do
8450 if (.not. viscous) then
8451 rhs_vf(eqn_idx%E)%sf(j, k, l) = rhs_vf(eqn_idx%E)%sf(j, k, &
8452 & l) + 1._wp/dz(l)*(flux_src_n_in(eqn_idx%E)%sf(j, k, &
8453 & l - 1) - flux_src_n_in(eqn_idx%E)%sf(j, k, l))
8454 end if
8455 end if
8456 end do
8457 end do
8458 end do
8459
8460# 1568 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8461#if defined(MFC_OpenACC)
8462# 1568 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8463!$acc end parallel loop
8464# 1568 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8465#elif defined(MFC_OpenMP)
8466# 1568 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8467
8468# 1568 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8469!$omp end target teams loop
8470# 1568 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8471#endif
8472 end if
8473
8474 if (grid_geometry == 3) then
8475
8476# 1572 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8477
8478# 1572 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8479#if defined(MFC_OpenACC)
8480# 1572 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8481!$acc parallel loop collapse(3) gang vector default(present) private(j, k, l)
8482# 1572 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8483#elif defined(MFC_OpenMP)
8484# 1572 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8485
8486# 1572 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8487
8488# 1572 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8489
8490# 1572 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8491!$omp target teams loop defaultmap(firstprivate:scalar) bind(teams,parallel) collapse(3) defaultmap(tofrom:aggregate) defaultmap(tofrom:allocatable) defaultmap(tofrom:pointer) private(j, k, l)
8492# 1572 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8493#endif
8494 do l = 0, p
8495 do k = 0, n
8496 do j = 0, m
8497 rhs_vf(eqn_idx%mom%beg + 1)%sf(j, k, l) = rhs_vf(eqn_idx%mom%beg + 1)%sf(j, k, &
8498 & l) + 5.e-1_wp*(flux_src_n_in(eqn_idx%mom%end)%sf(j, k, &
8499 & l - 1) + flux_src_n_in(eqn_idx%mom%end)%sf(j, k, l))
8500
8501 rhs_vf(eqn_idx%mom%end)%sf(j, k, l) = rhs_vf(eqn_idx%mom%end)%sf(j, k, &
8502 & l) - 5.e-1_wp*(flux_src_n_in(eqn_idx%mom%beg + 1)%sf(j, k, &
8503 & l - 1) + flux_src_n_in(eqn_idx%mom%beg + 1)%sf(j, k, l))
8504 end do
8505 end do
8506 end do
8507
8508# 1586 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8509#if defined(MFC_OpenACC)
8510# 1586 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8511!$acc end parallel loop
8512# 1586 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8513#elif defined(MFC_OpenMP)
8514# 1586 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8515
8516# 1586 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8517!$omp end target teams loop
8518# 1586 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8519#endif
8520 end if
8521 end if
8522
8524
8525 !> Reconstruct left and right cell-boundary values from cell-averaged variables
8526 subroutine s_reconstruct_cell_boundary_values(v_vf, vL_x, vR_x, norm_dir)
8527
8528 type(scalar_field), dimension(iv%beg:iv%end), intent(in) :: v_vf
8529 real(wp), dimension(idwbuff(1)%beg:,idwbuff(2)%beg:,idwbuff(3)%beg:,1:), intent(inout) :: vL_x
8530 real(wp), dimension(idwbuff(1)%beg:,idwbuff(2)%beg:,idwbuff(3)%beg:,1:), intent(inout) :: vR_x
8531 integer, intent(in) :: norm_dir
8532 integer :: recon_dir !< Coordinate direction of the reconstruction
8533 integer :: i, j, k, l
8534
8535# 1603 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8536 if (recon_type == recon_type_weno) then
8537 ! Reconstruction in s1-direction
8538 if (norm_dir == 1) then
8539 is1 = idwbuff(1); is2 = idwbuff(2); is3 = idwbuff(3)
8540 recon_dir = 1; is1%beg = is1%beg + weno_polyn
8541 is1%end = is1%end - weno_polyn
8542 else if (norm_dir == 2) then
8543 is1 = idwbuff(2); is2 = idwbuff(1); is3 = idwbuff(3)
8544 recon_dir = 2; is1%beg = is1%beg + weno_polyn
8545 is1%end = is1%end - weno_polyn
8546 else
8547 is1 = idwbuff(3); is2 = idwbuff(2); is3 = idwbuff(1)
8548 recon_dir = 3; is1%beg = is1%beg + weno_polyn
8549 is1%end = is1%end - weno_polyn
8550 end if
8551
8552 call s_weno (v_vf(iv%beg:iv%end), vl_x(:,:,:,iv%beg:iv%end), vr_x(:,:,:,iv%beg:iv%end), recon_dir, is1, &
8553 & is2, is3)
8554 end if
8555# 1603 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8556 if (recon_type == recon_type_muscl) then
8557 ! Reconstruction in s1-direction
8558 if (norm_dir == 1) then
8559 is1 = idwbuff(1); is2 = idwbuff(2); is3 = idwbuff(3)
8560 recon_dir = 1; is1%beg = is1%beg + muscl_polyn
8561 is1%end = is1%end - muscl_polyn
8562 else if (norm_dir == 2) then
8563 is1 = idwbuff(2); is2 = idwbuff(1); is3 = idwbuff(3)
8564 recon_dir = 2; is1%beg = is1%beg + muscl_polyn
8565 is1%end = is1%end - muscl_polyn
8566 else
8567 is1 = idwbuff(3); is2 = idwbuff(2); is3 = idwbuff(1)
8568 recon_dir = 3; is1%beg = is1%beg + muscl_polyn
8569 is1%end = is1%end - muscl_polyn
8570 end if
8571
8572 call s_muscl (v_vf(iv%beg:iv%end), vl_x(:,:,:,iv%beg:iv%end), vr_x(:,:,:,iv%beg:iv%end), recon_dir, is1, &
8573 & is2, is3)
8574 end if
8575# 1623 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8576
8578
8579 !> Perform first-order (piecewise constant) reconstruction of left and right cell-boundary values
8580 subroutine s_reconstruct_cell_boundary_values_first_order(v_vf, vL_x, vR_x, norm_dir)
8581
8582 type(scalar_field), dimension(iv%beg:iv%end), intent(in) :: v_vf
8583 real(wp), dimension(idwbuff(1)%beg:,idwbuff(2)%beg:,idwbuff(3)%beg:,1:), intent(inout) :: vL_x
8584 real(wp), dimension(idwbuff(1)%beg:,idwbuff(2)%beg:,idwbuff(3)%beg:,1:), intent(inout) :: vR_x
8585 integer, intent(in) :: norm_dir
8586 integer :: recon_dir !< Coordinate direction of the reconstruction
8587 integer :: i, j, k, l
8588 ! Reconstruction in s1-direction
8589
8590# 1638 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8591 if (recon_type == recon_type_weno) then
8592 if (norm_dir == 1) then
8593 is1 = idwbuff(1); is2 = idwbuff(2); is3 = idwbuff(3)
8594 recon_dir = 1; is1%beg = is1%beg + weno_polyn
8595 is1%end = is1%end - weno_polyn
8596 else if (norm_dir == 2) then
8597 is1 = idwbuff(2); is2 = idwbuff(1); is3 = idwbuff(3)
8598 recon_dir = 2; is1%beg = is1%beg + weno_polyn
8599 is1%end = is1%end - weno_polyn
8600 else
8601 is1 = idwbuff(3); is2 = idwbuff(2); is3 = idwbuff(1)
8602 recon_dir = 3; is1%beg = is1%beg + weno_polyn
8603 is1%end = is1%end - weno_polyn
8604 end if
8605
8606
8607# 1653 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8608#if defined(MFC_OpenACC)
8609# 1653 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8610!$acc update device(is1, is2, is3, iv)
8611# 1653 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8612#elif defined(MFC_OpenMP)
8613# 1653 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8614!$omp target update to(is1, is2, is3, iv)
8615# 1653 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8616#endif
8617 end if
8618# 1638 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8619 if (recon_type == recon_type_muscl) then
8620 if (norm_dir == 1) then
8621 is1 = idwbuff(1); is2 = idwbuff(2); is3 = idwbuff(3)
8622 recon_dir = 1; is1%beg = is1%beg + muscl_polyn
8623 is1%end = is1%end - muscl_polyn
8624 else if (norm_dir == 2) then
8625 is1 = idwbuff(2); is2 = idwbuff(1); is3 = idwbuff(3)
8626 recon_dir = 2; is1%beg = is1%beg + muscl_polyn
8627 is1%end = is1%end - muscl_polyn
8628 else
8629 is1 = idwbuff(3); is2 = idwbuff(2); is3 = idwbuff(1)
8630 recon_dir = 3; is1%beg = is1%beg + muscl_polyn
8631 is1%end = is1%end - muscl_polyn
8632 end if
8633
8634
8635# 1653 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8636#if defined(MFC_OpenACC)
8637# 1653 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8638!$acc update device(is1, is2, is3, iv)
8639# 1653 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8640#elif defined(MFC_OpenMP)
8641# 1653 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8642!$omp target update to(is1, is2, is3, iv)
8643# 1653 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8644#endif
8645 end if
8646# 1656 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8647
8648 if (recon_dir == 1) then
8649
8650# 1658 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8651
8652# 1658 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8653#if defined(MFC_OpenACC)
8654# 1658 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8655!$acc parallel loop collapse(4) gang vector default(present)
8656# 1658 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8657#elif defined(MFC_OpenMP)
8658# 1658 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8659
8660# 1658 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8661
8662# 1658 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8663
8664# 1658 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8665!$omp target teams loop defaultmap(firstprivate:scalar) bind(teams,parallel) collapse(4) defaultmap(tofrom:aggregate) defaultmap(tofrom:allocatable) defaultmap(tofrom:pointer)
8666# 1658 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8667#endif
8668 do i = iv%beg, iv%end
8669 do l = is3%beg, is3%end
8670 do k = is2%beg, is2%end
8671 do j = is1%beg, is1%end
8672 vl_x(j, k, l, i) = v_vf(i)%sf(j, k, l)
8673 vr_x(j, k, l, i) = v_vf(i)%sf(j, k, l)
8674 end do
8675 end do
8676 end do
8677 end do
8678
8679# 1669 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8680#if defined(MFC_OpenACC)
8681# 1669 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8682!$acc end parallel loop
8683# 1669 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8684#elif defined(MFC_OpenMP)
8685# 1669 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8686
8687# 1669 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8688!$omp end target teams loop
8689# 1669 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8690#endif
8691 else if (recon_dir == 2) then
8692
8693# 1671 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8694
8695# 1671 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8696#if defined(MFC_OpenACC)
8697# 1671 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8698!$acc parallel loop collapse(4) gang vector default(present)
8699# 1671 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8700#elif defined(MFC_OpenMP)
8701# 1671 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8702
8703# 1671 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8704
8705# 1671 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8706
8707# 1671 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8708!$omp target teams loop defaultmap(firstprivate:scalar) bind(teams,parallel) collapse(4) defaultmap(tofrom:aggregate) defaultmap(tofrom:allocatable) defaultmap(tofrom:pointer)
8709# 1671 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8710#endif
8711 do i = iv%beg, iv%end
8712 do l = is3%beg, is3%end
8713 do j = is1%beg, is1%end
8714 do k = is2%beg, is2%end
8715 vl_x(k, j, l, i) = v_vf(i)%sf(k, j, l)
8716 vr_x(k, j, l, i) = v_vf(i)%sf(k, j, l)
8717 end do
8718 end do
8719 end do
8720 end do
8721
8722# 1682 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8723#if defined(MFC_OpenACC)
8724# 1682 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8725!$acc end parallel loop
8726# 1682 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8727#elif defined(MFC_OpenMP)
8728# 1682 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8729
8730# 1682 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8731!$omp end target teams loop
8732# 1682 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8733#endif
8734 else if (recon_dir == 3) then
8735
8736# 1684 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8737
8738# 1684 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8739#if defined(MFC_OpenACC)
8740# 1684 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8741!$acc parallel loop collapse(4) gang vector default(present)
8742# 1684 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8743#elif defined(MFC_OpenMP)
8744# 1684 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8745
8746# 1684 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8747
8748# 1684 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8749
8750# 1684 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8751!$omp target teams loop defaultmap(firstprivate:scalar) bind(teams,parallel) collapse(4) defaultmap(tofrom:aggregate) defaultmap(tofrom:allocatable) defaultmap(tofrom:pointer)
8752# 1684 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8753#endif
8754 do i = iv%beg, iv%end
8755 do j = is1%beg, is1%end
8756 do k = is2%beg, is2%end
8757 do l = is3%beg, is3%end
8758 vl_x(l, k, j, i) = v_vf(i)%sf(l, k, j)
8759 vr_x(l, k, j, i) = v_vf(i)%sf(l, k, j)
8760 end do
8761 end do
8762 end do
8763 end do
8764
8765# 1695 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8766#if defined(MFC_OpenACC)
8767# 1695 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8768!$acc end parallel loop
8769# 1695 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8770#elif defined(MFC_OpenMP)
8771# 1695 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8772
8773# 1695 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8774!$omp end target teams loop
8775# 1695 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8776#endif
8777 end if
8778
8780
8781 !> Module deallocation and/or disassociation procedures
8782 impure subroutine s_finalize_rhs_module
8783
8784 integer :: i, j, l
8785
8786 call s_finalize_pressure_relaxation_module
8787
8788 if (.not. igr) then
8789 do j = eqn_idx%cont%beg, eqn_idx%cont%end
8790 if (relativity) then
8791 ! Cons and Prim densities are different for relativity
8792#ifdef MFC_DEBUG
8793# 1711 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8794 block
8795# 1711 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8796 use iso_fortran_env, only: output_unit
8797# 1711 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8798
8799# 1711 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8800 print *, 'm_rhs.fpp:1711: ', '@:DEALLOCATE(q_cons_qp%vf(j)%sf)'
8801# 1711 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8802
8803# 1711 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8804 call flush (output_unit)
8805# 1711 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8806 end block
8807# 1711 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8808#endif
8809# 1711 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8810
8811# 1711 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8812#if defined(MFC_OpenACC)
8813# 1711 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8814!$acc exit data delete(q_cons_qp%vf(j)%sf)
8815# 1711 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8816#elif defined(MFC_OpenMP)
8817# 1711 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8818!$omp target exit data map(release:q_cons_qp%vf(j)%sf)
8819# 1711 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8820#endif
8821# 1711 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8822 deallocate (q_cons_qp%vf(j)%sf)
8823#ifdef MFC_DEBUG
8824# 1712 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8825 block
8826# 1712 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8827 use iso_fortran_env, only: output_unit
8828# 1712 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8829
8830# 1712 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8831 print *, 'm_rhs.fpp:1712: ', '@:DEALLOCATE(q_prim_qp%vf(j)%sf)'
8832# 1712 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8833
8834# 1712 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8835 call flush (output_unit)
8836# 1712 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8837 end block
8838# 1712 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8839#endif
8840# 1712 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8841
8842# 1712 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8843#if defined(MFC_OpenACC)
8844# 1712 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8845!$acc exit data delete(q_prim_qp%vf(j)%sf)
8846# 1712 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8847#elif defined(MFC_OpenMP)
8848# 1712 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8849!$omp target exit data map(release:q_prim_qp%vf(j)%sf)
8850# 1712 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8851#endif
8852# 1712 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8853 deallocate (q_prim_qp%vf(j)%sf)
8854 else
8855 nullify (q_prim_qp%vf(j)%sf)
8856 end if
8857 end do
8858
8859 do j = eqn_idx%adv%beg, eqn_idx%adv%end
8860 nullify (q_prim_qp%vf(j)%sf)
8861 end do
8862
8863 do j = eqn_idx%mom%beg, eqn_idx%E
8864#ifdef MFC_DEBUG
8865# 1723 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8866 block
8867# 1723 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8868 use iso_fortran_env, only: output_unit
8869# 1723 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8870
8871# 1723 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8872 print *, 'm_rhs.fpp:1723: ', '@:DEALLOCATE(q_cons_qp%vf(j)%sf)'
8873# 1723 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8874
8875# 1723 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8876 call flush (output_unit)
8877# 1723 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8878 end block
8879# 1723 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8880#endif
8881# 1723 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8882
8883# 1723 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8884#if defined(MFC_OpenACC)
8885# 1723 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8886!$acc exit data delete(q_cons_qp%vf(j)%sf)
8887# 1723 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8888#elif defined(MFC_OpenMP)
8889# 1723 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8890!$omp target exit data map(release:q_cons_qp%vf(j)%sf)
8891# 1723 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8892#endif
8893# 1723 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8894 deallocate (q_cons_qp%vf(j)%sf)
8895#ifdef MFC_DEBUG
8896# 1724 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8897 block
8898# 1724 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8899 use iso_fortran_env, only: output_unit
8900# 1724 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8901
8902# 1724 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8903 print *, 'm_rhs.fpp:1724: ', '@:DEALLOCATE(q_prim_qp%vf(j)%sf)'
8904# 1724 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8905
8906# 1724 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8907 call flush (output_unit)
8908# 1724 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8909 end block
8910# 1724 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8911#endif
8912# 1724 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8913
8914# 1724 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8915#if defined(MFC_OpenACC)
8916# 1724 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8917!$acc exit data delete(q_prim_qp%vf(j)%sf)
8918# 1724 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8919#elif defined(MFC_OpenMP)
8920# 1724 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8921!$omp target exit data map(release:q_prim_qp%vf(j)%sf)
8922# 1724 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8923#endif
8924# 1724 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8925 deallocate (q_prim_qp%vf(j)%sf)
8926 end do
8927 end if
8928
8929#ifdef MFC_DEBUG
8930# 1728 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8931 block
8932# 1728 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8933 use iso_fortran_env, only: output_unit
8934# 1728 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8935
8936# 1728 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8937 print *, 'm_rhs.fpp:1728: ', '@:DEALLOCATE(q_cons_qp%vf, q_prim_qp%vf)'
8938# 1728 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8939
8940# 1728 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8941 call flush (output_unit)
8942# 1728 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8943 end block
8944# 1728 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8945#endif
8946# 1728 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8947
8948# 1728 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8949#if defined(MFC_OpenACC)
8950# 1728 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8951!$acc exit data delete(q_cons_qp%vf, q_prim_qp%vf)
8952# 1728 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8953#elif defined(MFC_OpenMP)
8954# 1728 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8955!$omp target exit data map(release:q_cons_qp%vf, q_prim_qp%vf)
8956# 1728 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8957#endif
8958# 1728 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8959 deallocate (q_cons_qp%vf, q_prim_qp%vf)
8960
8961 if (.not. igr) then
8962#ifdef MFC_DEBUG
8963# 1731 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8964 block
8965# 1731 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8966 use iso_fortran_env, only: output_unit
8967# 1731 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8968
8969# 1731 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8970 print *, 'm_rhs.fpp:1731: ', '@:DEALLOCATE(qL_rsx_vf, qR_rsx_vf)'
8971# 1731 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8972
8973# 1731 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8974 call flush (output_unit)
8975# 1731 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8976 end block
8977# 1731 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8978#endif
8979# 1731 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8980
8981# 1731 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8982#if defined(MFC_OpenACC)
8983# 1731 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8984!$acc exit data delete(qL_rsx_vf, qR_rsx_vf)
8985# 1731 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8986#elif defined(MFC_OpenMP)
8987# 1731 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8988!$omp target exit data map(release:qL_rsx_vf, qR_rsx_vf)
8989# 1731 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8990#endif
8991# 1731 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8992 deallocate (ql_rsx_vf, qr_rsx_vf)
8993
8994 if (viscous) then
8995 do l = eqn_idx%mom%beg, eqn_idx%mom%end
8996#ifdef MFC_DEBUG
8997# 1735 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8998 block
8999# 1735 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9000 use iso_fortran_env, only: output_unit
9001# 1735 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9002
9003# 1735 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9004 print *, 'm_rhs.fpp:1735: ', '@:DEALLOCATE(dq_prim_dx_qp(1)%vf(l)%sf)'
9005# 1735 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9006
9007# 1735 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9008 call flush (output_unit)
9009# 1735 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9010 end block
9011# 1735 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9012#endif
9013# 1735 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9014
9015# 1735 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9016#if defined(MFC_OpenACC)
9017# 1735 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9018!$acc exit data delete(dq_prim_dx_qp(1)%vf(l)%sf)
9019# 1735 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9020#elif defined(MFC_OpenMP)
9021# 1735 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9022!$omp target exit data map(release:dq_prim_dx_qp(1)%vf(l)%sf)
9023# 1735 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9024#endif
9025# 1735 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9026 deallocate (dq_prim_dx_qp(1)%vf(l)%sf)
9027 end do
9028
9029 if (n > 0) then
9030 do l = eqn_idx%mom%beg, eqn_idx%mom%end
9031#ifdef MFC_DEBUG
9032# 1740 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9033 block
9034# 1740 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9035 use iso_fortran_env, only: output_unit
9036# 1740 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9037
9038# 1740 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9039 print *, 'm_rhs.fpp:1740: ', '@:DEALLOCATE(dq_prim_dy_qp(1)%vf(l)%sf)'
9040# 1740 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9041
9042# 1740 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9043 call flush (output_unit)
9044# 1740 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9045 end block
9046# 1740 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9047#endif
9048# 1740 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9049
9050# 1740 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9051#if defined(MFC_OpenACC)
9052# 1740 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9053!$acc exit data delete(dq_prim_dy_qp(1)%vf(l)%sf)
9054# 1740 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9055#elif defined(MFC_OpenMP)
9056# 1740 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9057!$omp target exit data map(release:dq_prim_dy_qp(1)%vf(l)%sf)
9058# 1740 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9059#endif
9060# 1740 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9061 deallocate (dq_prim_dy_qp(1)%vf(l)%sf)
9062 end do
9063
9064 if (p > 0) then
9065 do l = eqn_idx%mom%beg, eqn_idx%mom%end
9066#ifdef MFC_DEBUG
9067# 1745 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9068 block
9069# 1745 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9070 use iso_fortran_env, only: output_unit
9071# 1745 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9072
9073# 1745 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9074 print *, 'm_rhs.fpp:1745: ', '@:DEALLOCATE(dq_prim_dz_qp(1)%vf(l)%sf)'
9075# 1745 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9076
9077# 1745 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9078 call flush (output_unit)
9079# 1745 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9080 end block
9081# 1745 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9082#endif
9083# 1745 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9084
9085# 1745 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9086#if defined(MFC_OpenACC)
9087# 1745 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9088!$acc exit data delete(dq_prim_dz_qp(1)%vf(l)%sf)
9089# 1745 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9090#elif defined(MFC_OpenMP)
9091# 1745 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9092!$omp target exit data map(release:dq_prim_dz_qp(1)%vf(l)%sf)
9093# 1745 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9094#endif
9095# 1745 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9096 deallocate (dq_prim_dz_qp(1)%vf(l)%sf)
9097 end do
9098 end if
9099 end if
9100
9101#ifdef MFC_DEBUG
9102# 1750 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9103 block
9104# 1750 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9105 use iso_fortran_env, only: output_unit
9106# 1750 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9107
9108# 1750 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9109 print *, 'm_rhs.fpp:1750: ', '@:DEALLOCATE(dq_prim_dx_qp(1)%vf)'
9110# 1750 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9111
9112# 1750 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9113 call flush (output_unit)
9114# 1750 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9115 end block
9116# 1750 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9117#endif
9118# 1750 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9119
9120# 1750 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9121#if defined(MFC_OpenACC)
9122# 1750 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9123!$acc exit data delete(dq_prim_dx_qp(1)%vf)
9124# 1750 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9125#elif defined(MFC_OpenMP)
9126# 1750 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9127!$omp target exit data map(release:dq_prim_dx_qp(1)%vf)
9128# 1750 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9129#endif
9130# 1750 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9131 deallocate (dq_prim_dx_qp(1)%vf)
9132#ifdef MFC_DEBUG
9133# 1751 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9134 block
9135# 1751 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9136 use iso_fortran_env, only: output_unit
9137# 1751 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9138
9139# 1751 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9140 print *, 'm_rhs.fpp:1751: ', '@:DEALLOCATE(dq_prim_dy_qp(1)%vf)'
9141# 1751 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9142
9143# 1751 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9144 call flush (output_unit)
9145# 1751 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9146 end block
9147# 1751 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9148#endif
9149# 1751 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9150
9151# 1751 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9152#if defined(MFC_OpenACC)
9153# 1751 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9154!$acc exit data delete(dq_prim_dy_qp(1)%vf)
9155# 1751 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9156#elif defined(MFC_OpenMP)
9157# 1751 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9158!$omp target exit data map(release:dq_prim_dy_qp(1)%vf)
9159# 1751 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9160#endif
9161# 1751 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9162 deallocate (dq_prim_dy_qp(1)%vf)
9163#ifdef MFC_DEBUG
9164# 1752 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9165 block
9166# 1752 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9167 use iso_fortran_env, only: output_unit
9168# 1752 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9169
9170# 1752 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9171 print *, 'm_rhs.fpp:1752: ', '@:DEALLOCATE(dq_prim_dz_qp(1)%vf)'
9172# 1752 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9173
9174# 1752 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9175 call flush (output_unit)
9176# 1752 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9177 end block
9178# 1752 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9179#endif
9180# 1752 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9181
9182# 1752 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9183#if defined(MFC_OpenACC)
9184# 1752 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9185!$acc exit data delete(dq_prim_dz_qp(1)%vf)
9186# 1752 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9187#elif defined(MFC_OpenMP)
9188# 1752 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9189!$omp target exit data map(release:dq_prim_dz_qp(1)%vf)
9190# 1752 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9191#endif
9192# 1752 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9193 deallocate (dq_prim_dz_qp(1)%vf)
9194
9195 do i = num_dims, 1, -1
9196 do l = eqn_idx%mom%beg, eqn_idx%mom%end
9197#ifdef MFC_DEBUG
9198# 1756 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9199 block
9200# 1756 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9201 use iso_fortran_env, only: output_unit
9202# 1756 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9203
9204# 1756 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9205 print *, 'm_rhs.fpp:1756: ', '@:DEALLOCATE(dqL_prim_dx_n(i)%vf(l)%sf)'
9206# 1756 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9207
9208# 1756 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9209 call flush (output_unit)
9210# 1756 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9211 end block
9212# 1756 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9213#endif
9214# 1756 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9215
9216# 1756 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9217#if defined(MFC_OpenACC)
9218# 1756 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9219!$acc exit data delete(dqL_prim_dx_n(i)%vf(l)%sf)
9220# 1756 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9221#elif defined(MFC_OpenMP)
9222# 1756 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9223!$omp target exit data map(release:dqL_prim_dx_n(i)%vf(l)%sf)
9224# 1756 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9225#endif
9226# 1756 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9227 deallocate (dql_prim_dx_n(i)%vf(l)%sf)
9228#ifdef MFC_DEBUG
9229# 1757 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9230 block
9231# 1757 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9232 use iso_fortran_env, only: output_unit
9233# 1757 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9234
9235# 1757 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9236 print *, 'm_rhs.fpp:1757: ', '@:DEALLOCATE(dqR_prim_dx_n(i)%vf(l)%sf)'
9237# 1757 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9238
9239# 1757 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9240 call flush (output_unit)
9241# 1757 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9242 end block
9243# 1757 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9244#endif
9245# 1757 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9246
9247# 1757 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9248#if defined(MFC_OpenACC)
9249# 1757 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9250!$acc exit data delete(dqR_prim_dx_n(i)%vf(l)%sf)
9251# 1757 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9252#elif defined(MFC_OpenMP)
9253# 1757 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9254!$omp target exit data map(release:dqR_prim_dx_n(i)%vf(l)%sf)
9255# 1757 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9256#endif
9257# 1757 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9258 deallocate (dqr_prim_dx_n(i)%vf(l)%sf)
9259 end do
9260
9261 if (n > 0) then
9262 do l = eqn_idx%mom%beg, eqn_idx%mom%end
9263#ifdef MFC_DEBUG
9264# 1762 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9265 block
9266# 1762 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9267 use iso_fortran_env, only: output_unit
9268# 1762 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9269
9270# 1762 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9271 print *, 'm_rhs.fpp:1762: ', '@:DEALLOCATE(dqL_prim_dy_n(i)%vf(l)%sf)'
9272# 1762 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9273
9274# 1762 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9275 call flush (output_unit)
9276# 1762 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9277 end block
9278# 1762 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9279#endif
9280# 1762 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9281
9282# 1762 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9283#if defined(MFC_OpenACC)
9284# 1762 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9285!$acc exit data delete(dqL_prim_dy_n(i)%vf(l)%sf)
9286# 1762 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9287#elif defined(MFC_OpenMP)
9288# 1762 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9289!$omp target exit data map(release:dqL_prim_dy_n(i)%vf(l)%sf)
9290# 1762 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9291#endif
9292# 1762 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9293 deallocate (dql_prim_dy_n(i)%vf(l)%sf)
9294#ifdef MFC_DEBUG
9295# 1763 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9296 block
9297# 1763 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9298 use iso_fortran_env, only: output_unit
9299# 1763 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9300
9301# 1763 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9302 print *, 'm_rhs.fpp:1763: ', '@:DEALLOCATE(dqR_prim_dy_n(i)%vf(l)%sf)'
9303# 1763 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9304
9305# 1763 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9306 call flush (output_unit)
9307# 1763 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9308 end block
9309# 1763 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9310#endif
9311# 1763 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9312
9313# 1763 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9314#if defined(MFC_OpenACC)
9315# 1763 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9316!$acc exit data delete(dqR_prim_dy_n(i)%vf(l)%sf)
9317# 1763 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9318#elif defined(MFC_OpenMP)
9319# 1763 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9320!$omp target exit data map(release:dqR_prim_dy_n(i)%vf(l)%sf)
9321# 1763 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9322#endif
9323# 1763 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9324 deallocate (dqr_prim_dy_n(i)%vf(l)%sf)
9325 end do
9326 end if
9327
9328 if (p > 0) then
9329 do l = eqn_idx%mom%beg, eqn_idx%mom%end
9330#ifdef MFC_DEBUG
9331# 1769 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9332 block
9333# 1769 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9334 use iso_fortran_env, only: output_unit
9335# 1769 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9336
9337# 1769 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9338 print *, 'm_rhs.fpp:1769: ', '@:DEALLOCATE(dqL_prim_dz_n(i)%vf(l)%sf)'
9339# 1769 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9340
9341# 1769 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9342 call flush (output_unit)
9343# 1769 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9344 end block
9345# 1769 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9346#endif
9347# 1769 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9348
9349# 1769 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9350#if defined(MFC_OpenACC)
9351# 1769 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9352!$acc exit data delete(dqL_prim_dz_n(i)%vf(l)%sf)
9353# 1769 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9354#elif defined(MFC_OpenMP)
9355# 1769 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9356!$omp target exit data map(release:dqL_prim_dz_n(i)%vf(l)%sf)
9357# 1769 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9358#endif
9359# 1769 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9360 deallocate (dql_prim_dz_n(i)%vf(l)%sf)
9361#ifdef MFC_DEBUG
9362# 1770 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9363 block
9364# 1770 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9365 use iso_fortran_env, only: output_unit
9366# 1770 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9367
9368# 1770 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9369 print *, 'm_rhs.fpp:1770: ', '@:DEALLOCATE(dqR_prim_dz_n(i)%vf(l)%sf)'
9370# 1770 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9371
9372# 1770 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9373 call flush (output_unit)
9374# 1770 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9375 end block
9376# 1770 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9377#endif
9378# 1770 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9379
9380# 1770 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9381#if defined(MFC_OpenACC)
9382# 1770 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9383!$acc exit data delete(dqR_prim_dz_n(i)%vf(l)%sf)
9384# 1770 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9385#elif defined(MFC_OpenMP)
9386# 1770 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9387!$omp target exit data map(release:dqR_prim_dz_n(i)%vf(l)%sf)
9388# 1770 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9389#endif
9390# 1770 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9391 deallocate (dqr_prim_dz_n(i)%vf(l)%sf)
9392 end do
9393 end if
9394
9395#ifdef MFC_DEBUG
9396# 1774 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9397 block
9398# 1774 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9399 use iso_fortran_env, only: output_unit
9400# 1774 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9401
9402# 1774 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9403 print *, 'm_rhs.fpp:1774: ', '@:DEALLOCATE(dqL_prim_dx_n(i)%vf)'
9404# 1774 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9405
9406# 1774 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9407 call flush (output_unit)
9408# 1774 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9409 end block
9410# 1774 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9411#endif
9412# 1774 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9413
9414# 1774 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9415#if defined(MFC_OpenACC)
9416# 1774 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9417!$acc exit data delete(dqL_prim_dx_n(i)%vf)
9418# 1774 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9419#elif defined(MFC_OpenMP)
9420# 1774 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9421!$omp target exit data map(release:dqL_prim_dx_n(i)%vf)
9422# 1774 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9423#endif
9424# 1774 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9425 deallocate (dql_prim_dx_n(i)%vf)
9426#ifdef MFC_DEBUG
9427# 1775 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9428 block
9429# 1775 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9430 use iso_fortran_env, only: output_unit
9431# 1775 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9432
9433# 1775 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9434 print *, 'm_rhs.fpp:1775: ', '@:DEALLOCATE(dqL_prim_dy_n(i)%vf)'
9435# 1775 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9436
9437# 1775 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9438 call flush (output_unit)
9439# 1775 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9440 end block
9441# 1775 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9442#endif
9443# 1775 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9444
9445# 1775 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9446#if defined(MFC_OpenACC)
9447# 1775 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9448!$acc exit data delete(dqL_prim_dy_n(i)%vf)
9449# 1775 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9450#elif defined(MFC_OpenMP)
9451# 1775 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9452!$omp target exit data map(release:dqL_prim_dy_n(i)%vf)
9453# 1775 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9454#endif
9455# 1775 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9456 deallocate (dql_prim_dy_n(i)%vf)
9457#ifdef MFC_DEBUG
9458# 1776 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9459 block
9460# 1776 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9461 use iso_fortran_env, only: output_unit
9462# 1776 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9463
9464# 1776 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9465 print *, 'm_rhs.fpp:1776: ', '@:DEALLOCATE(dqL_prim_dz_n(i)%vf)'
9466# 1776 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9467
9468# 1776 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9469 call flush (output_unit)
9470# 1776 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9471 end block
9472# 1776 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9473#endif
9474# 1776 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9475
9476# 1776 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9477#if defined(MFC_OpenACC)
9478# 1776 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9479!$acc exit data delete(dqL_prim_dz_n(i)%vf)
9480# 1776 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9481#elif defined(MFC_OpenMP)
9482# 1776 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9483!$omp target exit data map(release:dqL_prim_dz_n(i)%vf)
9484# 1776 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9485#endif
9486# 1776 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9487 deallocate (dql_prim_dz_n(i)%vf)
9488#ifdef MFC_DEBUG
9489# 1777 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9490 block
9491# 1777 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9492 use iso_fortran_env, only: output_unit
9493# 1777 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9494
9495# 1777 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9496 print *, 'm_rhs.fpp:1777: ', '@:DEALLOCATE(dqR_prim_dx_n(i)%vf)'
9497# 1777 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9498
9499# 1777 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9500 call flush (output_unit)
9501# 1777 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9502 end block
9503# 1777 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9504#endif
9505# 1777 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9506
9507# 1777 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9508#if defined(MFC_OpenACC)
9509# 1777 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9510!$acc exit data delete(dqR_prim_dx_n(i)%vf)
9511# 1777 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9512#elif defined(MFC_OpenMP)
9513# 1777 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9514!$omp target exit data map(release:dqR_prim_dx_n(i)%vf)
9515# 1777 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9516#endif
9517# 1777 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9518 deallocate (dqr_prim_dx_n(i)%vf)
9519#ifdef MFC_DEBUG
9520# 1778 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9521 block
9522# 1778 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9523 use iso_fortran_env, only: output_unit
9524# 1778 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9525
9526# 1778 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9527 print *, 'm_rhs.fpp:1778: ', '@:DEALLOCATE(dqR_prim_dy_n(i)%vf)'
9528# 1778 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9529
9530# 1778 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9531 call flush (output_unit)
9532# 1778 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9533 end block
9534# 1778 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9535#endif
9536# 1778 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9537
9538# 1778 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9539#if defined(MFC_OpenACC)
9540# 1778 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9541!$acc exit data delete(dqR_prim_dy_n(i)%vf)
9542# 1778 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9543#elif defined(MFC_OpenMP)
9544# 1778 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9545!$omp target exit data map(release:dqR_prim_dy_n(i)%vf)
9546# 1778 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9547#endif
9548# 1778 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9549 deallocate (dqr_prim_dy_n(i)%vf)
9550#ifdef MFC_DEBUG
9551# 1779 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9552 block
9553# 1779 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9554 use iso_fortran_env, only: output_unit
9555# 1779 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9556
9557# 1779 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9558 print *, 'm_rhs.fpp:1779: ', '@:DEALLOCATE(dqR_prim_dz_n(i)%vf)'
9559# 1779 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9560
9561# 1779 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9562 call flush (output_unit)
9563# 1779 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9564 end block
9565# 1779 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9566#endif
9567# 1779 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9568
9569# 1779 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9570#if defined(MFC_OpenACC)
9571# 1779 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9572!$acc exit data delete(dqR_prim_dz_n(i)%vf)
9573# 1779 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9574#elif defined(MFC_OpenMP)
9575# 1779 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9576!$omp target exit data map(release:dqR_prim_dz_n(i)%vf)
9577# 1779 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9578#endif
9579# 1779 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9580 deallocate (dqr_prim_dz_n(i)%vf)
9581 end do
9582
9583 if (weno_re_flux) then
9584#ifdef MFC_DEBUG
9585# 1783 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9586 block
9587# 1783 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9588 use iso_fortran_env, only: output_unit
9589# 1783 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9590
9591# 1783 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9592 print *, 'm_rhs.fpp:1783: ', '@:DEALLOCATE(dqL_rsx_vf, dqR_rsx_vf)'
9593# 1783 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9594
9595# 1783 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9596 call flush (output_unit)
9597# 1783 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9598 end block
9599# 1783 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9600#endif
9601# 1783 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9602
9603# 1783 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9604#if defined(MFC_OpenACC)
9605# 1783 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9606!$acc exit data delete(dqL_rsx_vf, dqR_rsx_vf)
9607# 1783 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9608#elif defined(MFC_OpenMP)
9609# 1783 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9610!$omp target exit data map(release:dqL_rsx_vf, dqR_rsx_vf)
9611# 1783 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9612#endif
9613# 1783 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9614 deallocate (dql_rsx_vf, dqr_rsx_vf)
9615 end if
9616
9617 do i = 1, num_dims
9618#ifdef MFC_DEBUG
9619# 1787 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9620 block
9621# 1787 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9622 use iso_fortran_env, only: output_unit
9623# 1787 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9624
9625# 1787 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9626 print *, 'm_rhs.fpp:1787: ', '@:DEALLOCATE(tau_Re_vf(eqn_idx%cont%end + i)%sf)'
9627# 1787 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9628
9629# 1787 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9630 call flush (output_unit)
9631# 1787 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9632 end block
9633# 1787 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9634#endif
9635# 1787 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9636
9637# 1787 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9638#if defined(MFC_OpenACC)
9639# 1787 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9640!$acc exit data delete(tau_Re_vf(eqn_idx%cont%end + i)%sf)
9641# 1787 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9642#elif defined(MFC_OpenMP)
9643# 1787 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9644!$omp target exit data map(release:tau_Re_vf(eqn_idx%cont%end + i)%sf)
9645# 1787 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9646#endif
9647# 1787 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9648 deallocate (tau_re_vf(eqn_idx%cont%end + i)%sf)
9649 end do
9650#ifdef MFC_DEBUG
9651# 1789 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9652 block
9653# 1789 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9654 use iso_fortran_env, only: output_unit
9655# 1789 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9656
9657# 1789 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9658 print *, 'm_rhs.fpp:1789: ', '@:DEALLOCATE(tau_Re_vf(eqn_idx%E)%sf)'
9659# 1789 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9660
9661# 1789 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9662 call flush (output_unit)
9663# 1789 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9664 end block
9665# 1789 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9666#endif
9667# 1789 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9668
9669# 1789 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9670#if defined(MFC_OpenACC)
9671# 1789 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9672!$acc exit data delete(tau_Re_vf(eqn_idx%E)%sf)
9673# 1789 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9674#elif defined(MFC_OpenMP)
9675# 1789 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9676!$omp target exit data map(release:tau_Re_vf(eqn_idx%E)%sf)
9677# 1789 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9678#endif
9679# 1789 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9680 deallocate (tau_re_vf(eqn_idx%E)%sf)
9681#ifdef MFC_DEBUG
9682# 1790 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9683 block
9684# 1790 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9685 use iso_fortran_env, only: output_unit
9686# 1790 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9687
9688# 1790 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9689 print *, 'm_rhs.fpp:1790: ', '@:DEALLOCATE(tau_Re_vf)'
9690# 1790 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9691
9692# 1790 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9693 call flush (output_unit)
9694# 1790 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9695 end block
9696# 1790 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9697#endif
9698# 1790 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9699
9700# 1790 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9701#if defined(MFC_OpenACC)
9702# 1790 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9703!$acc exit data delete(tau_Re_vf)
9704# 1790 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9705#elif defined(MFC_OpenMP)
9706# 1790 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9707!$omp target exit data map(release:tau_Re_vf)
9708# 1790 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9709#endif
9710# 1790 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9711 deallocate (tau_re_vf)
9712 end if
9713#ifdef MFC_DEBUG
9714# 1792 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9715 block
9716# 1792 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9717 use iso_fortran_env, only: output_unit
9718# 1792 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9719
9720# 1792 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9721 print *, 'm_rhs.fpp:1792: ', '@:DEALLOCATE(dqL_prim_dx_n, dqL_prim_dy_n, dqL_prim_dz_n)'
9722# 1792 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9723
9724# 1792 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9725 call flush (output_unit)
9726# 1792 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9727 end block
9728# 1792 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9729#endif
9730# 1792 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9731
9732# 1792 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9733#if defined(MFC_OpenACC)
9734# 1792 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9735!$acc exit data delete(dqL_prim_dx_n, dqL_prim_dy_n, dqL_prim_dz_n)
9736# 1792 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9737#elif defined(MFC_OpenMP)
9738# 1792 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9739!$omp target exit data map(release:dqL_prim_dx_n, dqL_prim_dy_n, dqL_prim_dz_n)
9740# 1792 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9741#endif
9742# 1792 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9744#ifdef MFC_DEBUG
9745# 1793 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9746 block
9747# 1793 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9748 use iso_fortran_env, only: output_unit
9749# 1793 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9750
9751# 1793 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9752 print *, 'm_rhs.fpp:1793: ', '@:DEALLOCATE(dqR_prim_dx_n, dqR_prim_dy_n, dqR_prim_dz_n)'
9753# 1793 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9754
9755# 1793 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9756 call flush (output_unit)
9757# 1793 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9758 end block
9759# 1793 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9760#endif
9761# 1793 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9762
9763# 1793 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9764#if defined(MFC_OpenACC)
9765# 1793 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9766!$acc exit data delete(dqR_prim_dx_n, dqR_prim_dy_n, dqR_prim_dz_n)
9767# 1793 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9768#elif defined(MFC_OpenMP)
9769# 1793 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9770!$omp target exit data map(release:dqR_prim_dx_n, dqR_prim_dy_n, dqR_prim_dz_n)
9771# 1793 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9772#endif
9773# 1793 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9775 end if
9776
9777 if (mpp_lim .and. bubbles_euler) then
9778#ifdef MFC_DEBUG
9779# 1797 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9780 block
9781# 1797 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9782 use iso_fortran_env, only: output_unit
9783# 1797 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9784
9785# 1797 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9786 print *, 'm_rhs.fpp:1797: ', '@:DEALLOCATE(alf_sum%sf)'
9787# 1797 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9788
9789# 1797 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9790 call flush (output_unit)
9791# 1797 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9792 end block
9793# 1797 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9794#endif
9795# 1797 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9796
9797# 1797 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9798#if defined(MFC_OpenACC)
9799# 1797 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9800!$acc exit data delete(alf_sum%sf)
9801# 1797 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9802#elif defined(MFC_OpenMP)
9803# 1797 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9804!$omp target exit data map(release:alf_sum%sf)
9805# 1797 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9806#endif
9807# 1797 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9808 deallocate (alf_sum%sf)
9809 end if
9810
9811 if (.not. igr) then
9812 do i = num_dims, 1, -1
9813 if (i /= 1) then
9814 do l = 1, sys_size
9815 nullify (flux_n(i)%vf(l)%sf)
9816 nullify (flux_src_n(i)%vf(l)%sf)
9817#ifdef MFC_DEBUG
9818# 1806 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9819 block
9820# 1806 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9821 use iso_fortran_env, only: output_unit
9822# 1806 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9823
9824# 1806 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9825 print *, 'm_rhs.fpp:1806: ', '@:DEALLOCATE(flux_gsrc_n(i)%vf(l)%sf)'
9826# 1806 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9827
9828# 1806 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9829 call flush (output_unit)
9830# 1806 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9831 end block
9832# 1806 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9833#endif
9834# 1806 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9835
9836# 1806 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9837#if defined(MFC_OpenACC)
9838# 1806 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9839!$acc exit data delete(flux_gsrc_n(i)%vf(l)%sf)
9840# 1806 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9841#elif defined(MFC_OpenMP)
9842# 1806 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9843!$omp target exit data map(release:flux_gsrc_n(i)%vf(l)%sf)
9844# 1806 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9845#endif
9846# 1806 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9847 deallocate (flux_gsrc_n(i)%vf(l)%sf)
9848 end do
9849 else
9850 do l = 1, sys_size
9851#ifdef MFC_DEBUG
9852# 1810 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9853 block
9854# 1810 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9855 use iso_fortran_env, only: output_unit
9856# 1810 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9857
9858# 1810 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9859 print *, 'm_rhs.fpp:1810: ', '@:DEALLOCATE(flux_n(i)%vf(l)%sf)'
9860# 1810 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9861
9862# 1810 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9863 call flush (output_unit)
9864# 1810 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9865 end block
9866# 1810 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9867#endif
9868# 1810 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9869
9870# 1810 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9871#if defined(MFC_OpenACC)
9872# 1810 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9873!$acc exit data delete(flux_n(i)%vf(l)%sf)
9874# 1810 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9875#elif defined(MFC_OpenMP)
9876# 1810 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9877!$omp target exit data map(release:flux_n(i)%vf(l)%sf)
9878# 1810 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9879#endif
9880# 1810 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9881 deallocate (flux_n(i)%vf(l)%sf)
9882#ifdef MFC_DEBUG
9883# 1811 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9884 block
9885# 1811 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9886 use iso_fortran_env, only: output_unit
9887# 1811 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9888
9889# 1811 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9890 print *, 'm_rhs.fpp:1811: ', '@:DEALLOCATE(flux_gsrc_n(i)%vf(l)%sf)'
9891# 1811 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9892
9893# 1811 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9894 call flush (output_unit)
9895# 1811 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9896 end block
9897# 1811 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9898#endif
9899# 1811 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9900
9901# 1811 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9902#if defined(MFC_OpenACC)
9903# 1811 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9904!$acc exit data delete(flux_gsrc_n(i)%vf(l)%sf)
9905# 1811 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9906#elif defined(MFC_OpenMP)
9907# 1811 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9908!$omp target exit data map(release:flux_gsrc_n(i)%vf(l)%sf)
9909# 1811 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9910#endif
9911# 1811 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9912 deallocate (flux_gsrc_n(i)%vf(l)%sf)
9913 end do
9914
9915 if (viscous) then
9916 do l = eqn_idx%mom%beg, eqn_idx%E
9917#ifdef MFC_DEBUG
9918# 1816 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9919 block
9920# 1816 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9921 use iso_fortran_env, only: output_unit
9922# 1816 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9923
9924# 1816 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9925 print *, 'm_rhs.fpp:1816: ', '@:DEALLOCATE(flux_src_n(i)%vf(l)%sf)'
9926# 1816 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9927
9928# 1816 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9929 call flush (output_unit)
9930# 1816 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9931 end block
9932# 1816 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9933#endif
9934# 1816 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9935
9936# 1816 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9937#if defined(MFC_OpenACC)
9938# 1816 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9939!$acc exit data delete(flux_src_n(i)%vf(l)%sf)
9940# 1816 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9941#elif defined(MFC_OpenMP)
9942# 1816 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9943!$omp target exit data map(release:flux_src_n(i)%vf(l)%sf)
9944# 1816 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9945#endif
9946# 1816 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9947 deallocate (flux_src_n(i)%vf(l)%sf)
9948 end do
9949 end if
9950
9951 if (chem_params%diffusion .and. .not. viscous) then
9952#ifdef MFC_DEBUG
9953# 1821 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9954 block
9955# 1821 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9956 use iso_fortran_env, only: output_unit
9957# 1821 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9958
9959# 1821 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9960 print *, 'm_rhs.fpp:1821: ', '@:DEALLOCATE(flux_src_n(i)%vf(eqn_idx%E)%sf)'
9961# 1821 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9962
9963# 1821 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9964 call flush (output_unit)
9965# 1821 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9966 end block
9967# 1821 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9968#endif
9969# 1821 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9970
9971# 1821 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9972#if defined(MFC_OpenACC)
9973# 1821 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9974!$acc exit data delete(flux_src_n(i)%vf(eqn_idx%E)%sf)
9975# 1821 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9976#elif defined(MFC_OpenMP)
9977# 1821 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9978!$omp target exit data map(release:flux_src_n(i)%vf(eqn_idx%E)%sf)
9979# 1821 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9980#endif
9981# 1821 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9982 deallocate (flux_src_n(i)%vf(eqn_idx%E)%sf)
9983 end if
9984
9985 if (riemann_solver == riemann_solver_hll .or. riemann_solver == riemann_solver_hlld) then
9986 do l = eqn_idx%adv%beg + 1, eqn_idx%adv%end
9987#ifdef MFC_DEBUG
9988# 1826 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9989 block
9990# 1826 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9991 use iso_fortran_env, only: output_unit
9992# 1826 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9993
9994# 1826 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9995 print *, 'm_rhs.fpp:1826: ', '@:DEALLOCATE(flux_src_n(i)%vf(l)%sf)'
9996# 1826 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9997
9998# 1826 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9999 call flush (output_unit)
10000# 1826 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10001 end block
10002# 1826 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10003#endif
10004# 1826 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10005
10006# 1826 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10007#if defined(MFC_OpenACC)
10008# 1826 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10009!$acc exit data delete(flux_src_n(i)%vf(l)%sf)
10010# 1826 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10011#elif defined(MFC_OpenMP)
10012# 1826 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10013!$omp target exit data map(release:flux_src_n(i)%vf(l)%sf)
10014# 1826 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10015#endif
10016# 1826 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10017 deallocate (flux_src_n(i)%vf(l)%sf)
10018 end do
10019 else
10020 do l = eqn_idx%adv%beg + 1, eqn_idx%adv%end
10021 nullify (flux_src_n(i)%vf(l)%sf)
10022 end do
10023 end if
10024
10025#ifdef MFC_DEBUG
10026# 1834 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10027 block
10028# 1834 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10029 use iso_fortran_env, only: output_unit
10030# 1834 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10031
10032# 1834 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10033 print *, 'm_rhs.fpp:1834: ', '@:DEALLOCATE(flux_src_n(i)%vf(eqn_idx%adv%beg)%sf)'
10034# 1834 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10035
10036# 1834 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10037 call flush (output_unit)
10038# 1834 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10039 end block
10040# 1834 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10041#endif
10042# 1834 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10043
10044# 1834 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10045#if defined(MFC_OpenACC)
10046# 1834 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10047!$acc exit data delete(flux_src_n(i)%vf(eqn_idx%adv%beg)%sf)
10048# 1834 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10049#elif defined(MFC_OpenMP)
10050# 1834 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10051!$omp target exit data map(release:flux_src_n(i)%vf(eqn_idx%adv%beg)%sf)
10052# 1834 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10053#endif
10054# 1834 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10055 deallocate (flux_src_n(i)%vf(eqn_idx%adv%beg)%sf)
10056 end if
10057
10058#ifdef MFC_DEBUG
10059# 1837 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10060 block
10061# 1837 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10062 use iso_fortran_env, only: output_unit
10063# 1837 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10064
10065# 1837 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10066 print *, 'm_rhs.fpp:1837: ', '@:DEALLOCATE(flux_n(i)%vf, flux_src_n(i)%vf, flux_gsrc_n(i)%vf)'
10067# 1837 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10068
10069# 1837 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10070 call flush (output_unit)
10071# 1837 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10072 end block
10073# 1837 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10074#endif
10075# 1837 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10076
10077# 1837 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10078#if defined(MFC_OpenACC)
10079# 1837 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10080!$acc exit data delete(flux_n(i)%vf, flux_src_n(i)%vf, flux_gsrc_n(i)%vf)
10081# 1837 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10082#elif defined(MFC_OpenMP)
10083# 1837 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10084!$omp target exit data map(release:flux_n(i)%vf, flux_src_n(i)%vf, flux_gsrc_n(i)%vf)
10085# 1837 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10086#endif
10087# 1837 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10088 deallocate (flux_n(i)%vf, flux_src_n(i)%vf, flux_gsrc_n(i)%vf)
10089 end do
10090
10091#ifdef MFC_DEBUG
10092# 1840 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10093 block
10094# 1840 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10095 use iso_fortran_env, only: output_unit
10096# 1840 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10097
10098# 1840 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10099 print *, 'm_rhs.fpp:1840: ', '@:DEALLOCATE(flux_n, flux_src_n, flux_gsrc_n)'
10100# 1840 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10101
10102# 1840 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10103 call flush (output_unit)
10104# 1840 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10105 end block
10106# 1840 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10107#endif
10108# 1840 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10109
10110# 1840 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10111#if defined(MFC_OpenACC)
10112# 1840 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10113!$acc exit data delete(flux_n, flux_src_n, flux_gsrc_n)
10114# 1840 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10115#elif defined(MFC_OpenMP)
10116# 1840 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10117!$omp target exit data map(release:flux_n, flux_src_n, flux_gsrc_n)
10118# 1840 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10119#endif
10120# 1840 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10121 deallocate (flux_n, flux_src_n, flux_gsrc_n)
10122 do i = 1, num_dims
10123 do l = eqn_idx%mom%beg, eqn_idx%mom%end
10124#ifdef MFC_DEBUG
10125# 1843 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10126 block
10127# 1843 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10128 use iso_fortran_env, only: output_unit
10129# 1843 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10130
10131# 1843 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10132 print *, 'm_rhs.fpp:1843: ', '@:DEALLOCATE(qL_prim(i)%vf(l)%sf)'
10133# 1843 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10134
10135# 1843 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10136 call flush (output_unit)
10137# 1843 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10138 end block
10139# 1843 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10140#endif
10141# 1843 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10142
10143# 1843 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10144#if defined(MFC_OpenACC)
10145# 1843 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10146!$acc exit data delete(qL_prim(i)%vf(l)%sf)
10147# 1843 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10148#elif defined(MFC_OpenMP)
10149# 1843 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10150!$omp target exit data map(release:qL_prim(i)%vf(l)%sf)
10151# 1843 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10152#endif
10153# 1843 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10154 deallocate (ql_prim(i)%vf(l)%sf)
10155#ifdef MFC_DEBUG
10156# 1844 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10157 block
10158# 1844 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10159 use iso_fortran_env, only: output_unit
10160# 1844 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10161
10162# 1844 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10163 print *, 'm_rhs.fpp:1844: ', '@:DEALLOCATE(qR_prim(i)%vf(l)%sf)'
10164# 1844 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10165
10166# 1844 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10167 call flush (output_unit)
10168# 1844 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10169 end block
10170# 1844 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10171#endif
10172# 1844 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10173
10174# 1844 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10175#if defined(MFC_OpenACC)
10176# 1844 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10177!$acc exit data delete(qR_prim(i)%vf(l)%sf)
10178# 1844 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10179#elif defined(MFC_OpenMP)
10180# 1844 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10181!$omp target exit data map(release:qR_prim(i)%vf(l)%sf)
10182# 1844 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10183#endif
10184# 1844 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10185 deallocate (qr_prim(i)%vf(l)%sf)
10186 end do
10187#ifdef MFC_DEBUG
10188# 1846 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10189 block
10190# 1846 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10191 use iso_fortran_env, only: output_unit
10192# 1846 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10193
10194# 1846 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10195 print *, 'm_rhs.fpp:1846: ', '@:DEALLOCATE(qL_prim(i)%vf, qR_prim(i)%vf)'
10196# 1846 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10197
10198# 1846 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10199 call flush (output_unit)
10200# 1846 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10201 end block
10202# 1846 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10203#endif
10204# 1846 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10205
10206# 1846 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10207#if defined(MFC_OpenACC)
10208# 1846 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10209!$acc exit data delete(qL_prim(i)%vf, qR_prim(i)%vf)
10210# 1846 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10211#elif defined(MFC_OpenMP)
10212# 1846 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10213!$omp target exit data map(release:qL_prim(i)%vf, qR_prim(i)%vf)
10214# 1846 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10215#endif
10216# 1846 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10217 deallocate (ql_prim(i)%vf, qr_prim(i)%vf)
10218 end do
10219#ifdef MFC_DEBUG
10220# 1848 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10221 block
10222# 1848 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10223 use iso_fortran_env, only: output_unit
10224# 1848 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10225
10226# 1848 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10227 print *, 'm_rhs.fpp:1848: ', '@:DEALLOCATE(qL_prim, qR_prim)'
10228# 1848 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10229
10230# 1848 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10231 call flush (output_unit)
10232# 1848 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10233 end block
10234# 1848 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10235#endif
10236# 1848 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10237
10238# 1848 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10239#if defined(MFC_OpenACC)
10240# 1848 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10241!$acc exit data delete(qL_prim, qR_prim)
10242# 1848 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10243#elif defined(MFC_OpenMP)
10244# 1848 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10245!$omp target exit data map(release:qL_prim, qR_prim)
10246# 1848 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10247#endif
10248# 1848 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10249 deallocate (ql_prim, qr_prim)
10250 end if
10251
10252 if (alt_soundspeed) then
10253#ifdef MFC_DEBUG
10254# 1852 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10255 block
10256# 1852 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10257 use iso_fortran_env, only: output_unit
10258# 1852 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10259
10260# 1852 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10261 print *, 'm_rhs.fpp:1852: ', '@:DEALLOCATE(blkmod1)'
10262# 1852 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10263
10264# 1852 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10265 call flush (output_unit)
10266# 1852 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10267 end block
10268# 1852 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10269#endif
10270# 1852 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10271
10272# 1852 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10273#if defined(MFC_OpenACC)
10274# 1852 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10275!$acc exit data delete(blkmod1)
10276# 1852 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10277#elif defined(MFC_OpenMP)
10278# 1852 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10279!$omp target exit data map(release:blkmod1)
10280# 1852 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10281#endif
10282# 1852 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10283 deallocate (blkmod1)
10284 end if
10285
10286 if (qbmm) then
10287 do i = 0, 2
10288 do j = 0, 2
10289 do l = 1, nb
10290#ifdef MFC_DEBUG
10291# 1859 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10292 block
10293# 1859 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10294 use iso_fortran_env, only: output_unit
10295# 1859 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10296
10297# 1859 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10298 print *, 'm_rhs.fpp:1859: ', '@:DEALLOCATE(mom_3d(i, j, l)%sf)'
10299# 1859 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10300
10301# 1859 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10302 call flush (output_unit)
10303# 1859 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10304 end block
10305# 1859 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10306#endif
10307# 1859 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10308
10309# 1859 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10310#if defined(MFC_OpenACC)
10311# 1859 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10312!$acc exit data delete(mom_3d(i, j, l)%sf)
10313# 1859 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10314#elif defined(MFC_OpenMP)
10315# 1859 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10316!$omp target exit data map(release:mom_3d(i, j, l)%sf)
10317# 1859 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10318#endif
10319# 1859 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10320 deallocate (mom_3d(i, j, l)%sf)
10321 end do
10322 end do
10323 end do
10324 do i = 1, nmomsp
10325#ifdef MFC_DEBUG
10326# 1864 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10327 block
10328# 1864 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10329 use iso_fortran_env, only: output_unit
10330# 1864 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10331
10332# 1864 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10333 print *, 'm_rhs.fpp:1864: ', '@:DEALLOCATE(mom_sp(i)%sf)'
10334# 1864 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10335
10336# 1864 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10337 call flush (output_unit)
10338# 1864 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10339 end block
10340# 1864 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10341#endif
10342# 1864 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10343
10344# 1864 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10345#if defined(MFC_OpenACC)
10346# 1864 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10347!$acc exit data delete(mom_sp(i)%sf)
10348# 1864 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10349#elif defined(MFC_OpenMP)
10350# 1864 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10351!$omp target exit data map(release:mom_sp(i)%sf)
10352# 1864 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10353#endif
10354# 1864 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10355 deallocate (mom_sp(i)%sf)
10356 end do
10357#ifdef MFC_DEBUG
10358# 1866 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10359 block
10360# 1866 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10361 use iso_fortran_env, only: output_unit
10362# 1866 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10363
10364# 1866 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10365 print *, 'm_rhs.fpp:1866: ', '@:DEALLOCATE(mom_sp, mom_3d)'
10366# 1866 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10367
10368# 1866 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10369 call flush (output_unit)
10370# 1866 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10371 end block
10372# 1866 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10373#endif
10374# 1866 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10375
10376# 1866 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10377#if defined(MFC_OpenACC)
10378# 1866 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10379!$acc exit data delete(mom_sp, mom_3d)
10380# 1866 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10381#elif defined(MFC_OpenMP)
10382# 1866 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10383!$omp target exit data map(release:mom_sp, mom_3d)
10384# 1866 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10385#endif
10386# 1866 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10387 deallocate (mom_sp, mom_3d)
10388 end if
10389
10390 end subroutine s_finalize_rhs_module
10391
10392end module m_rhs
type(scalar_field), dimension(sys_size), intent(inout) q_cons_vf
integer, intent(in) k
integer, intent(in) j
integer, intent(in) l
subroutine s_add_directional_advection_source_terms(current_idir, rhs_vf_arg, q_cons_vf_arg, q_prim_vf_arg, flux_src_n_vf_arg, kterm_arg)
Add the advection source flux-difference terms for a single coordinate direction to the RHS.
One-way acoustic source injection, Maeda and Colonius JCP (2017).
Computes gravitational and body force source terms for the momentum equations.
Noncharacteristic and processor boundary condition application for ghost cells and buffer regions.
Computes ensemble-averaged (Euler–Euler) bubble source terms for radius, velocity,...
Tracks Lagrangian bubbles and couples their dynamics to the Eulerian flow via volume averaging.
Characteristic boundary conditions (CBC) for slip walls, non-reflecting subsonic inflow/outflow,...
type(int_bounds_info) is3
Indical bounds in the s1-, s2- and s3-directions.
type(int_bounds_info) is1
type(int_bounds_info) is2
Multi-species chemistry interface for thermodynamic properties, reaction rates, and transport coeffic...
Compile-time constant parameters: default values, tolerances, and physical constants.
integer, parameter int_comp_mthinc
integer, parameter riemann_solver_hll
integer, parameter riemann_solver_hlld
integer, parameter recon_type_muscl
integer, parameter recon_type_weno
integer, parameter model_eqns_6eq
Shared derived types for field data, patch geometry, bubble dynamics, and MPI I/O structures.
Global parameters for the computational domain, fluid properties, and simulation algorithm configurat...
Utility routines for bubble model setup, coordinate transforms, array sampling, and special functions...
Computes the left Cauchy–Green deformation tensor and hyperelastic stress source terms.
Computes hypoelastic stress-rate source terms and damage-state evolution.
Ghost-node immersed boundary method: locates ghost/image points, computes interpolation coefficients,...
Iterative ghost rasterization (IGR) for sharp immersed boundary treatment.
integer(kind=8) j
integer(kind=8) i
integer(kind=8) l
integer(kind=8) k
MPI halo exchange, domain decomposition, and buffer packing/unpacking for the simulation solver.
MUSCL reconstruction with interface sharpening for contact-preserving advection.
NVIDIA NVTX profiling API bindings for GPU performance instrumentation.
Definition m_nvtx.f90:6
Pressure relaxation for the six-equation multi-component model via Newton–Raphson equilibration and v...
Quadrature-based moment methods (QBMM) for polydisperse bubble moment inversion and transport.
Assembles the right-hand side of the governing equations using finite-volume flux differencing,...
type(vector_field), dimension(:), allocatable dqr_prim_dz_n
real(wp), dimension(:,:,:), allocatable kterm
type(vector_field), dimension(:), allocatable dql_prim_dz_n
type(vector_field), dimension(:), allocatable flux_src_n
integer iglob
type(vector_field), dimension(:), allocatable dq_prim_dx_qp
type(vector_field), dimension(:), allocatable flux_gsrc_n
impure subroutine, public s_compute_rhs(q_cons_vf, q_t_sf, q_prim_vf, bc_type, rhs_vf, pb_in, rhs_pb, mv_in, rhs_mv, t_step, time_avg, stage)
Compute the right-hand side of the semi-discrete governing equations for a single time stage.
subroutine s_compute_additional_physics_rhs(idir, q_prim_vf, rhs_vf, flux_src_n_in, dq_prim_dx_vf, dq_prim_dy_vf, dq_prim_dz_vf)
Add viscous, surface-tension, and species-diffusion source flux contributions to the RHS for a given ...
subroutine s_reconstruct_cell_boundary_values(v_vf, vl_x, vr_x, norm_dir)
Reconstruct left and right cell-boundary values from cell-averaged variables.
real(wp), dimension(:,:,:,:), allocatable dqr_rsx_vf
type(vector_field), dimension(:), allocatable dql_prim_dy_n
real(wp), dimension(:,:,:,:), allocatable dql_rsx_vf
type(vector_field), dimension(:), allocatable qr_prim
subroutine s_compute_advection_source_term(idir, rhs_vf, q_cons_vf, q_prim_vf, flux_src_n_vf)
Accumulate advection source contributions from a given coordinate direction into the RHS.
type(int_bounds_info) is1
type(vector_field) q_cons_qp
WENO-reconstructed cell-average conservative variables at quadrature points.
type(vector_field), dimension(:), allocatable dq_prim_dy_qp
real(wp), dimension(:,:,:,:), allocatable ql_rsx_vf
type(int_bounds_info) is3
type(int_bounds_info) irz
type(int_bounds_info) is2
type(scalar_field), dimension(:), allocatable tau_re_vf
real(wp), dimension(:,:,:), allocatable alpha2
real(wp), dimension(:,:,:,:), allocatable qr_rsx_vf
type(int_bounds_info) irx
type(int_bounds_info) iv
Vector field indical bounds.
real(wp), dimension(:,:,:), allocatable alpha1
type(scalar_field) alf_sum
type(vector_field), dimension(:), allocatable dqr_prim_dy_n
type(int_bounds_info) iry
real(wp), dimension(:,:,:), allocatable blkmod1
impure subroutine, public s_initialize_rhs_module
Initialize the RHS module.
type(vector_field), dimension(:), allocatable ql_prim
type(vector_field), dimension(:), allocatable dql_prim_dx_n
subroutine s_reconstruct_cell_boundary_values_first_order(v_vf, vl_x, vr_x, norm_dir)
Perform first-order (piecewise constant) reconstruction of left and right cell-boundary values.
type(vector_field) q_prim_qp
Primitive variables at cell-interior quadrature points.
type(vector_field), dimension(:), allocatable flux_n
type(vector_field), dimension(:), allocatable dq_prim_dz_qp
real(wp), dimension(:,:,:), allocatable blkmod2
impure subroutine, public s_finalize_rhs_module
Module deallocation and/or disassociation procedures.
type(vector_field), dimension(:), allocatable dqr_prim_dx_n
Approximate and exact Riemann solvers (HLL, HLLC, HLLD, exact) for the multicomponent Navier–Stokes e...
Computes capillary source fluxes and color-function gradients for the diffuse-interface surface tensi...
THINC and MTHINC interface compression for volume fraction sharpening. THINC (int_comp=1): 1D directi...
Conservative-to-primitive variable conversion, mixture property evaluation, and pressure computation.
Computes viscous stress tensors and diffusive flux contributions for the Navier–Stokes equations.
WENO/WENO-Z/TENO reconstruction with optional monotonicity-preserving bounds and mapped weights.
Integer bounds for variables.
Derived type annexing a scalar field (SF).
Derived type annexing a vector field (VF).