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.
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 Assemble 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
362 use m_igr
363 use m_thinc
365
366 implicit none
367
369
370 type(vector_field) :: q_cons_qp !< WENO-reconstructed cell-average conservative variables at quadrature points
371
372# 46 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
373#if defined(MFC_OpenACC)
374# 46 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
375!$acc declare create(q_cons_qp)
376# 46 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
377#elif defined(MFC_OpenMP)
378# 46 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
379!$omp declare target (q_cons_qp)
380# 46 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
381#endif
382
383 type(vector_field) :: q_prim_qp !< Primitive variables at cell-interior quadrature points
384
385# 49 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
386#if defined(MFC_OpenACC)
387# 49 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
388!$acc declare create(q_prim_qp)
389# 49 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
390#elif defined(MFC_OpenMP)
391# 49 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
392!$omp declare target (q_prim_qp)
393# 49 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
394#endif
395
396 !> @name The first-order spatial derivatives of the primitive variables at cell- interior Gaussian quadrature points. These are
397 !! WENO-reconstructed from their respective cell-average values, obtained through the application of the divergence theorem on
398 !! the integral-average cell-boundary values of the primitive variables, located in qK_prim_n, where K = L or R.
399 !> @{
400 type(vector_field), allocatable, dimension(:) :: dq_prim_dx_qp, dq_prim_dy_qp, dq_prim_dz_qp
401
402# 56 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
403#if defined(MFC_OpenACC)
404# 56 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
405!$acc declare create(dq_prim_dx_qp, dq_prim_dy_qp, dq_prim_dz_qp)
406# 56 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
407#elif defined(MFC_OpenMP)
408# 56 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
409!$omp declare target (dq_prim_dx_qp, dq_prim_dy_qp, dq_prim_dz_qp)
410# 56 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
411#endif
412 !> @}
413
414 !> @name The left and right WENO-reconstructed cell-boundary values of the cell- average first-order spatial derivatives of the
415 !! primitive variables. The cell-average of the first-order spatial derivatives may be found in the variables dq_prim_ds_qp,
416 !! where s = x, y or z.
417 !> @{
418 type(vector_field), allocatable, dimension(:) :: dql_prim_dx_n, dql_prim_dy_n, dql_prim_dz_n
419 type(vector_field), allocatable, dimension(:) :: dqr_prim_dx_n, dqr_prim_dy_n, dqr_prim_dz_n
420#if defined(MFC_OpenACC)
421
422# 66 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
423#if defined(MFC_OpenACC)
424# 66 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
425!$acc declare create(dqL_prim_dx_n, dqL_prim_dy_n, dqL_prim_dz_n)
426# 66 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
427#elif defined(MFC_OpenMP)
428# 66 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
429!$omp declare target (dqL_prim_dx_n, dqL_prim_dy_n, dqL_prim_dz_n)
430# 66 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
431#endif
432
433# 67 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
434#if defined(MFC_OpenACC)
435# 67 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
436!$acc declare create(dqR_prim_dx_n, dqR_prim_dy_n, dqR_prim_dz_n)
437# 67 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
438#elif defined(MFC_OpenMP)
439# 67 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
440!$omp declare target (dqR_prim_dx_n, dqR_prim_dy_n, dqR_prim_dz_n)
441# 67 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
442#endif
443#endif
444 !> @}
445
446 type(scalar_field), allocatable, dimension(:) :: tau_re_vf
447
448# 72 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
449#if defined(MFC_OpenACC)
450# 72 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
451!$acc declare create(tau_Re_vf)
452# 72 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
453#elif defined(MFC_OpenMP)
454# 72 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
455!$omp declare target (tau_Re_vf)
456# 72 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
457#endif
458
459 !> @name The cell-boundary values of the fluxes (src - source, gsrc - geometrical source). These are computed by applying the
460 !! chosen Riemann problem solver on the left and right cell-boundary values of the primitive variables
461 !> @{
462 type(vector_field), allocatable, dimension(:) :: flux_n
463 type(vector_field), allocatable, dimension(:) :: flux_src_n
464 type(vector_field), allocatable, dimension(:) :: flux_gsrc_n
465
466#if defined(MFC_OpenACC)
467
468# 82 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
469#if defined(MFC_OpenACC)
470# 82 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
471!$acc declare create(flux_n, flux_src_n, flux_gsrc_n)
472# 82 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
473#elif defined(MFC_OpenMP)
474# 82 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
475!$omp declare target (flux_n, flux_src_n, flux_gsrc_n)
476# 82 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
477#endif
478#endif
479 !> @}
480
481 type(vector_field), allocatable, dimension(:) :: ql_prim, qr_prim
482#if defined(MFC_OpenACC)
483
484# 88 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
485#if defined(MFC_OpenACC)
486# 88 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
487!$acc declare create(qL_prim, qR_prim)
488# 88 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
489#elif defined(MFC_OpenMP)
490# 88 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
491!$omp declare target (qL_prim, qR_prim)
492# 88 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
493#endif
494#endif
495
496 type(int_bounds_info) :: iv !< Vector field indical bounds
497
498# 92 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
499#if defined(MFC_OpenACC)
500# 92 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
501!$acc declare create(iv)
502# 92 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
503#elif defined(MFC_OpenMP)
504# 92 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
505!$omp declare target (iv)
506# 92 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
507#endif
508
509 !> @name Indical bounds in the x-, y- and z-directions
510 !> @{
512
513# 97 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
514#if defined(MFC_OpenACC)
515# 97 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
516!$acc declare create(irx, iry, irz)
517# 97 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
518#elif defined(MFC_OpenMP)
519# 97 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
520!$omp declare target (irx, iry, irz)
521# 97 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
522#endif
523
525 !> @}
526
527# 101 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
528#if defined(MFC_OpenACC)
529# 101 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
530!$acc declare create(is1, is2, is3)
531# 101 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
532#elif defined(MFC_OpenMP)
533# 101 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
534!$omp declare target (is1, is2, is3)
535# 101 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
536#endif
537
538 !> @name Saved fluxes for testing
539 !> @{
541 !> @}
542
543# 107 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
544#if defined(MFC_OpenACC)
545# 107 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
546!$acc declare create(alf_sum)
547# 107 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
548#elif defined(MFC_OpenMP)
549# 107 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
550!$omp declare target (alf_sum)
551# 107 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
552#endif
553
554 real(wp), allocatable, dimension(:,:,:) :: blkmod1, blkmod2, alpha1, alpha2, kterm
555 real(wp), allocatable, dimension(:,:,:,:) :: ql_rsx_vf, qr_rsx_vf
556 real(wp), allocatable, dimension(:,:,:,:) :: dql_rsx_vf, dqr_rsx_vf
557
558# 112 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
559#if defined(MFC_OpenACC)
560# 112 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
561!$acc declare create(blkmod1, blkmod2, alpha1, alpha2, Kterm)
562# 112 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
563#elif defined(MFC_OpenMP)
564# 112 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
565!$omp declare target (blkmod1, blkmod2, alpha1, alpha2, Kterm)
566# 112 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
567#endif
568
569# 113 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
570#if defined(MFC_OpenACC)
571# 113 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
572!$acc declare create(qL_rsx_vf, qR_rsx_vf)
573# 113 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
574#elif defined(MFC_OpenMP)
575# 113 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
576!$omp declare target (qL_rsx_vf, qR_rsx_vf)
577# 113 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
578#endif
579
580# 114 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
581#if defined(MFC_OpenACC)
582# 114 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
583!$acc declare create(dqL_rsx_vf, dqR_rsx_vf)
584# 114 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
585#elif defined(MFC_OpenMP)
586# 114 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
587!$omp declare target (dqL_rsx_vf, dqR_rsx_vf)
588# 114 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
589#endif
590
591 integer :: iglob
592
593# 117 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
594#if defined(MFC_OpenACC)
595# 117 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
596!$acc declare create(iglob)
597# 117 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
598#elif defined(MFC_OpenMP)
599# 117 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
600!$omp declare target (iglob)
601# 117 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
602#endif
603
604contains
605
606 !> Initialize the RHS module
607 impure subroutine s_initialize_rhs_module
608
609 integer :: i, j, k, l, id !< Generic loop iterators
610
611
612# 126 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
613#if defined(MFC_OpenACC)
614# 126 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
615!$acc enter data copyin(idwbuff)
616# 126 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
617#elif defined(MFC_OpenMP)
618# 126 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
619!$omp target enter data map(to:idwbuff)
620# 126 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
621#endif
622
623# 127 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
624#if defined(MFC_OpenACC)
625# 127 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
626!$acc update device(idwbuff)
627# 127 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
628#elif defined(MFC_OpenMP)
629# 127 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
630!$omp target update to(idwbuff)
631# 127 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
632#endif
633
634#ifdef MFC_DEBUG
635# 129 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
636 block
637# 129 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
638 use iso_fortran_env, only: output_unit
639# 129 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
640
641# 129 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
642 print *, 'm_rhs.fpp:129: ', '@:ALLOCATE(q_cons_qp%vf(1:sys_size))'
643# 129 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
644
645# 129 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
646 call flush (output_unit)
647# 129 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
648 end block
649# 129 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
650#endif
651# 129 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
652 allocate (q_cons_qp%vf(1:sys_size))
653# 129 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
654
655# 129 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
656
657# 129 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
658#if defined(MFC_OpenACC)
659# 129 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
660!$acc enter data create(q_cons_qp%vf)
661# 129 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
662#elif defined(MFC_OpenMP)
663# 129 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
664!$omp target enter data map(always,alloc:q_cons_qp%vf)
665# 129 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
666#endif
667#ifdef MFC_DEBUG
668# 130 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
669 block
670# 130 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
671 use iso_fortran_env, only: output_unit
672# 130 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
673
674# 130 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
675 print *, 'm_rhs.fpp:130: ', '@:ALLOCATE(q_prim_qp%vf(1:sys_size))'
676# 130 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
677
678# 130 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
679 call flush (output_unit)
680# 130 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
681 end block
682# 130 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
683#endif
684# 130 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
685 allocate (q_prim_qp%vf(1:sys_size))
686# 130 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
687
688# 130 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
689
690# 130 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
691#if defined(MFC_OpenACC)
692# 130 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
693!$acc enter data create(q_prim_qp%vf)
694# 130 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
695#elif defined(MFC_OpenMP)
696# 130 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
697!$omp target enter data map(always,alloc:q_prim_qp%vf)
698# 130 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
699#endif
700
701 if (.not. igr) then
702 do l = 1, sys_size
703#ifdef MFC_DEBUG
704# 134 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
705 block
706# 134 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
707 use iso_fortran_env, only: output_unit
708# 134 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
709
710# 134 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
711 print *, 'm_rhs.fpp:134: ', '@: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))'
712# 134 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
713
714# 134 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
715 call flush (output_unit)
716# 134 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
717 end block
718# 134 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
719#endif
720# 134 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
721 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))
722# 134 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
723
724# 134 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
725
726# 134 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
727#if defined(MFC_OpenACC)
728# 134 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
729!$acc enter data create(q_cons_qp%vf(l)%sf)
730# 134 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
731#elif defined(MFC_OpenMP)
732# 134 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
733!$omp target enter data map(always,alloc:q_cons_qp%vf(l)%sf)
734# 134 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
735#endif
736# 136 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
737 end do
738 do l = eqn_idx%mom%beg, eqn_idx%E
739#ifdef MFC_DEBUG
740# 138 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
741 block
742# 138 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
743 use iso_fortran_env, only: output_unit
744# 138 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
745
746# 138 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
747 print *, 'm_rhs.fpp:138: ', '@: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))'
748# 138 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
749
750# 138 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
751 call flush (output_unit)
752# 138 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
753 end block
754# 138 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
755#endif
756# 138 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
757 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))
758# 138 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
759
760# 138 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
761
762# 138 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
763#if defined(MFC_OpenACC)
764# 138 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
765!$acc enter data create(q_prim_qp%vf(l)%sf)
766# 138 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
767#elif defined(MFC_OpenMP)
768# 138 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
769!$omp target enter data map(always,alloc:q_prim_qp%vf(l)%sf)
770# 138 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
771#endif
772# 140 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
773 end do
774 end if
775
776 if (surface_tension) then
777 do l = eqn_idx%adv%end + 1, eqn_idx%c - 1
778#ifdef MFC_DEBUG
779# 145 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
780 block
781# 145 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
782 use iso_fortran_env, only: output_unit
783# 145 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
784
785# 145 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
786 print *, 'm_rhs.fpp:145: ', '@: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))'
787# 145 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
788
789# 145 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
790 call flush (output_unit)
791# 145 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
792 end block
793# 145 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
794#endif
795# 145 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
796 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))
797# 145 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
798
799# 145 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
800
801# 145 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
802#if defined(MFC_OpenACC)
803# 145 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
804!$acc enter data create(q_prim_qp%vf(l)%sf)
805# 145 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
806#elif defined(MFC_OpenMP)
807# 145 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
808!$omp target enter data map(always,alloc:q_prim_qp%vf(l)%sf)
809# 145 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
810#endif
811# 147 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
812 end do
813 else
814 do l = eqn_idx%adv%end + 1, sys_size
815#ifdef MFC_DEBUG
816# 150 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
817 block
818# 150 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
819 use iso_fortran_env, only: output_unit
820# 150 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
821
822# 150 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
823 print *, 'm_rhs.fpp:150: ', '@: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))'
824# 150 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
825
826# 150 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
827 call flush (output_unit)
828# 150 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
829 end block
830# 150 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
831#endif
832# 150 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
833 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))
834# 150 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
835
836# 150 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
837
838# 150 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
839#if defined(MFC_OpenACC)
840# 150 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
841!$acc enter data create(q_prim_qp%vf(l)%sf)
842# 150 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
843#elif defined(MFC_OpenMP)
844# 150 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
845!$omp target enter data map(always,alloc:q_prim_qp%vf(l)%sf)
846# 150 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
847#endif
848# 152 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
849 end do
850 end if
851
852 if (.not. igr) then
853#ifdef _CRAYFTN
854# 156 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
855 block
856# 156 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
857 integer :: macros_setup_vfs_i
858# 156 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
859
860# 156 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
861#ifdef MFC_DEBUG
862# 156 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
863 block
864# 156 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
865 use iso_fortran_env, only: output_unit
866# 156 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
867
868# 156 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
869 print *, 'm_rhs.fpp:156: ', '@:ACC_SETUP_VFs(q_cons_qp, q_prim_qp)'
870# 156 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
871
872# 156 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
873 call flush (output_unit)
874# 156 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
875 end block
876# 156 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
877#endif
878# 156 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
879
880# 156 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
881
882# 156 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
883#if defined(MFC_OpenACC)
884# 156 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
885!$acc enter data copyin(q_cons_qp)
886# 156 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
887#elif defined(MFC_OpenMP)
888# 156 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
889!$omp target enter data map(to:q_cons_qp)
890# 156 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
891#endif
892# 156 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
893
894# 156 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
895#if defined(MFC_OpenACC)
896# 156 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
897!$acc enter data copyin(q_cons_qp%vf)
898# 156 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
899#elif defined(MFC_OpenMP)
900# 156 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
901!$omp target enter data map(to:q_cons_qp%vf)
902# 156 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
903#endif
904# 156 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
905 if (allocated(q_cons_qp%vf)) then
906# 156 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
907 do macros_setup_vfs_i = lbound(q_cons_qp%vf, 1), ubound(q_cons_qp%vf, 1)
908# 156 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
909 if (associated(q_cons_qp%vf(macros_setup_vfs_i)%sf)) then
910# 156 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
911
912# 156 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
913#if defined(MFC_OpenACC)
914# 156 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
915!$acc enter data copyin(q_cons_qp%vf(macros_setup_vfs_i))
916# 156 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
917#elif defined(MFC_OpenMP)
918# 156 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
919!$omp target enter data map(to:q_cons_qp%vf(macros_setup_vfs_i))
920# 156 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
921#endif
922# 156 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
923
924# 156 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
925#if defined(MFC_OpenACC)
926# 156 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
927!$acc enter data copyin(q_cons_qp%vf(macros_setup_vfs_i)%sf)
928# 156 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
929#elif defined(MFC_OpenMP)
930# 156 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
931!$omp target enter data map(to:q_cons_qp%vf(macros_setup_vfs_i)%sf)
932# 156 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
933#endif
934# 156 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
935 end if
936# 156 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
937 end do
938# 156 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
939 end if
940# 156 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
941
942# 156 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
943#if defined(MFC_OpenACC)
944# 156 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
945!$acc enter data copyin(q_prim_qp)
946# 156 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
947#elif defined(MFC_OpenMP)
948# 156 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
949!$omp target enter data map(to:q_prim_qp)
950# 156 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
951#endif
952# 156 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
953
954# 156 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
955#if defined(MFC_OpenACC)
956# 156 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
957!$acc enter data copyin(q_prim_qp%vf)
958# 156 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
959#elif defined(MFC_OpenMP)
960# 156 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
961!$omp target enter data map(to:q_prim_qp%vf)
962# 156 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
963#endif
964# 156 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
965 if (allocated(q_prim_qp%vf)) then
966# 156 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
967 do macros_setup_vfs_i = lbound(q_prim_qp%vf, 1), ubound(q_prim_qp%vf, 1)
968# 156 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
969 if (associated(q_prim_qp%vf(macros_setup_vfs_i)%sf)) then
970# 156 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
971
972# 156 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
973#if defined(MFC_OpenACC)
974# 156 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
975!$acc enter data copyin(q_prim_qp%vf(macros_setup_vfs_i))
976# 156 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
977#elif defined(MFC_OpenMP)
978# 156 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
979!$omp target enter data map(to:q_prim_qp%vf(macros_setup_vfs_i))
980# 156 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
981#endif
982# 156 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
983
984# 156 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
985#if defined(MFC_OpenACC)
986# 156 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
987!$acc enter data copyin(q_prim_qp%vf(macros_setup_vfs_i)%sf)
988# 156 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
989#elif defined(MFC_OpenMP)
990# 156 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
991!$omp target enter data map(to:q_prim_qp%vf(macros_setup_vfs_i)%sf)
992# 156 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
993#endif
994# 156 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
995 end if
996# 156 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
997 end do
998# 156 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
999 end if
1000# 156 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1001 end block
1002# 156 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1003#endif
1004
1005 do l = 1, eqn_idx%cont%end
1006 if (relativity) then
1007 ! Cons and Prim densities are different for relativity
1008#ifdef MFC_DEBUG
1009# 161 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1010 block
1011# 161 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1012 use iso_fortran_env, only: output_unit
1013# 161 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1014
1015# 161 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1016 print *, 'm_rhs.fpp:161: ', '@: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))'
1017# 161 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1018
1019# 161 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1020 call flush (output_unit)
1021# 161 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1022 end block
1023# 161 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1024#endif
1025# 161 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1026 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))
1027# 161 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1028
1029# 161 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1030
1031# 161 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1032#if defined(MFC_OpenACC)
1033# 161 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1034!$acc enter data create(q_prim_qp%vf(l)%sf)
1035# 161 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1036#elif defined(MFC_OpenMP)
1037# 161 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1038!$omp target enter data map(always,alloc:q_prim_qp%vf(l)%sf)
1039# 161 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1040#endif
1041# 163 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1042 else
1043 q_prim_qp%vf(l)%sf => q_cons_qp%vf(l)%sf
1044
1045# 165 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1046#if defined(MFC_OpenACC)
1047# 165 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1048!$acc enter data copyin(q_prim_qp%vf(l)%sf)
1049# 165 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1050#elif defined(MFC_OpenMP)
1051# 165 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1052!$omp target enter data map(to:q_prim_qp%vf(l)%sf)
1053# 165 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1054#endif
1055
1056# 166 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1057#if defined(MFC_OpenACC)
1058# 166 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1059!$acc enter data attach(q_prim_qp%vf(l)%sf)
1060# 166 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1061#elif defined(MFC_OpenMP)
1062# 166 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1063!$omp target enter data map(always,to:q_prim_qp%vf(l)%sf)
1064# 166 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1065#endif
1066 end if
1067 end do
1068
1069 do l = eqn_idx%adv%beg, eqn_idx%adv%end
1070 q_prim_qp%vf(l)%sf => q_cons_qp%vf(l)%sf
1071
1072# 172 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1073#if defined(MFC_OpenACC)
1074# 172 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1075!$acc enter data copyin(q_prim_qp%vf(l)%sf)
1076# 172 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1077#elif defined(MFC_OpenMP)
1078# 172 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1079!$omp target enter data map(to:q_prim_qp%vf(l)%sf)
1080# 172 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1081#endif
1082
1083# 173 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1084#if defined(MFC_OpenACC)
1085# 173 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1086!$acc enter data attach(q_prim_qp%vf(l)%sf)
1087# 173 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1088#elif defined(MFC_OpenMP)
1089# 173 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1090!$omp target enter data map(always,to:q_prim_qp%vf(l)%sf)
1091# 173 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1092#endif
1093 end do
1094 end if
1095
1096 if (surface_tension) then
1097 q_prim_qp%vf(eqn_idx%c)%sf => q_cons_qp%vf(eqn_idx%c)%sf
1098
1099# 179 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1100#if defined(MFC_OpenACC)
1101# 179 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1102!$acc enter data copyin(q_prim_qp%vf(eqn_idx%c)%sf)
1103# 179 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1104#elif defined(MFC_OpenMP)
1105# 179 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1106!$omp target enter data map(to:q_prim_qp%vf(eqn_idx%c)%sf)
1107# 179 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1108#endif
1109
1110# 180 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1111#if defined(MFC_OpenACC)
1112# 180 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1113!$acc enter data attach(q_prim_qp%vf(eqn_idx%c)%sf)
1114# 180 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1115#elif defined(MFC_OpenMP)
1116# 180 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1117!$omp target enter data map(always,to:q_prim_qp%vf(eqn_idx%c)%sf)
1118# 180 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1119#endif
1120 end if
1121
1122 if (hyper_cleaning) then
1123 q_prim_qp%vf(eqn_idx%psi)%sf => q_cons_qp%vf(eqn_idx%psi)%sf
1124
1125# 185 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1126#if defined(MFC_OpenACC)
1127# 185 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1128!$acc enter data copyin(q_prim_qp%vf(eqn_idx%psi)%sf)
1129# 185 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1130#elif defined(MFC_OpenMP)
1131# 185 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1132!$omp target enter data map(to:q_prim_qp%vf(eqn_idx%psi)%sf)
1133# 185 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1134#endif
1135
1136# 186 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1137#if defined(MFC_OpenACC)
1138# 186 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1139!$acc enter data attach(q_prim_qp%vf(eqn_idx%psi)%sf)
1140# 186 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1141#elif defined(MFC_OpenMP)
1142# 186 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1143!$omp target enter data map(always,to:q_prim_qp%vf(eqn_idx%psi)%sf)
1144# 186 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1145#endif
1146 end if
1147
1148 if (.not. igr) then
1149#ifdef MFC_DEBUG
1150# 190 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1151 block
1152# 190 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1153 use iso_fortran_env, only: output_unit
1154# 190 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1155
1156# 190 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1157 print *, 'm_rhs.fpp:190: ', '@:ALLOCATE(flux_n(1:num_dims))'
1158# 190 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1159
1160# 190 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1161 call flush (output_unit)
1162# 190 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1163 end block
1164# 190 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1165#endif
1166# 190 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1167 allocate (flux_n(1:num_dims))
1168# 190 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1169
1170# 190 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1171
1172# 190 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1173#if defined(MFC_OpenACC)
1174# 190 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1175!$acc enter data create(flux_n)
1176# 190 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1177#elif defined(MFC_OpenMP)
1178# 190 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1179!$omp target enter data map(always,alloc:flux_n)
1180# 190 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1181#endif
1182#ifdef MFC_DEBUG
1183# 191 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1184 block
1185# 191 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1186 use iso_fortran_env, only: output_unit
1187# 191 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1188
1189# 191 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1190 print *, 'm_rhs.fpp:191: ', '@:ALLOCATE(flux_src_n(1:num_dims))'
1191# 191 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1192
1193# 191 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1194 call flush (output_unit)
1195# 191 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1196 end block
1197# 191 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1198#endif
1199# 191 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1200 allocate (flux_src_n(1:num_dims))
1201# 191 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1202
1203# 191 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1204
1205# 191 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1206#if defined(MFC_OpenACC)
1207# 191 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1208!$acc enter data create(flux_src_n)
1209# 191 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1210#elif defined(MFC_OpenMP)
1211# 191 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1212!$omp target enter data map(always,alloc:flux_src_n)
1213# 191 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1214#endif
1215#ifdef MFC_DEBUG
1216# 192 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1217 block
1218# 192 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1219 use iso_fortran_env, only: output_unit
1220# 192 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1221
1222# 192 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1223 print *, 'm_rhs.fpp:192: ', '@:ALLOCATE(flux_gsrc_n(1:num_dims))'
1224# 192 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1225
1226# 192 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1227 call flush (output_unit)
1228# 192 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1229 end block
1230# 192 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1231#endif
1232# 192 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1233 allocate (flux_gsrc_n(1:num_dims))
1234# 192 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1235
1236# 192 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1237
1238# 192 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1239#if defined(MFC_OpenACC)
1240# 192 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1241!$acc enter data create(flux_gsrc_n)
1242# 192 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1243#elif defined(MFC_OpenMP)
1244# 192 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1245!$omp target enter data map(always,alloc:flux_gsrc_n)
1246# 192 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1247#endif
1248
1249 do i = 1, num_dims
1250#ifdef MFC_DEBUG
1251# 195 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1252 block
1253# 195 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1254 use iso_fortran_env, only: output_unit
1255# 195 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1256
1257# 195 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1258 print *, 'm_rhs.fpp:195: ', '@:ALLOCATE(flux_n(i)%vf(1:sys_size))'
1259# 195 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1260
1261# 195 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1262 call flush (output_unit)
1263# 195 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1264 end block
1265# 195 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1266#endif
1267# 195 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1268 allocate (flux_n(i)%vf(1:sys_size))
1269# 195 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1270
1271# 195 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1272
1273# 195 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1274#if defined(MFC_OpenACC)
1275# 195 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1276!$acc enter data create(flux_n(i)%vf)
1277# 195 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1278#elif defined(MFC_OpenMP)
1279# 195 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1280!$omp target enter data map(always,alloc:flux_n(i)%vf)
1281# 195 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1282#endif
1283#ifdef MFC_DEBUG
1284# 196 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1285 block
1286# 196 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1287 use iso_fortran_env, only: output_unit
1288# 196 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1289
1290# 196 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1291 print *, 'm_rhs.fpp:196: ', '@:ALLOCATE(flux_src_n(i)%vf(1:sys_size))'
1292# 196 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1293
1294# 196 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1295 call flush (output_unit)
1296# 196 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1297 end block
1298# 196 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1299#endif
1300# 196 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1301 allocate (flux_src_n(i)%vf(1:sys_size))
1302# 196 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1303
1304# 196 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1305
1306# 196 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1307#if defined(MFC_OpenACC)
1308# 196 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1309!$acc enter data create(flux_src_n(i)%vf)
1310# 196 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1311#elif defined(MFC_OpenMP)
1312# 196 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1313!$omp target enter data map(always,alloc:flux_src_n(i)%vf)
1314# 196 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1315#endif
1316#ifdef MFC_DEBUG
1317# 197 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1318 block
1319# 197 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1320 use iso_fortran_env, only: output_unit
1321# 197 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1322
1323# 197 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1324 print *, 'm_rhs.fpp:197: ', '@:ALLOCATE(flux_gsrc_n(i)%vf(1:sys_size))'
1325# 197 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1326
1327# 197 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1328 call flush (output_unit)
1329# 197 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1330 end block
1331# 197 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1332#endif
1333# 197 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1334 allocate (flux_gsrc_n(i)%vf(1:sys_size))
1335# 197 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1336
1337# 197 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1338
1339# 197 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1340#if defined(MFC_OpenACC)
1341# 197 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1342!$acc enter data create(flux_gsrc_n(i)%vf)
1343# 197 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1344#elif defined(MFC_OpenMP)
1345# 197 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1346!$omp target enter data map(always,alloc:flux_gsrc_n(i)%vf)
1347# 197 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1348#endif
1349
1350 if (i == 1) then
1351 do l = 1, sys_size
1352#ifdef MFC_DEBUG
1353# 201 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1354 block
1355# 201 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1356 use iso_fortran_env, only: output_unit
1357# 201 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1358
1359# 201 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1360 print *, 'm_rhs.fpp:201: ', '@: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))'
1361# 201 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1362
1363# 201 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1364 call flush (output_unit)
1365# 201 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1366 end block
1367# 201 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1368#endif
1369# 201 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1370 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))
1371# 201 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1372
1373# 201 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1374
1375# 201 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1376#if defined(MFC_OpenACC)
1377# 201 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1378!$acc enter data create(flux_n(i)%vf(l)%sf)
1379# 201 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1380#elif defined(MFC_OpenMP)
1381# 201 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1382!$omp target enter data map(always,alloc:flux_n(i)%vf(l)%sf)
1383# 201 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1384#endif
1385# 203 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1386#ifdef MFC_DEBUG
1387# 203 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1388 block
1389# 203 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1390 use iso_fortran_env, only: output_unit
1391# 203 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1392
1393# 203 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1394 print *, 'm_rhs.fpp:203: ', '@: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))'
1395# 203 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1396
1397# 203 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1398 call flush (output_unit)
1399# 203 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1400 end block
1401# 203 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1402#endif
1403# 203 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1404 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))
1405# 203 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1406
1407# 203 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1408
1409# 203 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1410#if defined(MFC_OpenACC)
1411# 203 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1412!$acc enter data create(flux_gsrc_n(i)%vf(l)%sf)
1413# 203 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1414#elif defined(MFC_OpenMP)
1415# 203 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1416!$omp target enter data map(always,alloc:flux_gsrc_n(i)%vf(l)%sf)
1417# 203 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1418#endif
1419# 205 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1420 end do
1421
1422 if (viscous .or. surface_tension) then
1423 do l = eqn_idx%mom%beg, eqn_idx%E
1424#ifdef MFC_DEBUG
1425# 209 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1426 block
1427# 209 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1428 use iso_fortran_env, only: output_unit
1429# 209 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1430
1431# 209 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1432 print *, 'm_rhs.fpp:209: ', '@: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))'
1433# 209 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1434
1435# 209 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1436 call flush (output_unit)
1437# 209 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1438 end block
1439# 209 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1440#endif
1441# 209 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1442 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))
1443# 209 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1444
1445# 209 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1446
1447# 209 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1448#if defined(MFC_OpenACC)
1449# 209 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1450!$acc enter data create(flux_src_n(i)%vf(l)%sf)
1451# 209 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1452#elif defined(MFC_OpenMP)
1453# 209 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1454!$omp target enter data map(always,alloc:flux_src_n(i)%vf(l)%sf)
1455# 209 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1456#endif
1457# 211 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1458 end do
1459 end if
1460
1461#ifdef MFC_DEBUG
1462# 214 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1463 block
1464# 214 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1465 use iso_fortran_env, only: output_unit
1466# 214 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1467
1468# 214 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1469 print *, 'm_rhs.fpp:214: ', '@: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))'
1470# 214 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1471
1472# 214 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1473 call flush (output_unit)
1474# 214 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1475 end block
1476# 214 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1477#endif
1478# 214 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1479 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))
1480# 214 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1481
1482# 214 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1483
1484# 214 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1485#if defined(MFC_OpenACC)
1486# 214 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1487!$acc enter data create(flux_src_n(i)%vf(eqn_idx%adv%beg)%sf)
1488# 214 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1489#elif defined(MFC_OpenMP)
1490# 214 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1491!$omp target enter data map(always,alloc:flux_src_n(i)%vf(eqn_idx%adv%beg)%sf)
1492# 214 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1493#endif
1494# 216 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1495
1496 if (riemann_solver == riemann_solver_hll .or. riemann_solver == riemann_solver_hlld) then
1497 do l = eqn_idx%adv%beg + 1, eqn_idx%adv%end
1498#ifdef MFC_DEBUG
1499# 219 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1500 block
1501# 219 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1502 use iso_fortran_env, only: output_unit
1503# 219 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1504
1505# 219 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1506 print *, 'm_rhs.fpp:219: ', '@: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))'
1507# 219 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1508
1509# 219 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1510 call flush (output_unit)
1511# 219 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1512 end block
1513# 219 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1514#endif
1515# 219 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1516 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))
1517# 219 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1518
1519# 219 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1520
1521# 219 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1522#if defined(MFC_OpenACC)
1523# 219 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1524!$acc enter data create(flux_src_n(i)%vf(l)%sf)
1525# 219 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1526#elif defined(MFC_OpenMP)
1527# 219 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1528!$omp target enter data map(always,alloc:flux_src_n(i)%vf(l)%sf)
1529# 219 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1530#endif
1531# 221 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1532 end do
1533 end if
1534
1535 if (chemistry) then
1536 do l = eqn_idx%species%beg, eqn_idx%species%end
1537#ifdef MFC_DEBUG
1538# 226 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1539 block
1540# 226 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1541 use iso_fortran_env, only: output_unit
1542# 226 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1543
1544# 226 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1545 print *, 'm_rhs.fpp:226: ', '@: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))'
1546# 226 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1547
1548# 226 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1549 call flush (output_unit)
1550# 226 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1551 end block
1552# 226 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1553#endif
1554# 226 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1555 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))
1556# 226 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1557
1558# 226 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1559
1560# 226 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1561#if defined(MFC_OpenACC)
1562# 226 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1563!$acc enter data create(flux_src_n(i)%vf(l)%sf)
1564# 226 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1565#elif defined(MFC_OpenMP)
1566# 226 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1567!$omp target enter data map(always,alloc:flux_src_n(i)%vf(l)%sf)
1568# 226 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1569#endif
1570# 228 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1571 end do
1572 if (chem_params%diffusion .and. .not. viscous) then
1573#ifdef MFC_DEBUG
1574# 230 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1575 block
1576# 230 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1577 use iso_fortran_env, only: output_unit
1578# 230 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1579
1580# 230 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1581 print *, 'm_rhs.fpp:230: ', '@: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))'
1582# 230 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1583
1584# 230 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1585 call flush (output_unit)
1586# 230 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1587 end block
1588# 230 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1589#endif
1590# 230 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1591 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))
1592# 230 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1593
1594# 230 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1595
1596# 230 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1597#if defined(MFC_OpenACC)
1598# 230 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1599!$acc enter data create(flux_src_n(i)%vf(eqn_idx%E)%sf)
1600# 230 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1601#elif defined(MFC_OpenMP)
1602# 230 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1603!$omp target enter data map(always,alloc:flux_src_n(i)%vf(eqn_idx%E)%sf)
1604# 230 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1605#endif
1606# 232 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1607 end if
1608 end if
1609 else
1610 do l = 1, sys_size
1611#ifdef MFC_DEBUG
1612# 236 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1613 block
1614# 236 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1615 use iso_fortran_env, only: output_unit
1616# 236 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1617
1618# 236 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1619 print *, 'm_rhs.fpp:236: ', '@: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))'
1620# 236 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1621
1622# 236 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1623 call flush (output_unit)
1624# 236 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1625 end block
1626# 236 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1627#endif
1628# 236 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1629 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))
1630# 236 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1631
1632# 236 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1633
1634# 236 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1635#if defined(MFC_OpenACC)
1636# 236 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1637!$acc enter data create(flux_gsrc_n(i)%vf(l)%sf)
1638# 236 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1639#elif defined(MFC_OpenMP)
1640# 236 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1641!$omp target enter data map(always,alloc:flux_gsrc_n(i)%vf(l)%sf)
1642# 236 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1643#endif
1644# 238 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1645 end do
1646 end if
1647
1648#ifdef _CRAYFTN
1649# 241 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1650 block
1651# 241 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1652 integer :: macros_setup_vfs_i
1653# 241 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1654
1655# 241 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1656#ifdef MFC_DEBUG
1657# 241 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1658 block
1659# 241 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1660 use iso_fortran_env, only: output_unit
1661# 241 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1662
1663# 241 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1664 print *, 'm_rhs.fpp:241: ', '@:ACC_SETUP_VFs(flux_n(i))'
1665# 241 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1666
1667# 241 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1668 call flush (output_unit)
1669# 241 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1670 end block
1671# 241 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1672#endif
1673# 241 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1674
1675# 241 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1676
1677# 241 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1678#if defined(MFC_OpenACC)
1679# 241 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1680!$acc enter data copyin(flux_n(i))
1681# 241 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1682#elif defined(MFC_OpenMP)
1683# 241 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1684!$omp target enter data map(to:flux_n(i))
1685# 241 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1686#endif
1687# 241 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1688
1689# 241 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1690#if defined(MFC_OpenACC)
1691# 241 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1692!$acc enter data copyin(flux_n(i)%vf)
1693# 241 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1694#elif defined(MFC_OpenMP)
1695# 241 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1696!$omp target enter data map(to:flux_n(i)%vf)
1697# 241 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1698#endif
1699# 241 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1700 if (allocated(flux_n(i)%vf)) then
1701# 241 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1702 do macros_setup_vfs_i = lbound(flux_n(i)%vf, 1), ubound(flux_n(i)%vf, 1)
1703# 241 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1704 if (associated(flux_n(i)%vf(macros_setup_vfs_i)%sf)) then
1705# 241 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1706
1707# 241 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1708#if defined(MFC_OpenACC)
1709# 241 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1710!$acc enter data copyin(flux_n(i)%vf(macros_setup_vfs_i))
1711# 241 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1712#elif defined(MFC_OpenMP)
1713# 241 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1714!$omp target enter data map(to:flux_n(i)%vf(macros_setup_vfs_i))
1715# 241 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1716#endif
1717# 241 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1718
1719# 241 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1720#if defined(MFC_OpenACC)
1721# 241 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1722!$acc enter data copyin(flux_n(i)%vf(macros_setup_vfs_i)%sf)
1723# 241 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1724#elif defined(MFC_OpenMP)
1725# 241 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1726!$omp target enter data map(to:flux_n(i)%vf(macros_setup_vfs_i)%sf)
1727# 241 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1728#endif
1729# 241 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1730 end if
1731# 241 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1732 end do
1733# 241 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1734 end if
1735# 241 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1736 end block
1737# 241 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1738#endif
1739#ifdef _CRAYFTN
1740# 242 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1741 block
1742# 242 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1743 integer :: macros_setup_vfs_i
1744# 242 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1745
1746# 242 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1747#ifdef MFC_DEBUG
1748# 242 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1749 block
1750# 242 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1751 use iso_fortran_env, only: output_unit
1752# 242 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1753
1754# 242 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1755 print *, 'm_rhs.fpp:242: ', '@:ACC_SETUP_VFs(flux_src_n(i), flux_gsrc_n(i))'
1756# 242 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1757
1758# 242 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1759 call flush (output_unit)
1760# 242 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1761 end block
1762# 242 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1763#endif
1764# 242 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1765
1766# 242 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1767
1768# 242 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1769#if defined(MFC_OpenACC)
1770# 242 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1771!$acc enter data copyin(flux_src_n(i))
1772# 242 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1773#elif defined(MFC_OpenMP)
1774# 242 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1775!$omp target enter data map(to:flux_src_n(i))
1776# 242 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1777#endif
1778# 242 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1779
1780# 242 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1781#if defined(MFC_OpenACC)
1782# 242 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1783!$acc enter data copyin(flux_src_n(i)%vf)
1784# 242 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1785#elif defined(MFC_OpenMP)
1786# 242 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1787!$omp target enter data map(to:flux_src_n(i)%vf)
1788# 242 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1789#endif
1790# 242 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1791 if (allocated(flux_src_n(i)%vf)) then
1792# 242 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1793 do macros_setup_vfs_i = lbound(flux_src_n(i)%vf, 1), ubound(flux_src_n(i)%vf, 1)
1794# 242 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1795 if (associated(flux_src_n(i)%vf(macros_setup_vfs_i)%sf)) then
1796# 242 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1797
1798# 242 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1799#if defined(MFC_OpenACC)
1800# 242 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1801!$acc enter data copyin(flux_src_n(i)%vf(macros_setup_vfs_i))
1802# 242 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1803#elif defined(MFC_OpenMP)
1804# 242 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1805!$omp target enter data map(to:flux_src_n(i)%vf(macros_setup_vfs_i))
1806# 242 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1807#endif
1808# 242 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1809
1810# 242 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1811#if defined(MFC_OpenACC)
1812# 242 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1813!$acc enter data copyin(flux_src_n(i)%vf(macros_setup_vfs_i)%sf)
1814# 242 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1815#elif defined(MFC_OpenMP)
1816# 242 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1817!$omp target enter data map(to:flux_src_n(i)%vf(macros_setup_vfs_i)%sf)
1818# 242 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1819#endif
1820# 242 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1821 end if
1822# 242 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1823 end do
1824# 242 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1825 end if
1826# 242 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1827
1828# 242 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1829#if defined(MFC_OpenACC)
1830# 242 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1831!$acc enter data copyin(flux_gsrc_n(i))
1832# 242 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1833#elif defined(MFC_OpenMP)
1834# 242 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1835!$omp target enter data map(to:flux_gsrc_n(i))
1836# 242 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1837#endif
1838# 242 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1839
1840# 242 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1841#if defined(MFC_OpenACC)
1842# 242 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1843!$acc enter data copyin(flux_gsrc_n(i)%vf)
1844# 242 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1845#elif defined(MFC_OpenMP)
1846# 242 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1847!$omp target enter data map(to:flux_gsrc_n(i)%vf)
1848# 242 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1849#endif
1850# 242 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1851 if (allocated(flux_gsrc_n(i)%vf)) then
1852# 242 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1853 do macros_setup_vfs_i = lbound(flux_gsrc_n(i)%vf, 1), ubound(flux_gsrc_n(i)%vf, 1)
1854# 242 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1855 if (associated(flux_gsrc_n(i)%vf(macros_setup_vfs_i)%sf)) then
1856# 242 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1857
1858# 242 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1859#if defined(MFC_OpenACC)
1860# 242 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1861!$acc enter data copyin(flux_gsrc_n(i)%vf(macros_setup_vfs_i))
1862# 242 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1863#elif defined(MFC_OpenMP)
1864# 242 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1865!$omp target enter data map(to:flux_gsrc_n(i)%vf(macros_setup_vfs_i))
1866# 242 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1867#endif
1868# 242 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1869
1870# 242 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1871#if defined(MFC_OpenACC)
1872# 242 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1873!$acc enter data copyin(flux_gsrc_n(i)%vf(macros_setup_vfs_i)%sf)
1874# 242 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1875#elif defined(MFC_OpenMP)
1876# 242 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1877!$omp target enter data map(to:flux_gsrc_n(i)%vf(macros_setup_vfs_i)%sf)
1878# 242 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1879#endif
1880# 242 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1881 end if
1882# 242 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1883 end do
1884# 242 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1885 end if
1886# 242 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1887 end block
1888# 242 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1889#endif
1890
1891 if (i == 1) then
1892 if (riemann_solver /= riemann_solver_hll) then
1893 do l = eqn_idx%adv%beg + 1, eqn_idx%adv%end
1894 flux_src_n(i)%vf(l)%sf => flux_src_n(i)%vf(eqn_idx%adv%beg)%sf
1895
1896# 248 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1897#if defined(MFC_OpenACC)
1898# 248 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1899!$acc enter data attach(flux_src_n(i)%vf(l)%sf)
1900# 248 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1901#elif defined(MFC_OpenMP)
1902# 248 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1903!$omp target enter data map(always,to:flux_src_n(i)%vf(l)%sf)
1904# 248 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1905#endif
1906 end do
1907 end if
1908 else
1909 do l = 1, sys_size
1910 flux_n(i)%vf(l)%sf => flux_n(1)%vf(l)%sf
1911
1912# 254 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1913#if defined(MFC_OpenACC)
1914# 254 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1915!$acc enter data attach(flux_n(i)%vf(l)%sf)
1916# 254 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1917#elif defined(MFC_OpenMP)
1918# 254 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1919!$omp target enter data map(always,to:flux_n(i)%vf(l)%sf)
1920# 254 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1921#endif
1922 flux_src_n(i)%vf(l)%sf => flux_src_n(1)%vf(l)%sf
1923
1924# 256 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1925#if defined(MFC_OpenACC)
1926# 256 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1927!$acc enter data attach(flux_src_n(i)%vf(l)%sf)
1928# 256 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1929#elif defined(MFC_OpenMP)
1930# 256 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1931!$omp target enter data map(always,to:flux_src_n(i)%vf(l)%sf)
1932# 256 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1933#endif
1934 end do
1935 end if
1936 end do
1937 end if
1938
1939 if ((.not. igr)) then
1940#ifdef MFC_DEBUG
1941# 263 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1942 block
1943# 263 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1944 use iso_fortran_env, only: output_unit
1945# 263 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1946
1947# 263 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1948 print *, 'm_rhs.fpp:263: ', '@:ALLOCATE(dq_prim_dx_qp(1:1))'
1949# 263 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1950
1951# 263 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1952 call flush (output_unit)
1953# 263 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1954 end block
1955# 263 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1956#endif
1957# 263 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1958 allocate (dq_prim_dx_qp(1:1))
1959# 263 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1960
1961# 263 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1962
1963# 263 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1964#if defined(MFC_OpenACC)
1965# 263 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1966!$acc enter data create(dq_prim_dx_qp)
1967# 263 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1968#elif defined(MFC_OpenMP)
1969# 263 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1970!$omp target enter data map(always,alloc:dq_prim_dx_qp)
1971# 263 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1972#endif
1973#ifdef MFC_DEBUG
1974# 264 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1975 block
1976# 264 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1977 use iso_fortran_env, only: output_unit
1978# 264 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1979
1980# 264 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1981 print *, 'm_rhs.fpp:264: ', '@:ALLOCATE(dq_prim_dy_qp(1:1))'
1982# 264 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1983
1984# 264 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1985 call flush (output_unit)
1986# 264 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1987 end block
1988# 264 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1989#endif
1990# 264 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1991 allocate (dq_prim_dy_qp(1:1))
1992# 264 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1993
1994# 264 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1995
1996# 264 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1997#if defined(MFC_OpenACC)
1998# 264 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
1999!$acc enter data create(dq_prim_dy_qp)
2000# 264 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2001#elif defined(MFC_OpenMP)
2002# 264 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2003!$omp target enter data map(always,alloc:dq_prim_dy_qp)
2004# 264 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2005#endif
2006#ifdef MFC_DEBUG
2007# 265 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2008 block
2009# 265 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2010 use iso_fortran_env, only: output_unit
2011# 265 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2012
2013# 265 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2014 print *, 'm_rhs.fpp:265: ', '@:ALLOCATE(dq_prim_dz_qp(1:1))'
2015# 265 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2016
2017# 265 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2018 call flush (output_unit)
2019# 265 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2020 end block
2021# 265 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2022#endif
2023# 265 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2024 allocate (dq_prim_dz_qp(1:1))
2025# 265 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2026
2027# 265 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2028
2029# 265 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2030#if defined(MFC_OpenACC)
2031# 265 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2032!$acc enter data create(dq_prim_dz_qp)
2033# 265 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2034#elif defined(MFC_OpenMP)
2035# 265 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2036!$omp target enter data map(always,alloc:dq_prim_dz_qp)
2037# 265 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2038#endif
2039
2040#ifdef MFC_DEBUG
2041# 267 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2042 block
2043# 267 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2044 use iso_fortran_env, only: output_unit
2045# 267 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2046
2047# 267 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2048 print *, 'm_rhs.fpp:267: ', '@:ALLOCATE(qL_prim(1:num_dims))'
2049# 267 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2050
2051# 267 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2052 call flush (output_unit)
2053# 267 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2054 end block
2055# 267 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2056#endif
2057# 267 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2058 allocate (ql_prim(1:num_dims))
2059# 267 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2060
2061# 267 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2062
2063# 267 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2064#if defined(MFC_OpenACC)
2065# 267 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2066!$acc enter data create(qL_prim)
2067# 267 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2068#elif defined(MFC_OpenMP)
2069# 267 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2070!$omp target enter data map(always,alloc:qL_prim)
2071# 267 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2072#endif
2073#ifdef MFC_DEBUG
2074# 268 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2075 block
2076# 268 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2077 use iso_fortran_env, only: output_unit
2078# 268 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2079
2080# 268 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2081 print *, 'm_rhs.fpp:268: ', '@:ALLOCATE(qR_prim(1:num_dims))'
2082# 268 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2083
2084# 268 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2085 call flush (output_unit)
2086# 268 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2087 end block
2088# 268 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2089#endif
2090# 268 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2091 allocate (qr_prim(1:num_dims))
2092# 268 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2093
2094# 268 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2095
2096# 268 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2097#if defined(MFC_OpenACC)
2098# 268 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2099!$acc enter data create(qR_prim)
2100# 268 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2101#elif defined(MFC_OpenMP)
2102# 268 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2103!$omp target enter data map(always,alloc:qR_prim)
2104# 268 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2105#endif
2106
2107#ifdef MFC_DEBUG
2108# 270 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2109 block
2110# 270 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2111 use iso_fortran_env, only: output_unit
2112# 270 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2113
2114# 270 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2115 print *, 'm_rhs.fpp:270: ', '@:ALLOCATE(dqL_prim_dx_n(1:num_dims))'
2116# 270 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2117
2118# 270 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2119 call flush (output_unit)
2120# 270 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2121 end block
2122# 270 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2123#endif
2124# 270 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2125 allocate (dql_prim_dx_n(1:num_dims))
2126# 270 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2127
2128# 270 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2129
2130# 270 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2131#if defined(MFC_OpenACC)
2132# 270 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2133!$acc enter data create(dqL_prim_dx_n)
2134# 270 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2135#elif defined(MFC_OpenMP)
2136# 270 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2137!$omp target enter data map(always,alloc:dqL_prim_dx_n)
2138# 270 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2139#endif
2140#ifdef MFC_DEBUG
2141# 271 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2142 block
2143# 271 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2144 use iso_fortran_env, only: output_unit
2145# 271 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2146
2147# 271 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2148 print *, 'm_rhs.fpp:271: ', '@:ALLOCATE(dqL_prim_dy_n(1:num_dims))'
2149# 271 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2150
2151# 271 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2152 call flush (output_unit)
2153# 271 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2154 end block
2155# 271 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2156#endif
2157# 271 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2158 allocate (dql_prim_dy_n(1:num_dims))
2159# 271 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2160
2161# 271 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2162
2163# 271 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2164#if defined(MFC_OpenACC)
2165# 271 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2166!$acc enter data create(dqL_prim_dy_n)
2167# 271 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2168#elif defined(MFC_OpenMP)
2169# 271 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2170!$omp target enter data map(always,alloc:dqL_prim_dy_n)
2171# 271 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2172#endif
2173#ifdef MFC_DEBUG
2174# 272 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2175 block
2176# 272 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2177 use iso_fortran_env, only: output_unit
2178# 272 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2179
2180# 272 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2181 print *, 'm_rhs.fpp:272: ', '@:ALLOCATE(dqL_prim_dz_n(1:num_dims))'
2182# 272 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2183
2184# 272 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2185 call flush (output_unit)
2186# 272 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2187 end block
2188# 272 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2189#endif
2190# 272 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2191 allocate (dql_prim_dz_n(1:num_dims))
2192# 272 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2193
2194# 272 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2195
2196# 272 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2197#if defined(MFC_OpenACC)
2198# 272 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2199!$acc enter data create(dqL_prim_dz_n)
2200# 272 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2201#elif defined(MFC_OpenMP)
2202# 272 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2203!$omp target enter data map(always,alloc:dqL_prim_dz_n)
2204# 272 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2205#endif
2206#ifdef MFC_DEBUG
2207# 273 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2208 block
2209# 273 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2210 use iso_fortran_env, only: output_unit
2211# 273 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2212
2213# 273 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2214 print *, 'm_rhs.fpp:273: ', '@:ALLOCATE(dqR_prim_dx_n(1:num_dims))'
2215# 273 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2216
2217# 273 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2218 call flush (output_unit)
2219# 273 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2220 end block
2221# 273 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2222#endif
2223# 273 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2224 allocate (dqr_prim_dx_n(1:num_dims))
2225# 273 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2226
2227# 273 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2228
2229# 273 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2230#if defined(MFC_OpenACC)
2231# 273 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2232!$acc enter data create(dqR_prim_dx_n)
2233# 273 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2234#elif defined(MFC_OpenMP)
2235# 273 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2236!$omp target enter data map(always,alloc:dqR_prim_dx_n)
2237# 273 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2238#endif
2239#ifdef MFC_DEBUG
2240# 274 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2241 block
2242# 274 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2243 use iso_fortran_env, only: output_unit
2244# 274 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2245
2246# 274 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2247 print *, 'm_rhs.fpp:274: ', '@:ALLOCATE(dqR_prim_dy_n(1:num_dims))'
2248# 274 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2249
2250# 274 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2251 call flush (output_unit)
2252# 274 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2253 end block
2254# 274 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2255#endif
2256# 274 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2257 allocate (dqr_prim_dy_n(1:num_dims))
2258# 274 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2259
2260# 274 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2261
2262# 274 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2263#if defined(MFC_OpenACC)
2264# 274 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2265!$acc enter data create(dqR_prim_dy_n)
2266# 274 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2267#elif defined(MFC_OpenMP)
2268# 274 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2269!$omp target enter data map(always,alloc:dqR_prim_dy_n)
2270# 274 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2271#endif
2272#ifdef MFC_DEBUG
2273# 275 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2274 block
2275# 275 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2276 use iso_fortran_env, only: output_unit
2277# 275 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2278
2279# 275 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2280 print *, 'm_rhs.fpp:275: ', '@:ALLOCATE(dqR_prim_dz_n(1:num_dims))'
2281# 275 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2282
2283# 275 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2284 call flush (output_unit)
2285# 275 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2286 end block
2287# 275 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2288#endif
2289# 275 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2290 allocate (dqr_prim_dz_n(1:num_dims))
2291# 275 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2292
2293# 275 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2294
2295# 275 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2296#if defined(MFC_OpenACC)
2297# 275 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2298!$acc enter data create(dqR_prim_dz_n)
2299# 275 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2300#elif defined(MFC_OpenMP)
2301# 275 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2302!$omp target enter data map(always,alloc:dqR_prim_dz_n)
2303# 275 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2304#endif
2305
2306 do i = 1, num_dims
2307#ifdef MFC_DEBUG
2308# 278 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2309 block
2310# 278 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2311 use iso_fortran_env, only: output_unit
2312# 278 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2313
2314# 278 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2315 print *, 'm_rhs.fpp:278: ', '@:ALLOCATE(qL_prim(i)%vf(1:sys_size))'
2316# 278 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2317
2318# 278 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2319 call flush (output_unit)
2320# 278 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2321 end block
2322# 278 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2323#endif
2324# 278 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2325 allocate (ql_prim(i)%vf(1:sys_size))
2326# 278 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2327
2328# 278 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2329
2330# 278 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2331#if defined(MFC_OpenACC)
2332# 278 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2333!$acc enter data create(qL_prim(i)%vf)
2334# 278 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2335#elif defined(MFC_OpenMP)
2336# 278 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2337!$omp target enter data map(always,alloc:qL_prim(i)%vf)
2338# 278 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2339#endif
2340#ifdef MFC_DEBUG
2341# 279 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2342 block
2343# 279 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2344 use iso_fortran_env, only: output_unit
2345# 279 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2346
2347# 279 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2348 print *, 'm_rhs.fpp:279: ', '@:ALLOCATE(qR_prim(i)%vf(1:sys_size))'
2349# 279 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2350
2351# 279 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2352 call flush (output_unit)
2353# 279 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2354 end block
2355# 279 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2356#endif
2357# 279 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2358 allocate (qr_prim(i)%vf(1:sys_size))
2359# 279 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2360
2361# 279 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2362
2363# 279 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2364#if defined(MFC_OpenACC)
2365# 279 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2366!$acc enter data create(qR_prim(i)%vf)
2367# 279 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2368#elif defined(MFC_OpenMP)
2369# 279 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2370!$omp target enter data map(always,alloc:qR_prim(i)%vf)
2371# 279 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2372#endif
2373 do l = eqn_idx%mom%beg, eqn_idx%mom%end
2374#ifdef MFC_DEBUG
2375# 281 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2376 block
2377# 281 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2378 use iso_fortran_env, only: output_unit
2379# 281 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2380
2381# 281 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2382 print *, 'm_rhs.fpp:281: ', '@: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))'
2383# 281 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2384
2385# 281 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2386 call flush (output_unit)
2387# 281 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2388 end block
2389# 281 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2390#endif
2391# 281 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2392 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))
2393# 281 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2394
2395# 281 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2396
2397# 281 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2398#if defined(MFC_OpenACC)
2399# 281 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2400!$acc enter data create(qL_prim(i)%vf(l)%sf)
2401# 281 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2402#elif defined(MFC_OpenMP)
2403# 281 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2404!$omp target enter data map(always,alloc:qL_prim(i)%vf(l)%sf)
2405# 281 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2406#endif
2407# 283 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2408#ifdef MFC_DEBUG
2409# 283 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2410 block
2411# 283 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2412 use iso_fortran_env, only: output_unit
2413# 283 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2414
2415# 283 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2416 print *, 'm_rhs.fpp:283: ', '@: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))'
2417# 283 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2418
2419# 283 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2420 call flush (output_unit)
2421# 283 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2422 end block
2423# 283 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2424#endif
2425# 283 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2426 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))
2427# 283 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2428
2429# 283 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2430
2431# 283 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2432#if defined(MFC_OpenACC)
2433# 283 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2434!$acc enter data create(qR_prim(i)%vf(l)%sf)
2435# 283 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2436#elif defined(MFC_OpenMP)
2437# 283 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2438!$omp target enter data map(always,alloc:qR_prim(i)%vf(l)%sf)
2439# 283 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2440#endif
2441# 285 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2442 end do
2443#ifdef _CRAYFTN
2444# 286 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2445 block
2446# 286 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2447 integer :: macros_setup_vfs_i
2448# 286 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2449
2450# 286 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2451#ifdef MFC_DEBUG
2452# 286 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2453 block
2454# 286 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2455 use iso_fortran_env, only: output_unit
2456# 286 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2457
2458# 286 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2459 print *, 'm_rhs.fpp:286: ', '@:ACC_SETUP_VFs(qL_prim(i), qR_prim(i))'
2460# 286 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2461
2462# 286 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2463 call flush (output_unit)
2464# 286 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2465 end block
2466# 286 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2467#endif
2468# 286 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2469
2470# 286 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2471
2472# 286 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2473#if defined(MFC_OpenACC)
2474# 286 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2475!$acc enter data copyin(qL_prim(i))
2476# 286 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2477#elif defined(MFC_OpenMP)
2478# 286 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2479!$omp target enter data map(to:qL_prim(i))
2480# 286 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2481#endif
2482# 286 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2483
2484# 286 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2485#if defined(MFC_OpenACC)
2486# 286 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2487!$acc enter data copyin(qL_prim(i)%vf)
2488# 286 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2489#elif defined(MFC_OpenMP)
2490# 286 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2491!$omp target enter data map(to:qL_prim(i)%vf)
2492# 286 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2493#endif
2494# 286 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2495 if (allocated(ql_prim(i)%vf)) then
2496# 286 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2497 do macros_setup_vfs_i = lbound(ql_prim(i)%vf, 1), ubound(ql_prim(i)%vf, 1)
2498# 286 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2499 if (associated(ql_prim(i)%vf(macros_setup_vfs_i)%sf)) then
2500# 286 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2501
2502# 286 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2503#if defined(MFC_OpenACC)
2504# 286 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2505!$acc enter data copyin(qL_prim(i)%vf(macros_setup_vfs_i))
2506# 286 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2507#elif defined(MFC_OpenMP)
2508# 286 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2509!$omp target enter data map(to:qL_prim(i)%vf(macros_setup_vfs_i))
2510# 286 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2511#endif
2512# 286 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2513
2514# 286 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2515#if defined(MFC_OpenACC)
2516# 286 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2517!$acc enter data copyin(qL_prim(i)%vf(macros_setup_vfs_i)%sf)
2518# 286 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2519#elif defined(MFC_OpenMP)
2520# 286 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2521!$omp target enter data map(to:qL_prim(i)%vf(macros_setup_vfs_i)%sf)
2522# 286 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2523#endif
2524# 286 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2525 end if
2526# 286 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2527 end do
2528# 286 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2529 end if
2530# 286 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2531
2532# 286 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2533#if defined(MFC_OpenACC)
2534# 286 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2535!$acc enter data copyin(qR_prim(i))
2536# 286 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2537#elif defined(MFC_OpenMP)
2538# 286 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2539!$omp target enter data map(to:qR_prim(i))
2540# 286 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2541#endif
2542# 286 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2543
2544# 286 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2545#if defined(MFC_OpenACC)
2546# 286 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2547!$acc enter data copyin(qR_prim(i)%vf)
2548# 286 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2549#elif defined(MFC_OpenMP)
2550# 286 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2551!$omp target enter data map(to:qR_prim(i)%vf)
2552# 286 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2553#endif
2554# 286 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2555 if (allocated(qr_prim(i)%vf)) then
2556# 286 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2557 do macros_setup_vfs_i = lbound(qr_prim(i)%vf, 1), ubound(qr_prim(i)%vf, 1)
2558# 286 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2559 if (associated(qr_prim(i)%vf(macros_setup_vfs_i)%sf)) then
2560# 286 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2561
2562# 286 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2563#if defined(MFC_OpenACC)
2564# 286 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2565!$acc enter data copyin(qR_prim(i)%vf(macros_setup_vfs_i))
2566# 286 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2567#elif defined(MFC_OpenMP)
2568# 286 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2569!$omp target enter data map(to:qR_prim(i)%vf(macros_setup_vfs_i))
2570# 286 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2571#endif
2572# 286 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2573
2574# 286 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2575#if defined(MFC_OpenACC)
2576# 286 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2577!$acc enter data copyin(qR_prim(i)%vf(macros_setup_vfs_i)%sf)
2578# 286 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2579#elif defined(MFC_OpenMP)
2580# 286 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2581!$omp target enter data map(to:qR_prim(i)%vf(macros_setup_vfs_i)%sf)
2582# 286 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2583#endif
2584# 286 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2585 end if
2586# 286 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2587 end do
2588# 286 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2589 end if
2590# 286 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2591 end block
2592# 286 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2593#endif
2594 end do
2595
2596#ifdef MFC_DEBUG
2597# 289 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2598 block
2599# 289 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2600 use iso_fortran_env, only: output_unit
2601# 289 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2602
2603# 289 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2604 print *, 'm_rhs.fpp:289: ', '@: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))'
2605# 289 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2606
2607# 289 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2608 call flush (output_unit)
2609# 289 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2610 end block
2611# 289 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2612#endif
2613# 289 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2614 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))
2615# 289 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2616
2617# 289 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2618
2619# 289 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2620#if defined(MFC_OpenACC)
2621# 289 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2622!$acc enter data create(qL_rsx_vf)
2623# 289 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2624#elif defined(MFC_OpenMP)
2625# 289 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2626!$omp target enter data map(always,alloc:qL_rsx_vf)
2627# 289 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2628#endif
2629# 291 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2630#ifdef MFC_DEBUG
2631# 291 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2632 block
2633# 291 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2634 use iso_fortran_env, only: output_unit
2635# 291 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2636
2637# 291 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2638 print *, 'm_rhs.fpp:291: ', '@: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))'
2639# 291 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2640
2641# 291 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2642 call flush (output_unit)
2643# 291 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2644 end block
2645# 291 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2646#endif
2647# 291 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2648 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))
2649# 291 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2650
2651# 291 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2652
2653# 291 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2654#if defined(MFC_OpenACC)
2655# 291 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2656!$acc enter data create(qR_rsx_vf)
2657# 291 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2658#elif defined(MFC_OpenMP)
2659# 291 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2660!$omp target enter data map(always,alloc:qR_rsx_vf)
2661# 291 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2662#endif
2663# 293 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2664
2665 if (.not. viscous) then
2666 do i = 1, num_dims
2667#ifdef MFC_DEBUG
2668# 296 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2669 block
2670# 296 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2671 use iso_fortran_env, only: output_unit
2672# 296 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2673
2674# 296 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2675 print *, 'm_rhs.fpp:296: ', '@:ALLOCATE(dqL_prim_dx_n(i)%vf(1:sys_size))'
2676# 296 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2677
2678# 296 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2679 call flush (output_unit)
2680# 296 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2681 end block
2682# 296 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2683#endif
2684# 296 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2685 allocate (dql_prim_dx_n(i)%vf(1:sys_size))
2686# 296 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2687
2688# 296 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2689
2690# 296 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2691#if defined(MFC_OpenACC)
2692# 296 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2693!$acc enter data create(dqL_prim_dx_n(i)%vf)
2694# 296 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2695#elif defined(MFC_OpenMP)
2696# 296 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2697!$omp target enter data map(always,alloc:dqL_prim_dx_n(i)%vf)
2698# 296 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2699#endif
2700#ifdef MFC_DEBUG
2701# 297 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2702 block
2703# 297 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2704 use iso_fortran_env, only: output_unit
2705# 297 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2706
2707# 297 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2708 print *, 'm_rhs.fpp:297: ', '@:ALLOCATE(dqL_prim_dy_n(i)%vf(1:sys_size))'
2709# 297 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2710
2711# 297 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2712 call flush (output_unit)
2713# 297 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2714 end block
2715# 297 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2716#endif
2717# 297 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2718 allocate (dql_prim_dy_n(i)%vf(1:sys_size))
2719# 297 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2720
2721# 297 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2722
2723# 297 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2724#if defined(MFC_OpenACC)
2725# 297 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2726!$acc enter data create(dqL_prim_dy_n(i)%vf)
2727# 297 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2728#elif defined(MFC_OpenMP)
2729# 297 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2730!$omp target enter data map(always,alloc:dqL_prim_dy_n(i)%vf)
2731# 297 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2732#endif
2733#ifdef MFC_DEBUG
2734# 298 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2735 block
2736# 298 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2737 use iso_fortran_env, only: output_unit
2738# 298 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2739
2740# 298 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2741 print *, 'm_rhs.fpp:298: ', '@:ALLOCATE(dqL_prim_dz_n(i)%vf(1:sys_size))'
2742# 298 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2743
2744# 298 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2745 call flush (output_unit)
2746# 298 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2747 end block
2748# 298 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2749#endif
2750# 298 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2751 allocate (dql_prim_dz_n(i)%vf(1:sys_size))
2752# 298 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2753
2754# 298 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2755
2756# 298 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2757#if defined(MFC_OpenACC)
2758# 298 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2759!$acc enter data create(dqL_prim_dz_n(i)%vf)
2760# 298 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2761#elif defined(MFC_OpenMP)
2762# 298 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2763!$omp target enter data map(always,alloc:dqL_prim_dz_n(i)%vf)
2764# 298 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2765#endif
2766#ifdef MFC_DEBUG
2767# 299 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2768 block
2769# 299 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2770 use iso_fortran_env, only: output_unit
2771# 299 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2772
2773# 299 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2774 print *, 'm_rhs.fpp:299: ', '@:ALLOCATE(dqR_prim_dx_n(i)%vf(1:sys_size))'
2775# 299 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2776
2777# 299 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2778 call flush (output_unit)
2779# 299 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2780 end block
2781# 299 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2782#endif
2783# 299 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2784 allocate (dqr_prim_dx_n(i)%vf(1:sys_size))
2785# 299 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2786
2787# 299 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2788
2789# 299 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2790#if defined(MFC_OpenACC)
2791# 299 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2792!$acc enter data create(dqR_prim_dx_n(i)%vf)
2793# 299 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2794#elif defined(MFC_OpenMP)
2795# 299 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2796!$omp target enter data map(always,alloc:dqR_prim_dx_n(i)%vf)
2797# 299 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2798#endif
2799#ifdef MFC_DEBUG
2800# 300 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2801 block
2802# 300 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2803 use iso_fortran_env, only: output_unit
2804# 300 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2805
2806# 300 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2807 print *, 'm_rhs.fpp:300: ', '@:ALLOCATE(dqR_prim_dy_n(i)%vf(1:sys_size))'
2808# 300 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2809
2810# 300 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2811 call flush (output_unit)
2812# 300 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2813 end block
2814# 300 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2815#endif
2816# 300 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2817 allocate (dqr_prim_dy_n(i)%vf(1:sys_size))
2818# 300 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2819
2820# 300 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2821
2822# 300 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2823#if defined(MFC_OpenACC)
2824# 300 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2825!$acc enter data create(dqR_prim_dy_n(i)%vf)
2826# 300 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2827#elif defined(MFC_OpenMP)
2828# 300 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2829!$omp target enter data map(always,alloc:dqR_prim_dy_n(i)%vf)
2830# 300 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2831#endif
2832#ifdef MFC_DEBUG
2833# 301 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2834 block
2835# 301 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2836 use iso_fortran_env, only: output_unit
2837# 301 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2838
2839# 301 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2840 print *, 'm_rhs.fpp:301: ', '@:ALLOCATE(dqR_prim_dz_n(i)%vf(1:sys_size))'
2841# 301 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2842
2843# 301 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2844 call flush (output_unit)
2845# 301 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2846 end block
2847# 301 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2848#endif
2849# 301 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2850 allocate (dqr_prim_dz_n(i)%vf(1:sys_size))
2851# 301 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2852
2853# 301 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2854
2855# 301 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2856#if defined(MFC_OpenACC)
2857# 301 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2858!$acc enter data create(dqR_prim_dz_n(i)%vf)
2859# 301 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2860#elif defined(MFC_OpenMP)
2861# 301 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2862!$omp target enter data map(always,alloc:dqR_prim_dz_n(i)%vf)
2863# 301 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2864#endif
2865
2866 do l = eqn_idx%mom%beg, eqn_idx%mom%end
2867#ifdef MFC_DEBUG
2868# 304 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2869 block
2870# 304 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2871 use iso_fortran_env, only: output_unit
2872# 304 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2873
2874# 304 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2875 print *, 'm_rhs.fpp:304: ', '@:ALLOCATE(dqL_prim_dx_n(i)%vf(l)%sf(1:1, 1:1, 1:1))'
2876# 304 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2877
2878# 304 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2879 call flush (output_unit)
2880# 304 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2881 end block
2882# 304 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2883#endif
2884# 304 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2885 allocate (dql_prim_dx_n(i)%vf(l)%sf(1:1, 1:1, 1:1))
2886# 304 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2887
2888# 304 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2889
2890# 304 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2891#if defined(MFC_OpenACC)
2892# 304 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2893!$acc enter data create(dqL_prim_dx_n(i)%vf(l)%sf)
2894# 304 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2895#elif defined(MFC_OpenMP)
2896# 304 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2897!$omp target enter data map(always,alloc:dqL_prim_dx_n(i)%vf(l)%sf)
2898# 304 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2899#endif
2900#ifdef MFC_DEBUG
2901# 305 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2902 block
2903# 305 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2904 use iso_fortran_env, only: output_unit
2905# 305 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2906
2907# 305 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2908 print *, 'm_rhs.fpp:305: ', '@:ALLOCATE(dqL_prim_dy_n(i)%vf(l)%sf(1:1, 1:1, 1:1))'
2909# 305 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2910
2911# 305 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2912 call flush (output_unit)
2913# 305 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2914 end block
2915# 305 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2916#endif
2917# 305 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2918 allocate (dql_prim_dy_n(i)%vf(l)%sf(1:1, 1:1, 1:1))
2919# 305 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2920
2921# 305 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2922
2923# 305 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2924#if defined(MFC_OpenACC)
2925# 305 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2926!$acc enter data create(dqL_prim_dy_n(i)%vf(l)%sf)
2927# 305 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2928#elif defined(MFC_OpenMP)
2929# 305 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2930!$omp target enter data map(always,alloc:dqL_prim_dy_n(i)%vf(l)%sf)
2931# 305 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2932#endif
2933#ifdef MFC_DEBUG
2934# 306 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2935 block
2936# 306 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2937 use iso_fortran_env, only: output_unit
2938# 306 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2939
2940# 306 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2941 print *, 'm_rhs.fpp:306: ', '@:ALLOCATE(dqL_prim_dz_n(i)%vf(l)%sf(1:1, 1:1, 1:1))'
2942# 306 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2943
2944# 306 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2945 call flush (output_unit)
2946# 306 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2947 end block
2948# 306 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2949#endif
2950# 306 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2951 allocate (dql_prim_dz_n(i)%vf(l)%sf(1:1, 1:1, 1:1))
2952# 306 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2953
2954# 306 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2955
2956# 306 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2957#if defined(MFC_OpenACC)
2958# 306 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2959!$acc enter data create(dqL_prim_dz_n(i)%vf(l)%sf)
2960# 306 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2961#elif defined(MFC_OpenMP)
2962# 306 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2963!$omp target enter data map(always,alloc:dqL_prim_dz_n(i)%vf(l)%sf)
2964# 306 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2965#endif
2966#ifdef MFC_DEBUG
2967# 307 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2968 block
2969# 307 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2970 use iso_fortran_env, only: output_unit
2971# 307 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2972
2973# 307 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2974 print *, 'm_rhs.fpp:307: ', '@:ALLOCATE(dqR_prim_dx_n(i)%vf(l)%sf(1:1, 1:1, 1:1))'
2975# 307 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2976
2977# 307 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2978 call flush (output_unit)
2979# 307 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2980 end block
2981# 307 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2982#endif
2983# 307 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2984 allocate (dqr_prim_dx_n(i)%vf(l)%sf(1:1, 1:1, 1:1))
2985# 307 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2986
2987# 307 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2988
2989# 307 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2990#if defined(MFC_OpenACC)
2991# 307 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2992!$acc enter data create(dqR_prim_dx_n(i)%vf(l)%sf)
2993# 307 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2994#elif defined(MFC_OpenMP)
2995# 307 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2996!$omp target enter data map(always,alloc:dqR_prim_dx_n(i)%vf(l)%sf)
2997# 307 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
2998#endif
2999#ifdef MFC_DEBUG
3000# 308 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3001 block
3002# 308 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3003 use iso_fortran_env, only: output_unit
3004# 308 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3005
3006# 308 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3007 print *, 'm_rhs.fpp:308: ', '@:ALLOCATE(dqR_prim_dy_n(i)%vf(l)%sf(1:1, 1:1, 1:1))'
3008# 308 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3009
3010# 308 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3011 call flush (output_unit)
3012# 308 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3013 end block
3014# 308 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3015#endif
3016# 308 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3017 allocate (dqr_prim_dy_n(i)%vf(l)%sf(1:1, 1:1, 1:1))
3018# 308 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3019
3020# 308 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3021
3022# 308 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3023#if defined(MFC_OpenACC)
3024# 308 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3025!$acc enter data create(dqR_prim_dy_n(i)%vf(l)%sf)
3026# 308 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3027#elif defined(MFC_OpenMP)
3028# 308 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3029!$omp target enter data map(always,alloc:dqR_prim_dy_n(i)%vf(l)%sf)
3030# 308 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3031#endif
3032#ifdef MFC_DEBUG
3033# 309 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3034 block
3035# 309 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3036 use iso_fortran_env, only: output_unit
3037# 309 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3038
3039# 309 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3040 print *, 'm_rhs.fpp:309: ', '@:ALLOCATE(dqR_prim_dz_n(i)%vf(l)%sf(1:1, 1:1, 1:1))'
3041# 309 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3042
3043# 309 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3044 call flush (output_unit)
3045# 309 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3046 end block
3047# 309 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3048#endif
3049# 309 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3050 allocate (dqr_prim_dz_n(i)%vf(l)%sf(1:1, 1:1, 1:1))
3051# 309 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3052
3053# 309 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3054
3055# 309 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3056#if defined(MFC_OpenACC)
3057# 309 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3058!$acc enter data create(dqR_prim_dz_n(i)%vf(l)%sf)
3059# 309 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3060#elif defined(MFC_OpenMP)
3061# 309 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3062!$omp target enter data map(always,alloc:dqR_prim_dz_n(i)%vf(l)%sf)
3063# 309 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3064#endif
3065 end do
3066#ifdef _CRAYFTN
3067# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3068 block
3069# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3070 integer :: macros_setup_vfs_i
3071# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3072
3073# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3074#ifdef MFC_DEBUG
3075# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3076 block
3077# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3078 use iso_fortran_env, only: output_unit
3079# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3080
3081# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3082 print *, 'm_rhs.fpp:311: ', '@:ACC_SETUP_VFs(dqL_prim_dx_n(i), dqL_prim_dy_n(i), dqL_prim_dz_n(i))'
3083# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3084
3085# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3086 call flush (output_unit)
3087# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3088 end block
3089# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3090#endif
3091# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3092
3093# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3094
3095# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3096#if defined(MFC_OpenACC)
3097# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3098!$acc enter data copyin(dqL_prim_dx_n(i))
3099# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3100#elif defined(MFC_OpenMP)
3101# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3102!$omp target enter data map(to:dqL_prim_dx_n(i))
3103# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3104#endif
3105# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3106
3107# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3108#if defined(MFC_OpenACC)
3109# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3110!$acc enter data copyin(dqL_prim_dx_n(i)%vf)
3111# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3112#elif defined(MFC_OpenMP)
3113# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3114!$omp target enter data map(to:dqL_prim_dx_n(i)%vf)
3115# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3116#endif
3117# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3118 if (allocated(dql_prim_dx_n(i)%vf)) then
3119# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3120 do macros_setup_vfs_i = lbound(dql_prim_dx_n(i)%vf, 1), ubound(dql_prim_dx_n(i)%vf, 1)
3121# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3122 if (associated(dql_prim_dx_n(i)%vf(macros_setup_vfs_i)%sf)) then
3123# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3124
3125# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3126#if defined(MFC_OpenACC)
3127# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3128!$acc enter data copyin(dqL_prim_dx_n(i)%vf(macros_setup_vfs_i))
3129# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3130#elif defined(MFC_OpenMP)
3131# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3132!$omp target enter data map(to:dqL_prim_dx_n(i)%vf(macros_setup_vfs_i))
3133# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3134#endif
3135# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3136
3137# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3138#if defined(MFC_OpenACC)
3139# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3140!$acc enter data copyin(dqL_prim_dx_n(i)%vf(macros_setup_vfs_i)%sf)
3141# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3142#elif defined(MFC_OpenMP)
3143# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3144!$omp target enter data map(to:dqL_prim_dx_n(i)%vf(macros_setup_vfs_i)%sf)
3145# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3146#endif
3147# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3148 end if
3149# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3150 end do
3151# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3152 end if
3153# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3154
3155# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3156#if defined(MFC_OpenACC)
3157# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3158!$acc enter data copyin(dqL_prim_dy_n(i))
3159# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3160#elif defined(MFC_OpenMP)
3161# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3162!$omp target enter data map(to:dqL_prim_dy_n(i))
3163# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3164#endif
3165# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3166
3167# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3168#if defined(MFC_OpenACC)
3169# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3170!$acc enter data copyin(dqL_prim_dy_n(i)%vf)
3171# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3172#elif defined(MFC_OpenMP)
3173# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3174!$omp target enter data map(to:dqL_prim_dy_n(i)%vf)
3175# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3176#endif
3177# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3178 if (allocated(dql_prim_dy_n(i)%vf)) then
3179# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3180 do macros_setup_vfs_i = lbound(dql_prim_dy_n(i)%vf, 1), ubound(dql_prim_dy_n(i)%vf, 1)
3181# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3182 if (associated(dql_prim_dy_n(i)%vf(macros_setup_vfs_i)%sf)) then
3183# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3184
3185# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3186#if defined(MFC_OpenACC)
3187# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3188!$acc enter data copyin(dqL_prim_dy_n(i)%vf(macros_setup_vfs_i))
3189# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3190#elif defined(MFC_OpenMP)
3191# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3192!$omp target enter data map(to:dqL_prim_dy_n(i)%vf(macros_setup_vfs_i))
3193# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3194#endif
3195# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3196
3197# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3198#if defined(MFC_OpenACC)
3199# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3200!$acc enter data copyin(dqL_prim_dy_n(i)%vf(macros_setup_vfs_i)%sf)
3201# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3202#elif defined(MFC_OpenMP)
3203# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3204!$omp target enter data map(to:dqL_prim_dy_n(i)%vf(macros_setup_vfs_i)%sf)
3205# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3206#endif
3207# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3208 end if
3209# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3210 end do
3211# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3212 end if
3213# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3214
3215# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3216#if defined(MFC_OpenACC)
3217# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3218!$acc enter data copyin(dqL_prim_dz_n(i))
3219# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3220#elif defined(MFC_OpenMP)
3221# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3222!$omp target enter data map(to:dqL_prim_dz_n(i))
3223# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3224#endif
3225# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3226
3227# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3228#if defined(MFC_OpenACC)
3229# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3230!$acc enter data copyin(dqL_prim_dz_n(i)%vf)
3231# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3232#elif defined(MFC_OpenMP)
3233# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3234!$omp target enter data map(to:dqL_prim_dz_n(i)%vf)
3235# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3236#endif
3237# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3238 if (allocated(dql_prim_dz_n(i)%vf)) then
3239# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3240 do macros_setup_vfs_i = lbound(dql_prim_dz_n(i)%vf, 1), ubound(dql_prim_dz_n(i)%vf, 1)
3241# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3242 if (associated(dql_prim_dz_n(i)%vf(macros_setup_vfs_i)%sf)) then
3243# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3244
3245# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3246#if defined(MFC_OpenACC)
3247# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3248!$acc enter data copyin(dqL_prim_dz_n(i)%vf(macros_setup_vfs_i))
3249# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3250#elif defined(MFC_OpenMP)
3251# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3252!$omp target enter data map(to:dqL_prim_dz_n(i)%vf(macros_setup_vfs_i))
3253# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3254#endif
3255# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3256
3257# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3258#if defined(MFC_OpenACC)
3259# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3260!$acc enter data copyin(dqL_prim_dz_n(i)%vf(macros_setup_vfs_i)%sf)
3261# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3262#elif defined(MFC_OpenMP)
3263# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3264!$omp target enter data map(to:dqL_prim_dz_n(i)%vf(macros_setup_vfs_i)%sf)
3265# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3266#endif
3267# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3268 end if
3269# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3270 end do
3271# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3272 end if
3273# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3274 end block
3275# 311 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3276#endif
3277#ifdef _CRAYFTN
3278# 312 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3279 block
3280# 312 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3281 integer :: macros_setup_vfs_i
3282# 312 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3283
3284# 312 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3285#ifdef MFC_DEBUG
3286# 312 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3287 block
3288# 312 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3289 use iso_fortran_env, only: output_unit
3290# 312 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3291
3292# 312 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3293 print *, 'm_rhs.fpp:312: ', '@:ACC_SETUP_VFs(dqR_prim_dx_n(i), dqR_prim_dy_n(i), dqR_prim_dz_n(i))'
3294# 312 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3295
3296# 312 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3297 call flush (output_unit)
3298# 312 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3299 end block
3300# 312 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3301#endif
3302# 312 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3303
3304# 312 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3305
3306# 312 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3307#if defined(MFC_OpenACC)
3308# 312 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3309!$acc enter data copyin(dqR_prim_dx_n(i))
3310# 312 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3311#elif defined(MFC_OpenMP)
3312# 312 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3313!$omp target enter data map(to:dqR_prim_dx_n(i))
3314# 312 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3315#endif
3316# 312 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3317
3318# 312 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3319#if defined(MFC_OpenACC)
3320# 312 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3321!$acc enter data copyin(dqR_prim_dx_n(i)%vf)
3322# 312 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3323#elif defined(MFC_OpenMP)
3324# 312 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3325!$omp target enter data map(to:dqR_prim_dx_n(i)%vf)
3326# 312 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3327#endif
3328# 312 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3329 if (allocated(dqr_prim_dx_n(i)%vf)) then
3330# 312 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3331 do macros_setup_vfs_i = lbound(dqr_prim_dx_n(i)%vf, 1), ubound(dqr_prim_dx_n(i)%vf, 1)
3332# 312 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3333 if (associated(dqr_prim_dx_n(i)%vf(macros_setup_vfs_i)%sf)) then
3334# 312 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3335
3336# 312 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3337#if defined(MFC_OpenACC)
3338# 312 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3339!$acc enter data copyin(dqR_prim_dx_n(i)%vf(macros_setup_vfs_i))
3340# 312 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3341#elif defined(MFC_OpenMP)
3342# 312 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3343!$omp target enter data map(to:dqR_prim_dx_n(i)%vf(macros_setup_vfs_i))
3344# 312 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3345#endif
3346# 312 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3347
3348# 312 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3349#if defined(MFC_OpenACC)
3350# 312 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3351!$acc enter data copyin(dqR_prim_dx_n(i)%vf(macros_setup_vfs_i)%sf)
3352# 312 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3353#elif defined(MFC_OpenMP)
3354# 312 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3355!$omp target enter data map(to:dqR_prim_dx_n(i)%vf(macros_setup_vfs_i)%sf)
3356# 312 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3357#endif
3358# 312 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3359 end if
3360# 312 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3361 end do
3362# 312 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3363 end if
3364# 312 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3365
3366# 312 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3367#if defined(MFC_OpenACC)
3368# 312 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3369!$acc enter data copyin(dqR_prim_dy_n(i))
3370# 312 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3371#elif defined(MFC_OpenMP)
3372# 312 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3373!$omp target enter data map(to:dqR_prim_dy_n(i))
3374# 312 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3375#endif
3376# 312 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3377
3378# 312 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3379#if defined(MFC_OpenACC)
3380# 312 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3381!$acc enter data copyin(dqR_prim_dy_n(i)%vf)
3382# 312 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3383#elif defined(MFC_OpenMP)
3384# 312 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3385!$omp target enter data map(to:dqR_prim_dy_n(i)%vf)
3386# 312 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3387#endif
3388# 312 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3389 if (allocated(dqr_prim_dy_n(i)%vf)) then
3390# 312 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3391 do macros_setup_vfs_i = lbound(dqr_prim_dy_n(i)%vf, 1), ubound(dqr_prim_dy_n(i)%vf, 1)
3392# 312 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3393 if (associated(dqr_prim_dy_n(i)%vf(macros_setup_vfs_i)%sf)) then
3394# 312 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3395
3396# 312 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3397#if defined(MFC_OpenACC)
3398# 312 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3399!$acc enter data copyin(dqR_prim_dy_n(i)%vf(macros_setup_vfs_i))
3400# 312 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3401#elif defined(MFC_OpenMP)
3402# 312 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3403!$omp target enter data map(to:dqR_prim_dy_n(i)%vf(macros_setup_vfs_i))
3404# 312 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3405#endif
3406# 312 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3407
3408# 312 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3409#if defined(MFC_OpenACC)
3410# 312 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3411!$acc enter data copyin(dqR_prim_dy_n(i)%vf(macros_setup_vfs_i)%sf)
3412# 312 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3413#elif defined(MFC_OpenMP)
3414# 312 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3415!$omp target enter data map(to:dqR_prim_dy_n(i)%vf(macros_setup_vfs_i)%sf)
3416# 312 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3417#endif
3418# 312 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3419 end if
3420# 312 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3421 end do
3422# 312 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3423 end if
3424# 312 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3425
3426# 312 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3427#if defined(MFC_OpenACC)
3428# 312 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3429!$acc enter data copyin(dqR_prim_dz_n(i))
3430# 312 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3431#elif defined(MFC_OpenMP)
3432# 312 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3433!$omp target enter data map(to:dqR_prim_dz_n(i))
3434# 312 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3435#endif
3436# 312 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3437
3438# 312 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3439#if defined(MFC_OpenACC)
3440# 312 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3441!$acc enter data copyin(dqR_prim_dz_n(i)%vf)
3442# 312 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3443#elif defined(MFC_OpenMP)
3444# 312 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3445!$omp target enter data map(to:dqR_prim_dz_n(i)%vf)
3446# 312 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3447#endif
3448# 312 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3449 if (allocated(dqr_prim_dz_n(i)%vf)) then
3450# 312 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3451 do macros_setup_vfs_i = lbound(dqr_prim_dz_n(i)%vf, 1), ubound(dqr_prim_dz_n(i)%vf, 1)
3452# 312 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3453 if (associated(dqr_prim_dz_n(i)%vf(macros_setup_vfs_i)%sf)) then
3454# 312 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3455
3456# 312 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3457#if defined(MFC_OpenACC)
3458# 312 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3459!$acc enter data copyin(dqR_prim_dz_n(i)%vf(macros_setup_vfs_i))
3460# 312 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3461#elif defined(MFC_OpenMP)
3462# 312 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3463!$omp target enter data map(to:dqR_prim_dz_n(i)%vf(macros_setup_vfs_i))
3464# 312 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3465#endif
3466# 312 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3467
3468# 312 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3469#if defined(MFC_OpenACC)
3470# 312 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3471!$acc enter data copyin(dqR_prim_dz_n(i)%vf(macros_setup_vfs_i)%sf)
3472# 312 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3473#elif defined(MFC_OpenMP)
3474# 312 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3475!$omp target enter data map(to:dqR_prim_dz_n(i)%vf(macros_setup_vfs_i)%sf)
3476# 312 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3477#endif
3478# 312 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3479 end if
3480# 312 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3481 end do
3482# 312 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3483 end if
3484# 312 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3485 end block
3486# 312 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3487#endif
3488 end do
3489 end if
3490
3491 if (viscous) then
3492#ifdef MFC_DEBUG
3493# 317 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3494 block
3495# 317 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3496 use iso_fortran_env, only: output_unit
3497# 317 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3498
3499# 317 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3500 print *, 'm_rhs.fpp:317: ', '@:ALLOCATE(tau_Re_vf(1:sys_size))'
3501# 317 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3502
3503# 317 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3504 call flush (output_unit)
3505# 317 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3506 end block
3507# 317 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3508#endif
3509# 317 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3510 allocate (tau_re_vf(1:sys_size))
3511# 317 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3512
3513# 317 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3514
3515# 317 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3516#if defined(MFC_OpenACC)
3517# 317 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3518!$acc enter data create(tau_Re_vf)
3519# 317 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3520#elif defined(MFC_OpenMP)
3521# 317 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3522!$omp target enter data map(always,alloc:tau_Re_vf)
3523# 317 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3524#endif
3525 do i = 1, num_dims
3526#ifdef MFC_DEBUG
3527# 319 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3528 block
3529# 319 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3530 use iso_fortran_env, only: output_unit
3531# 319 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3532
3533# 319 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3534 print *, 'm_rhs.fpp:319: ', '@: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))'
3535# 319 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3536
3537# 319 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3538 call flush (output_unit)
3539# 319 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3540 end block
3541# 319 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3542#endif
3543# 319 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3544 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))
3545# 319 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3546
3547# 319 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3548
3549# 319 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3550#if defined(MFC_OpenACC)
3551# 319 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3552!$acc enter data create(tau_Re_vf(eqn_idx%cont%end + i)%sf)
3553# 319 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3554#elif defined(MFC_OpenMP)
3555# 319 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3556!$omp target enter data map(always,alloc:tau_Re_vf(eqn_idx%cont%end + i)%sf)
3557# 319 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3558#endif
3559# 321 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3560#ifdef _CRAYFTN
3561# 321 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3562 block
3563# 321 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3564#ifdef MFC_DEBUG
3565# 321 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3566 block
3567# 321 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3568 use iso_fortran_env, only: output_unit
3569# 321 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3570
3571# 321 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3572 print *, 'm_rhs.fpp:321: ', '@:ACC_SETUP_SFs(tau_Re_vf(eqn_idx%cont%end + i))'
3573# 321 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3574
3575# 321 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3576 call flush (output_unit)
3577# 321 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3578 end block
3579# 321 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3580#endif
3581# 321 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3582
3583# 321 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3584
3585# 321 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3586#if defined(MFC_OpenACC)
3587# 321 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3588!$acc enter data copyin(tau_Re_vf(eqn_idx%cont%end + i))
3589# 321 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3590#elif defined(MFC_OpenMP)
3591# 321 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3592!$omp target enter data map(to:tau_Re_vf(eqn_idx%cont%end + i))
3593# 321 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3594#endif
3595# 321 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3596 if (associated(tau_re_vf(eqn_idx%cont%end + i)%sf)) then
3597# 321 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3598
3599# 321 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3600#if defined(MFC_OpenACC)
3601# 321 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3602!$acc enter data copyin(tau_Re_vf(eqn_idx%cont%end + i)%sf)
3603# 321 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3604#elif defined(MFC_OpenMP)
3605# 321 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3606!$omp target enter data map(to:tau_Re_vf(eqn_idx%cont%end + i)%sf)
3607# 321 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3608#endif
3609# 321 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3610 end if
3611# 321 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3612 end block
3613# 321 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3614#endif
3615 end do
3616#ifdef MFC_DEBUG
3617# 323 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3618 block
3619# 323 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3620 use iso_fortran_env, only: output_unit
3621# 323 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3622
3623# 323 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3624 print *, 'm_rhs.fpp:323: ', '@: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))'
3625# 323 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3626
3627# 323 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3628 call flush (output_unit)
3629# 323 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3630 end block
3631# 323 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3632#endif
3633# 323 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3634 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))
3635# 323 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3636
3637# 323 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3638
3639# 323 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3640#if defined(MFC_OpenACC)
3641# 323 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3642!$acc enter data create(tau_Re_vf(eqn_idx%E)%sf)
3643# 323 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3644#elif defined(MFC_OpenMP)
3645# 323 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3646!$omp target enter data map(always,alloc:tau_Re_vf(eqn_idx%E)%sf)
3647# 323 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3648#endif
3649# 325 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3650#ifdef _CRAYFTN
3651# 325 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3652 block
3653# 325 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3654#ifdef MFC_DEBUG
3655# 325 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3656 block
3657# 325 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3658 use iso_fortran_env, only: output_unit
3659# 325 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3660
3661# 325 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3662 print *, 'm_rhs.fpp:325: ', '@:ACC_SETUP_SFs(tau_Re_vf(eqn_idx%E))'
3663# 325 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3664
3665# 325 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3666 call flush (output_unit)
3667# 325 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3668 end block
3669# 325 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3670#endif
3671# 325 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3672
3673# 325 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3674
3675# 325 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3676#if defined(MFC_OpenACC)
3677# 325 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3678!$acc enter data copyin(tau_Re_vf(eqn_idx%E))
3679# 325 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3680#elif defined(MFC_OpenMP)
3681# 325 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3682!$omp target enter data map(to:tau_Re_vf(eqn_idx%E))
3683# 325 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3684#endif
3685# 325 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3686 if (associated(tau_re_vf(eqn_idx%E)%sf)) then
3687# 325 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3688
3689# 325 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3690#if defined(MFC_OpenACC)
3691# 325 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3692!$acc enter data copyin(tau_Re_vf(eqn_idx%E)%sf)
3693# 325 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3694#elif defined(MFC_OpenMP)
3695# 325 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3696!$omp target enter data map(to:tau_Re_vf(eqn_idx%E)%sf)
3697# 325 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3698#endif
3699# 325 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3700 end if
3701# 325 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3702 end block
3703# 325 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3704#endif
3705
3706#ifdef MFC_DEBUG
3707# 327 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3708 block
3709# 327 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3710 use iso_fortran_env, only: output_unit
3711# 327 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3712
3713# 327 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3714 print *, 'm_rhs.fpp:327: ', '@:ALLOCATE(dq_prim_dx_qp(1)%vf(1:sys_size))'
3715# 327 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3716
3717# 327 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3718 call flush (output_unit)
3719# 327 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3720 end block
3721# 327 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3722#endif
3723# 327 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3724 allocate (dq_prim_dx_qp(1)%vf(1:sys_size))
3725# 327 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3726
3727# 327 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3728
3729# 327 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3730#if defined(MFC_OpenACC)
3731# 327 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3732!$acc enter data create(dq_prim_dx_qp(1)%vf)
3733# 327 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3734#elif defined(MFC_OpenMP)
3735# 327 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3736!$omp target enter data map(always,alloc:dq_prim_dx_qp(1)%vf)
3737# 327 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3738#endif
3739#ifdef MFC_DEBUG
3740# 328 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3741 block
3742# 328 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3743 use iso_fortran_env, only: output_unit
3744# 328 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3745
3746# 328 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3747 print *, 'm_rhs.fpp:328: ', '@:ALLOCATE(dq_prim_dy_qp(1)%vf(1:sys_size))'
3748# 328 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3749
3750# 328 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3751 call flush (output_unit)
3752# 328 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3753 end block
3754# 328 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3755#endif
3756# 328 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3757 allocate (dq_prim_dy_qp(1)%vf(1:sys_size))
3758# 328 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3759
3760# 328 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3761
3762# 328 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3763#if defined(MFC_OpenACC)
3764# 328 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3765!$acc enter data create(dq_prim_dy_qp(1)%vf)
3766# 328 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3767#elif defined(MFC_OpenMP)
3768# 328 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3769!$omp target enter data map(always,alloc:dq_prim_dy_qp(1)%vf)
3770# 328 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3771#endif
3772#ifdef MFC_DEBUG
3773# 329 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3774 block
3775# 329 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3776 use iso_fortran_env, only: output_unit
3777# 329 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3778
3779# 329 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3780 print *, 'm_rhs.fpp:329: ', '@:ALLOCATE(dq_prim_dz_qp(1)%vf(1:sys_size))'
3781# 329 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3782
3783# 329 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3784 call flush (output_unit)
3785# 329 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3786 end block
3787# 329 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3788#endif
3789# 329 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3790 allocate (dq_prim_dz_qp(1)%vf(1:sys_size))
3791# 329 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3792
3793# 329 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3794
3795# 329 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3796#if defined(MFC_OpenACC)
3797# 329 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3798!$acc enter data create(dq_prim_dz_qp(1)%vf)
3799# 329 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3800#elif defined(MFC_OpenMP)
3801# 329 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3802!$omp target enter data map(always,alloc:dq_prim_dz_qp(1)%vf)
3803# 329 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3804#endif
3805
3806 do l = eqn_idx%mom%beg, eqn_idx%mom%end
3807#ifdef MFC_DEBUG
3808# 332 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3809 block
3810# 332 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3811 use iso_fortran_env, only: output_unit
3812# 332 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3813
3814# 332 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3815 print *, 'm_rhs.fpp:332: ', '@: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))'
3816# 332 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3817
3818# 332 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3819 call flush (output_unit)
3820# 332 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3821 end block
3822# 332 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3823#endif
3824# 332 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3825 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))
3826# 332 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3827
3828# 332 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3829
3830# 332 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3831#if defined(MFC_OpenACC)
3832# 332 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3833!$acc enter data create(dq_prim_dx_qp(1)%vf(l)%sf)
3834# 332 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3835#elif defined(MFC_OpenMP)
3836# 332 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3837!$omp target enter data map(always,alloc:dq_prim_dx_qp(1)%vf(l)%sf)
3838# 332 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3839#endif
3840# 334 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3841 end do
3842
3843#ifdef _CRAYFTN
3844# 336 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3845 block
3846# 336 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3847 integer :: macros_setup_vfs_i
3848# 336 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3849
3850# 336 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3851#ifdef MFC_DEBUG
3852# 336 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3853 block
3854# 336 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3855 use iso_fortran_env, only: output_unit
3856# 336 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3857
3858# 336 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3859 print *, 'm_rhs.fpp:336: ', '@:ACC_SETUP_VFs(dq_prim_dx_qp(1))'
3860# 336 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3861
3862# 336 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3863 call flush (output_unit)
3864# 336 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3865 end block
3866# 336 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3867#endif
3868# 336 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3869
3870# 336 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3871
3872# 336 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3873#if defined(MFC_OpenACC)
3874# 336 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3875!$acc enter data copyin(dq_prim_dx_qp(1))
3876# 336 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3877#elif defined(MFC_OpenMP)
3878# 336 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3879!$omp target enter data map(to:dq_prim_dx_qp(1))
3880# 336 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3881#endif
3882# 336 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3883
3884# 336 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3885#if defined(MFC_OpenACC)
3886# 336 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3887!$acc enter data copyin(dq_prim_dx_qp(1)%vf)
3888# 336 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3889#elif defined(MFC_OpenMP)
3890# 336 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3891!$omp target enter data map(to:dq_prim_dx_qp(1)%vf)
3892# 336 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3893#endif
3894# 336 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3895 if (allocated(dq_prim_dx_qp(1)%vf)) then
3896# 336 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3897 do macros_setup_vfs_i = lbound(dq_prim_dx_qp(1)%vf, 1), ubound(dq_prim_dx_qp(1)%vf, 1)
3898# 336 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3899 if (associated(dq_prim_dx_qp(1)%vf(macros_setup_vfs_i)%sf)) then
3900# 336 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3901
3902# 336 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3903#if defined(MFC_OpenACC)
3904# 336 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3905!$acc enter data copyin(dq_prim_dx_qp(1)%vf(macros_setup_vfs_i))
3906# 336 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3907#elif defined(MFC_OpenMP)
3908# 336 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3909!$omp target enter data map(to:dq_prim_dx_qp(1)%vf(macros_setup_vfs_i))
3910# 336 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3911#endif
3912# 336 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3913
3914# 336 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3915#if defined(MFC_OpenACC)
3916# 336 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3917!$acc enter data copyin(dq_prim_dx_qp(1)%vf(macros_setup_vfs_i)%sf)
3918# 336 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3919#elif defined(MFC_OpenMP)
3920# 336 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3921!$omp target enter data map(to:dq_prim_dx_qp(1)%vf(macros_setup_vfs_i)%sf)
3922# 336 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3923#endif
3924# 336 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3925 end if
3926# 336 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3927 end do
3928# 336 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3929 end if
3930# 336 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3931 end block
3932# 336 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3933#endif
3934
3935 if (n > 0) then
3936 do l = eqn_idx%mom%beg, eqn_idx%mom%end
3937#ifdef MFC_DEBUG
3938# 340 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3939 block
3940# 340 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3941 use iso_fortran_env, only: output_unit
3942# 340 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3943
3944# 340 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3945 print *, 'm_rhs.fpp:340: ', '@: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))'
3946# 340 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3947
3948# 340 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3949 call flush (output_unit)
3950# 340 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3951 end block
3952# 340 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3953#endif
3954# 340 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3955 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))
3956# 340 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3957
3958# 340 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3959
3960# 340 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3961#if defined(MFC_OpenACC)
3962# 340 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3963!$acc enter data create(dq_prim_dy_qp(1)%vf(l)%sf)
3964# 340 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3965#elif defined(MFC_OpenMP)
3966# 340 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3967!$omp target enter data map(always,alloc:dq_prim_dy_qp(1)%vf(l)%sf)
3968# 340 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3969#endif
3970# 342 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3971 end do
3972
3973#ifdef _CRAYFTN
3974# 344 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3975 block
3976# 344 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3977 integer :: macros_setup_vfs_i
3978# 344 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3979
3980# 344 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3981#ifdef MFC_DEBUG
3982# 344 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3983 block
3984# 344 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3985 use iso_fortran_env, only: output_unit
3986# 344 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3987
3988# 344 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3989 print *, 'm_rhs.fpp:344: ', '@:ACC_SETUP_VFs(dq_prim_dy_qp(1))'
3990# 344 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3991
3992# 344 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3993 call flush (output_unit)
3994# 344 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3995 end block
3996# 344 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3997#endif
3998# 344 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
3999
4000# 344 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4001
4002# 344 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4003#if defined(MFC_OpenACC)
4004# 344 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4005!$acc enter data copyin(dq_prim_dy_qp(1))
4006# 344 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4007#elif defined(MFC_OpenMP)
4008# 344 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4009!$omp target enter data map(to:dq_prim_dy_qp(1))
4010# 344 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4011#endif
4012# 344 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4013
4014# 344 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4015#if defined(MFC_OpenACC)
4016# 344 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4017!$acc enter data copyin(dq_prim_dy_qp(1)%vf)
4018# 344 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4019#elif defined(MFC_OpenMP)
4020# 344 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4021!$omp target enter data map(to:dq_prim_dy_qp(1)%vf)
4022# 344 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4023#endif
4024# 344 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4025 if (allocated(dq_prim_dy_qp(1)%vf)) then
4026# 344 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4027 do macros_setup_vfs_i = lbound(dq_prim_dy_qp(1)%vf, 1), ubound(dq_prim_dy_qp(1)%vf, 1)
4028# 344 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4029 if (associated(dq_prim_dy_qp(1)%vf(macros_setup_vfs_i)%sf)) then
4030# 344 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4031
4032# 344 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4033#if defined(MFC_OpenACC)
4034# 344 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4035!$acc enter data copyin(dq_prim_dy_qp(1)%vf(macros_setup_vfs_i))
4036# 344 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4037#elif defined(MFC_OpenMP)
4038# 344 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4039!$omp target enter data map(to:dq_prim_dy_qp(1)%vf(macros_setup_vfs_i))
4040# 344 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4041#endif
4042# 344 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4043
4044# 344 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4045#if defined(MFC_OpenACC)
4046# 344 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4047!$acc enter data copyin(dq_prim_dy_qp(1)%vf(macros_setup_vfs_i)%sf)
4048# 344 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4049#elif defined(MFC_OpenMP)
4050# 344 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4051!$omp target enter data map(to:dq_prim_dy_qp(1)%vf(macros_setup_vfs_i)%sf)
4052# 344 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4053#endif
4054# 344 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4055 end if
4056# 344 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4057 end do
4058# 344 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4059 end if
4060# 344 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4061 end block
4062# 344 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4063#endif
4064
4065 if (p > 0) then
4066 do l = eqn_idx%mom%beg, eqn_idx%mom%end
4067#ifdef MFC_DEBUG
4068# 348 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4069 block
4070# 348 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4071 use iso_fortran_env, only: output_unit
4072# 348 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4073
4074# 348 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4075 print *, 'm_rhs.fpp:348: ', '@: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))'
4076# 348 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4077
4078# 348 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4079 call flush (output_unit)
4080# 348 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4081 end block
4082# 348 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4083#endif
4084# 348 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4085 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))
4086# 348 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4087
4088# 348 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4089
4090# 348 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4091#if defined(MFC_OpenACC)
4092# 348 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4093!$acc enter data create(dq_prim_dz_qp(1)%vf(l)%sf)
4094# 348 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4095#elif defined(MFC_OpenMP)
4096# 348 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4097!$omp target enter data map(always,alloc:dq_prim_dz_qp(1)%vf(l)%sf)
4098# 348 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4099#endif
4100# 350 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4101 end do
4102#ifdef _CRAYFTN
4103# 351 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4104 block
4105# 351 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4106 integer :: macros_setup_vfs_i
4107# 351 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4108
4109# 351 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4110#ifdef MFC_DEBUG
4111# 351 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4112 block
4113# 351 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4114 use iso_fortran_env, only: output_unit
4115# 351 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4116
4117# 351 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4118 print *, 'm_rhs.fpp:351: ', '@:ACC_SETUP_VFs(dq_prim_dz_qp(1))'
4119# 351 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4120
4121# 351 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4122 call flush (output_unit)
4123# 351 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4124 end block
4125# 351 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4126#endif
4127# 351 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4128
4129# 351 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4130
4131# 351 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4132#if defined(MFC_OpenACC)
4133# 351 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4134!$acc enter data copyin(dq_prim_dz_qp(1))
4135# 351 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4136#elif defined(MFC_OpenMP)
4137# 351 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4138!$omp target enter data map(to:dq_prim_dz_qp(1))
4139# 351 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4140#endif
4141# 351 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4142
4143# 351 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4144#if defined(MFC_OpenACC)
4145# 351 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4146!$acc enter data copyin(dq_prim_dz_qp(1)%vf)
4147# 351 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4148#elif defined(MFC_OpenMP)
4149# 351 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4150!$omp target enter data map(to:dq_prim_dz_qp(1)%vf)
4151# 351 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4152#endif
4153# 351 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4154 if (allocated(dq_prim_dz_qp(1)%vf)) then
4155# 351 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4156 do macros_setup_vfs_i = lbound(dq_prim_dz_qp(1)%vf, 1), ubound(dq_prim_dz_qp(1)%vf, 1)
4157# 351 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4158 if (associated(dq_prim_dz_qp(1)%vf(macros_setup_vfs_i)%sf)) then
4159# 351 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4160
4161# 351 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4162#if defined(MFC_OpenACC)
4163# 351 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4164!$acc enter data copyin(dq_prim_dz_qp(1)%vf(macros_setup_vfs_i))
4165# 351 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4166#elif defined(MFC_OpenMP)
4167# 351 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4168!$omp target enter data map(to:dq_prim_dz_qp(1)%vf(macros_setup_vfs_i))
4169# 351 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4170#endif
4171# 351 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4172
4173# 351 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4174#if defined(MFC_OpenACC)
4175# 351 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4176!$acc enter data copyin(dq_prim_dz_qp(1)%vf(macros_setup_vfs_i)%sf)
4177# 351 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4178#elif defined(MFC_OpenMP)
4179# 351 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4180!$omp target enter data map(to:dq_prim_dz_qp(1)%vf(macros_setup_vfs_i)%sf)
4181# 351 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4182#endif
4183# 351 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4184 end if
4185# 351 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4186 end do
4187# 351 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4188 end if
4189# 351 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4190 end block
4191# 351 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4192#endif
4193 end if
4194 end if
4195
4196 do i = 1, num_dims
4197#ifdef MFC_DEBUG
4198# 356 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4199 block
4200# 356 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4201 use iso_fortran_env, only: output_unit
4202# 356 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4203
4204# 356 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4205 print *, 'm_rhs.fpp:356: ', '@:ALLOCATE(dqL_prim_dx_n(i)%vf(1:sys_size))'
4206# 356 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4207
4208# 356 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4209 call flush (output_unit)
4210# 356 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4211 end block
4212# 356 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4213#endif
4214# 356 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4215 allocate (dql_prim_dx_n(i)%vf(1:sys_size))
4216# 356 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4217
4218# 356 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4219
4220# 356 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4221#if defined(MFC_OpenACC)
4222# 356 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4223!$acc enter data create(dqL_prim_dx_n(i)%vf)
4224# 356 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4225#elif defined(MFC_OpenMP)
4226# 356 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4227!$omp target enter data map(always,alloc:dqL_prim_dx_n(i)%vf)
4228# 356 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4229#endif
4230#ifdef MFC_DEBUG
4231# 357 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4232 block
4233# 357 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4234 use iso_fortran_env, only: output_unit
4235# 357 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4236
4237# 357 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4238 print *, 'm_rhs.fpp:357: ', '@:ALLOCATE(dqL_prim_dy_n(i)%vf(1:sys_size))'
4239# 357 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4240
4241# 357 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4242 call flush (output_unit)
4243# 357 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4244 end block
4245# 357 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4246#endif
4247# 357 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4248 allocate (dql_prim_dy_n(i)%vf(1:sys_size))
4249# 357 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4250
4251# 357 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4252
4253# 357 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4254#if defined(MFC_OpenACC)
4255# 357 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4256!$acc enter data create(dqL_prim_dy_n(i)%vf)
4257# 357 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4258#elif defined(MFC_OpenMP)
4259# 357 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4260!$omp target enter data map(always,alloc:dqL_prim_dy_n(i)%vf)
4261# 357 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4262#endif
4263#ifdef MFC_DEBUG
4264# 358 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4265 block
4266# 358 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4267 use iso_fortran_env, only: output_unit
4268# 358 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4269
4270# 358 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4271 print *, 'm_rhs.fpp:358: ', '@:ALLOCATE(dqL_prim_dz_n(i)%vf(1:sys_size))'
4272# 358 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4273
4274# 358 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4275 call flush (output_unit)
4276# 358 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4277 end block
4278# 358 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4279#endif
4280# 358 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4281 allocate (dql_prim_dz_n(i)%vf(1:sys_size))
4282# 358 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4283
4284# 358 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4285
4286# 358 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4287#if defined(MFC_OpenACC)
4288# 358 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4289!$acc enter data create(dqL_prim_dz_n(i)%vf)
4290# 358 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4291#elif defined(MFC_OpenMP)
4292# 358 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4293!$omp target enter data map(always,alloc:dqL_prim_dz_n(i)%vf)
4294# 358 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4295#endif
4296#ifdef MFC_DEBUG
4297# 359 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4298 block
4299# 359 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4300 use iso_fortran_env, only: output_unit
4301# 359 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4302
4303# 359 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4304 print *, 'm_rhs.fpp:359: ', '@:ALLOCATE(dqR_prim_dx_n(i)%vf(1:sys_size))'
4305# 359 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4306
4307# 359 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4308 call flush (output_unit)
4309# 359 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4310 end block
4311# 359 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4312#endif
4313# 359 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4314 allocate (dqr_prim_dx_n(i)%vf(1:sys_size))
4315# 359 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4316
4317# 359 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4318
4319# 359 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4320#if defined(MFC_OpenACC)
4321# 359 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4322!$acc enter data create(dqR_prim_dx_n(i)%vf)
4323# 359 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4324#elif defined(MFC_OpenMP)
4325# 359 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4326!$omp target enter data map(always,alloc:dqR_prim_dx_n(i)%vf)
4327# 359 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4328#endif
4329#ifdef MFC_DEBUG
4330# 360 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4331 block
4332# 360 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4333 use iso_fortran_env, only: output_unit
4334# 360 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4335
4336# 360 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4337 print *, 'm_rhs.fpp:360: ', '@:ALLOCATE(dqR_prim_dy_n(i)%vf(1:sys_size))'
4338# 360 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4339
4340# 360 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4341 call flush (output_unit)
4342# 360 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4343 end block
4344# 360 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4345#endif
4346# 360 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4347 allocate (dqr_prim_dy_n(i)%vf(1:sys_size))
4348# 360 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4349
4350# 360 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4351
4352# 360 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4353#if defined(MFC_OpenACC)
4354# 360 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4355!$acc enter data create(dqR_prim_dy_n(i)%vf)
4356# 360 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4357#elif defined(MFC_OpenMP)
4358# 360 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4359!$omp target enter data map(always,alloc:dqR_prim_dy_n(i)%vf)
4360# 360 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4361#endif
4362#ifdef MFC_DEBUG
4363# 361 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4364 block
4365# 361 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4366 use iso_fortran_env, only: output_unit
4367# 361 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4368
4369# 361 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4370 print *, 'm_rhs.fpp:361: ', '@:ALLOCATE(dqR_prim_dz_n(i)%vf(1:sys_size))'
4371# 361 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4372
4373# 361 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4374 call flush (output_unit)
4375# 361 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4376 end block
4377# 361 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4378#endif
4379# 361 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4380 allocate (dqr_prim_dz_n(i)%vf(1:sys_size))
4381# 361 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4382
4383# 361 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4384
4385# 361 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4386#if defined(MFC_OpenACC)
4387# 361 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4388!$acc enter data create(dqR_prim_dz_n(i)%vf)
4389# 361 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4390#elif defined(MFC_OpenMP)
4391# 361 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4392!$omp target enter data map(always,alloc:dqR_prim_dz_n(i)%vf)
4393# 361 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4394#endif
4395 end do
4396
4397 do i = 1, num_dims
4398 do l = eqn_idx%mom%beg, eqn_idx%mom%end
4399#ifdef MFC_DEBUG
4400# 366 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4401 block
4402# 366 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4403 use iso_fortran_env, only: output_unit
4404# 366 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4405
4406# 366 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4407 print *, 'm_rhs.fpp:366: ', '@: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))'
4408# 366 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4409
4410# 366 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4411 call flush (output_unit)
4412# 366 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4413 end block
4414# 366 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4415#endif
4416# 366 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4417 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))
4418# 366 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4419
4420# 366 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4421
4422# 366 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4423#if defined(MFC_OpenACC)
4424# 366 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4425!$acc enter data create(dqL_prim_dx_n(i)%vf(l)%sf)
4426# 366 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4427#elif defined(MFC_OpenMP)
4428# 366 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4429!$omp target enter data map(always,alloc:dqL_prim_dx_n(i)%vf(l)%sf)
4430# 366 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4431#endif
4432# 368 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4433#ifdef MFC_DEBUG
4434# 368 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4435 block
4436# 368 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4437 use iso_fortran_env, only: output_unit
4438# 368 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4439
4440# 368 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4441 print *, 'm_rhs.fpp:368: ', '@: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))'
4442# 368 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4443
4444# 368 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4445 call flush (output_unit)
4446# 368 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4447 end block
4448# 368 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4449#endif
4450# 368 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4451 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))
4452# 368 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4453
4454# 368 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4455
4456# 368 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4457#if defined(MFC_OpenACC)
4458# 368 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4459!$acc enter data create(dqR_prim_dx_n(i)%vf(l)%sf)
4460# 368 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4461#elif defined(MFC_OpenMP)
4462# 368 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4463!$omp target enter data map(always,alloc:dqR_prim_dx_n(i)%vf(l)%sf)
4464# 368 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4465#endif
4466# 370 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4467 end do
4468
4469 if (n > 0) then
4470 do l = eqn_idx%mom%beg, eqn_idx%mom%end
4471#ifdef MFC_DEBUG
4472# 374 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4473 block
4474# 374 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4475 use iso_fortran_env, only: output_unit
4476# 374 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4477
4478# 374 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4479 print *, 'm_rhs.fpp:374: ', '@: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))'
4480# 374 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4481
4482# 374 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4483 call flush (output_unit)
4484# 374 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4485 end block
4486# 374 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4487#endif
4488# 374 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4489 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))
4490# 374 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4491
4492# 374 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4493
4494# 374 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4495#if defined(MFC_OpenACC)
4496# 374 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4497!$acc enter data create(dqL_prim_dy_n(i)%vf(l)%sf)
4498# 374 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4499#elif defined(MFC_OpenMP)
4500# 374 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4501!$omp target enter data map(always,alloc:dqL_prim_dy_n(i)%vf(l)%sf)
4502# 374 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4503#endif
4504# 376 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4505#ifdef MFC_DEBUG
4506# 376 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4507 block
4508# 376 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4509 use iso_fortran_env, only: output_unit
4510# 376 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4511
4512# 376 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4513 print *, 'm_rhs.fpp:376: ', '@: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))'
4514# 376 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4515
4516# 376 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4517 call flush (output_unit)
4518# 376 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4519 end block
4520# 376 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4521#endif
4522# 376 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4523 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))
4524# 376 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4525
4526# 376 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4527
4528# 376 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4529#if defined(MFC_OpenACC)
4530# 376 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4531!$acc enter data create(dqR_prim_dy_n(i)%vf(l)%sf)
4532# 376 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4533#elif defined(MFC_OpenMP)
4534# 376 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4535!$omp target enter data map(always,alloc:dqR_prim_dy_n(i)%vf(l)%sf)
4536# 376 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4537#endif
4538# 378 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4539 end do
4540 end if
4541
4542 if (p > 0) then
4543 do l = eqn_idx%mom%beg, eqn_idx%mom%end
4544#ifdef MFC_DEBUG
4545# 383 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4546 block
4547# 383 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4548 use iso_fortran_env, only: output_unit
4549# 383 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4550
4551# 383 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4552 print *, 'm_rhs.fpp:383: ', '@: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))'
4553# 383 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4554
4555# 383 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4556 call flush (output_unit)
4557# 383 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4558 end block
4559# 383 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4560#endif
4561# 383 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4562 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))
4563# 383 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4564
4565# 383 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4566
4567# 383 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4568#if defined(MFC_OpenACC)
4569# 383 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4570!$acc enter data create(dqL_prim_dz_n(i)%vf(l)%sf)
4571# 383 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4572#elif defined(MFC_OpenMP)
4573# 383 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4574!$omp target enter data map(always,alloc:dqL_prim_dz_n(i)%vf(l)%sf)
4575# 383 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4576#endif
4577# 385 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4578#ifdef MFC_DEBUG
4579# 385 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4580 block
4581# 385 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4582 use iso_fortran_env, only: output_unit
4583# 385 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4584
4585# 385 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4586 print *, 'm_rhs.fpp:385: ', '@: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))'
4587# 385 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4588
4589# 385 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4590 call flush (output_unit)
4591# 385 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4592 end block
4593# 385 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4594#endif
4595# 385 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4596 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))
4597# 385 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4598
4599# 385 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4600
4601# 385 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4602#if defined(MFC_OpenACC)
4603# 385 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4604!$acc enter data create(dqR_prim_dz_n(i)%vf(l)%sf)
4605# 385 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4606#elif defined(MFC_OpenMP)
4607# 385 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4608!$omp target enter data map(always,alloc:dqR_prim_dz_n(i)%vf(l)%sf)
4609# 385 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4610#endif
4611# 387 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4612 end do
4613 end if
4614
4615#ifdef _CRAYFTN
4616# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4617 block
4618# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4619 integer :: macros_setup_vfs_i
4620# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4621
4622# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4623#ifdef MFC_DEBUG
4624# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4625 block
4626# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4627 use iso_fortran_env, only: output_unit
4628# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4629
4630# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4631 print *, 'm_rhs.fpp:390: ', '@:ACC_SETUP_VFs(dqL_prim_dx_n(i), dqL_prim_dy_n(i), dqL_prim_dz_n(i))'
4632# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4633
4634# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4635 call flush (output_unit)
4636# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4637 end block
4638# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4639#endif
4640# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4641
4642# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4643
4644# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4645#if defined(MFC_OpenACC)
4646# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4647!$acc enter data copyin(dqL_prim_dx_n(i))
4648# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4649#elif defined(MFC_OpenMP)
4650# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4651!$omp target enter data map(to:dqL_prim_dx_n(i))
4652# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4653#endif
4654# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4655
4656# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4657#if defined(MFC_OpenACC)
4658# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4659!$acc enter data copyin(dqL_prim_dx_n(i)%vf)
4660# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4661#elif defined(MFC_OpenMP)
4662# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4663!$omp target enter data map(to:dqL_prim_dx_n(i)%vf)
4664# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4665#endif
4666# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4667 if (allocated(dql_prim_dx_n(i)%vf)) then
4668# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4669 do macros_setup_vfs_i = lbound(dql_prim_dx_n(i)%vf, 1), ubound(dql_prim_dx_n(i)%vf, 1)
4670# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4671 if (associated(dql_prim_dx_n(i)%vf(macros_setup_vfs_i)%sf)) then
4672# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4673
4674# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4675#if defined(MFC_OpenACC)
4676# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4677!$acc enter data copyin(dqL_prim_dx_n(i)%vf(macros_setup_vfs_i))
4678# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4679#elif defined(MFC_OpenMP)
4680# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4681!$omp target enter data map(to:dqL_prim_dx_n(i)%vf(macros_setup_vfs_i))
4682# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4683#endif
4684# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4685
4686# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4687#if defined(MFC_OpenACC)
4688# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4689!$acc enter data copyin(dqL_prim_dx_n(i)%vf(macros_setup_vfs_i)%sf)
4690# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4691#elif defined(MFC_OpenMP)
4692# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4693!$omp target enter data map(to:dqL_prim_dx_n(i)%vf(macros_setup_vfs_i)%sf)
4694# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4695#endif
4696# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4697 end if
4698# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4699 end do
4700# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4701 end if
4702# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4703
4704# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4705#if defined(MFC_OpenACC)
4706# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4707!$acc enter data copyin(dqL_prim_dy_n(i))
4708# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4709#elif defined(MFC_OpenMP)
4710# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4711!$omp target enter data map(to:dqL_prim_dy_n(i))
4712# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4713#endif
4714# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4715
4716# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4717#if defined(MFC_OpenACC)
4718# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4719!$acc enter data copyin(dqL_prim_dy_n(i)%vf)
4720# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4721#elif defined(MFC_OpenMP)
4722# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4723!$omp target enter data map(to:dqL_prim_dy_n(i)%vf)
4724# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4725#endif
4726# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4727 if (allocated(dql_prim_dy_n(i)%vf)) then
4728# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4729 do macros_setup_vfs_i = lbound(dql_prim_dy_n(i)%vf, 1), ubound(dql_prim_dy_n(i)%vf, 1)
4730# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4731 if (associated(dql_prim_dy_n(i)%vf(macros_setup_vfs_i)%sf)) then
4732# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4733
4734# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4735#if defined(MFC_OpenACC)
4736# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4737!$acc enter data copyin(dqL_prim_dy_n(i)%vf(macros_setup_vfs_i))
4738# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4739#elif defined(MFC_OpenMP)
4740# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4741!$omp target enter data map(to:dqL_prim_dy_n(i)%vf(macros_setup_vfs_i))
4742# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4743#endif
4744# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4745
4746# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4747#if defined(MFC_OpenACC)
4748# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4749!$acc enter data copyin(dqL_prim_dy_n(i)%vf(macros_setup_vfs_i)%sf)
4750# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4751#elif defined(MFC_OpenMP)
4752# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4753!$omp target enter data map(to:dqL_prim_dy_n(i)%vf(macros_setup_vfs_i)%sf)
4754# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4755#endif
4756# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4757 end if
4758# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4759 end do
4760# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4761 end if
4762# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4763
4764# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4765#if defined(MFC_OpenACC)
4766# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4767!$acc enter data copyin(dqL_prim_dz_n(i))
4768# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4769#elif defined(MFC_OpenMP)
4770# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4771!$omp target enter data map(to:dqL_prim_dz_n(i))
4772# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4773#endif
4774# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4775
4776# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4777#if defined(MFC_OpenACC)
4778# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4779!$acc enter data copyin(dqL_prim_dz_n(i)%vf)
4780# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4781#elif defined(MFC_OpenMP)
4782# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4783!$omp target enter data map(to:dqL_prim_dz_n(i)%vf)
4784# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4785#endif
4786# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4787 if (allocated(dql_prim_dz_n(i)%vf)) then
4788# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4789 do macros_setup_vfs_i = lbound(dql_prim_dz_n(i)%vf, 1), ubound(dql_prim_dz_n(i)%vf, 1)
4790# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4791 if (associated(dql_prim_dz_n(i)%vf(macros_setup_vfs_i)%sf)) then
4792# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4793
4794# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4795#if defined(MFC_OpenACC)
4796# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4797!$acc enter data copyin(dqL_prim_dz_n(i)%vf(macros_setup_vfs_i))
4798# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4799#elif defined(MFC_OpenMP)
4800# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4801!$omp target enter data map(to:dqL_prim_dz_n(i)%vf(macros_setup_vfs_i))
4802# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4803#endif
4804# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4805
4806# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4807#if defined(MFC_OpenACC)
4808# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4809!$acc enter data copyin(dqL_prim_dz_n(i)%vf(macros_setup_vfs_i)%sf)
4810# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4811#elif defined(MFC_OpenMP)
4812# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4813!$omp target enter data map(to:dqL_prim_dz_n(i)%vf(macros_setup_vfs_i)%sf)
4814# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4815#endif
4816# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4817 end if
4818# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4819 end do
4820# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4821 end if
4822# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4823 end block
4824# 390 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4825#endif
4826#ifdef _CRAYFTN
4827# 391 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4828 block
4829# 391 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4830 integer :: macros_setup_vfs_i
4831# 391 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4832
4833# 391 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4834#ifdef MFC_DEBUG
4835# 391 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4836 block
4837# 391 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4838 use iso_fortran_env, only: output_unit
4839# 391 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4840
4841# 391 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4842 print *, 'm_rhs.fpp:391: ', '@:ACC_SETUP_VFs(dqR_prim_dx_n(i), dqR_prim_dy_n(i), dqR_prim_dz_n(i))'
4843# 391 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4844
4845# 391 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4846 call flush (output_unit)
4847# 391 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4848 end block
4849# 391 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4850#endif
4851# 391 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4852
4853# 391 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4854
4855# 391 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4856#if defined(MFC_OpenACC)
4857# 391 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4858!$acc enter data copyin(dqR_prim_dx_n(i))
4859# 391 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4860#elif defined(MFC_OpenMP)
4861# 391 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4862!$omp target enter data map(to:dqR_prim_dx_n(i))
4863# 391 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4864#endif
4865# 391 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4866
4867# 391 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4868#if defined(MFC_OpenACC)
4869# 391 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4870!$acc enter data copyin(dqR_prim_dx_n(i)%vf)
4871# 391 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4872#elif defined(MFC_OpenMP)
4873# 391 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4874!$omp target enter data map(to:dqR_prim_dx_n(i)%vf)
4875# 391 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4876#endif
4877# 391 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4878 if (allocated(dqr_prim_dx_n(i)%vf)) then
4879# 391 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4880 do macros_setup_vfs_i = lbound(dqr_prim_dx_n(i)%vf, 1), ubound(dqr_prim_dx_n(i)%vf, 1)
4881# 391 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4882 if (associated(dqr_prim_dx_n(i)%vf(macros_setup_vfs_i)%sf)) then
4883# 391 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4884
4885# 391 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4886#if defined(MFC_OpenACC)
4887# 391 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4888!$acc enter data copyin(dqR_prim_dx_n(i)%vf(macros_setup_vfs_i))
4889# 391 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4890#elif defined(MFC_OpenMP)
4891# 391 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4892!$omp target enter data map(to:dqR_prim_dx_n(i)%vf(macros_setup_vfs_i))
4893# 391 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4894#endif
4895# 391 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4896
4897# 391 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4898#if defined(MFC_OpenACC)
4899# 391 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4900!$acc enter data copyin(dqR_prim_dx_n(i)%vf(macros_setup_vfs_i)%sf)
4901# 391 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4902#elif defined(MFC_OpenMP)
4903# 391 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4904!$omp target enter data map(to:dqR_prim_dx_n(i)%vf(macros_setup_vfs_i)%sf)
4905# 391 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4906#endif
4907# 391 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4908 end if
4909# 391 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4910 end do
4911# 391 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4912 end if
4913# 391 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4914
4915# 391 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4916#if defined(MFC_OpenACC)
4917# 391 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4918!$acc enter data copyin(dqR_prim_dy_n(i))
4919# 391 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4920#elif defined(MFC_OpenMP)
4921# 391 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4922!$omp target enter data map(to:dqR_prim_dy_n(i))
4923# 391 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4924#endif
4925# 391 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4926
4927# 391 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4928#if defined(MFC_OpenACC)
4929# 391 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4930!$acc enter data copyin(dqR_prim_dy_n(i)%vf)
4931# 391 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4932#elif defined(MFC_OpenMP)
4933# 391 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4934!$omp target enter data map(to:dqR_prim_dy_n(i)%vf)
4935# 391 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4936#endif
4937# 391 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4938 if (allocated(dqr_prim_dy_n(i)%vf)) then
4939# 391 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4940 do macros_setup_vfs_i = lbound(dqr_prim_dy_n(i)%vf, 1), ubound(dqr_prim_dy_n(i)%vf, 1)
4941# 391 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4942 if (associated(dqr_prim_dy_n(i)%vf(macros_setup_vfs_i)%sf)) then
4943# 391 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4944
4945# 391 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4946#if defined(MFC_OpenACC)
4947# 391 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4948!$acc enter data copyin(dqR_prim_dy_n(i)%vf(macros_setup_vfs_i))
4949# 391 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4950#elif defined(MFC_OpenMP)
4951# 391 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4952!$omp target enter data map(to:dqR_prim_dy_n(i)%vf(macros_setup_vfs_i))
4953# 391 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4954#endif
4955# 391 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4956
4957# 391 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4958#if defined(MFC_OpenACC)
4959# 391 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4960!$acc enter data copyin(dqR_prim_dy_n(i)%vf(macros_setup_vfs_i)%sf)
4961# 391 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4962#elif defined(MFC_OpenMP)
4963# 391 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4964!$omp target enter data map(to:dqR_prim_dy_n(i)%vf(macros_setup_vfs_i)%sf)
4965# 391 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4966#endif
4967# 391 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4968 end if
4969# 391 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4970 end do
4971# 391 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4972 end if
4973# 391 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4974
4975# 391 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4976#if defined(MFC_OpenACC)
4977# 391 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4978!$acc enter data copyin(dqR_prim_dz_n(i))
4979# 391 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4980#elif defined(MFC_OpenMP)
4981# 391 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4982!$omp target enter data map(to:dqR_prim_dz_n(i))
4983# 391 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4984#endif
4985# 391 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4986
4987# 391 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4988#if defined(MFC_OpenACC)
4989# 391 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4990!$acc enter data copyin(dqR_prim_dz_n(i)%vf)
4991# 391 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4992#elif defined(MFC_OpenMP)
4993# 391 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4994!$omp target enter data map(to:dqR_prim_dz_n(i)%vf)
4995# 391 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4996#endif
4997# 391 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
4998 if (allocated(dqr_prim_dz_n(i)%vf)) then
4999# 391 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5000 do macros_setup_vfs_i = lbound(dqr_prim_dz_n(i)%vf, 1), ubound(dqr_prim_dz_n(i)%vf, 1)
5001# 391 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5002 if (associated(dqr_prim_dz_n(i)%vf(macros_setup_vfs_i)%sf)) then
5003# 391 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5004
5005# 391 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5006#if defined(MFC_OpenACC)
5007# 391 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5008!$acc enter data copyin(dqR_prim_dz_n(i)%vf(macros_setup_vfs_i))
5009# 391 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5010#elif defined(MFC_OpenMP)
5011# 391 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5012!$omp target enter data map(to:dqR_prim_dz_n(i)%vf(macros_setup_vfs_i))
5013# 391 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5014#endif
5015# 391 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5016
5017# 391 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5018#if defined(MFC_OpenACC)
5019# 391 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5020!$acc enter data copyin(dqR_prim_dz_n(i)%vf(macros_setup_vfs_i)%sf)
5021# 391 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5022#elif defined(MFC_OpenMP)
5023# 391 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5024!$omp target enter data map(to:dqR_prim_dz_n(i)%vf(macros_setup_vfs_i)%sf)
5025# 391 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5026#endif
5027# 391 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5028 end if
5029# 391 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5030 end do
5031# 391 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5032 end if
5033# 391 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5034 end block
5035# 391 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5036#endif
5037 end do
5038
5039 if (weno_re_flux) then
5040#ifdef MFC_DEBUG
5041# 395 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5042 block
5043# 395 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5044 use iso_fortran_env, only: output_unit
5045# 395 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5046
5047# 395 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5048 print *, 'm_rhs.fpp:395: ', '@: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))'
5049# 395 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5050
5051# 395 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5052 call flush (output_unit)
5053# 395 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5054 end block
5055# 395 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5056#endif
5057# 395 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5058 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))
5059# 395 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5060
5061# 395 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5062
5063# 395 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5064#if defined(MFC_OpenACC)
5065# 395 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5066!$acc enter data create(dqL_rsx_vf)
5067# 395 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5068#elif defined(MFC_OpenMP)
5069# 395 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5070!$omp target enter data map(always,alloc:dqL_rsx_vf)
5071# 395 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5072#endif
5073# 397 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5074#ifdef MFC_DEBUG
5075# 397 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5076 block
5077# 397 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5078 use iso_fortran_env, only: output_unit
5079# 397 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5080
5081# 397 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5082 print *, 'm_rhs.fpp:397: ', '@: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))'
5083# 397 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5084
5085# 397 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5086 call flush (output_unit)
5087# 397 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5088 end block
5089# 397 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5090#endif
5091# 397 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5092 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))
5093# 397 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5094
5095# 397 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5096
5097# 397 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5098#if defined(MFC_OpenACC)
5099# 397 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5100!$acc enter data create(dqR_rsx_vf)
5101# 397 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5102#elif defined(MFC_OpenMP)
5103# 397 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5104!$omp target enter data map(always,alloc:dqR_rsx_vf)
5105# 397 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5106#endif
5107# 399 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5108 end if
5109 else
5110#ifdef MFC_DEBUG
5111# 401 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5112 block
5113# 401 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5114 use iso_fortran_env, only: output_unit
5115# 401 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5116
5117# 401 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5118 print *, 'm_rhs.fpp:401: ', '@:ALLOCATE(dq_prim_dx_qp(1)%vf(1:sys_size))'
5119# 401 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5120
5121# 401 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5122 call flush (output_unit)
5123# 401 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5124 end block
5125# 401 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5126#endif
5127# 401 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5128 allocate (dq_prim_dx_qp(1)%vf(1:sys_size))
5129# 401 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5130
5131# 401 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5132
5133# 401 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5134#if defined(MFC_OpenACC)
5135# 401 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5136!$acc enter data create(dq_prim_dx_qp(1)%vf)
5137# 401 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5138#elif defined(MFC_OpenMP)
5139# 401 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5140!$omp target enter data map(always,alloc:dq_prim_dx_qp(1)%vf)
5141# 401 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5142#endif
5143#ifdef MFC_DEBUG
5144# 402 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5145 block
5146# 402 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5147 use iso_fortran_env, only: output_unit
5148# 402 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5149
5150# 402 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5151 print *, 'm_rhs.fpp:402: ', '@:ALLOCATE(dq_prim_dy_qp(1)%vf(1:sys_size))'
5152# 402 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5153
5154# 402 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5155 call flush (output_unit)
5156# 402 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5157 end block
5158# 402 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5159#endif
5160# 402 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5161 allocate (dq_prim_dy_qp(1)%vf(1:sys_size))
5162# 402 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5163
5164# 402 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5165
5166# 402 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5167#if defined(MFC_OpenACC)
5168# 402 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5169!$acc enter data create(dq_prim_dy_qp(1)%vf)
5170# 402 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5171#elif defined(MFC_OpenMP)
5172# 402 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5173!$omp target enter data map(always,alloc:dq_prim_dy_qp(1)%vf)
5174# 402 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5175#endif
5176#ifdef MFC_DEBUG
5177# 403 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5178 block
5179# 403 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5180 use iso_fortran_env, only: output_unit
5181# 403 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5182
5183# 403 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5184 print *, 'm_rhs.fpp:403: ', '@:ALLOCATE(dq_prim_dz_qp(1)%vf(1:sys_size))'
5185# 403 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5186
5187# 403 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5188 call flush (output_unit)
5189# 403 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5190 end block
5191# 403 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5192#endif
5193# 403 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5194 allocate (dq_prim_dz_qp(1)%vf(1:sys_size))
5195# 403 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5196
5197# 403 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5198
5199# 403 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5200#if defined(MFC_OpenACC)
5201# 403 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5202!$acc enter data create(dq_prim_dz_qp(1)%vf)
5203# 403 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5204#elif defined(MFC_OpenMP)
5205# 403 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5206!$omp target enter data map(always,alloc:dq_prim_dz_qp(1)%vf)
5207# 403 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5208#endif
5209
5210 do l = eqn_idx%mom%beg, eqn_idx%mom%end
5211#ifdef MFC_DEBUG
5212# 406 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5213 block
5214# 406 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5215 use iso_fortran_env, only: output_unit
5216# 406 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5217
5218# 406 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5219 print *, 'm_rhs.fpp:406: ', '@:ALLOCATE(dq_prim_dx_qp(1)%vf(l)%sf(0, 0, 0))'
5220# 406 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5221
5222# 406 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5223 call flush (output_unit)
5224# 406 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5225 end block
5226# 406 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5227#endif
5228# 406 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5229 allocate (dq_prim_dx_qp(1)%vf(l)%sf(0, 0, 0))
5230# 406 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5231
5232# 406 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5233
5234# 406 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5235#if defined(MFC_OpenACC)
5236# 406 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5237!$acc enter data create(dq_prim_dx_qp(1)%vf(l)%sf)
5238# 406 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5239#elif defined(MFC_OpenMP)
5240# 406 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5241!$omp target enter data map(always,alloc:dq_prim_dx_qp(1)%vf(l)%sf)
5242# 406 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5243#endif
5244#ifdef _CRAYFTN
5245# 407 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5246 block
5247# 407 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5248 integer :: macros_setup_vfs_i
5249# 407 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5250
5251# 407 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5252#ifdef MFC_DEBUG
5253# 407 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5254 block
5255# 407 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5256 use iso_fortran_env, only: output_unit
5257# 407 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5258
5259# 407 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5260 print *, 'm_rhs.fpp:407: ', '@:ACC_SETUP_VFs(dq_prim_dx_qp(1))'
5261# 407 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5262
5263# 407 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5264 call flush (output_unit)
5265# 407 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5266 end block
5267# 407 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5268#endif
5269# 407 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5270
5271# 407 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5272
5273# 407 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5274#if defined(MFC_OpenACC)
5275# 407 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5276!$acc enter data copyin(dq_prim_dx_qp(1))
5277# 407 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5278#elif defined(MFC_OpenMP)
5279# 407 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5280!$omp target enter data map(to:dq_prim_dx_qp(1))
5281# 407 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5282#endif
5283# 407 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5284
5285# 407 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5286#if defined(MFC_OpenACC)
5287# 407 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5288!$acc enter data copyin(dq_prim_dx_qp(1)%vf)
5289# 407 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5290#elif defined(MFC_OpenMP)
5291# 407 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5292!$omp target enter data map(to:dq_prim_dx_qp(1)%vf)
5293# 407 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5294#endif
5295# 407 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5296 if (allocated(dq_prim_dx_qp(1)%vf)) then
5297# 407 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5298 do macros_setup_vfs_i = lbound(dq_prim_dx_qp(1)%vf, 1), ubound(dq_prim_dx_qp(1)%vf, 1)
5299# 407 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5300 if (associated(dq_prim_dx_qp(1)%vf(macros_setup_vfs_i)%sf)) then
5301# 407 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5302
5303# 407 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5304#if defined(MFC_OpenACC)
5305# 407 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5306!$acc enter data copyin(dq_prim_dx_qp(1)%vf(macros_setup_vfs_i))
5307# 407 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5308#elif defined(MFC_OpenMP)
5309# 407 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5310!$omp target enter data map(to:dq_prim_dx_qp(1)%vf(macros_setup_vfs_i))
5311# 407 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5312#endif
5313# 407 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5314
5315# 407 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5316#if defined(MFC_OpenACC)
5317# 407 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5318!$acc enter data copyin(dq_prim_dx_qp(1)%vf(macros_setup_vfs_i)%sf)
5319# 407 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5320#elif defined(MFC_OpenMP)
5321# 407 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5322!$omp target enter data map(to:dq_prim_dx_qp(1)%vf(macros_setup_vfs_i)%sf)
5323# 407 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5324#endif
5325# 407 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5326 end if
5327# 407 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5328 end do
5329# 407 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5330 end if
5331# 407 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5332 end block
5333# 407 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5334#endif
5335 if (n > 0) then
5336#ifdef MFC_DEBUG
5337# 409 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5338 block
5339# 409 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5340 use iso_fortran_env, only: output_unit
5341# 409 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5342
5343# 409 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5344 print *, 'm_rhs.fpp:409: ', '@:ALLOCATE(dq_prim_dy_qp(1)%vf(l)%sf(0, 0, 0))'
5345# 409 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5346
5347# 409 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5348 call flush (output_unit)
5349# 409 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5350 end block
5351# 409 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5352#endif
5353# 409 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5354 allocate (dq_prim_dy_qp(1)%vf(l)%sf(0, 0, 0))
5355# 409 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5356
5357# 409 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5358
5359# 409 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5360#if defined(MFC_OpenACC)
5361# 409 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5362!$acc enter data create(dq_prim_dy_qp(1)%vf(l)%sf)
5363# 409 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5364#elif defined(MFC_OpenMP)
5365# 409 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5366!$omp target enter data map(always,alloc:dq_prim_dy_qp(1)%vf(l)%sf)
5367# 409 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5368#endif
5369#ifdef _CRAYFTN
5370# 410 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5371 block
5372# 410 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5373 integer :: macros_setup_vfs_i
5374# 410 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5375
5376# 410 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5377#ifdef MFC_DEBUG
5378# 410 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5379 block
5380# 410 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5381 use iso_fortran_env, only: output_unit
5382# 410 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5383
5384# 410 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5385 print *, 'm_rhs.fpp:410: ', '@:ACC_SETUP_VFs(dq_prim_dy_qp(1))'
5386# 410 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5387
5388# 410 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5389 call flush (output_unit)
5390# 410 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5391 end block
5392# 410 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5393#endif
5394# 410 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5395
5396# 410 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5397
5398# 410 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5399#if defined(MFC_OpenACC)
5400# 410 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5401!$acc enter data copyin(dq_prim_dy_qp(1))
5402# 410 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5403#elif defined(MFC_OpenMP)
5404# 410 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5405!$omp target enter data map(to:dq_prim_dy_qp(1))
5406# 410 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5407#endif
5408# 410 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5409
5410# 410 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5411#if defined(MFC_OpenACC)
5412# 410 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5413!$acc enter data copyin(dq_prim_dy_qp(1)%vf)
5414# 410 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5415#elif defined(MFC_OpenMP)
5416# 410 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5417!$omp target enter data map(to:dq_prim_dy_qp(1)%vf)
5418# 410 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5419#endif
5420# 410 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5421 if (allocated(dq_prim_dy_qp(1)%vf)) then
5422# 410 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5423 do macros_setup_vfs_i = lbound(dq_prim_dy_qp(1)%vf, 1), ubound(dq_prim_dy_qp(1)%vf, 1)
5424# 410 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5425 if (associated(dq_prim_dy_qp(1)%vf(macros_setup_vfs_i)%sf)) then
5426# 410 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5427
5428# 410 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5429#if defined(MFC_OpenACC)
5430# 410 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5431!$acc enter data copyin(dq_prim_dy_qp(1)%vf(macros_setup_vfs_i))
5432# 410 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5433#elif defined(MFC_OpenMP)
5434# 410 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5435!$omp target enter data map(to:dq_prim_dy_qp(1)%vf(macros_setup_vfs_i))
5436# 410 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5437#endif
5438# 410 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5439
5440# 410 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5441#if defined(MFC_OpenACC)
5442# 410 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5443!$acc enter data copyin(dq_prim_dy_qp(1)%vf(macros_setup_vfs_i)%sf)
5444# 410 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5445#elif defined(MFC_OpenMP)
5446# 410 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5447!$omp target enter data map(to:dq_prim_dy_qp(1)%vf(macros_setup_vfs_i)%sf)
5448# 410 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5449#endif
5450# 410 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5451 end if
5452# 410 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5453 end do
5454# 410 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5455 end if
5456# 410 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5457 end block
5458# 410 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5459#endif
5460 if (p > 0) then
5461#ifdef MFC_DEBUG
5462# 412 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5463 block
5464# 412 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5465 use iso_fortran_env, only: output_unit
5466# 412 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5467
5468# 412 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5469 print *, 'm_rhs.fpp:412: ', '@:ALLOCATE(dq_prim_dz_qp(1)%vf(l)%sf(0, 0, 0))'
5470# 412 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5471
5472# 412 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5473 call flush (output_unit)
5474# 412 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5475 end block
5476# 412 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5477#endif
5478# 412 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5479 allocate (dq_prim_dz_qp(1)%vf(l)%sf(0, 0, 0))
5480# 412 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5481
5482# 412 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5483
5484# 412 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5485#if defined(MFC_OpenACC)
5486# 412 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5487!$acc enter data create(dq_prim_dz_qp(1)%vf(l)%sf)
5488# 412 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5489#elif defined(MFC_OpenMP)
5490# 412 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5491!$omp target enter data map(always,alloc:dq_prim_dz_qp(1)%vf(l)%sf)
5492# 412 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5493#endif
5494#ifdef _CRAYFTN
5495# 413 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5496 block
5497# 413 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5498 integer :: macros_setup_vfs_i
5499# 413 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5500
5501# 413 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5502#ifdef MFC_DEBUG
5503# 413 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5504 block
5505# 413 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5506 use iso_fortran_env, only: output_unit
5507# 413 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5508
5509# 413 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5510 print *, 'm_rhs.fpp:413: ', '@:ACC_SETUP_VFs(dq_prim_dz_qp(1))'
5511# 413 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5512
5513# 413 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5514 call flush (output_unit)
5515# 413 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5516 end block
5517# 413 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5518#endif
5519# 413 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5520
5521# 413 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5522
5523# 413 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5524#if defined(MFC_OpenACC)
5525# 413 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5526!$acc enter data copyin(dq_prim_dz_qp(1))
5527# 413 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5528#elif defined(MFC_OpenMP)
5529# 413 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5530!$omp target enter data map(to:dq_prim_dz_qp(1))
5531# 413 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5532#endif
5533# 413 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5534
5535# 413 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5536#if defined(MFC_OpenACC)
5537# 413 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5538!$acc enter data copyin(dq_prim_dz_qp(1)%vf)
5539# 413 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5540#elif defined(MFC_OpenMP)
5541# 413 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5542!$omp target enter data map(to:dq_prim_dz_qp(1)%vf)
5543# 413 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5544#endif
5545# 413 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5546 if (allocated(dq_prim_dz_qp(1)%vf)) then
5547# 413 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5548 do macros_setup_vfs_i = lbound(dq_prim_dz_qp(1)%vf, 1), ubound(dq_prim_dz_qp(1)%vf, 1)
5549# 413 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5550 if (associated(dq_prim_dz_qp(1)%vf(macros_setup_vfs_i)%sf)) then
5551# 413 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5552
5553# 413 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5554#if defined(MFC_OpenACC)
5555# 413 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5556!$acc enter data copyin(dq_prim_dz_qp(1)%vf(macros_setup_vfs_i))
5557# 413 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5558#elif defined(MFC_OpenMP)
5559# 413 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5560!$omp target enter data map(to:dq_prim_dz_qp(1)%vf(macros_setup_vfs_i))
5561# 413 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5562#endif
5563# 413 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5564
5565# 413 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5566#if defined(MFC_OpenACC)
5567# 413 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5568!$acc enter data copyin(dq_prim_dz_qp(1)%vf(macros_setup_vfs_i)%sf)
5569# 413 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5570#elif defined(MFC_OpenMP)
5571# 413 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5572!$omp target enter data map(to:dq_prim_dz_qp(1)%vf(macros_setup_vfs_i)%sf)
5573# 413 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5574#endif
5575# 413 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5576 end if
5577# 413 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5578 end do
5579# 413 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5580 end if
5581# 413 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5582 end block
5583# 413 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5584#endif
5585 end if
5586 end if
5587 end do
5588 end if
5589
5590
5591# 419 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5592
5593# 419 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5594#if defined(MFC_OpenACC)
5595# 419 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5596!$acc parallel loop collapse(4) gang vector default(present) private(i, j, k, l, id)
5597# 419 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5598#elif defined(MFC_OpenMP)
5599# 419 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5600
5601# 419 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5602
5603# 419 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5604
5605# 419 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5606!$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)
5607# 419 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5608#endif
5609 do id = 1, num_dims
5610 do i = 1, sys_size
5611 do l = idwbuff(3)%beg, idwbuff(3)%end
5612 do k = idwbuff(2)%beg, idwbuff(2)%end
5613 do j = idwbuff(1)%beg, idwbuff(1)%end
5614 flux_gsrc_n(id)%vf(i)%sf(j, k, l) = 0._wp
5615 end do
5616 end do
5617 end do
5618 end do
5619 end do
5620
5621# 431 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5622#if defined(MFC_OpenACC)
5623# 431 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5624!$acc end parallel loop
5625# 431 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5626#elif defined(MFC_OpenMP)
5627# 431 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5628
5629# 431 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5630!$omp end target teams loop
5631# 431 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5632#endif
5633 end if
5634
5635 if (qbmm) then
5636#ifdef MFC_DEBUG
5637# 435 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5638 block
5639# 435 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5640 use iso_fortran_env, only: output_unit
5641# 435 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5642
5643# 435 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5644 print *, 'm_rhs.fpp:435: ', '@:ALLOCATE(mom_sp(1:nmomsp), mom_3d(0:2, 0:2, nb))'
5645# 435 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5646
5647# 435 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5648 call flush (output_unit)
5649# 435 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5650 end block
5651# 435 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5652#endif
5653# 435 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5654 allocate (mom_sp(1:nmomsp), mom_3d(0:2, 0:2, nb))
5655# 435 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5656
5657# 435 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5658
5659# 435 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5660
5661# 435 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5662#if defined(MFC_OpenACC)
5663# 435 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5664!$acc enter data create(mom_sp, mom_3d)
5665# 435 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5666#elif defined(MFC_OpenMP)
5667# 435 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5668!$omp target enter data map(always,alloc:mom_sp, mom_3d)
5669# 435 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5670#endif
5671
5672 do i = 0, 2
5673 do j = 0, 2
5674 do k = 1, nb
5675#ifdef MFC_DEBUG
5676# 440 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5677 block
5678# 440 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5679 use iso_fortran_env, only: output_unit
5680# 440 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5681
5682# 440 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5683 print *, 'm_rhs.fpp:440: ', '@: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))'
5684# 440 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5685
5686# 440 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5687 call flush (output_unit)
5688# 440 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5689 end block
5690# 440 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5691#endif
5692# 440 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5693 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))
5694# 440 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5695
5696# 440 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5697
5698# 440 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5699#if defined(MFC_OpenACC)
5700# 440 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5701!$acc enter data create(mom_3d(i, j, k)%sf)
5702# 440 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5703#elif defined(MFC_OpenMP)
5704# 440 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5705!$omp target enter data map(always,alloc:mom_3d(i, j, k)%sf)
5706# 440 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5707#endif
5708# 442 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5709#ifdef _CRAYFTN
5710# 442 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5711 block
5712# 442 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5713#ifdef MFC_DEBUG
5714# 442 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5715 block
5716# 442 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5717 use iso_fortran_env, only: output_unit
5718# 442 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5719
5720# 442 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5721 print *, 'm_rhs.fpp:442: ', '@:ACC_SETUP_SFs(mom_3d(i, j, k))'
5722# 442 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5723
5724# 442 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5725 call flush (output_unit)
5726# 442 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5727 end block
5728# 442 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5729#endif
5730# 442 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5731
5732# 442 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5733
5734# 442 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5735#if defined(MFC_OpenACC)
5736# 442 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5737!$acc enter data copyin(mom_3d(i, j, k))
5738# 442 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5739#elif defined(MFC_OpenMP)
5740# 442 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5741!$omp target enter data map(to:mom_3d(i, j, k))
5742# 442 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5743#endif
5744# 442 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5745 if (associated(mom_3d(i, j, k)%sf)) then
5746# 442 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5747
5748# 442 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5749#if defined(MFC_OpenACC)
5750# 442 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5751!$acc enter data copyin(mom_3d(i, j, k)%sf)
5752# 442 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5753#elif defined(MFC_OpenMP)
5754# 442 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5755!$omp target enter data map(to:mom_3d(i, j, k)%sf)
5756# 442 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5757#endif
5758# 442 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5759 end if
5760# 442 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5761 end block
5762# 442 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5763#endif
5764 end do
5765 end do
5766 end do
5767
5768 do i = 1, nmomsp
5769#ifdef MFC_DEBUG
5770# 448 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5771 block
5772# 448 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5773 use iso_fortran_env, only: output_unit
5774# 448 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5775
5776# 448 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5777 print *, 'm_rhs.fpp:448: ', '@:ALLOCATE(mom_sp(i)%sf(idwbuff(1)%beg:idwbuff(1)%end, idwbuff(2)%beg:idwbuff(2)%end, idwbuff(3)%beg:idwbuff(3)%end))'
5778# 448 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5779
5780# 448 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5781 call flush (output_unit)
5782# 448 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5783 end block
5784# 448 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5785#endif
5786# 448 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5787 allocate (mom_sp(i)%sf(idwbuff(1)%beg:idwbuff(1)%end, idwbuff(2)%beg:idwbuff(2)%end, idwbuff(3)%beg:idwbuff(3)%end))
5788# 448 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5789
5790# 448 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5791
5792# 448 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5793#if defined(MFC_OpenACC)
5794# 448 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5795!$acc enter data create(mom_sp(i)%sf)
5796# 448 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5797#elif defined(MFC_OpenMP)
5798# 448 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5799!$omp target enter data map(always,alloc:mom_sp(i)%sf)
5800# 448 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5801#endif
5802# 450 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5803#ifdef _CRAYFTN
5804# 450 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5805 block
5806# 450 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5807#ifdef MFC_DEBUG
5808# 450 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5809 block
5810# 450 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5811 use iso_fortran_env, only: output_unit
5812# 450 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5813
5814# 450 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5815 print *, 'm_rhs.fpp:450: ', '@:ACC_SETUP_SFs(mom_sp(i))'
5816# 450 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5817
5818# 450 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5819 call flush (output_unit)
5820# 450 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5821 end block
5822# 450 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5823#endif
5824# 450 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5825
5826# 450 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5827
5828# 450 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5829#if defined(MFC_OpenACC)
5830# 450 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5831!$acc enter data copyin(mom_sp(i))
5832# 450 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5833#elif defined(MFC_OpenMP)
5834# 450 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5835!$omp target enter data map(to:mom_sp(i))
5836# 450 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5837#endif
5838# 450 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5839 if (associated(mom_sp(i)%sf)) then
5840# 450 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5841
5842# 450 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5843#if defined(MFC_OpenACC)
5844# 450 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5845!$acc enter data copyin(mom_sp(i)%sf)
5846# 450 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5847#elif defined(MFC_OpenMP)
5848# 450 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5849!$omp target enter data map(to:mom_sp(i)%sf)
5850# 450 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5851#endif
5852# 450 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5853 end if
5854# 450 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5855 end block
5856# 450 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5857#endif
5858 end do
5859 end if
5860
5861 if (mpp_lim .and. bubbles_euler) then
5862#ifdef MFC_DEBUG
5863# 455 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5864 block
5865# 455 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5866 use iso_fortran_env, only: output_unit
5867# 455 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5868
5869# 455 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5870 print *, 'm_rhs.fpp:455: ', '@:ALLOCATE(alf_sum%sf(idwbuff(1)%beg:idwbuff(1)%end, idwbuff(2)%beg:idwbuff(2)%end, idwbuff(3)%beg:idwbuff(3)%end))'
5871# 455 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5872
5873# 455 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5874 call flush (output_unit)
5875# 455 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5876 end block
5877# 455 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5878#endif
5879# 455 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5880 allocate (alf_sum%sf(idwbuff(1)%beg:idwbuff(1)%end, idwbuff(2)%beg:idwbuff(2)%end, idwbuff(3)%beg:idwbuff(3)%end))
5881# 455 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5882
5883# 455 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5884
5885# 455 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5886#if defined(MFC_OpenACC)
5887# 455 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5888!$acc enter data create(alf_sum%sf)
5889# 455 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5890#elif defined(MFC_OpenMP)
5891# 455 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5892!$omp target enter data map(always,alloc:alf_sum%sf)
5893# 455 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5894#endif
5895 end if
5896 if (alt_soundspeed) then
5897#ifdef MFC_DEBUG
5898# 458 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5899 block
5900# 458 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5901 use iso_fortran_env, only: output_unit
5902# 458 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5903
5904# 458 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5905 print *, 'm_rhs.fpp:458: ', '@: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))'
5906# 458 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5907
5908# 458 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5909 call flush (output_unit)
5910# 458 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5911 end block
5912# 458 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5913#endif
5914# 458 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5915 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))
5916# 458 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5917
5918# 458 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5919
5920# 458 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5921
5922# 458 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5923
5924# 458 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5925
5926# 458 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5927
5928# 458 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5929#if defined(MFC_OpenACC)
5930# 458 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5931!$acc enter data create(blkmod1, blkmod2, alpha1, alpha2, Kterm)
5932# 458 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5933#elif defined(MFC_OpenMP)
5934# 458 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5935!$omp target enter data map(always,alloc:blkmod1, blkmod2, alpha1, alpha2, Kterm)
5936# 458 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5937#endif
5938# 460 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5939 end if
5940
5941 call s_initialize_pressure_relaxation_module
5942
5943 ! Spatial body force source arrays - sized to include ghost cells so the
5944 ! same indexing as q_*_vf is valid; iteration is restricted to interior
5945 ! cells via the `bounds` argument in m_body_forces. Only allocated when the
5946 ! feature is active (the write/read sites are likewise guarded).
5947 if (bf_spatial_support) then
5948 if (n > 0) then
5949 if (p > 0) then
5950#ifdef MFC_DEBUG
5951# 471 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5952 block
5953# 471 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5954 use iso_fortran_env, only: output_unit
5955# 471 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5956
5957# 471 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5958 print *, 'm_rhs.fpp:471: ', '@:ALLOCATE(spbf_source_x(-buff_size:buff_size + m, -buff_size:buff_size + n, -buff_size:buff_size + p))'
5959# 471 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5960
5961# 471 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5962 call flush (output_unit)
5963# 471 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5964 end block
5965# 471 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5966#endif
5967# 471 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5968 allocate (spbf_source_x(-buff_size:buff_size + m, -buff_size:buff_size + n, -buff_size:buff_size + p))
5969# 471 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5970
5971# 471 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5972
5973# 471 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5974#if defined(MFC_OpenACC)
5975# 471 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5976!$acc enter data create(spbf_source_x)
5977# 471 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5978#elif defined(MFC_OpenMP)
5979# 471 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5980!$omp target enter data map(always,alloc:spbf_source_x)
5981# 471 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5982#endif
5983#ifdef MFC_DEBUG
5984# 472 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5985 block
5986# 472 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5987 use iso_fortran_env, only: output_unit
5988# 472 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5989
5990# 472 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5991 print *, 'm_rhs.fpp:472: ', '@:ALLOCATE(spbf_source_y(-buff_size:buff_size + m, -buff_size:buff_size + n, -buff_size:buff_size + p))'
5992# 472 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5993
5994# 472 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5995 call flush (output_unit)
5996# 472 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5997 end block
5998# 472 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
5999#endif
6000# 472 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6001 allocate (spbf_source_y(-buff_size:buff_size + m, -buff_size:buff_size + n, -buff_size:buff_size + p))
6002# 472 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6003
6004# 472 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6005
6006# 472 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6007#if defined(MFC_OpenACC)
6008# 472 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6009!$acc enter data create(spbf_source_y)
6010# 472 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6011#elif defined(MFC_OpenMP)
6012# 472 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6013!$omp target enter data map(always,alloc:spbf_source_y)
6014# 472 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6015#endif
6016 else
6017#ifdef MFC_DEBUG
6018# 474 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6019 block
6020# 474 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6021 use iso_fortran_env, only: output_unit
6022# 474 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6023
6024# 474 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6025 print *, 'm_rhs.fpp:474: ', '@:ALLOCATE(spbf_source_x(-buff_size:buff_size + m, -buff_size:buff_size + n, 0:0))'
6026# 474 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6027
6028# 474 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6029 call flush (output_unit)
6030# 474 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6031 end block
6032# 474 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6033#endif
6034# 474 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6035 allocate (spbf_source_x(-buff_size:buff_size + m, -buff_size:buff_size + n, 0:0))
6036# 474 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6037
6038# 474 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6039
6040# 474 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6041#if defined(MFC_OpenACC)
6042# 474 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6043!$acc enter data create(spbf_source_x)
6044# 474 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6045#elif defined(MFC_OpenMP)
6046# 474 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6047!$omp target enter data map(always,alloc:spbf_source_x)
6048# 474 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6049#endif
6050#ifdef MFC_DEBUG
6051# 475 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6052 block
6053# 475 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6054 use iso_fortran_env, only: output_unit
6055# 475 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6056
6057# 475 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6058 print *, 'm_rhs.fpp:475: ', '@:ALLOCATE(spbf_source_y(-buff_size:buff_size + m, -buff_size:buff_size + n, 0:0))'
6059# 475 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6060
6061# 475 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6062 call flush (output_unit)
6063# 475 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6064 end block
6065# 475 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6066#endif
6067# 475 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6068 allocate (spbf_source_y(-buff_size:buff_size + m, -buff_size:buff_size + n, 0:0))
6069# 475 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6070
6071# 475 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6072
6073# 475 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6074#if defined(MFC_OpenACC)
6075# 475 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6076!$acc enter data create(spbf_source_y)
6077# 475 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6078#elif defined(MFC_OpenMP)
6079# 475 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6080!$omp target enter data map(always,alloc:spbf_source_y)
6081# 475 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6082#endif
6083 end if
6084 else
6085#ifdef MFC_DEBUG
6086# 478 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6087 block
6088# 478 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6089 use iso_fortran_env, only: output_unit
6090# 478 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6091
6092# 478 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6093 print *, 'm_rhs.fpp:478: ', '@:ALLOCATE(spbf_source_x(-buff_size:buff_size + m, 0:0, 0:0))'
6094# 478 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6095
6096# 478 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6097 call flush (output_unit)
6098# 478 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6099 end block
6100# 478 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6101#endif
6102# 478 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6103 allocate (spbf_source_x(-buff_size:buff_size + m, 0:0, 0:0))
6104# 478 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6105
6106# 478 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6107
6108# 478 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6109#if defined(MFC_OpenACC)
6110# 478 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6111!$acc enter data create(spbf_source_x)
6112# 478 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6113#elif defined(MFC_OpenMP)
6114# 478 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6115!$omp target enter data map(always,alloc:spbf_source_x)
6116# 478 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6117#endif
6118#ifdef MFC_DEBUG
6119# 479 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6120 block
6121# 479 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6122 use iso_fortran_env, only: output_unit
6123# 479 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6124
6125# 479 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6126 print *, 'm_rhs.fpp:479: ', '@:ALLOCATE(spbf_source_y(-buff_size:buff_size + m, 0:0, 0:0))'
6127# 479 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6128
6129# 479 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6130 call flush (output_unit)
6131# 479 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6132 end block
6133# 479 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6134#endif
6135# 479 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6136 allocate (spbf_source_y(-buff_size:buff_size + m, 0:0, 0:0))
6137# 479 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6138
6139# 479 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6140
6141# 479 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6142#if defined(MFC_OpenACC)
6143# 479 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6144!$acc enter data create(spbf_source_y)
6145# 479 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6146#elif defined(MFC_OpenMP)
6147# 479 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6148!$omp target enter data map(always,alloc:spbf_source_y)
6149# 479 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6150#endif
6151 end if
6152#ifdef MFC_SIMULATION
6153# 481 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6154#ifdef __NVCOMPILER_GPU_UNIFIED_MEM
6155# 481 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6156 block
6157# 481 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6158 ! NVIDIA CUDA Fortran 25.3+: uses submodules (cuda_runtime_api, gpu_reductions, sort) See
6159# 481 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6160 ! https://docs.nvidia.com/hpc-sdk/compilers/cuda-fortran-prog-guide/index.html#fortran-host-modules
6161# 481 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6162#if __NVCOMPILER_MAJOR__ < 25 || (__NVCOMPILER_MAJOR__ == 25 && __NVCOMPILER_MINOR__ < 3)
6163# 481 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6164 use cudafor, gpu_sum => sum, gpu_maxval => maxval, gpu_minval => minval
6165# 481 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6166#else
6167# 481 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6168 use cuda_runtime_api
6169# 481 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6170#endif
6171# 481 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6172 integer :: istat
6173# 481 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6174
6175# 481 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6176 if (nv_uvm_pref_gpu) then
6177# 481 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6178 ! print*, "Moving spbf_source_x to GPU => ", SHAPE(spbf_source_x) set preferred location GPU
6179# 481 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6180 istat = cudamemadvise(c_devloc(spbf_source_x), sizeof(spbf_source_x), cudamemadvisesetpreferredlocation, 0)
6181# 481 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6182 if (istat /= cudasuccess) then
6183# 481 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6184 write (*, "('Error code: ',I0, ': ')") istat
6185# 481 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6186 ! write(*,*) cudaGetErrorString(istat)
6187# 481 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6188 end if
6189# 481 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6190 ! set accessed by CPU
6191# 481 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6192 istat = cudamemadvise(c_devloc(spbf_source_x), sizeof(spbf_source_x), cudamemadvisesetaccessedby, cudacpudeviceid)
6193# 481 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6194 if (istat /= cudasuccess) then
6195# 481 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6196 write (*, "('Error code: ',I0, ': ')") istat
6197# 481 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6198 ! write(*,*) cudaGetErrorString(istat)
6199# 481 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6200 end if
6201# 481 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6202 ! prefetch to GPU - physically populate memory pages
6203# 481 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6204 istat = cudamemprefetchasync(c_devloc(spbf_source_x), sizeof(spbf_source_x), 0, 0)
6205# 481 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6206 if (istat /= cudasuccess) then
6207# 481 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6208 write (*, "('Error code: ',I0, ': ')") istat
6209# 481 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6210 ! write(*,*) cudaGetErrorString(istat)
6211# 481 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6212 end if
6213# 481 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6214 end if
6215# 481 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6216 end block
6217# 481 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6218#endif
6219# 481 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6220#endif
6221#ifdef MFC_SIMULATION
6222# 482 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6223#ifdef __NVCOMPILER_GPU_UNIFIED_MEM
6224# 482 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6225 block
6226# 482 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6227 ! NVIDIA CUDA Fortran 25.3+: uses submodules (cuda_runtime_api, gpu_reductions, sort) See
6228# 482 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6229 ! https://docs.nvidia.com/hpc-sdk/compilers/cuda-fortran-prog-guide/index.html#fortran-host-modules
6230# 482 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6231#if __NVCOMPILER_MAJOR__ < 25 || (__NVCOMPILER_MAJOR__ == 25 && __NVCOMPILER_MINOR__ < 3)
6232# 482 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6233 use cudafor, gpu_sum => sum, gpu_maxval => maxval, gpu_minval => minval
6234# 482 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6235#else
6236# 482 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6237 use cuda_runtime_api
6238# 482 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6239#endif
6240# 482 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6241 integer :: istat
6242# 482 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6243
6244# 482 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6245 if (nv_uvm_pref_gpu) then
6246# 482 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6247 ! print*, "Moving spbf_source_y to GPU => ", SHAPE(spbf_source_y) set preferred location GPU
6248# 482 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6249 istat = cudamemadvise(c_devloc(spbf_source_y), sizeof(spbf_source_y), cudamemadvisesetpreferredlocation, 0)
6250# 482 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6251 if (istat /= cudasuccess) then
6252# 482 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6253 write (*, "('Error code: ',I0, ': ')") istat
6254# 482 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6255 ! write(*,*) cudaGetErrorString(istat)
6256# 482 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6257 end if
6258# 482 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6259 ! set accessed by CPU
6260# 482 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6261 istat = cudamemadvise(c_devloc(spbf_source_y), sizeof(spbf_source_y), cudamemadvisesetaccessedby, cudacpudeviceid)
6262# 482 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6263 if (istat /= cudasuccess) then
6264# 482 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6265 write (*, "('Error code: ',I0, ': ')") istat
6266# 482 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6267 ! write(*,*) cudaGetErrorString(istat)
6268# 482 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6269 end if
6270# 482 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6271 ! prefetch to GPU - physically populate memory pages
6272# 482 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6273 istat = cudamemprefetchasync(c_devloc(spbf_source_y), sizeof(spbf_source_y), 0, 0)
6274# 482 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6275 if (istat /= cudasuccess) then
6276# 482 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6277 write (*, "('Error code: ',I0, ': ')") istat
6278# 482 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6279 ! write(*,*) cudaGetErrorString(istat)
6280# 482 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6281 end if
6282# 482 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6283 end if
6284# 482 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6285 end block
6286# 482 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6287#endif
6288# 482 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6289#endif
6290
6291 spbf_source_x = 0._wp
6292 spbf_source_y = 0._wp
6293
6294# 486 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6295#if defined(MFC_OpenACC)
6296# 486 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6297!$acc update device(spbf_source_x, spbf_source_y)
6298# 486 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6299#elif defined(MFC_OpenMP)
6300# 486 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6301!$omp target update to(spbf_source_x, spbf_source_y)
6302# 486 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6303#endif
6304 end if
6305
6306 end subroutine s_initialize_rhs_module
6307
6308 !> Compute the right-hand side of the semi-discrete governing equations for a single time stage
6309 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, stage)
6310
6311 type(scalar_field), dimension(sys_size), intent(inout) :: q_cons_vf
6312 type(scalar_field), intent(inout) :: q_t_sf
6313 type(scalar_field), dimension(sys_size), intent(inout) :: q_prim_vf
6314 type(integer_field), dimension(1:num_dims,1:2), intent(in) :: bc_type
6315 type(scalar_field), dimension(sys_size), intent(inout) :: rhs_vf
6316 real(stp), dimension(idwbuff(1)%beg:,idwbuff(2)%beg:,idwbuff(3)%beg:,1:,1:), intent(inout) :: pb_in
6317
6318 ! TODO :: I think these other two variables need to be stp as well, but it doesn't compile like that right now
6319 real(wp), dimension(idwbuff(1)%beg:,idwbuff(2)%beg:,idwbuff(3)%beg:,1:,1:), intent(inout) :: rhs_pb
6320 real(stp), dimension(idwbuff(1)%beg:,idwbuff(2)%beg:,idwbuff(3)%beg:,1:,1:), intent(inout) :: mv_in
6321 real(wp), dimension(idwbuff(1)%beg:,idwbuff(2)%beg:,idwbuff(3)%beg:,1:,1:), intent(inout) :: rhs_mv
6322 integer, intent(in) :: t_step
6323 integer, intent(in) :: stage
6324 integer :: id
6325 integer(kind=8) :: i, j, k, l, q !< Generic loop iterators
6326
6327 ! RHS: halo exchange -> reconstruct -> Riemann solve -> flux difference -> source terms
6328
6329 call nvtxstartrange("COMPUTE-RHS")
6330
6331 if (.not. igr) then
6332 ! Association/Population of Working Variables
6333
6334# 516 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6335
6336# 516 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6337#if defined(MFC_OpenACC)
6338# 516 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6339!$acc parallel loop collapse(4) gang vector default(present) private(i, j, k, l)
6340# 516 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6341#elif defined(MFC_OpenMP)
6342# 516 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6343
6344# 516 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6345
6346# 516 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6347
6348# 516 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6349!$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)
6350# 516 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6351#endif
6352 do i = 1, sys_size
6353 do l = idwbuff(3)%beg, idwbuff(3)%end
6354 do k = idwbuff(2)%beg, idwbuff(2)%end
6355 do j = idwbuff(1)%beg, idwbuff(1)%end
6356 q_cons_qp%vf(i)%sf(j, k, l) = q_cons_vf(i)%sf(j, k, l)
6357 end do
6358 end do
6359 end do
6360 end do
6361
6362# 526 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6363#if defined(MFC_OpenACC)
6364# 526 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6365!$acc end parallel loop
6366# 526 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6367#elif defined(MFC_OpenMP)
6368# 526 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6369
6370# 526 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6371!$omp end target teams loop
6372# 526 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6373#endif
6374
6375 ! Converting Conservative to Primitive Variables
6376
6377 if (mpp_lim .and. bubbles_euler) then
6378
6379# 531 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6380
6381# 531 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6382#if defined(MFC_OpenACC)
6383# 531 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6384!$acc parallel loop collapse(3) gang vector default(present) private(j, k, l)
6385# 531 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6386#elif defined(MFC_OpenMP)
6387# 531 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6388
6389# 531 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6390
6391# 531 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6392
6393# 531 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6394!$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)
6395# 531 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6396#endif
6397 do l = idwbuff(3)%beg, idwbuff(3)%end
6398 do k = idwbuff(2)%beg, idwbuff(2)%end
6399 do j = idwbuff(1)%beg, idwbuff(1)%end
6400 alf_sum%sf(j, k, l) = 0._wp
6401
6402# 536 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6403#if defined(MFC_OpenACC)
6404# 536 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6405!$acc loop seq
6406# 536 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6407#elif defined(MFC_OpenMP)
6408# 536 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6409
6410# 536 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6411#endif
6412 do i = eqn_idx%adv%beg, eqn_idx%adv%end - 1
6413 alf_sum%sf(j, k, l) = alf_sum%sf(j, k, l) + q_cons_qp%vf(i)%sf(j, k, l)
6414 end do
6415
6416# 540 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6417#if defined(MFC_OpenACC)
6418# 540 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6419!$acc loop seq
6420# 540 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6421#elif defined(MFC_OpenMP)
6422# 540 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6423
6424# 540 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6425#endif
6426 do i = eqn_idx%adv%beg, eqn_idx%adv%end - 1
6427 q_cons_qp%vf(i)%sf(j, k, l) = q_cons_qp%vf(i)%sf(j, k, &
6428 & l)*(1._wp - q_cons_qp%vf(eqn_idx%alf)%sf(j, k, l))/alf_sum%sf(j, k, l)
6429 end do
6430 end do
6431 end do
6432 end do
6433
6434# 548 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6435#if defined(MFC_OpenACC)
6436# 548 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6437!$acc end parallel loop
6438# 548 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6439#elif defined(MFC_OpenMP)
6440# 548 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6441
6442# 548 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6443!$omp end target teams loop
6444# 548 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6445#endif
6446 end if
6447 end if
6448
6449 if (igr) then
6450 call nvtxstartrange("RHS-COMMUNICATION")
6451 call s_populate_variables_buffers(bc_type, q_cons_vf, pb_in, mv_in, q_t_sf)
6452 call nvtxendrange
6453 end if
6454 if (.not. igr) then
6455 call nvtxstartrange("RHS-CONVERT")
6456 call s_convert_conservative_to_primitive_variables(q_cons_qp%vf, q_t_sf, q_prim_qp%vf, idwint)
6457 call nvtxendrange
6458
6459 call nvtxstartrange("RHS-COMMUNICATION")
6460 call s_populate_variables_buffers(bc_type, q_prim_qp%vf, pb_in, mv_in, q_t_sf)
6461 call nvtxendrange
6462 end if
6463
6464 call nvtxstartrange("RHS-ELASTIC")
6465 if (hyperelasticity) call s_hyperelastic_rmt_stress_update(q_cons_qp%vf, q_prim_qp%vf)
6466 call nvtxendrange
6467
6468 if (cfl_dt) then
6469 if (mytime >= t_stop) return
6470 else
6471 if (t_step == t_step_stop) return
6472 end if
6473
6474 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), &
6475 & idwbuff(2), idwbuff(3))
6476
6477 if ((viscous .and. .not. igr)) then
6478 call nvtxstartrange("RHS-VISCOUS")
6481 & idwbuff(1), idwbuff(2), idwbuff(3))
6482 call nvtxendrange
6483 end if
6484
6485 if (surface_tension) then
6486 call nvtxstartrange("RHS-SURFACE-TENSION")
6487 call s_get_capillary(q_prim_qp%vf, bc_type)
6488 call nvtxendrange
6489 end if
6490
6491 if (int_comp == int_comp_mthinc .and. n > 0) then
6492 call nvtxstartrange("RHS-COMPRESSION-NORMALS")
6493 call s_compute_mthinc_normals(q_prim_qp%vf)
6494 call nvtxendrange
6495 end if
6496
6497 ! Loop over coordinate directions for dimensional splitting
6498 do id = 1, num_dims
6499 if (igr) then
6500 if (id == 1) then
6501
6502# 604 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6503
6504# 604 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6505#if defined(MFC_OpenACC)
6506# 604 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6507!$acc parallel loop collapse(4) gang vector default(present) private(i, j, k, l)
6508# 604 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6509#elif defined(MFC_OpenMP)
6510# 604 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6511
6512# 604 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6513
6514# 604 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6515
6516# 604 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6517!$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)
6518# 604 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6519#endif
6520 do l = -1, p + 1
6521 do k = -1, n + 1
6522 do j = -1, m + 1
6523 do i = 1, sys_size
6524 rhs_vf(i)%sf(j, k, l) = 0._stp
6525 end do
6526 end do
6527 end do
6528 end do
6529
6530# 614 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6531#if defined(MFC_OpenACC)
6532# 614 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6533!$acc end parallel loop
6534# 614 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6535#elif defined(MFC_OpenMP)
6536# 614 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6537
6538# 614 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6539!$omp end target teams loop
6540# 614 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6541#endif
6542 end if
6543
6544 call nvtxstartrange("IGR_RIEMANN")
6545 call s_igr_riemann_solver(q_cons_vf, rhs_vf, id)
6546 call nvtxendrange
6547
6548 if (id == 1) then
6549 call nvtxstartrange("IGR_Jacobi")
6550 call s_igr_iterative_solve(q_cons_vf, bc_type, t_step)
6551 call nvtxendrange
6552
6553 call nvtxstartrange("IGR_SIGMA")
6554 call s_igr_sigma_x(q_cons_vf, rhs_vf)
6555 call nvtxendrange
6556 end if
6557 end if
6558 if (.not. igr) then
6559 ! Reconstructing Primitive/Conservative Variables
6560 call nvtxstartrange("RHS-RECONSTRUCTION")
6561
6562 if (.not. surface_tension) then
6563 if ((.not. weno_re_flux) .or. int_comp > 0) then
6564 ! Reconstruct densitiess
6565 iv%beg = 1; iv%end = sys_size
6567 else
6568 iv%beg = 1; iv%end = eqn_idx%cont%end
6570
6571 iv%beg = eqn_idx%mom%beg; iv%end = eqn_idx%mom%end; iglob = id
6572
6573# 645 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6574#if defined(MFC_OpenACC)
6575# 645 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6576!$acc update device(iv, iglob)
6577# 645 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6578#elif defined(MFC_OpenMP)
6579# 645 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6580!$omp target update to(iv, iglob)
6581# 645 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6582#endif
6583
6584
6585# 647 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6586
6587# 647 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6588#if defined(MFC_OpenACC)
6589# 647 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6590!$acc parallel loop collapse(4) gang vector default(present) private(i, j, k, l)
6591# 647 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6592#elif defined(MFC_OpenMP)
6593# 647 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6594
6595# 647 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6596
6597# 647 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6598
6599# 647 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6600!$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)
6601# 647 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6602#endif
6603 do i = iv%beg, iv%end
6604 do l = idwbuff(3)%beg, idwbuff(3)%end
6605 do k = idwbuff(2)%beg, idwbuff(2)%end
6606 do j = idwbuff(1)%beg, idwbuff(1)%end
6607 ql_rsx_vf(j, k, l, i) = ql_prim(iglob)%vf(i)%sf(j, k, l)
6608 qr_rsx_vf(j, k, l, i) = qr_prim(iglob)%vf(i)%sf(j, k, l)
6609 end do
6610 end do
6611 end do
6612 end do
6613
6614# 658 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6615#if defined(MFC_OpenACC)
6616# 658 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6617!$acc end parallel loop
6618# 658 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6619#elif defined(MFC_OpenMP)
6620# 658 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6621
6622# 658 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6623!$omp end target teams loop
6624# 658 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6625#endif
6626
6627 iv%beg = eqn_idx%E; iv%end = sys_size
6629 end if
6630 else
6631 if (int_comp > 0) then
6632 ! THINC reads cont and adv from v_rs_ws; must reconstruct full sys_size range to populate both
6633 iv%beg = 1; iv%end = sys_size
6635 ! Surface tension requires first-order energy; overwrite the higher-order result from the full pass above
6636 iv%beg = eqn_idx%E; iv%end = eqn_idx%E
6638 else if ((.not. weno_re_flux)) then
6639 iv%beg = 1; iv%end = eqn_idx%E - 1
6641
6642 iv%beg = eqn_idx%E; iv%end = eqn_idx%E
6644
6645 iv%beg = eqn_idx%E + 1; iv%end = sys_size
6647 else
6648 iv%beg = 1; iv%end = eqn_idx%cont%end
6650
6651 iv%beg = eqn_idx%mom%beg; iv%end = eqn_idx%mom%end; iglob = id
6652
6653# 685 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6654#if defined(MFC_OpenACC)
6655# 685 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6656!$acc update device(iv, iglob)
6657# 685 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6658#elif defined(MFC_OpenMP)
6659# 685 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6660!$omp target update to(iv, iglob)
6661# 685 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6662#endif
6663
6664
6665# 687 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6666
6667# 687 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6668#if defined(MFC_OpenACC)
6669# 687 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6670!$acc parallel loop collapse(4) gang vector default(present) private(i, j, k, l)
6671# 687 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6672#elif defined(MFC_OpenMP)
6673# 687 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6674
6675# 687 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6676
6677# 687 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6678
6679# 687 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6680!$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)
6681# 687 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6682#endif
6683 do i = iv%beg, iv%end
6684 do l = idwbuff(3)%beg, idwbuff(3)%end
6685 do k = idwbuff(2)%beg, idwbuff(2)%end
6686 do j = idwbuff(1)%beg, idwbuff(1)%end
6687 ql_rsx_vf(j, k, l, i) = ql_prim(iglob)%vf(i)%sf(j, k, l)
6688 qr_rsx_vf(j, k, l, i) = qr_prim(iglob)%vf(i)%sf(j, k, l)
6689 end do
6690 end do
6691 end do
6692 end do
6693
6694# 698 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6695#if defined(MFC_OpenACC)
6696# 698 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6697!$acc end parallel loop
6698# 698 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6699#elif defined(MFC_OpenMP)
6700# 698 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6701
6702# 698 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6703!$omp end target teams loop
6704# 698 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6705#endif
6706
6707 iv%beg = eqn_idx%E; iv%end = eqn_idx%E
6709
6710 iv%beg = eqn_idx%E + 1; iv%end = sys_size
6712 end if
6713 end if
6714
6715 ! Reconstruct viscous derivatives for viscosity
6716 if (weno_re_flux) then
6717 iv%beg = eqn_idx%mom%beg; iv%end = eqn_idx%mom%end
6718 call s_reconstruct_cell_boundary_values_visc_deriv(dq_prim_dx_qp(1)%vf(iv%beg:iv%end), dql_rsx_vf, &
6719 & 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), &
6720 & idwbuff(2), idwbuff(3))
6721 if (n > 0) then
6722 call s_reconstruct_cell_boundary_values_visc_deriv(dq_prim_dy_qp(1)%vf(iv%beg:iv%end), dql_rsx_vf, &
6723 & dqr_rsx_vf, id, dql_prim_dy_n(id)%vf(iv%beg:iv%end), dqr_prim_dy_n(id)%vf(iv%beg:iv%end), &
6724 & idwbuff(1), idwbuff(2), idwbuff(3))
6725 if (p > 0) then
6726 call s_reconstruct_cell_boundary_values_visc_deriv(dq_prim_dz_qp(1)%vf(iv%beg:iv%end), dql_rsx_vf, &
6727 & dqr_rsx_vf, id, dql_prim_dz_n(id)%vf(iv%beg:iv%end), dqr_prim_dz_n(id)%vf(iv%beg:iv%end), &
6728 & idwbuff(1), idwbuff(2), idwbuff(3))
6729 end if
6730 end if
6731 end if
6732
6733 call nvtxendrange
6734
6735 ! Configuring Coordinate Direction Indexes
6736 if (id == 1) then
6737 irx%beg = -1; iry%beg = 0; irz%beg = 0
6738 else if (id == 2) then
6739 irx%beg = 0; iry%beg = -1; irz%beg = 0
6740 else
6741 irx%beg = 0; iry%beg = 0; irz%beg = -1
6742 end if
6743 irx%end = m; iry%end = n; irz%end = p
6744
6745 ! Computing Riemann Solver Flux and Source Flux
6746 call nvtxstartrange("RHS-RIEMANN-SOLVER")
6747 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, &
6748 & qr_prim(id)%vf, ql_rsx_vf, dql_prim_dx_n(id)%vf, dql_prim_dy_n(id)%vf, &
6749 & dql_prim_dz_n(id)%vf, ql_prim(id)%vf, q_prim_qp%vf, flux_n(id)%vf, flux_src_n(id)%vf, &
6750 & flux_gsrc_n(id)%vf, id, irx, iry, irz)
6751 call nvtxendrange
6752
6753 ! Additional physics and source terms RHS addition for advection source
6754 call nvtxstartrange("RHS-ADVECTION-SRC")
6756 call nvtxendrange
6757
6758 ! RHS additions for hypoelasticity
6759 call nvtxstartrange("RHS-HYPOELASTICITY")
6760 if (hypoelasticity) call s_compute_hypoelastic_rhs(id, q_prim_qp%vf, rhs_vf)
6761 call nvtxendrange
6762
6763 ! RHS for diffusion
6764 if (chemistry .and. chem_params%diffusion) then
6765 call nvtxstartrange("RHS-CHEM-DIFFUSION")
6766 call s_compute_chemistry_diffusion_flux(id, q_prim_qp%vf, flux_src_n(id)%vf, irx, iry, irz, q_t_sf)
6767 call nvtxendrange
6768 end if
6769
6770 ! Viscous stress contribution to RHS
6771 if (viscous .or. surface_tension .or. chem_params%diffusion) then
6772 call nvtxstartrange("RHS-ADD-PHYSICS")
6773 call s_compute_additional_physics_rhs(id, q_prim_qp%vf, rhs_vf, flux_src_n(id)%vf, dq_prim_dx_qp(1)%vf, &
6774 & dq_prim_dy_qp(1)%vf, dq_prim_dz_qp(1)%vf)
6775 call nvtxendrange
6776 end if
6777
6778 ! Bubble dynamics source terms
6779 if (bubbles_euler) then
6780 call nvtxstartrange("RHS-BUBBLES-COMPUTE")
6781 call s_compute_bubbles_ee_rhs(id, q_prim_qp%vf, divu)
6782 call nvtxendrange
6783 end if
6784
6785 ! RHS additions for qbmm bubbles
6786 if (qbmm) then
6787 call nvtxstartrange("RHS-QBMM")
6788 call s_compute_qbmm_rhs(id, q_cons_qp%vf, q_prim_qp%vf, rhs_vf, flux_n(id)%vf, pb_in, rhs_pb)
6789 call nvtxendrange
6790 end if
6791 ! END: Additional physics and source terms
6792
6793 if (hyper_cleaning) then
6794
6795# 787 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6796
6797# 787 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6798#if defined(MFC_OpenACC)
6799# 787 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6800!$acc parallel loop collapse(3) gang vector default(present) private(j, k, l)
6801# 787 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6802#elif defined(MFC_OpenMP)
6803# 787 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6804
6805# 787 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6806
6807# 787 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6808
6809# 787 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6810!$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)
6811# 787 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6812#endif
6813 do l = 0, p
6814 do k = 0, n
6815 do j = 0, m
6816 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, &
6817 & k, l)/hyper_cleaning_tau
6818 end do
6819 end do
6820 end do
6821
6822# 796 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6823#if defined(MFC_OpenACC)
6824# 796 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6825!$acc end parallel loop
6826# 796 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6827#elif defined(MFC_OpenMP)
6828# 796 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6829
6830# 796 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6831!$omp end target teams loop
6832# 796 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6833#endif
6834 end if
6835
6836 ! END: Additional physics and source terms
6837 end if
6838 end do
6839 ! END: Dimensional Splitting Loop
6840
6841 if (ib) then
6842
6843# 805 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6844
6845# 805 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6846#if defined(MFC_OpenACC)
6847# 805 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6848!$acc parallel loop collapse(3) gang vector default(present) private(i, j, k, l)
6849# 805 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6850#elif defined(MFC_OpenMP)
6851# 805 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6852
6853# 805 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6854
6855# 805 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6856
6857# 805 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6858!$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)
6859# 805 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6860#endif
6861 do l = 0, p
6862 do k = 0, n
6863 do j = 0, m
6864 if (ib_markers%sf(j, k, l) /= 0) then
6865 do i = 1, sys_size
6866 rhs_vf(i)%sf(j, k, l) = 0._wp
6867 end do
6868 end if
6869 end do
6870 end do
6871 end do
6872
6873# 817 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6874#if defined(MFC_OpenACC)
6875# 817 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6876!$acc end parallel loop
6877# 817 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6878#elif defined(MFC_OpenMP)
6879# 817 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6880
6881# 817 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6882!$omp end target teams loop
6883# 817 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6884#endif
6885 end if
6886
6887 ! Additional Physics and Source Terms Additions for acoustic_source
6888 if (acoustic_source) then
6889 call nvtxstartrange("RHS-ACOUSTIC-SRC")
6890 call s_acoustic_src_calculations(q_cons_qp%vf(1:sys_size), q_prim_qp%vf(1:sys_size), rhs_vf)
6891 call nvtxendrange
6892 end if
6893
6894 ! Add bubbles source term
6895 if (bubbles_euler .and. (.not. adap_dt) .and. (.not. qbmm)) then
6896 call nvtxstartrange("RHS-BUBBLES-SRC")
6897 call s_compute_bubble_ee_source(q_cons_qp%vf(1:sys_size), q_prim_qp%vf(1:sys_size), rhs_vf, divu)
6898 call nvtxendrange
6899 end if
6900
6901 if (bubbles_lagrange) then
6902 if (.not. adap_dt) then
6903 call nvtxstartrange("RHS-EL-BUBBLES-DYN")
6904 call s_compute_bubble_el_dynamics(q_prim_qp%vf(1:sys_size), bc_type, stage)
6905 call nvtxendrange
6906 end if
6907
6908 if (lag_params%solver_approach == 2) then
6909 call nvtxstartrange("RHS-EL-BUBBLES-SRC")
6910 call s_compute_bubbles_el_source(q_cons_qp%vf(1:sys_size), q_prim_qp%vf(1:sys_size), rhs_vf)
6911 call nvtxendrange
6912 end if
6913 end if
6914
6915 ! When reaction_substeps > 0 the reaction source is integrated by operator splitting
6916 ! after the flow update (s_chemistry_reaction_substep), not added to the flow RHS here.
6917 if (chemistry .and. chem_params%reactions .and. chem_params%reaction_substeps == 0) then
6918 call nvtxstartrange("RHS-CHEM-REACTIONS")
6919 call s_compute_chemistry_reaction_flux(rhs_vf, q_cons_qp%vf, q_t_sf, q_prim_qp%vf, idwint)
6920 call nvtxendrange
6921 end if
6922
6923 if (reactive_burn) then
6924 call nvtxstartrange("RHS-REACTIVE-BURN")
6925 call s_compute_reactive_burn(rhs_vf, q_cons_qp%vf, q_prim_qp%vf, idwint)
6926 call nvtxendrange
6927 end if
6928
6929 if (cont_damage) call s_compute_damage_state(q_cons_qp%vf, rhs_vf)
6930
6931 ! END: Additional physics and source terms
6932
6933 if (run_time_info .or. probe_wrt .or. ib .or. bubbles_lagrange) then
6934 if (.not. igr) then
6935
6936# 868 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6937
6938# 868 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6939#if defined(MFC_OpenACC)
6940# 868 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6941!$acc parallel loop collapse(4) gang vector default(present) private(i, j, k, l)
6942# 868 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6943#elif defined(MFC_OpenMP)
6944# 868 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6945
6946# 868 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6947
6948# 868 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6949
6950# 868 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6951!$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)
6952# 868 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6953#endif
6954 do i = 1, sys_size
6955 do l = idwbuff(3)%beg, idwbuff(3)%end
6956 do k = idwbuff(2)%beg, idwbuff(2)%end
6957 do j = idwbuff(1)%beg, idwbuff(1)%end
6958 q_prim_vf(i)%sf(j, k, l) = q_prim_qp%vf(i)%sf(j, k, l)
6959 end do
6960 end do
6961 end do
6962 end do
6963
6964# 878 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6965#if defined(MFC_OpenACC)
6966# 878 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6967!$acc end parallel loop
6968# 878 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6969#elif defined(MFC_OpenMP)
6970# 878 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6971
6972# 878 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6973!$omp end target teams loop
6974# 878 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
6975#endif
6976 end if
6977 end if
6978
6979 call nvtxendrange
6980
6981 end subroutine s_compute_rhs
6982
6983 !> Accumulate advection source contributions from a given coordinate direction into the RHS
6984 subroutine s_compute_advection_source_term(idir, rhs_vf, q_cons_vf, q_prim_vf, flux_src_n_vf)
6985
6986 integer, intent(in) :: idir
6987 type(scalar_field), dimension(sys_size), intent(inout) :: rhs_vf
6988 type(vector_field), intent(inout) :: q_cons_vf
6989 type(vector_field), intent(inout) :: q_prim_vf
6990 type(vector_field), intent(inout) :: flux_src_n_vf
6991 integer :: j, k, l, q !< Loop iterators from original, meaning varies
6992 integer :: k_loop, l_loop, q_loop !< Standardized spatial loop iterators 0:m, 0:n, 0:p
6993 integer :: i_fluid_loop
6994 real(wp) :: inv_ds, flux_face1, flux_face2
6995 real(wp) :: advected_qty_val, pressure_val, velocity_val
6996
6997 if (alt_soundspeed) then
6998
6999# 901 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7000
7001# 901 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7002#if defined(MFC_OpenACC)
7003# 901 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7004!$acc parallel loop collapse(3) gang vector default(present) private(k_loop, l_loop, q_loop)
7005# 901 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7006#elif defined(MFC_OpenMP)
7007# 901 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7008
7009# 901 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7010
7011# 901 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7012
7013# 901 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7014!$omp target teams loop defaultmap(firstprivate:scalar) bind(teams,parallel) collapse(3) defaultmap(tofrom:aggregate) defaultmap(tofrom:allocatable) defaultmap(tofrom:pointer) &
7015# 901 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7016!$omp& private(k_loop, l_loop, q_loop)
7017# 901 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7018#endif
7019 do q_loop = 0, p
7020 do l_loop = 0, n
7021 do k_loop = 0, m
7022 blkmod1(k_loop, l_loop, q_loop) = ((gammas(1) + 1._wp)*q_prim_vf%vf(eqn_idx%E)%sf(k_loop, l_loop, &
7023 & q_loop) + pi_infs(1))/gammas(1)
7024 blkmod2(k_loop, l_loop, q_loop) = ((gammas(2) + 1._wp)*q_prim_vf%vf(eqn_idx%E)%sf(k_loop, l_loop, &
7025 & q_loop) + pi_infs(2))/gammas(2)
7026 alpha1(k_loop, l_loop, q_loop) = q_cons_vf%vf(eqn_idx%adv%beg)%sf(k_loop, l_loop, q_loop)
7027
7028 if (bubbles_euler) then
7029 alpha2(k_loop, l_loop, q_loop) = q_cons_vf%vf(eqn_idx%alf - 1)%sf(k_loop, l_loop, q_loop)
7030 else
7031 alpha2(k_loop, l_loop, q_loop) = q_cons_vf%vf(eqn_idx%adv%end)%sf(k_loop, l_loop, q_loop)
7032 end if
7033
7034 kterm(k_loop, l_loop, q_loop) = alpha1(k_loop, l_loop, q_loop)*alpha2(k_loop, l_loop, &
7035 & q_loop)*(blkmod2(k_loop, l_loop, q_loop) - blkmod1(k_loop, l_loop, q_loop))/(alpha1(k_loop, &
7036 & l_loop, q_loop)*blkmod2(k_loop, l_loop, q_loop) + alpha2(k_loop, l_loop, q_loop)*blkmod1(k_loop, &
7037 & l_loop, q_loop))
7038 end do
7039 end do
7040 end do
7041
7042# 924 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7043#if defined(MFC_OpenACC)
7044# 924 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7045!$acc end parallel loop
7046# 924 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7047#elif defined(MFC_OpenMP)
7048# 924 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7049
7050# 924 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7051!$omp end target teams loop
7052# 924 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7053#endif
7054 end if
7055
7056 select case (idir)
7057 case (1) ! x-direction
7058 if (bc_x%beg <= bc_char_slip_wall .and. bc_x%beg >= bc_char_sup_outflow) then
7059 call s_cbc(q_prim_vf%vf, flux_n(idir)%vf, flux_src_n_vf%vf, idir, -1, irx, iry, irz)
7060 end if
7061 if (bc_x%end <= bc_char_slip_wall .and. bc_x%end >= bc_char_sup_outflow) then
7062 call s_cbc(q_prim_vf%vf, flux_n(idir)%vf, flux_src_n_vf%vf, idir, 1, irx, iry, irz)
7063 end if
7064
7065
7066# 936 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7067
7068# 936 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7069#if defined(MFC_OpenACC)
7070# 936 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7071!$acc parallel loop collapse(4) gang vector default(present) private(j, k_loop, l_loop, q_loop, inv_ds, flux_face1, flux_face2)
7072# 936 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7073#elif defined(MFC_OpenMP)
7074# 936 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7075
7076# 936 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7077
7078# 936 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7079
7080# 936 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7081!$omp target teams loop defaultmap(firstprivate:scalar) bind(teams,parallel) collapse(4) defaultmap(tofrom:aggregate) defaultmap(tofrom:allocatable) defaultmap(tofrom:pointer) &
7082# 936 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7083!$omp& private(j, k_loop, l_loop, q_loop, inv_ds, flux_face1, flux_face2)
7084# 936 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7085#endif
7086 do j = 1, sys_size
7087 do q_loop = 0, p
7088 do l_loop = 0, n
7089 do k_loop = 0, m
7090 inv_ds = 1._wp/dx(k_loop)
7091 flux_face1 = flux_n(1)%vf(j)%sf(k_loop - 1, l_loop, q_loop)
7092 flux_face2 = flux_n(1)%vf(j)%sf(k_loop, l_loop, q_loop)
7093 rhs_vf(j)%sf(k_loop, l_loop, q_loop) = inv_ds*(flux_face1 - flux_face2)
7094 end do
7095 end do
7096 end do
7097 end do
7098
7099# 949 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7100#if defined(MFC_OpenACC)
7101# 949 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7102!$acc end parallel loop
7103# 949 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7104#elif defined(MFC_OpenMP)
7105# 949 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7106
7107# 949 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7108!$omp end target teams loop
7109# 949 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7110#endif
7111
7112 if (model_eqns == model_eqns_6eq) then
7113
7114# 952 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7115
7116# 952 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7117#if defined(MFC_OpenACC)
7118# 952 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7119!$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)
7120# 952 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7121#elif defined(MFC_OpenMP)
7122# 952 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7123
7124# 952 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7125
7126# 952 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7127
7128# 952 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7129!$omp target teams loop defaultmap(firstprivate:scalar) bind(teams,parallel) collapse(4) defaultmap(tofrom:aggregate) defaultmap(tofrom:allocatable) defaultmap(tofrom:pointer) &
7130# 952 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7131!$omp& private(i_fluid_loop, k_loop, l_loop, q_loop, inv_ds, advected_qty_val, pressure_val, flux_face1, flux_face2)
7132# 952 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7133#endif
7134# 954 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7135 do q_loop = 0, p
7136 do l_loop = 0, n
7137 do k_loop = 0, m
7138 do i_fluid_loop = 1, num_fluids
7139 inv_ds = 1._wp/dx(k_loop)
7140 advected_qty_val = q_cons_vf%vf(i_fluid_loop + eqn_idx%adv%beg - 1)%sf(k_loop, l_loop, q_loop)
7141 pressure_val = q_prim_vf%vf(eqn_idx%E)%sf(k_loop, l_loop, q_loop)
7142 flux_face1 = flux_src_n_vf%vf(eqn_idx%adv%beg)%sf(k_loop, l_loop, q_loop)
7143 flux_face2 = flux_src_n_vf%vf(eqn_idx%adv%beg)%sf(k_loop - 1, l_loop, q_loop)
7144 rhs_vf(i_fluid_loop + eqn_idx%int_en%beg - 1)%sf(k_loop, l_loop, &
7145 & q_loop) = rhs_vf(i_fluid_loop + eqn_idx%int_en%beg - 1)%sf(k_loop, l_loop, &
7146 & q_loop) - inv_ds*advected_qty_val*pressure_val*(flux_face1 - flux_face2)
7147 end do
7148 end do
7149 end do
7150 end do
7151
7152# 970 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7153#if defined(MFC_OpenACC)
7154# 970 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7155!$acc end parallel loop
7156# 970 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7157#elif defined(MFC_OpenMP)
7158# 970 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7159
7160# 970 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7161!$omp end target teams loop
7162# 970 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7163#endif
7164 end if
7165
7166 call s_add_directional_advection_source_terms(idir, rhs_vf, q_cons_vf, q_prim_vf, flux_src_n_vf, kterm)
7167 case (2) ! y-direction
7168 if (bc_y%beg <= bc_char_slip_wall .and. bc_y%beg >= bc_char_sup_outflow) then
7169 call s_cbc(q_prim_vf%vf, flux_n(idir)%vf, flux_src_n_vf%vf, idir, -1, irx, iry, irz)
7170 end if
7171 if (bc_y%end <= bc_char_slip_wall .and. bc_y%end >= bc_char_sup_outflow) then
7172 call s_cbc(q_prim_vf%vf, flux_n(idir)%vf, flux_src_n_vf%vf, idir, 1, irx, iry, irz)
7173 end if
7174
7175
7176# 982 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7177
7178# 982 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7179#if defined(MFC_OpenACC)
7180# 982 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7181!$acc parallel loop collapse(4) gang vector default(present) private(j, k, l, q, inv_ds, flux_face1, flux_face2)
7182# 982 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7183#elif defined(MFC_OpenMP)
7184# 982 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7185
7186# 982 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7187
7188# 982 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7189
7190# 982 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7191!$omp target teams loop defaultmap(firstprivate:scalar) bind(teams,parallel) collapse(4) defaultmap(tofrom:aggregate) defaultmap(tofrom:allocatable) defaultmap(tofrom:pointer) &
7192# 982 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7193!$omp& private(j, k, l, q, inv_ds, flux_face1, flux_face2)
7194# 982 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7195#endif
7196 do j = 1, sys_size
7197 do l = 0, p
7198 do k = 0, n
7199 do q = 0, m
7200 inv_ds = 1._wp/dy(k)
7201 flux_face1 = flux_n(2)%vf(j)%sf(q, k - 1, l)
7202 flux_face2 = flux_n(2)%vf(j)%sf(q, k, l)
7203 rhs_vf(j)%sf(q, k, l) = rhs_vf(j)%sf(q, k, l) + inv_ds*(flux_face1 - flux_face2)
7204 end do
7205 end do
7206 end do
7207 end do
7208
7209# 995 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7210#if defined(MFC_OpenACC)
7211# 995 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7212!$acc end parallel loop
7213# 995 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7214#elif defined(MFC_OpenMP)
7215# 995 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7216
7217# 995 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7218!$omp end target teams loop
7219# 995 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7220#endif
7221
7222 if (model_eqns == model_eqns_6eq) then
7223
7224# 998 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7225
7226# 998 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7227#if defined(MFC_OpenACC)
7228# 998 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7229!$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)
7230# 998 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7231#elif defined(MFC_OpenMP)
7232# 998 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7233
7234# 998 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7235
7236# 998 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7237
7238# 998 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7239!$omp target teams loop defaultmap(firstprivate:scalar) bind(teams,parallel) collapse(4) defaultmap(tofrom:aggregate) defaultmap(tofrom:allocatable) defaultmap(tofrom:pointer) &
7240# 998 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7241!$omp& private(i_fluid_loop, k, l, q, inv_ds, advected_qty_val, pressure_val, flux_face1, flux_face2)
7242# 998 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7243#endif
7244# 1000 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7245 do l = 0, p
7246 do k = 0, n
7247 do q = 0, m
7248 do i_fluid_loop = 1, num_fluids
7249 inv_ds = 1._wp/dy(k)
7250 advected_qty_val = q_cons_vf%vf(i_fluid_loop + eqn_idx%adv%beg - 1)%sf(q, k, l)
7251 pressure_val = q_prim_vf%vf(eqn_idx%E)%sf(q, k, l)
7252 flux_face1 = flux_src_n_vf%vf(eqn_idx%adv%beg)%sf(q, k, l)
7253 flux_face2 = flux_src_n_vf%vf(eqn_idx%adv%beg)%sf(q, k - 1, l)
7254 rhs_vf(i_fluid_loop + eqn_idx%int_en%beg - 1)%sf(q, k, &
7255 & l) = rhs_vf(i_fluid_loop + eqn_idx%int_en%beg - 1)%sf(q, k, &
7256 & l) - inv_ds*advected_qty_val*pressure_val*(flux_face1 - flux_face2)
7257 if (cyl_coord) then
7258 rhs_vf(i_fluid_loop + eqn_idx%int_en%beg - 1)%sf(q, k, &
7259 & l) = rhs_vf(i_fluid_loop + eqn_idx%int_en%beg - 1)%sf(q, k, &
7260 & l) - 5.e-1_wp/y_cc(k)*advected_qty_val*pressure_val*(flux_face1 + flux_face2)
7261 end if
7262 end do
7263 end do
7264 end do
7265 end do
7266
7267# 1021 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7268#if defined(MFC_OpenACC)
7269# 1021 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7270!$acc end parallel loop
7271# 1021 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7272#elif defined(MFC_OpenMP)
7273# 1021 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7274
7275# 1021 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7276!$omp end target teams loop
7277# 1021 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7278#endif
7279 end if
7280
7281 if (cyl_coord) then
7282
7283# 1025 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7284
7285# 1025 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7286#if defined(MFC_OpenACC)
7287# 1025 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7288!$acc parallel loop collapse(4) gang vector default(present) private(j, k, l, q, flux_face1, flux_face2)
7289# 1025 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7290#elif defined(MFC_OpenMP)
7291# 1025 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7292
7293# 1025 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7294
7295# 1025 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7296
7297# 1025 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7298!$omp target teams loop defaultmap(firstprivate:scalar) bind(teams,parallel) collapse(4) defaultmap(tofrom:aggregate) defaultmap(tofrom:allocatable) defaultmap(tofrom:pointer) &
7299# 1025 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7300!$omp& private(j, k, l, q, flux_face1, flux_face2)
7301# 1025 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7302#endif
7303 do j = 1, sys_size
7304 do l = 0, p
7305 do k = 0, n
7306 do q = 0, m
7307 flux_face1 = flux_gsrc_n(2)%vf(j)%sf(q, k - 1, l)
7308 flux_face2 = flux_gsrc_n(2)%vf(j)%sf(q, k, l)
7309 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)
7310 end do
7311 end do
7312 end do
7313 end do
7314
7315# 1037 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7316#if defined(MFC_OpenACC)
7317# 1037 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7318!$acc end parallel loop
7319# 1037 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7320#elif defined(MFC_OpenMP)
7321# 1037 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7322
7323# 1037 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7324!$omp end target teams loop
7325# 1037 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7326#endif
7327 end if
7328
7329 call s_add_directional_advection_source_terms(idir, rhs_vf, q_cons_vf, q_prim_vf, flux_src_n_vf, kterm)
7330 case (3) ! z-direction
7331 if (bc_z%beg <= bc_char_slip_wall .and. bc_z%beg >= bc_char_sup_outflow) then
7332 call s_cbc(q_prim_vf%vf, flux_n(idir)%vf, flux_src_n_vf%vf, idir, -1, irx, iry, irz)
7333 end if
7334 if (bc_z%end <= bc_char_slip_wall .and. bc_z%end >= bc_char_sup_outflow) then
7335 call s_cbc(q_prim_vf%vf, flux_n(idir)%vf, flux_src_n_vf%vf, idir, 1, irx, iry, irz)
7336 end if
7337
7338 if (grid_geometry == 3) then ! Cylindrical Coordinates
7339
7340# 1050 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7341
7342# 1050 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7343#if defined(MFC_OpenACC)
7344# 1050 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7345!$acc parallel loop collapse(4) gang vector default(present) private(j, k, l, q, inv_ds, velocity_val, flux_face1, flux_face2)
7346# 1050 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7347#elif defined(MFC_OpenMP)
7348# 1050 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7349
7350# 1050 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7351
7352# 1050 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7353
7354# 1050 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7355!$omp target teams loop defaultmap(firstprivate:scalar) bind(teams,parallel) collapse(4) defaultmap(tofrom:aggregate) defaultmap(tofrom:allocatable) defaultmap(tofrom:pointer) &
7356# 1050 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7357!$omp& private(j, k, l, q, inv_ds, velocity_val, flux_face1, flux_face2)
7358# 1050 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7359#endif
7360 do j = 1, sys_size
7361 do k = 0, p
7362 do q = 0, n
7363 do l = 0, m
7364 inv_ds = 1._wp/(dz(k)*y_cc(q))
7365 velocity_val = q_prim_vf%vf(eqn_idx%cont%end + idir)%sf(l, q, k)
7366 flux_face1 = flux_n(3)%vf(j)%sf(l, q, k - 1)
7367 flux_face2 = flux_n(3)%vf(j)%sf(l, q, k)
7368 rhs_vf(j)%sf(l, q, k) = rhs_vf(j)%sf(l, q, k) + inv_ds*velocity_val*(flux_face1 - flux_face2)
7369 end do
7370 end do
7371 end do
7372 end do
7373
7374# 1064 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7375#if defined(MFC_OpenACC)
7376# 1064 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7377!$acc end parallel loop
7378# 1064 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7379#elif defined(MFC_OpenMP)
7380# 1064 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7381
7382# 1064 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7383!$omp end target teams loop
7384# 1064 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7385#endif
7386
7387# 1065 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7388
7389# 1065 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7390#if defined(MFC_OpenACC)
7391# 1065 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7392!$acc parallel loop collapse(4) gang vector default(present) private(j, k, l, q, flux_face1, flux_face2)
7393# 1065 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7394#elif defined(MFC_OpenMP)
7395# 1065 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7396
7397# 1065 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7398
7399# 1065 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7400
7401# 1065 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7402!$omp target teams loop defaultmap(firstprivate:scalar) bind(teams,parallel) collapse(4) defaultmap(tofrom:aggregate) defaultmap(tofrom:allocatable) defaultmap(tofrom:pointer) &
7403# 1065 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7404!$omp& private(j, k, l, q, flux_face1, flux_face2)
7405# 1065 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7406#endif
7407 do j = 1, sys_size
7408 do k = 0, p
7409 do q = 0, n
7410 do l = 0, m
7411 flux_face1 = flux_gsrc_n(3)%vf(j)%sf(l, q, k - 1)
7412 flux_face2 = flux_gsrc_n(3)%vf(j)%sf(l, q, k)
7413 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)
7414 end do
7415 end do
7416 end do
7417 end do
7418
7419# 1077 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7420#if defined(MFC_OpenACC)
7421# 1077 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7422!$acc end parallel loop
7423# 1077 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7424#elif defined(MFC_OpenMP)
7425# 1077 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7426
7427# 1077 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7428!$omp end target teams loop
7429# 1077 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7430#endif
7431 else
7432
7433# 1079 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7434
7435# 1079 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7436#if defined(MFC_OpenACC)
7437# 1079 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7438!$acc parallel loop collapse(4) gang vector default(present) private(j, k, l, q, inv_ds, flux_face1, flux_face2)
7439# 1079 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7440#elif defined(MFC_OpenMP)
7441# 1079 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7442
7443# 1079 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7444
7445# 1079 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7446
7447# 1079 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7448!$omp target teams loop defaultmap(firstprivate:scalar) bind(teams,parallel) collapse(4) defaultmap(tofrom:aggregate) defaultmap(tofrom:allocatable) defaultmap(tofrom:pointer) &
7449# 1079 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7450!$omp& private(j, k, l, q, inv_ds, flux_face1, flux_face2)
7451# 1079 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7452#endif
7453 do j = 1, sys_size
7454 do k = 0, p
7455 do q = 0, n
7456 do l = 0, m
7457 inv_ds = 1._wp/dz(k)
7458 flux_face1 = flux_n(3)%vf(j)%sf(l, q, k - 1)
7459 flux_face2 = flux_n(3)%vf(j)%sf(l, q, k)
7460 rhs_vf(j)%sf(l, q, k) = rhs_vf(j)%sf(l, q, k) + inv_ds*(flux_face1 - flux_face2)
7461 end do
7462 end do
7463 end do
7464 end do
7465
7466# 1092 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7467#if defined(MFC_OpenACC)
7468# 1092 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7469!$acc end parallel loop
7470# 1092 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7471#elif defined(MFC_OpenMP)
7472# 1092 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7473
7474# 1092 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7475!$omp end target teams loop
7476# 1092 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7477#endif
7478 end if
7479
7480 if (model_eqns == model_eqns_6eq) then
7481
7482# 1096 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7483
7484# 1096 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7485#if defined(MFC_OpenACC)
7486# 1096 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7487!$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)
7488# 1096 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7489#elif defined(MFC_OpenMP)
7490# 1096 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7491
7492# 1096 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7493
7494# 1096 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7495
7496# 1096 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7497!$omp target teams loop defaultmap(firstprivate:scalar) bind(teams,parallel) collapse(4) defaultmap(tofrom:aggregate) defaultmap(tofrom:allocatable) defaultmap(tofrom:pointer) &
7498# 1096 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7499!$omp& private(i_fluid_loop, k, l, q, inv_ds, advected_qty_val, pressure_val, flux_face1, flux_face2)
7500# 1096 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7501#endif
7502# 1098 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7503 do k = 0, p
7504 do q = 0, n
7505 do l = 0, m
7506 do i_fluid_loop = 1, num_fluids
7507 inv_ds = 1._wp/dz(k)
7508 advected_qty_val = q_cons_vf%vf(i_fluid_loop + eqn_idx%adv%beg - 1)%sf(l, q, k)
7509 pressure_val = q_prim_vf%vf(eqn_idx%E)%sf(l, q, k)
7510 flux_face1 = flux_src_n_vf%vf(eqn_idx%adv%beg)%sf(l, q, k)
7511 flux_face2 = flux_src_n_vf%vf(eqn_idx%adv%beg)%sf(l, q, k - 1)
7512 rhs_vf(i_fluid_loop + eqn_idx%int_en%beg - 1)%sf(l, q, &
7513 & k) = rhs_vf(i_fluid_loop + eqn_idx%int_en%beg - 1)%sf(l, q, &
7514 & k) - inv_ds*advected_qty_val*pressure_val*(flux_face1 - flux_face2)
7515 end do
7516 end do
7517 end do
7518 end do
7519
7520# 1114 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7521#if defined(MFC_OpenACC)
7522# 1114 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7523!$acc end parallel loop
7524# 1114 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7525#elif defined(MFC_OpenMP)
7526# 1114 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7527
7528# 1114 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7529!$omp end target teams loop
7530# 1114 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7531#endif
7532 end if
7533
7534 call s_add_directional_advection_source_terms(idir, rhs_vf, q_cons_vf, q_prim_vf, flux_src_n_vf, kterm)
7535 end select
7536
7537 contains
7538
7539 !> Add the advection source flux-difference terms for a single coordinate direction to the RHS
7540 subroutine s_add_directional_advection_source_terms(current_idir, rhs_vf_arg, q_cons_vf_arg, q_prim_vf_arg, &
7541 & flux_src_n_vf_arg, Kterm_arg)
7542 integer, intent(in) :: current_idir
7543 type(scalar_field), dimension(sys_size), intent(inout) :: rhs_vf_arg
7544 type(vector_field), intent(in) :: q_cons_vf_arg
7545 type(vector_field), intent(in) :: q_prim_vf_arg
7546 type(vector_field), intent(in) :: flux_src_n_vf_arg
7547 ! CORRECTED DECLARATION FOR Kterm_arg:
7548 real(wp), allocatable, dimension(:,:,:), intent(in) :: Kterm_arg
7549 integer :: j_adv, k_idx, l_idx, q_idx
7550 real(wp) :: local_inv_ds, local_term_coeff, local_flux1, local_flux2
7551 real(wp) :: local_q_cons_val, local_k_term_val
7552 logical :: use_standard_riemann
7553
7554 select case (current_idir)
7555 case (1) ! x-direction
7556 use_standard_riemann = (riemann_solver == riemann_solver_hll .or. riemann_solver == riemann_solver_hlld)
7557 if (use_standard_riemann) then
7558
7559# 1141 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7560
7561# 1141 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7562#if defined(MFC_OpenACC)
7563# 1141 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7564!$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)
7565# 1141 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7566#elif defined(MFC_OpenMP)
7567# 1141 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7568
7569# 1141 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7570
7571# 1141 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7572
7573# 1141 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7574!$omp target teams loop defaultmap(firstprivate:scalar) bind(teams,parallel) collapse(4) defaultmap(tofrom:aggregate) defaultmap(tofrom:allocatable) defaultmap(tofrom:pointer) &
7575# 1141 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7576!$omp& private(j_adv, k_idx, l_idx, q_idx, local_inv_ds, local_term_coeff, local_flux1, local_flux2)
7577# 1141 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7578#endif
7579# 1143 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7580 do j_adv = eqn_idx%adv%beg, eqn_idx%adv%end
7581 do q_idx = 0, p ! z_extent
7582 do l_idx = 0, n ! y_extent
7583 do k_idx = 0, m ! x_extent
7584 local_inv_ds = 1._wp/dx(k_idx)
7585 local_term_coeff = q_prim_vf_arg%vf(eqn_idx%cont%end + current_idir)%sf(k_idx, l_idx, q_idx)
7586 local_flux1 = flux_src_n_vf_arg%vf(j_adv)%sf(k_idx - 1, l_idx, q_idx)
7587 local_flux2 = flux_src_n_vf_arg%vf(j_adv)%sf(k_idx, l_idx, q_idx)
7588 rhs_vf_arg(j_adv)%sf(k_idx, l_idx, q_idx) = rhs_vf_arg(j_adv)%sf(k_idx, l_idx, &
7589 & q_idx) + local_inv_ds*local_term_coeff*(local_flux1 - local_flux2)
7590 end do
7591 end do
7592 end do
7593 end do
7594
7595# 1157 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7596#if defined(MFC_OpenACC)
7597# 1157 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7598!$acc end parallel loop
7599# 1157 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7600#elif defined(MFC_OpenMP)
7601# 1157 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7602
7603# 1157 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7604!$omp end target teams loop
7605# 1157 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7606#endif
7607 else
7608 if (alt_soundspeed) then
7609 if (bubbles_euler .neqv. .true.) then
7610
7611# 1161 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7612
7613# 1161 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7614#if defined(MFC_OpenACC)
7615# 1161 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7616!$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)
7617# 1161 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7618#elif defined(MFC_OpenMP)
7619# 1161 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7620
7621# 1161 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7622
7623# 1161 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7624
7625# 1161 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7626!$omp target teams loop defaultmap(firstprivate:scalar) bind(teams,parallel) collapse(3) defaultmap(tofrom:aggregate) defaultmap(tofrom:allocatable) defaultmap(tofrom:pointer) &
7627# 1161 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7628!$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)
7629# 1161 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7630#endif
7631# 1163 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7632 do q_idx = 0, p; do l_idx = 0, n; do k_idx = 0, m
7633 local_inv_ds = 1._wp/dx(k_idx)
7634 local_q_cons_val = q_cons_vf_arg%vf(eqn_idx%adv%end)%sf(k_idx, l_idx, q_idx)
7635 local_k_term_val = kterm_arg(k_idx, l_idx, q_idx) ! Access is safe due to outer alt_soundspeed check
7636 local_term_coeff = local_q_cons_val - local_k_term_val
7637 local_flux1 = flux_src_n_vf_arg%vf(eqn_idx%adv%end)%sf(k_idx, l_idx, q_idx)
7638 local_flux2 = flux_src_n_vf_arg%vf(eqn_idx%adv%end)%sf(k_idx - 1, l_idx, q_idx)
7639 rhs_vf_arg(eqn_idx%adv%end)%sf(k_idx, l_idx, q_idx) = rhs_vf_arg(eqn_idx%adv%end)%sf(k_idx, &
7640 & l_idx, q_idx) + local_inv_ds*local_term_coeff*(local_flux1 - local_flux2)
7641 end do; end do; end do
7642
7643# 1173 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7644#if defined(MFC_OpenACC)
7645# 1173 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7646!$acc end parallel loop
7647# 1173 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7648#elif defined(MFC_OpenMP)
7649# 1173 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7650
7651# 1173 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7652!$omp end target teams loop
7653# 1173 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7654#endif
7655
7656
7657# 1175 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7658
7659# 1175 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7660#if defined(MFC_OpenACC)
7661# 1175 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7662!$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)
7663# 1175 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7664#elif defined(MFC_OpenMP)
7665# 1175 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7666
7667# 1175 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7668
7669# 1175 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7670
7671# 1175 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7672!$omp target teams loop defaultmap(firstprivate:scalar) bind(teams,parallel) collapse(3) defaultmap(tofrom:aggregate) defaultmap(tofrom:allocatable) defaultmap(tofrom:pointer) &
7673# 1175 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7674!$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)
7675# 1175 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7676#endif
7677# 1177 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7678 do q_idx = 0, p; do l_idx = 0, n; do k_idx = 0, m
7679 local_inv_ds = 1._wp/dx(k_idx)
7680 local_q_cons_val = q_cons_vf_arg%vf(eqn_idx%adv%beg)%sf(k_idx, l_idx, q_idx)
7681 local_k_term_val = kterm_arg(k_idx, l_idx, q_idx) ! Access is safe
7682 local_term_coeff = local_q_cons_val + local_k_term_val
7683 local_flux1 = flux_src_n_vf_arg%vf(eqn_idx%adv%beg)%sf(k_idx, l_idx, q_idx)
7684 local_flux2 = flux_src_n_vf_arg%vf(eqn_idx%adv%beg)%sf(k_idx - 1, l_idx, q_idx)
7685 rhs_vf_arg(eqn_idx%adv%beg)%sf(k_idx, l_idx, q_idx) = rhs_vf_arg(eqn_idx%adv%beg)%sf(k_idx, &
7686 & l_idx, q_idx) + local_inv_ds*local_term_coeff*(local_flux1 - local_flux2)
7687 end do; end do; end do
7688
7689# 1187 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7690#if defined(MFC_OpenACC)
7691# 1187 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7692!$acc end parallel loop
7693# 1187 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7694#elif defined(MFC_OpenMP)
7695# 1187 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7696
7697# 1187 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7698!$omp end target teams loop
7699# 1187 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7700#endif
7701 end if
7702 else
7703
7704# 1190 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7705
7706# 1190 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7707#if defined(MFC_OpenACC)
7708# 1190 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7709!$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)
7710# 1190 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7711#elif defined(MFC_OpenMP)
7712# 1190 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7713
7714# 1190 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7715
7716# 1190 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7717
7718# 1190 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7719!$omp target teams loop defaultmap(firstprivate:scalar) bind(teams,parallel) collapse(4) defaultmap(tofrom:aggregate) defaultmap(tofrom:allocatable) defaultmap(tofrom:pointer) &
7720# 1190 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7721!$omp& private(j_adv, k_idx, l_idx, q_idx, local_inv_ds, local_term_coeff, local_flux1, local_flux2)
7722# 1190 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7723#endif
7724# 1192 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7725 do j_adv = eqn_idx%adv%beg, eqn_idx%adv%end
7726 do q_idx = 0, p; do l_idx = 0, n; do k_idx = 0, m
7727 local_inv_ds = 1._wp/dx(k_idx)
7728 local_term_coeff = q_cons_vf_arg%vf(j_adv)%sf(k_idx, l_idx, q_idx)
7729 local_flux1 = flux_src_n_vf_arg%vf(j_adv)%sf(k_idx, l_idx, q_idx)
7730 local_flux2 = flux_src_n_vf_arg%vf(j_adv)%sf(k_idx - 1, l_idx, q_idx)
7731 rhs_vf_arg(j_adv)%sf(k_idx, l_idx, q_idx) = rhs_vf_arg(j_adv)%sf(k_idx, l_idx, &
7732 & q_idx) + local_inv_ds*local_term_coeff*(local_flux1 - local_flux2)
7733 end do; end do; end do
7734 end do
7735
7736# 1202 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7737#if defined(MFC_OpenACC)
7738# 1202 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7739!$acc end parallel loop
7740# 1202 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7741#elif defined(MFC_OpenMP)
7742# 1202 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7743
7744# 1202 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7745!$omp end target teams loop
7746# 1202 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7747#endif
7748 end if
7749 end if
7750 case (2)
7751 ! 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)
7752 use_standard_riemann = (riemann_solver == riemann_solver_hll .or. riemann_solver == riemann_solver_hlld)
7753 if (use_standard_riemann) then
7754
7755# 1209 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7756
7757# 1209 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7758#if defined(MFC_OpenACC)
7759# 1209 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7760!$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)
7761# 1209 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7762#elif defined(MFC_OpenMP)
7763# 1209 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7764
7765# 1209 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7766
7767# 1209 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7768
7769# 1209 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7770!$omp target teams loop defaultmap(firstprivate:scalar) bind(teams,parallel) collapse(4) defaultmap(tofrom:aggregate) defaultmap(tofrom:allocatable) defaultmap(tofrom:pointer) &
7771# 1209 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7772!$omp& private(j_adv, k_idx, l_idx, q_idx, local_inv_ds, local_term_coeff, local_flux1, local_flux2)
7773# 1209 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7774#endif
7775# 1211 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7776 do j_adv = eqn_idx%adv%beg, eqn_idx%adv%end
7777 do l_idx = 0, p ! z_extent
7778 do k_idx = 0, n ! y_extent
7779 do q_idx = 0, m ! x_extent
7780 local_inv_ds = 1._wp/dy(k_idx)
7781 local_term_coeff = q_prim_vf_arg%vf(eqn_idx%cont%end + current_idir)%sf(q_idx, k_idx, l_idx)
7782 local_flux1 = flux_src_n_vf_arg%vf(j_adv)%sf(q_idx, k_idx - 1, l_idx)
7783 local_flux2 = flux_src_n_vf_arg%vf(j_adv)%sf(q_idx, k_idx, l_idx)
7784 rhs_vf_arg(j_adv)%sf(q_idx, k_idx, l_idx) = rhs_vf_arg(j_adv)%sf(q_idx, k_idx, &
7785 & l_idx) + local_inv_ds*local_term_coeff*(local_flux1 - local_flux2)
7786 end do
7787 end do
7788 end do
7789 end do
7790
7791# 1225 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7792#if defined(MFC_OpenACC)
7793# 1225 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7794!$acc end parallel loop
7795# 1225 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7796#elif defined(MFC_OpenMP)
7797# 1225 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7798
7799# 1225 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7800!$omp end target teams loop
7801# 1225 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7802#endif
7803 else
7804 if (alt_soundspeed) then
7805 if (bubbles_euler .neqv. .true.) then
7806
7807# 1229 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7808
7809# 1229 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7810#if defined(MFC_OpenACC)
7811# 1229 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7812!$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)
7813# 1229 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7814#elif defined(MFC_OpenMP)
7815# 1229 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7816
7817# 1229 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7818
7819# 1229 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7820
7821# 1229 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7822!$omp target teams loop defaultmap(firstprivate:scalar) bind(teams,parallel) collapse(3) defaultmap(tofrom:aggregate) defaultmap(tofrom:allocatable) defaultmap(tofrom:pointer) &
7823# 1229 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7824!$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)
7825# 1229 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7826#endif
7827# 1231 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7828 do l_idx = 0, p; do k_idx = 0, n; do q_idx = 0, m
7829 local_inv_ds = 1._wp/dy(k_idx)
7830 local_q_cons_val = q_cons_vf_arg%vf(eqn_idx%adv%end)%sf(q_idx, k_idx, l_idx)
7831 local_k_term_val = kterm_arg(q_idx, k_idx, l_idx) ! Access is safe
7832 local_term_coeff = local_q_cons_val - local_k_term_val
7833 local_flux1 = flux_src_n_vf_arg%vf(eqn_idx%adv%end)%sf(q_idx, k_idx, l_idx)
7834 local_flux2 = flux_src_n_vf_arg%vf(eqn_idx%adv%end)%sf(q_idx, k_idx - 1, l_idx)
7835 rhs_vf_arg(eqn_idx%adv%end)%sf(q_idx, k_idx, l_idx) = rhs_vf_arg(eqn_idx%adv%end)%sf(q_idx, &
7836 & k_idx, l_idx) + local_inv_ds*local_term_coeff*(local_flux1 - local_flux2)
7837 if (cyl_coord) then
7838 rhs_vf_arg(eqn_idx%adv%end)%sf(q_idx, k_idx, l_idx) = rhs_vf_arg(eqn_idx%adv%end)%sf(q_idx, &
7839 & k_idx, l_idx) - (local_k_term_val/(2._wp*y_cc(k_idx)))*(local_flux1 + local_flux2)
7840 end if
7841 end do; end do; end do
7842
7843# 1245 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7844#if defined(MFC_OpenACC)
7845# 1245 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7846!$acc end parallel loop
7847# 1245 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7848#elif defined(MFC_OpenMP)
7849# 1245 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7850
7851# 1245 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7852!$omp end target teams loop
7853# 1245 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7854#endif
7855
7856
7857# 1247 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7858
7859# 1247 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7860#if defined(MFC_OpenACC)
7861# 1247 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7862!$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)
7863# 1247 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7864#elif defined(MFC_OpenMP)
7865# 1247 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7866
7867# 1247 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7868
7869# 1247 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7870
7871# 1247 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7872!$omp target teams loop defaultmap(firstprivate:scalar) bind(teams,parallel) collapse(3) defaultmap(tofrom:aggregate) defaultmap(tofrom:allocatable) defaultmap(tofrom:pointer) &
7873# 1247 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7874!$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)
7875# 1247 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7876#endif
7877# 1249 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7878 do l_idx = 0, p; do k_idx = 0, n; do q_idx = 0, m
7879 local_inv_ds = 1._wp/dy(k_idx)
7880 local_q_cons_val = q_cons_vf_arg%vf(eqn_idx%adv%beg)%sf(q_idx, k_idx, l_idx)
7881 local_k_term_val = kterm_arg(q_idx, k_idx, l_idx) ! Access is safe
7882 local_term_coeff = local_q_cons_val + local_k_term_val
7883 local_flux1 = flux_src_n_vf_arg%vf(eqn_idx%adv%beg)%sf(q_idx, k_idx, l_idx)
7884 local_flux2 = flux_src_n_vf_arg%vf(eqn_idx%adv%beg)%sf(q_idx, k_idx - 1, l_idx)
7885 rhs_vf_arg(eqn_idx%adv%beg)%sf(q_idx, k_idx, l_idx) = rhs_vf_arg(eqn_idx%adv%beg)%sf(q_idx, &
7886 & k_idx, l_idx) + local_inv_ds*local_term_coeff*(local_flux1 - local_flux2)
7887 if (cyl_coord) then
7888 rhs_vf_arg(eqn_idx%adv%beg)%sf(q_idx, k_idx, l_idx) = rhs_vf_arg(eqn_idx%adv%beg)%sf(q_idx, &
7889 & k_idx, l_idx) + (local_k_term_val/(2._wp*y_cc(k_idx)))*(local_flux1 + local_flux2)
7890 end if
7891 end do; end do; end do
7892
7893# 1263 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7894#if defined(MFC_OpenACC)
7895# 1263 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7896!$acc end parallel loop
7897# 1263 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7898#elif defined(MFC_OpenMP)
7899# 1263 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7900
7901# 1263 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7902!$omp end target teams loop
7903# 1263 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7904#endif
7905 end if
7906 else
7907
7908# 1266 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7909
7910# 1266 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7911#if defined(MFC_OpenACC)
7912# 1266 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7913!$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)
7914# 1266 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7915#elif defined(MFC_OpenMP)
7916# 1266 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7917
7918# 1266 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7919
7920# 1266 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7921
7922# 1266 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7923!$omp target teams loop defaultmap(firstprivate:scalar) bind(teams,parallel) collapse(4) defaultmap(tofrom:aggregate) defaultmap(tofrom:allocatable) defaultmap(tofrom:pointer) &
7924# 1266 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7925!$omp& private(j_adv, k_idx, l_idx, q_idx, local_inv_ds, local_term_coeff, local_flux1, local_flux2)
7926# 1266 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7927#endif
7928# 1268 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7929 do j_adv = eqn_idx%adv%beg, eqn_idx%adv%end
7930 do l_idx = 0, p; do k_idx = 0, n; do q_idx = 0, m
7931 local_inv_ds = 1._wp/dy(k_idx)
7932 local_term_coeff = q_cons_vf_arg%vf(j_adv)%sf(q_idx, k_idx, l_idx)
7933 local_flux1 = flux_src_n_vf_arg%vf(j_adv)%sf(q_idx, k_idx, l_idx)
7934 local_flux2 = flux_src_n_vf_arg%vf(j_adv)%sf(q_idx, k_idx - 1, l_idx)
7935 rhs_vf_arg(j_adv)%sf(q_idx, k_idx, l_idx) = rhs_vf_arg(j_adv)%sf(q_idx, k_idx, &
7936 & l_idx) + local_inv_ds*local_term_coeff*(local_flux1 - local_flux2)
7937 end do; end do; end do
7938 end do
7939
7940# 1278 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7941#if defined(MFC_OpenACC)
7942# 1278 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7943!$acc end parallel loop
7944# 1278 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7945#elif defined(MFC_OpenMP)
7946# 1278 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7947
7948# 1278 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7949!$omp end target teams loop
7950# 1278 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7951#endif
7952 end if
7953 end if
7954 case (3)
7955 ! 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)
7956 if (grid_geometry == 3) then
7957 use_standard_riemann = (riemann_solver == riemann_solver_hll)
7958 else
7959 use_standard_riemann = (riemann_solver == riemann_solver_hll .or. riemann_solver == riemann_solver_hlld)
7960 end if
7961
7962 if (use_standard_riemann) then
7963
7964# 1290 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7965
7966# 1290 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7967#if defined(MFC_OpenACC)
7968# 1290 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7969!$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)
7970# 1290 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7971#elif defined(MFC_OpenMP)
7972# 1290 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7973
7974# 1290 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7975
7976# 1290 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7977
7978# 1290 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7979!$omp target teams loop defaultmap(firstprivate:scalar) bind(teams,parallel) collapse(4) defaultmap(tofrom:aggregate) defaultmap(tofrom:allocatable) defaultmap(tofrom:pointer) &
7980# 1290 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7981!$omp& private(j_adv, k_idx, l_idx, q_idx, local_inv_ds, local_term_coeff, local_flux1, local_flux2)
7982# 1290 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7983#endif
7984# 1292 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
7985 do j_adv = eqn_idx%adv%beg, eqn_idx%adv%end
7986 do k_idx = 0, p ! z_extent
7987 do q_idx = 0, n ! y_extent
7988 do l_idx = 0, m ! x_extent
7989 local_inv_ds = 1._wp/dz(k_idx)
7990 local_term_coeff = q_prim_vf_arg%vf(eqn_idx%cont%end + current_idir)%sf(l_idx, q_idx, k_idx)
7991 local_flux1 = flux_src_n_vf_arg%vf(j_adv)%sf(l_idx, q_idx, k_idx - 1)
7992 local_flux2 = flux_src_n_vf_arg%vf(j_adv)%sf(l_idx, q_idx, k_idx)
7993 rhs_vf_arg(j_adv)%sf(l_idx, q_idx, k_idx) = rhs_vf_arg(j_adv)%sf(l_idx, q_idx, &
7994 & k_idx) + local_inv_ds*local_term_coeff*(local_flux1 - local_flux2)
7995 end do
7996 end do
7997 end do
7998 end do
7999
8000# 1306 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8001#if defined(MFC_OpenACC)
8002# 1306 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8003!$acc end parallel loop
8004# 1306 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8005#elif defined(MFC_OpenMP)
8006# 1306 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8007
8008# 1306 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8009!$omp end target teams loop
8010# 1306 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8011#endif
8012 else
8013 if (alt_soundspeed) then
8014 if (bubbles_euler .neqv. .true.) then
8015
8016# 1310 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8017
8018# 1310 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8019#if defined(MFC_OpenACC)
8020# 1310 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8021!$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)
8022# 1310 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8023#elif defined(MFC_OpenMP)
8024# 1310 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8025
8026# 1310 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8027
8028# 1310 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8029
8030# 1310 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8031!$omp target teams loop defaultmap(firstprivate:scalar) bind(teams,parallel) collapse(3) defaultmap(tofrom:aggregate) defaultmap(tofrom:allocatable) defaultmap(tofrom:pointer) &
8032# 1310 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8033!$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)
8034# 1310 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8035#endif
8036# 1312 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8037 do k_idx = 0, p; do q_idx = 0, n; do l_idx = 0, m
8038 local_inv_ds = 1._wp/dz(k_idx)
8039 local_q_cons_val = q_cons_vf_arg%vf(eqn_idx%adv%end)%sf(l_idx, q_idx, k_idx)
8040 local_k_term_val = kterm_arg(l_idx, q_idx, k_idx) ! Access is safe
8041 local_term_coeff = local_q_cons_val - local_k_term_val
8042 local_flux1 = flux_src_n_vf_arg%vf(eqn_idx%adv%end)%sf(l_idx, q_idx, k_idx)
8043 local_flux2 = flux_src_n_vf_arg%vf(eqn_idx%adv%end)%sf(l_idx, q_idx, k_idx - 1)
8044 rhs_vf_arg(eqn_idx%adv%end)%sf(l_idx, q_idx, k_idx) = rhs_vf_arg(eqn_idx%adv%end)%sf(l_idx, &
8045 & q_idx, k_idx) + local_inv_ds*local_term_coeff*(local_flux1 - local_flux2)
8046 end do; end do; end do
8047
8048# 1322 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8049#if defined(MFC_OpenACC)
8050# 1322 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8051!$acc end parallel loop
8052# 1322 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8053#elif defined(MFC_OpenMP)
8054# 1322 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8055
8056# 1322 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8057!$omp end target teams loop
8058# 1322 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8059#endif
8060
8061
8062# 1324 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8063
8064# 1324 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8065#if defined(MFC_OpenACC)
8066# 1324 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8067!$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)
8068# 1324 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8069#elif defined(MFC_OpenMP)
8070# 1324 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8071
8072# 1324 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8073
8074# 1324 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8075
8076# 1324 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8077!$omp target teams loop defaultmap(firstprivate:scalar) bind(teams,parallel) collapse(3) defaultmap(tofrom:aggregate) defaultmap(tofrom:allocatable) defaultmap(tofrom:pointer) &
8078# 1324 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8079!$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)
8080# 1324 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8081#endif
8082# 1326 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8083 do k_idx = 0, p; do q_idx = 0, n; do l_idx = 0, m
8084 local_inv_ds = 1._wp/dz(k_idx)
8085 local_q_cons_val = q_cons_vf_arg%vf(eqn_idx%adv%beg)%sf(l_idx, q_idx, k_idx)
8086 local_k_term_val = kterm_arg(l_idx, q_idx, k_idx) ! Access is safe
8087 local_term_coeff = local_q_cons_val + local_k_term_val
8088 local_flux1 = flux_src_n_vf_arg%vf(eqn_idx%adv%beg)%sf(l_idx, q_idx, k_idx)
8089 local_flux2 = flux_src_n_vf_arg%vf(eqn_idx%adv%beg)%sf(l_idx, q_idx, k_idx - 1)
8090 rhs_vf_arg(eqn_idx%adv%beg)%sf(l_idx, q_idx, k_idx) = rhs_vf_arg(eqn_idx%adv%beg)%sf(l_idx, &
8091 & q_idx, k_idx) + local_inv_ds*local_term_coeff*(local_flux1 - local_flux2)
8092 end do; end do; end do
8093
8094# 1336 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8095#if defined(MFC_OpenACC)
8096# 1336 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8097!$acc end parallel loop
8098# 1336 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8099#elif defined(MFC_OpenMP)
8100# 1336 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8101
8102# 1336 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8103!$omp end target teams loop
8104# 1336 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8105#endif
8106 end if
8107 else
8108
8109# 1339 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8110
8111# 1339 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8112#if defined(MFC_OpenACC)
8113# 1339 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8114!$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)
8115# 1339 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8116#elif defined(MFC_OpenMP)
8117# 1339 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8118
8119# 1339 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8120
8121# 1339 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8122
8123# 1339 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8124!$omp target teams loop defaultmap(firstprivate:scalar) bind(teams,parallel) collapse(4) defaultmap(tofrom:aggregate) defaultmap(tofrom:allocatable) defaultmap(tofrom:pointer) &
8125# 1339 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8126!$omp& private(j_adv, k_idx, l_idx, q_idx, local_inv_ds, local_term_coeff, local_flux1, local_flux2)
8127# 1339 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8128#endif
8129# 1341 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8130 do j_adv = eqn_idx%adv%beg, eqn_idx%adv%end
8131 do k_idx = 0, p; do q_idx = 0, n; do l_idx = 0, m
8132 local_inv_ds = 1._wp/dz(k_idx)
8133 local_term_coeff = q_cons_vf_arg%vf(j_adv)%sf(l_idx, q_idx, k_idx)
8134 local_flux1 = flux_src_n_vf_arg%vf(j_adv)%sf(l_idx, q_idx, k_idx)
8135 local_flux2 = flux_src_n_vf_arg%vf(j_adv)%sf(l_idx, q_idx, k_idx - 1)
8136 rhs_vf_arg(j_adv)%sf(l_idx, q_idx, k_idx) = rhs_vf_arg(j_adv)%sf(l_idx, q_idx, &
8137 & k_idx) + local_inv_ds*local_term_coeff*(local_flux1 - local_flux2)
8138 end do; end do; end do
8139 end do
8140
8141# 1351 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8142#if defined(MFC_OpenACC)
8143# 1351 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8144!$acc end parallel loop
8145# 1351 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8146#elif defined(MFC_OpenMP)
8147# 1351 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8148
8149# 1351 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8150!$omp end target teams loop
8151# 1351 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8152#endif
8153 end if
8154 end if
8155 end select
8156
8158
8159 end subroutine s_compute_advection_source_term
8160
8161 !> Add viscous, surface-tension, and species-diffusion source flux contributions to the RHS for a given direction
8162 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)
8163
8164 integer, intent(in) :: idir
8165 type(scalar_field), dimension(sys_size), intent(in) :: q_prim_vf
8166 type(scalar_field), dimension(sys_size), intent(inout) :: rhs_vf
8167 type(scalar_field), dimension(sys_size), intent(in) :: flux_src_n_in
8168 type(scalar_field), dimension(sys_size), intent(in) :: dq_prim_dx_vf, dq_prim_dy_vf, dq_prim_dz_vf
8169 integer :: i, j, k, l
8170
8171 if (idir == 1) then ! x-direction
8172 if (surface_tension) then
8173
8174# 1372 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8175
8176# 1372 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8177#if defined(MFC_OpenACC)
8178# 1372 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8179!$acc parallel loop collapse(3) gang vector default(present) private(j, k, l)
8180# 1372 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8181#elif defined(MFC_OpenMP)
8182# 1372 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8183
8184# 1372 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8185
8186# 1372 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8187
8188# 1372 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8189!$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)
8190# 1372 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8191#endif
8192 do l = 0, p
8193 do k = 0, n
8194 do j = 0, m
8195 rhs_vf(eqn_idx%c)%sf(j, k, l) = rhs_vf(eqn_idx%c)%sf(j, k, &
8196 & 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, &
8197 & l) - flux_src_n_in(eqn_idx%adv%beg)%sf(j - 1, k, l))
8198 end do
8199 end do
8200 end do
8201
8202# 1382 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8203#if defined(MFC_OpenACC)
8204# 1382 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8205!$acc end parallel loop
8206# 1382 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8207#elif defined(MFC_OpenMP)
8208# 1382 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8209
8210# 1382 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8211!$omp end target teams loop
8212# 1382 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8213#endif
8214 end if
8215
8216 if ((surface_tension .or. viscous) .or. chem_params%diffusion) then
8217
8218# 1386 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8219
8220# 1386 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8221#if defined(MFC_OpenACC)
8222# 1386 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8223!$acc parallel loop collapse(3) gang vector default(present) private(j, k, l)
8224# 1386 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8225#elif defined(MFC_OpenMP)
8226# 1386 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8227
8228# 1386 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8229
8230# 1386 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8231
8232# 1386 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8233!$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)
8234# 1386 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8235#endif
8236 do l = 0, p
8237 do k = 0, n
8238 do j = 0, m
8239 if (surface_tension .or. viscous) then
8240
8241# 1391 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8242#if defined(MFC_OpenACC)
8243# 1391 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8244!$acc loop seq
8245# 1391 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8246#elif defined(MFC_OpenMP)
8247# 1391 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8248
8249# 1391 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8250#endif
8251 do i = eqn_idx%mom%beg, eqn_idx%E
8252 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, &
8253 & l) - flux_src_n_in(i)%sf(j, k, l))
8254 end do
8255 end if
8256
8257 if (chem_params%diffusion) then
8258
8259# 1399 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8260#if defined(MFC_OpenACC)
8261# 1399 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8262!$acc loop seq
8263# 1399 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8264#elif defined(MFC_OpenMP)
8265# 1399 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8266
8267# 1399 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8268#endif
8269 do i = eqn_idx%species%beg, eqn_idx%species%end
8270 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, &
8271 & l) - flux_src_n_in(i)%sf(j, k, l))
8272 end do
8273
8274 if (.not. viscous) then
8275 rhs_vf(eqn_idx%E)%sf(j, k, l) = rhs_vf(eqn_idx%E)%sf(j, k, &
8276 & l) + 1._wp/dx(j)*(flux_src_n_in(eqn_idx%E)%sf(j - 1, k, &
8277 & l) - flux_src_n_in(eqn_idx%E)%sf(j, k, l))
8278 end if
8279 end if
8280 end do
8281 end do
8282 end do
8283
8284# 1414 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8285#if defined(MFC_OpenACC)
8286# 1414 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8287!$acc end parallel loop
8288# 1414 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8289#elif defined(MFC_OpenMP)
8290# 1414 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8291
8292# 1414 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8293!$omp end target teams loop
8294# 1414 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8295#endif
8296 end if
8297 else if (idir == 2) then ! y-direction
8298 if (surface_tension) then
8299
8300# 1418 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8301
8302# 1418 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8303#if defined(MFC_OpenACC)
8304# 1418 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8305!$acc parallel loop collapse(3) gang vector default(present) private(j, k, l)
8306# 1418 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8307#elif defined(MFC_OpenMP)
8308# 1418 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8309
8310# 1418 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8311
8312# 1418 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8313
8314# 1418 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8315!$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)
8316# 1418 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8317#endif
8318 do l = 0, p
8319 do k = 0, n
8320 do j = 0, m
8321 rhs_vf(eqn_idx%c)%sf(j, k, l) = rhs_vf(eqn_idx%c)%sf(j, k, &
8322 & 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, &
8323 & l) - flux_src_n_in(eqn_idx%adv%beg)%sf(j, k - 1, l))
8324 end do
8325 end do
8326 end do
8327
8328# 1428 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8329#if defined(MFC_OpenACC)
8330# 1428 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8331!$acc end parallel loop
8332# 1428 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8333#elif defined(MFC_OpenMP)
8334# 1428 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8335
8336# 1428 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8337!$omp end target teams loop
8338# 1428 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8339#endif
8340 end if
8341
8342 if (cyl_coord .and. ((bc_y%beg == -2) .or. (bc_y%beg == -14))) then
8343 if (viscous) then
8344 if (p > 0) then
8345 call s_compute_viscous_stress_cylindrical_boundary(q_prim_vf, &
8346 & dq_prim_dx_vf(eqn_idx%mom%beg:eqn_idx%mom%end), dq_prim_dy_vf(eqn_idx%mom%beg:eqn_idx%mom%end), &
8347 & dq_prim_dz_vf(eqn_idx%mom%beg:eqn_idx%mom%end), tau_re_vf, idwbuff(1), idwbuff(2), idwbuff(3))
8348 else
8349 call s_compute_viscous_stress_cylindrical_boundary(q_prim_vf, &
8350 & dq_prim_dx_vf(eqn_idx%mom%beg:eqn_idx%mom%end), dq_prim_dy_vf(eqn_idx%mom%beg:eqn_idx%mom%end), &
8351 & dq_prim_dz_vf(eqn_idx%mom%beg:eqn_idx%mom%end), tau_re_vf, idwbuff(1), idwbuff(2), idwbuff(3))
8352 end if
8353
8354
8355# 1443 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8356
8357# 1443 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8358#if defined(MFC_OpenACC)
8359# 1443 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8360!$acc parallel loop collapse(2) gang vector default(present) private(i, j, l)
8361# 1443 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8362#elif defined(MFC_OpenMP)
8363# 1443 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8364
8365# 1443 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8366
8367# 1443 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8368
8369# 1443 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8370!$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)
8371# 1443 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8372#endif
8373 do l = 0, p
8374 do j = 0, m
8375
8376# 1446 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8377#if defined(MFC_OpenACC)
8378# 1446 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8379!$acc loop seq
8380# 1446 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8381#elif defined(MFC_OpenMP)
8382# 1446 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8383
8384# 1446 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8385#endif
8386 do i = eqn_idx%mom%beg, eqn_idx%E
8387 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, &
8388 & -1, l) - tau_re_vf(i)%sf(j, 1, l))
8389 end do
8390 end do
8391 end do
8392
8393# 1453 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8394#if defined(MFC_OpenACC)
8395# 1453 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8396!$acc end parallel loop
8397# 1453 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8398#elif defined(MFC_OpenMP)
8399# 1453 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8400
8401# 1453 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8402!$omp end target teams loop
8403# 1453 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8404#endif
8405 end if
8406
8407
8408# 1456 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8409
8410# 1456 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8411#if defined(MFC_OpenACC)
8412# 1456 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8413!$acc parallel loop collapse(3) gang vector default(present) private(i, j, k, l)
8414# 1456 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8415#elif defined(MFC_OpenMP)
8416# 1456 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8417
8418# 1456 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8419
8420# 1456 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8421
8422# 1456 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8423!$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)
8424# 1456 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8425#endif
8426 do l = 0, p
8427 do k = 1, n
8428 do j = 0, m
8429
8430# 1460 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8431#if defined(MFC_OpenACC)
8432# 1460 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8433!$acc loop seq
8434# 1460 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8435#elif defined(MFC_OpenMP)
8436# 1460 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8437
8438# 1460 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8439#endif
8440 do i = eqn_idx%mom%beg, eqn_idx%E
8441 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, &
8442 & l) - flux_src_n_in(i)%sf(j, k, l))
8443 end do
8444 end do
8445 end do
8446 end do
8447
8448# 1468 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8449#if defined(MFC_OpenACC)
8450# 1468 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8451!$acc end parallel loop
8452# 1468 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8453#elif defined(MFC_OpenMP)
8454# 1468 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8455
8456# 1468 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8457!$omp end target teams loop
8458# 1468 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8459#endif
8460 else
8461 if ((surface_tension .or. viscous) .or. chem_params%diffusion) then
8462
8463# 1471 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8464
8465# 1471 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8466#if defined(MFC_OpenACC)
8467# 1471 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8468!$acc parallel loop collapse(3) gang vector default(present) private(i, j, k, l)
8469# 1471 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8470#elif defined(MFC_OpenMP)
8471# 1471 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8472
8473# 1471 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8474
8475# 1471 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8476
8477# 1471 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8478!$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)
8479# 1471 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8480#endif
8481 do l = 0, p
8482 do k = 0, n
8483 do j = 0, m
8484 if (surface_tension .or. viscous) then
8485
8486# 1476 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8487#if defined(MFC_OpenACC)
8488# 1476 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8489!$acc loop seq
8490# 1476 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8491#elif defined(MFC_OpenMP)
8492# 1476 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8493
8494# 1476 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8495#endif
8496 do i = eqn_idx%mom%beg, eqn_idx%E
8497 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, &
8498 & k - 1, l) - flux_src_n_in(i)%sf(j, k, l))
8499 end do
8500 end if
8501
8502 if (chem_params%diffusion) then
8503
8504# 1484 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8505#if defined(MFC_OpenACC)
8506# 1484 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8507!$acc loop seq
8508# 1484 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8509#elif defined(MFC_OpenMP)
8510# 1484 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8511
8512# 1484 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8513#endif
8514 do i = eqn_idx%species%beg, eqn_idx%species%end
8515 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, &
8516 & k - 1, l) - flux_src_n_in(i)%sf(j, k, l))
8517 end do
8518 if (.not. viscous) then
8519 rhs_vf(eqn_idx%E)%sf(j, k, l) = rhs_vf(eqn_idx%E)%sf(j, k, &
8520 & l) + 1._wp/dy(k)*(flux_src_n_in(eqn_idx%E)%sf(j, k - 1, &
8521 & l) - flux_src_n_in(eqn_idx%E)%sf(j, k, l))
8522 end if
8523 end if
8524 end do
8525 end do
8526 end do
8527
8528# 1498 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8529#if defined(MFC_OpenACC)
8530# 1498 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8531!$acc end parallel loop
8532# 1498 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8533#elif defined(MFC_OpenMP)
8534# 1498 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8535
8536# 1498 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8537!$omp end target teams loop
8538# 1498 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8539#endif
8540 end if
8541 end if
8542
8543 ! Applying the geometrical viscous Riemann source fluxes calculated as average of values at cell boundaries
8544 if (cyl_coord) then
8545 if ((bc_y%beg == -2) .or. (bc_y%beg == -14)) then
8546
8547# 1505 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8548
8549# 1505 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8550#if defined(MFC_OpenACC)
8551# 1505 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8552!$acc parallel loop collapse(3) gang vector default(present) private(i, j, k, l)
8553# 1505 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8554#elif defined(MFC_OpenMP)
8555# 1505 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8556
8557# 1505 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8558
8559# 1505 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8560
8561# 1505 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8562!$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)
8563# 1505 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8564#endif
8565 do l = 0, p
8566 do k = 1, n
8567 do j = 0, m
8568
8569# 1509 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8570#if defined(MFC_OpenACC)
8571# 1509 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8572!$acc loop seq
8573# 1509 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8574#elif defined(MFC_OpenMP)
8575# 1509 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8576
8577# 1509 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8578#endif
8579 do i = eqn_idx%mom%beg, eqn_idx%E
8580 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, &
8581 & k - 1, l) + flux_src_n_in(i)%sf(j, k, l))
8582 end do
8583 end do
8584 end do
8585 end do
8586
8587# 1517 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8588#if defined(MFC_OpenACC)
8589# 1517 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8590!$acc end parallel loop
8591# 1517 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8592#elif defined(MFC_OpenMP)
8593# 1517 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8594
8595# 1517 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8596!$omp end target teams loop
8597# 1517 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8598#endif
8599
8600 if (viscous) then
8601
8602# 1520 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8603
8604# 1520 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8605#if defined(MFC_OpenACC)
8606# 1520 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8607!$acc parallel loop collapse(2) gang vector default(present) private(i, j, l)
8608# 1520 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8609#elif defined(MFC_OpenMP)
8610# 1520 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8611
8612# 1520 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8613
8614# 1520 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8615
8616# 1520 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8617!$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)
8618# 1520 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8619#endif
8620 do l = 0, p
8621 do j = 0, m
8622
8623# 1523 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8624#if defined(MFC_OpenACC)
8625# 1523 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8626!$acc loop seq
8627# 1523 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8628#elif defined(MFC_OpenMP)
8629# 1523 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8630
8631# 1523 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8632#endif
8633 do i = eqn_idx%mom%beg, eqn_idx%E
8634 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)
8635 end do
8636 end do
8637 end do
8638
8639# 1529 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8640#if defined(MFC_OpenACC)
8641# 1529 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8642!$acc end parallel loop
8643# 1529 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8644#elif defined(MFC_OpenMP)
8645# 1529 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8646
8647# 1529 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8648!$omp end target teams loop
8649# 1529 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8650#endif
8651 end if
8652 else
8653
8654# 1532 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8655
8656# 1532 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8657#if defined(MFC_OpenACC)
8658# 1532 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8659!$acc parallel loop collapse(3) gang vector default(present) private(i, j, k, l)
8660# 1532 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8661#elif defined(MFC_OpenMP)
8662# 1532 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8663
8664# 1532 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8665
8666# 1532 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8667
8668# 1532 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8669!$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)
8670# 1532 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8671#endif
8672 do l = 0, p
8673 do k = 0, n
8674 do j = 0, m
8675
8676# 1536 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8677#if defined(MFC_OpenACC)
8678# 1536 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8679!$acc loop seq
8680# 1536 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8681#elif defined(MFC_OpenMP)
8682# 1536 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8683
8684# 1536 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8685#endif
8686 do i = eqn_idx%mom%beg, eqn_idx%E
8687 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, &
8688 & k - 1, l) + flux_src_n_in(i)%sf(j, k, l))
8689 end do
8690 end do
8691 end do
8692 end do
8693
8694# 1544 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8695#if defined(MFC_OpenACC)
8696# 1544 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8697!$acc end parallel loop
8698# 1544 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8699#elif defined(MFC_OpenMP)
8700# 1544 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8701
8702# 1544 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8703!$omp end target teams loop
8704# 1544 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8705#endif
8706 end if
8707 end if
8708 else if (idir == 3) then ! z-direction
8709 if (surface_tension) then
8710
8711# 1549 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8712
8713# 1549 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8714#if defined(MFC_OpenACC)
8715# 1549 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8716!$acc parallel loop collapse(3) gang vector default(present) private(j, k, l)
8717# 1549 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8718#elif defined(MFC_OpenMP)
8719# 1549 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8720
8721# 1549 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8722
8723# 1549 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8724
8725# 1549 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8726!$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)
8727# 1549 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8728#endif
8729 do l = 0, p
8730 do k = 0, n
8731 do j = 0, m
8732 rhs_vf(eqn_idx%c)%sf(j, k, l) = rhs_vf(eqn_idx%c)%sf(j, k, &
8733 & 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, &
8734 & l) - flux_src_n_in(eqn_idx%adv%beg)%sf(j, k, l - 1))
8735 end do
8736 end do
8737 end do
8738
8739# 1559 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8740#if defined(MFC_OpenACC)
8741# 1559 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8742!$acc end parallel loop
8743# 1559 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8744#elif defined(MFC_OpenMP)
8745# 1559 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8746
8747# 1559 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8748!$omp end target teams loop
8749# 1559 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8750#endif
8751 end if
8752
8753 if ((surface_tension .or. viscous) .or. chem_params%diffusion) then
8754
8755# 1563 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8756
8757# 1563 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8758#if defined(MFC_OpenACC)
8759# 1563 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8760!$acc parallel loop collapse(3) gang vector default(present) private(i, j, k, l)
8761# 1563 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8762#elif defined(MFC_OpenMP)
8763# 1563 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8764
8765# 1563 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8766
8767# 1563 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8768
8769# 1563 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8770!$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)
8771# 1563 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8772#endif
8773 do l = 0, p
8774 do k = 0, n
8775 do j = 0, m
8776 if (surface_tension .or. viscous) then
8777
8778# 1568 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8779#if defined(MFC_OpenACC)
8780# 1568 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8781!$acc loop seq
8782# 1568 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8783#elif defined(MFC_OpenMP)
8784# 1568 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8785
8786# 1568 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8787#endif
8788 do i = eqn_idx%mom%beg, eqn_idx%E
8789 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, &
8790 & l - 1) - flux_src_n_in(i)%sf(j, k, l))
8791 end do
8792 end if
8793
8794 if (chem_params%diffusion) then
8795
8796# 1576 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8797#if defined(MFC_OpenACC)
8798# 1576 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8799!$acc loop seq
8800# 1576 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8801#elif defined(MFC_OpenMP)
8802# 1576 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8803
8804# 1576 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8805#endif
8806 do i = eqn_idx%species%beg, eqn_idx%species%end
8807 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, &
8808 & l - 1) - flux_src_n_in(i)%sf(j, k, l))
8809 end do
8810 if (.not. viscous) then
8811 rhs_vf(eqn_idx%E)%sf(j, k, l) = rhs_vf(eqn_idx%E)%sf(j, k, &
8812 & l) + 1._wp/dz(l)*(flux_src_n_in(eqn_idx%E)%sf(j, k, &
8813 & l - 1) - flux_src_n_in(eqn_idx%E)%sf(j, k, l))
8814 end if
8815 end if
8816 end do
8817 end do
8818 end do
8819
8820# 1590 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8821#if defined(MFC_OpenACC)
8822# 1590 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8823!$acc end parallel loop
8824# 1590 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8825#elif defined(MFC_OpenMP)
8826# 1590 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8827
8828# 1590 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8829!$omp end target teams loop
8830# 1590 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8831#endif
8832 end if
8833
8834 if (grid_geometry == 3) then
8835
8836# 1594 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8837
8838# 1594 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8839#if defined(MFC_OpenACC)
8840# 1594 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8841!$acc parallel loop collapse(3) gang vector default(present) private(j, k, l)
8842# 1594 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8843#elif defined(MFC_OpenMP)
8844# 1594 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8845
8846# 1594 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8847
8848# 1594 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8849
8850# 1594 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8851!$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)
8852# 1594 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8853#endif
8854 do l = 0, p
8855 do k = 0, n
8856 do j = 0, m
8857 rhs_vf(eqn_idx%mom%beg + 1)%sf(j, k, l) = rhs_vf(eqn_idx%mom%beg + 1)%sf(j, k, &
8858 & l) + 5.e-1_wp*(flux_src_n_in(eqn_idx%mom%end)%sf(j, k, &
8859 & l - 1) + flux_src_n_in(eqn_idx%mom%end)%sf(j, k, l))
8860
8861 rhs_vf(eqn_idx%mom%end)%sf(j, k, l) = rhs_vf(eqn_idx%mom%end)%sf(j, k, &
8862 & l) - 5.e-1_wp*(flux_src_n_in(eqn_idx%mom%beg + 1)%sf(j, k, &
8863 & l - 1) + flux_src_n_in(eqn_idx%mom%beg + 1)%sf(j, k, l))
8864 end do
8865 end do
8866 end do
8867
8868# 1608 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8869#if defined(MFC_OpenACC)
8870# 1608 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8871!$acc end parallel loop
8872# 1608 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8873#elif defined(MFC_OpenMP)
8874# 1608 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8875
8876# 1608 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8877!$omp end target teams loop
8878# 1608 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8879#endif
8880 end if
8881 end if
8882
8884
8885 !> Reconstruct left and right cell-boundary values from cell-averaged variables
8886 subroutine s_reconstruct_cell_boundary_values(v_vf, vL_x, vR_x, norm_dir)
8887
8888 type(scalar_field), dimension(iv%beg:iv%end), intent(in) :: v_vf
8889 real(wp), dimension(idwbuff(1)%beg:,idwbuff(2)%beg:,idwbuff(3)%beg:,1:), intent(inout) :: vL_x
8890 real(wp), dimension(idwbuff(1)%beg:,idwbuff(2)%beg:,idwbuff(3)%beg:,1:), intent(inout) :: vR_x
8891 integer, intent(in) :: norm_dir
8892 integer :: recon_dir !< Coordinate direction of the reconstruction
8893 integer :: i, j, k, l
8894
8895# 1625 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8896 if (recon_type == recon_type_weno) then
8897 ! Reconstruction in s1-direction
8898 if (norm_dir == 1) then
8899 is1 = idwbuff(1); is2 = idwbuff(2); is3 = idwbuff(3)
8900 recon_dir = 1; is1%beg = is1%beg + weno_polyn
8901 is1%end = is1%end - weno_polyn
8902 else if (norm_dir == 2) then
8903 is1 = idwbuff(2); is2 = idwbuff(1); is3 = idwbuff(3)
8904 recon_dir = 2; is1%beg = is1%beg + weno_polyn
8905 is1%end = is1%end - weno_polyn
8906 else
8907 is1 = idwbuff(3); is2 = idwbuff(2); is3 = idwbuff(1)
8908 recon_dir = 3; is1%beg = is1%beg + weno_polyn
8909 is1%end = is1%end - weno_polyn
8910 end if
8911
8912 call s_weno (v_vf(iv%beg:iv%end), vl_x(:,:,:,iv%beg:iv%end), vr_x(:,:,:,iv%beg:iv%end), recon_dir, is1, &
8913 & is2, is3)
8914 end if
8915# 1625 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8916 if (recon_type == recon_type_muscl) then
8917 ! Reconstruction in s1-direction
8918 if (norm_dir == 1) then
8919 is1 = idwbuff(1); is2 = idwbuff(2); is3 = idwbuff(3)
8920 recon_dir = 1; is1%beg = is1%beg + muscl_polyn
8921 is1%end = is1%end - muscl_polyn
8922 else if (norm_dir == 2) then
8923 is1 = idwbuff(2); is2 = idwbuff(1); is3 = idwbuff(3)
8924 recon_dir = 2; is1%beg = is1%beg + muscl_polyn
8925 is1%end = is1%end - muscl_polyn
8926 else
8927 is1 = idwbuff(3); is2 = idwbuff(2); is3 = idwbuff(1)
8928 recon_dir = 3; is1%beg = is1%beg + muscl_polyn
8929 is1%end = is1%end - muscl_polyn
8930 end if
8931
8932 call s_muscl (v_vf(iv%beg:iv%end), vl_x(:,:,:,iv%beg:iv%end), vr_x(:,:,:,iv%beg:iv%end), recon_dir, is1, &
8933 & is2, is3)
8934 end if
8935# 1645 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8936
8938
8939 !> Perform first-order (piecewise constant) reconstruction of left and right cell-boundary values
8940 subroutine s_reconstruct_cell_boundary_values_first_order(v_vf, vL_x, vR_x, norm_dir)
8941
8942 type(scalar_field), dimension(iv%beg:iv%end), intent(in) :: v_vf
8943 real(wp), dimension(idwbuff(1)%beg:,idwbuff(2)%beg:,idwbuff(3)%beg:,1:), intent(inout) :: vL_x
8944 real(wp), dimension(idwbuff(1)%beg:,idwbuff(2)%beg:,idwbuff(3)%beg:,1:), intent(inout) :: vR_x
8945 integer, intent(in) :: norm_dir
8946 integer :: recon_dir !< Coordinate direction of the reconstruction
8947 integer :: i, j, k, l
8948 ! Reconstruction in s1-direction
8949
8950# 1660 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8951 if (recon_type == recon_type_weno) then
8952 if (norm_dir == 1) then
8953 is1 = idwbuff(1); is2 = idwbuff(2); is3 = idwbuff(3)
8954 recon_dir = 1; is1%beg = is1%beg + weno_polyn
8955 is1%end = is1%end - weno_polyn
8956 else if (norm_dir == 2) then
8957 is1 = idwbuff(2); is2 = idwbuff(1); is3 = idwbuff(3)
8958 recon_dir = 2; is1%beg = is1%beg + weno_polyn
8959 is1%end = is1%end - weno_polyn
8960 else
8961 is1 = idwbuff(3); is2 = idwbuff(2); is3 = idwbuff(1)
8962 recon_dir = 3; is1%beg = is1%beg + weno_polyn
8963 is1%end = is1%end - weno_polyn
8964 end if
8965
8966
8967# 1675 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8968#if defined(MFC_OpenACC)
8969# 1675 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8970!$acc update device(is1, is2, is3, iv)
8971# 1675 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8972#elif defined(MFC_OpenMP)
8973# 1675 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8974!$omp target update to(is1, is2, is3, iv)
8975# 1675 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8976#endif
8977 end if
8978# 1660 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8979 if (recon_type == recon_type_muscl) then
8980 if (norm_dir == 1) then
8981 is1 = idwbuff(1); is2 = idwbuff(2); is3 = idwbuff(3)
8982 recon_dir = 1; is1%beg = is1%beg + muscl_polyn
8983 is1%end = is1%end - muscl_polyn
8984 else if (norm_dir == 2) then
8985 is1 = idwbuff(2); is2 = idwbuff(1); is3 = idwbuff(3)
8986 recon_dir = 2; is1%beg = is1%beg + muscl_polyn
8987 is1%end = is1%end - muscl_polyn
8988 else
8989 is1 = idwbuff(3); is2 = idwbuff(2); is3 = idwbuff(1)
8990 recon_dir = 3; is1%beg = is1%beg + muscl_polyn
8991 is1%end = is1%end - muscl_polyn
8992 end if
8993
8994
8995# 1675 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8996#if defined(MFC_OpenACC)
8997# 1675 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
8998!$acc update device(is1, is2, is3, iv)
8999# 1675 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9000#elif defined(MFC_OpenMP)
9001# 1675 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9002!$omp target update to(is1, is2, is3, iv)
9003# 1675 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9004#endif
9005 end if
9006# 1678 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9007
9008 if (recon_dir == 1) then
9009
9010# 1680 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9011
9012# 1680 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9013#if defined(MFC_OpenACC)
9014# 1680 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9015!$acc parallel loop collapse(4) gang vector default(present)
9016# 1680 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9017#elif defined(MFC_OpenMP)
9018# 1680 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9019
9020# 1680 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9021
9022# 1680 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9023
9024# 1680 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9025!$omp target teams loop defaultmap(firstprivate:scalar) bind(teams,parallel) collapse(4) defaultmap(tofrom:aggregate) defaultmap(tofrom:allocatable) defaultmap(tofrom:pointer)
9026# 1680 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9027#endif
9028 do i = iv%beg, iv%end
9029 do l = is3%beg, is3%end
9030 do k = is2%beg, is2%end
9031 do j = is1%beg, is1%end
9032 vl_x(j, k, l, i) = v_vf(i)%sf(j, k, l)
9033 vr_x(j, k, l, i) = v_vf(i)%sf(j, k, l)
9034 end do
9035 end do
9036 end do
9037 end do
9038
9039# 1691 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9040#if defined(MFC_OpenACC)
9041# 1691 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9042!$acc end parallel loop
9043# 1691 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9044#elif defined(MFC_OpenMP)
9045# 1691 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9046
9047# 1691 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9048!$omp end target teams loop
9049# 1691 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9050#endif
9051 else if (recon_dir == 2) then
9052
9053# 1693 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9054
9055# 1693 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9056#if defined(MFC_OpenACC)
9057# 1693 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9058!$acc parallel loop collapse(4) gang vector default(present)
9059# 1693 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9060#elif defined(MFC_OpenMP)
9061# 1693 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9062
9063# 1693 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9064
9065# 1693 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9066
9067# 1693 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9068!$omp target teams loop defaultmap(firstprivate:scalar) bind(teams,parallel) collapse(4) defaultmap(tofrom:aggregate) defaultmap(tofrom:allocatable) defaultmap(tofrom:pointer)
9069# 1693 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9070#endif
9071 do i = iv%beg, iv%end
9072 do l = is3%beg, is3%end
9073 do j = is1%beg, is1%end
9074 do k = is2%beg, is2%end
9075 vl_x(k, j, l, i) = v_vf(i)%sf(k, j, l)
9076 vr_x(k, j, l, i) = v_vf(i)%sf(k, j, l)
9077 end do
9078 end do
9079 end do
9080 end do
9081
9082# 1704 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9083#if defined(MFC_OpenACC)
9084# 1704 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9085!$acc end parallel loop
9086# 1704 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9087#elif defined(MFC_OpenMP)
9088# 1704 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9089
9090# 1704 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9091!$omp end target teams loop
9092# 1704 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9093#endif
9094 else if (recon_dir == 3) then
9095
9096# 1706 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9097
9098# 1706 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9099#if defined(MFC_OpenACC)
9100# 1706 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9101!$acc parallel loop collapse(4) gang vector default(present)
9102# 1706 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9103#elif defined(MFC_OpenMP)
9104# 1706 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9105
9106# 1706 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9107
9108# 1706 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9109
9110# 1706 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9111!$omp target teams loop defaultmap(firstprivate:scalar) bind(teams,parallel) collapse(4) defaultmap(tofrom:aggregate) defaultmap(tofrom:allocatable) defaultmap(tofrom:pointer)
9112# 1706 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9113#endif
9114 do i = iv%beg, iv%end
9115 do j = is1%beg, is1%end
9116 do k = is2%beg, is2%end
9117 do l = is3%beg, is3%end
9118 vl_x(l, k, j, i) = v_vf(i)%sf(l, k, j)
9119 vr_x(l, k, j, i) = v_vf(i)%sf(l, k, j)
9120 end do
9121 end do
9122 end do
9123 end do
9124
9125# 1717 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9126#if defined(MFC_OpenACC)
9127# 1717 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9128!$acc end parallel loop
9129# 1717 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9130#elif defined(MFC_OpenMP)
9131# 1717 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9132
9133# 1717 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9134!$omp end target teams loop
9135# 1717 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9136#endif
9137 end if
9138
9140
9141 !> Module deallocation and/or disassociation procedures
9142 impure subroutine s_finalize_rhs_module
9143
9144 integer :: i, j, l
9145
9146 call s_finalize_pressure_relaxation_module
9147
9148 if (.not. igr) then
9149 do j = eqn_idx%cont%beg, eqn_idx%cont%end
9150 if (relativity) then
9151 ! Cons and Prim densities are different for relativity
9152#ifdef MFC_DEBUG
9153# 1733 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9154 block
9155# 1733 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9156 use iso_fortran_env, only: output_unit
9157# 1733 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9158
9159# 1733 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9160 print *, 'm_rhs.fpp:1733: ', '@:DEALLOCATE(q_cons_qp%vf(j)%sf)'
9161# 1733 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9162
9163# 1733 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9164 call flush (output_unit)
9165# 1733 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9166 end block
9167# 1733 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9168#endif
9169# 1733 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9170
9171# 1733 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9172#if defined(MFC_OpenACC)
9173# 1733 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9174!$acc exit data delete(q_cons_qp%vf(j)%sf)
9175# 1733 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9176#elif defined(MFC_OpenMP)
9177# 1733 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9178!$omp target exit data map(release:q_cons_qp%vf(j)%sf)
9179# 1733 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9180#endif
9181# 1733 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9182 deallocate (q_cons_qp%vf(j)%sf)
9183#ifdef MFC_DEBUG
9184# 1734 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9185 block
9186# 1734 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9187 use iso_fortran_env, only: output_unit
9188# 1734 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9189
9190# 1734 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9191 print *, 'm_rhs.fpp:1734: ', '@:DEALLOCATE(q_prim_qp%vf(j)%sf)'
9192# 1734 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9193
9194# 1734 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9195 call flush (output_unit)
9196# 1734 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9197 end block
9198# 1734 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9199#endif
9200# 1734 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9201
9202# 1734 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9203#if defined(MFC_OpenACC)
9204# 1734 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9205!$acc exit data delete(q_prim_qp%vf(j)%sf)
9206# 1734 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9207#elif defined(MFC_OpenMP)
9208# 1734 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9209!$omp target exit data map(release:q_prim_qp%vf(j)%sf)
9210# 1734 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9211#endif
9212# 1734 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9213 deallocate (q_prim_qp%vf(j)%sf)
9214 else
9215 nullify (q_prim_qp%vf(j)%sf)
9216 end if
9217 end do
9218
9219 do j = eqn_idx%adv%beg, eqn_idx%adv%end
9220 nullify (q_prim_qp%vf(j)%sf)
9221 end do
9222
9223 do j = eqn_idx%mom%beg, eqn_idx%E
9224#ifdef MFC_DEBUG
9225# 1745 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9226 block
9227# 1745 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9228 use iso_fortran_env, only: output_unit
9229# 1745 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9230
9231# 1745 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9232 print *, 'm_rhs.fpp:1745: ', '@:DEALLOCATE(q_cons_qp%vf(j)%sf)'
9233# 1745 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9234
9235# 1745 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9236 call flush (output_unit)
9237# 1745 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9238 end block
9239# 1745 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9240#endif
9241# 1745 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9242
9243# 1745 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9244#if defined(MFC_OpenACC)
9245# 1745 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9246!$acc exit data delete(q_cons_qp%vf(j)%sf)
9247# 1745 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9248#elif defined(MFC_OpenMP)
9249# 1745 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9250!$omp target exit data map(release:q_cons_qp%vf(j)%sf)
9251# 1745 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9252#endif
9253# 1745 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9254 deallocate (q_cons_qp%vf(j)%sf)
9255#ifdef MFC_DEBUG
9256# 1746 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9257 block
9258# 1746 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9259 use iso_fortran_env, only: output_unit
9260# 1746 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9261
9262# 1746 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9263 print *, 'm_rhs.fpp:1746: ', '@:DEALLOCATE(q_prim_qp%vf(j)%sf)'
9264# 1746 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9265
9266# 1746 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9267 call flush (output_unit)
9268# 1746 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9269 end block
9270# 1746 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9271#endif
9272# 1746 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9273
9274# 1746 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9275#if defined(MFC_OpenACC)
9276# 1746 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9277!$acc exit data delete(q_prim_qp%vf(j)%sf)
9278# 1746 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9279#elif defined(MFC_OpenMP)
9280# 1746 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9281!$omp target exit data map(release:q_prim_qp%vf(j)%sf)
9282# 1746 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9283#endif
9284# 1746 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9285 deallocate (q_prim_qp%vf(j)%sf)
9286 end do
9287 end if
9288
9289#ifdef MFC_DEBUG
9290# 1750 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9291 block
9292# 1750 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9293 use iso_fortran_env, only: output_unit
9294# 1750 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9295
9296# 1750 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9297 print *, 'm_rhs.fpp:1750: ', '@:DEALLOCATE(q_cons_qp%vf, q_prim_qp%vf)'
9298# 1750 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9299
9300# 1750 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9301 call flush (output_unit)
9302# 1750 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9303 end block
9304# 1750 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9305#endif
9306# 1750 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9307
9308# 1750 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9309#if defined(MFC_OpenACC)
9310# 1750 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9311!$acc exit data delete(q_cons_qp%vf, q_prim_qp%vf)
9312# 1750 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9313#elif defined(MFC_OpenMP)
9314# 1750 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9315!$omp target exit data map(release:q_cons_qp%vf, q_prim_qp%vf)
9316# 1750 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9317#endif
9318# 1750 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9319 deallocate (q_cons_qp%vf, q_prim_qp%vf)
9320
9321 if (.not. igr) then
9322#ifdef MFC_DEBUG
9323# 1753 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9324 block
9325# 1753 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9326 use iso_fortran_env, only: output_unit
9327# 1753 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9328
9329# 1753 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9330 print *, 'm_rhs.fpp:1753: ', '@:DEALLOCATE(qL_rsx_vf, qR_rsx_vf)'
9331# 1753 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9332
9333# 1753 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9334 call flush (output_unit)
9335# 1753 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9336 end block
9337# 1753 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9338#endif
9339# 1753 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9340
9341# 1753 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9342#if defined(MFC_OpenACC)
9343# 1753 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9344!$acc exit data delete(qL_rsx_vf, qR_rsx_vf)
9345# 1753 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9346#elif defined(MFC_OpenMP)
9347# 1753 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9348!$omp target exit data map(release:qL_rsx_vf, qR_rsx_vf)
9349# 1753 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9350#endif
9351# 1753 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9352 deallocate (ql_rsx_vf, qr_rsx_vf)
9353
9354 if (viscous) then
9355 do l = eqn_idx%mom%beg, eqn_idx%mom%end
9356#ifdef MFC_DEBUG
9357# 1757 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9358 block
9359# 1757 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9360 use iso_fortran_env, only: output_unit
9361# 1757 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9362
9363# 1757 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9364 print *, 'm_rhs.fpp:1757: ', '@:DEALLOCATE(dq_prim_dx_qp(1)%vf(l)%sf)'
9365# 1757 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9366
9367# 1757 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9368 call flush (output_unit)
9369# 1757 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9370 end block
9371# 1757 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9372#endif
9373# 1757 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9374
9375# 1757 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9376#if defined(MFC_OpenACC)
9377# 1757 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9378!$acc exit data delete(dq_prim_dx_qp(1)%vf(l)%sf)
9379# 1757 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9380#elif defined(MFC_OpenMP)
9381# 1757 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9382!$omp target exit data map(release:dq_prim_dx_qp(1)%vf(l)%sf)
9383# 1757 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9384#endif
9385# 1757 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9386 deallocate (dq_prim_dx_qp(1)%vf(l)%sf)
9387 end do
9388
9389 if (n > 0) then
9390 do l = eqn_idx%mom%beg, eqn_idx%mom%end
9391#ifdef MFC_DEBUG
9392# 1762 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9393 block
9394# 1762 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9395 use iso_fortran_env, only: output_unit
9396# 1762 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9397
9398# 1762 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9399 print *, 'm_rhs.fpp:1762: ', '@:DEALLOCATE(dq_prim_dy_qp(1)%vf(l)%sf)'
9400# 1762 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9401
9402# 1762 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9403 call flush (output_unit)
9404# 1762 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9405 end block
9406# 1762 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9407#endif
9408# 1762 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9409
9410# 1762 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9411#if defined(MFC_OpenACC)
9412# 1762 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9413!$acc exit data delete(dq_prim_dy_qp(1)%vf(l)%sf)
9414# 1762 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9415#elif defined(MFC_OpenMP)
9416# 1762 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9417!$omp target exit data map(release:dq_prim_dy_qp(1)%vf(l)%sf)
9418# 1762 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9419#endif
9420# 1762 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9421 deallocate (dq_prim_dy_qp(1)%vf(l)%sf)
9422 end do
9423
9424 if (p > 0) then
9425 do l = eqn_idx%mom%beg, eqn_idx%mom%end
9426#ifdef MFC_DEBUG
9427# 1767 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9428 block
9429# 1767 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9430 use iso_fortran_env, only: output_unit
9431# 1767 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9432
9433# 1767 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9434 print *, 'm_rhs.fpp:1767: ', '@:DEALLOCATE(dq_prim_dz_qp(1)%vf(l)%sf)'
9435# 1767 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9436
9437# 1767 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9438 call flush (output_unit)
9439# 1767 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9440 end block
9441# 1767 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9442#endif
9443# 1767 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9444
9445# 1767 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9446#if defined(MFC_OpenACC)
9447# 1767 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9448!$acc exit data delete(dq_prim_dz_qp(1)%vf(l)%sf)
9449# 1767 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9450#elif defined(MFC_OpenMP)
9451# 1767 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9452!$omp target exit data map(release:dq_prim_dz_qp(1)%vf(l)%sf)
9453# 1767 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9454#endif
9455# 1767 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9456 deallocate (dq_prim_dz_qp(1)%vf(l)%sf)
9457 end do
9458 end if
9459 end if
9460
9461#ifdef MFC_DEBUG
9462# 1772 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9463 block
9464# 1772 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9465 use iso_fortran_env, only: output_unit
9466# 1772 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9467
9468# 1772 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9469 print *, 'm_rhs.fpp:1772: ', '@:DEALLOCATE(dq_prim_dx_qp(1)%vf)'
9470# 1772 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9471
9472# 1772 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9473 call flush (output_unit)
9474# 1772 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9475 end block
9476# 1772 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9477#endif
9478# 1772 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9479
9480# 1772 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9481#if defined(MFC_OpenACC)
9482# 1772 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9483!$acc exit data delete(dq_prim_dx_qp(1)%vf)
9484# 1772 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9485#elif defined(MFC_OpenMP)
9486# 1772 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9487!$omp target exit data map(release:dq_prim_dx_qp(1)%vf)
9488# 1772 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9489#endif
9490# 1772 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9491 deallocate (dq_prim_dx_qp(1)%vf)
9492#ifdef MFC_DEBUG
9493# 1773 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9494 block
9495# 1773 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9496 use iso_fortran_env, only: output_unit
9497# 1773 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9498
9499# 1773 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9500 print *, 'm_rhs.fpp:1773: ', '@:DEALLOCATE(dq_prim_dy_qp(1)%vf)'
9501# 1773 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9502
9503# 1773 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9504 call flush (output_unit)
9505# 1773 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9506 end block
9507# 1773 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9508#endif
9509# 1773 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9510
9511# 1773 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9512#if defined(MFC_OpenACC)
9513# 1773 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9514!$acc exit data delete(dq_prim_dy_qp(1)%vf)
9515# 1773 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9516#elif defined(MFC_OpenMP)
9517# 1773 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9518!$omp target exit data map(release:dq_prim_dy_qp(1)%vf)
9519# 1773 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9520#endif
9521# 1773 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9522 deallocate (dq_prim_dy_qp(1)%vf)
9523#ifdef MFC_DEBUG
9524# 1774 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9525 block
9526# 1774 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9527 use iso_fortran_env, only: output_unit
9528# 1774 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9529
9530# 1774 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9531 print *, 'm_rhs.fpp:1774: ', '@:DEALLOCATE(dq_prim_dz_qp(1)%vf)'
9532# 1774 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9533
9534# 1774 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9535 call flush (output_unit)
9536# 1774 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9537 end block
9538# 1774 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9539#endif
9540# 1774 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9541
9542# 1774 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9543#if defined(MFC_OpenACC)
9544# 1774 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9545!$acc exit data delete(dq_prim_dz_qp(1)%vf)
9546# 1774 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9547#elif defined(MFC_OpenMP)
9548# 1774 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9549!$omp target exit data map(release:dq_prim_dz_qp(1)%vf)
9550# 1774 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9551#endif
9552# 1774 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9553 deallocate (dq_prim_dz_qp(1)%vf)
9554
9555 do i = num_dims, 1, -1
9556 do l = eqn_idx%mom%beg, eqn_idx%mom%end
9557#ifdef MFC_DEBUG
9558# 1778 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9559 block
9560# 1778 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9561 use iso_fortran_env, only: output_unit
9562# 1778 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9563
9564# 1778 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9565 print *, 'm_rhs.fpp:1778: ', '@:DEALLOCATE(dqL_prim_dx_n(i)%vf(l)%sf)'
9566# 1778 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9567
9568# 1778 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9569 call flush (output_unit)
9570# 1778 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9571 end block
9572# 1778 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9573#endif
9574# 1778 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9575
9576# 1778 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9577#if defined(MFC_OpenACC)
9578# 1778 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9579!$acc exit data delete(dqL_prim_dx_n(i)%vf(l)%sf)
9580# 1778 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9581#elif defined(MFC_OpenMP)
9582# 1778 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9583!$omp target exit data map(release:dqL_prim_dx_n(i)%vf(l)%sf)
9584# 1778 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9585#endif
9586# 1778 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9587 deallocate (dql_prim_dx_n(i)%vf(l)%sf)
9588#ifdef MFC_DEBUG
9589# 1779 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9590 block
9591# 1779 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9592 use iso_fortran_env, only: output_unit
9593# 1779 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9594
9595# 1779 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9596 print *, 'm_rhs.fpp:1779: ', '@:DEALLOCATE(dqR_prim_dx_n(i)%vf(l)%sf)'
9597# 1779 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9598
9599# 1779 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9600 call flush (output_unit)
9601# 1779 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9602 end block
9603# 1779 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9604#endif
9605# 1779 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9606
9607# 1779 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9608#if defined(MFC_OpenACC)
9609# 1779 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9610!$acc exit data delete(dqR_prim_dx_n(i)%vf(l)%sf)
9611# 1779 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9612#elif defined(MFC_OpenMP)
9613# 1779 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9614!$omp target exit data map(release:dqR_prim_dx_n(i)%vf(l)%sf)
9615# 1779 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9616#endif
9617# 1779 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9618 deallocate (dqr_prim_dx_n(i)%vf(l)%sf)
9619 end do
9620
9621 if (n > 0) then
9622 do l = eqn_idx%mom%beg, eqn_idx%mom%end
9623#ifdef MFC_DEBUG
9624# 1784 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9625 block
9626# 1784 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9627 use iso_fortran_env, only: output_unit
9628# 1784 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9629
9630# 1784 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9631 print *, 'm_rhs.fpp:1784: ', '@:DEALLOCATE(dqL_prim_dy_n(i)%vf(l)%sf)'
9632# 1784 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9633
9634# 1784 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9635 call flush (output_unit)
9636# 1784 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9637 end block
9638# 1784 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9639#endif
9640# 1784 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9641
9642# 1784 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9643#if defined(MFC_OpenACC)
9644# 1784 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9645!$acc exit data delete(dqL_prim_dy_n(i)%vf(l)%sf)
9646# 1784 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9647#elif defined(MFC_OpenMP)
9648# 1784 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9649!$omp target exit data map(release:dqL_prim_dy_n(i)%vf(l)%sf)
9650# 1784 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9651#endif
9652# 1784 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9653 deallocate (dql_prim_dy_n(i)%vf(l)%sf)
9654#ifdef MFC_DEBUG
9655# 1785 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9656 block
9657# 1785 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9658 use iso_fortran_env, only: output_unit
9659# 1785 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9660
9661# 1785 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9662 print *, 'm_rhs.fpp:1785: ', '@:DEALLOCATE(dqR_prim_dy_n(i)%vf(l)%sf)'
9663# 1785 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9664
9665# 1785 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9666 call flush (output_unit)
9667# 1785 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9668 end block
9669# 1785 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9670#endif
9671# 1785 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9672
9673# 1785 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9674#if defined(MFC_OpenACC)
9675# 1785 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9676!$acc exit data delete(dqR_prim_dy_n(i)%vf(l)%sf)
9677# 1785 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9678#elif defined(MFC_OpenMP)
9679# 1785 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9680!$omp target exit data map(release:dqR_prim_dy_n(i)%vf(l)%sf)
9681# 1785 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9682#endif
9683# 1785 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9684 deallocate (dqr_prim_dy_n(i)%vf(l)%sf)
9685 end do
9686 end if
9687
9688 if (p > 0) then
9689 do l = eqn_idx%mom%beg, eqn_idx%mom%end
9690#ifdef MFC_DEBUG
9691# 1791 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9692 block
9693# 1791 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9694 use iso_fortran_env, only: output_unit
9695# 1791 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9696
9697# 1791 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9698 print *, 'm_rhs.fpp:1791: ', '@:DEALLOCATE(dqL_prim_dz_n(i)%vf(l)%sf)'
9699# 1791 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9700
9701# 1791 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9702 call flush (output_unit)
9703# 1791 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9704 end block
9705# 1791 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9706#endif
9707# 1791 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9708
9709# 1791 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9710#if defined(MFC_OpenACC)
9711# 1791 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9712!$acc exit data delete(dqL_prim_dz_n(i)%vf(l)%sf)
9713# 1791 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9714#elif defined(MFC_OpenMP)
9715# 1791 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9716!$omp target exit data map(release:dqL_prim_dz_n(i)%vf(l)%sf)
9717# 1791 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9718#endif
9719# 1791 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9720 deallocate (dql_prim_dz_n(i)%vf(l)%sf)
9721#ifdef MFC_DEBUG
9722# 1792 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9723 block
9724# 1792 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9725 use iso_fortran_env, only: output_unit
9726# 1792 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9727
9728# 1792 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9729 print *, 'm_rhs.fpp:1792: ', '@:DEALLOCATE(dqR_prim_dz_n(i)%vf(l)%sf)'
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 call flush (output_unit)
9734# 1792 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9735 end block
9736# 1792 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9737#endif
9738# 1792 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9739
9740# 1792 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9741#if defined(MFC_OpenACC)
9742# 1792 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9743!$acc exit data delete(dqR_prim_dz_n(i)%vf(l)%sf)
9744# 1792 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9745#elif defined(MFC_OpenMP)
9746# 1792 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9747!$omp target exit data map(release:dqR_prim_dz_n(i)%vf(l)%sf)
9748# 1792 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9749#endif
9750# 1792 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9751 deallocate (dqr_prim_dz_n(i)%vf(l)%sf)
9752 end do
9753 end if
9754
9755#ifdef MFC_DEBUG
9756# 1796 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9757 block
9758# 1796 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9759 use iso_fortran_env, only: output_unit
9760# 1796 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9761
9762# 1796 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9763 print *, 'm_rhs.fpp:1796: ', '@:DEALLOCATE(dqL_prim_dx_n(i)%vf)'
9764# 1796 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9765
9766# 1796 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9767 call flush (output_unit)
9768# 1796 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9769 end block
9770# 1796 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9771#endif
9772# 1796 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9773
9774# 1796 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9775#if defined(MFC_OpenACC)
9776# 1796 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9777!$acc exit data delete(dqL_prim_dx_n(i)%vf)
9778# 1796 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9779#elif defined(MFC_OpenMP)
9780# 1796 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9781!$omp target exit data map(release:dqL_prim_dx_n(i)%vf)
9782# 1796 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9783#endif
9784# 1796 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9785 deallocate (dql_prim_dx_n(i)%vf)
9786#ifdef MFC_DEBUG
9787# 1797 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9788 block
9789# 1797 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9790 use iso_fortran_env, only: output_unit
9791# 1797 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9792
9793# 1797 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9794 print *, 'm_rhs.fpp:1797: ', '@:DEALLOCATE(dqL_prim_dy_n(i)%vf)'
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 call flush (output_unit)
9799# 1797 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9800 end block
9801# 1797 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9802#endif
9803# 1797 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9804
9805# 1797 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9806#if defined(MFC_OpenACC)
9807# 1797 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9808!$acc exit data delete(dqL_prim_dy_n(i)%vf)
9809# 1797 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9810#elif defined(MFC_OpenMP)
9811# 1797 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9812!$omp target exit data map(release:dqL_prim_dy_n(i)%vf)
9813# 1797 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9814#endif
9815# 1797 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9816 deallocate (dql_prim_dy_n(i)%vf)
9817#ifdef MFC_DEBUG
9818# 1798 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9819 block
9820# 1798 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9821 use iso_fortran_env, only: output_unit
9822# 1798 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9823
9824# 1798 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9825 print *, 'm_rhs.fpp:1798: ', '@:DEALLOCATE(dqL_prim_dz_n(i)%vf)'
9826# 1798 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9827
9828# 1798 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9829 call flush (output_unit)
9830# 1798 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9831 end block
9832# 1798 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9833#endif
9834# 1798 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9835
9836# 1798 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9837#if defined(MFC_OpenACC)
9838# 1798 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9839!$acc exit data delete(dqL_prim_dz_n(i)%vf)
9840# 1798 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9841#elif defined(MFC_OpenMP)
9842# 1798 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9843!$omp target exit data map(release:dqL_prim_dz_n(i)%vf)
9844# 1798 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9845#endif
9846# 1798 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9847 deallocate (dql_prim_dz_n(i)%vf)
9848#ifdef MFC_DEBUG
9849# 1799 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9850 block
9851# 1799 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9852 use iso_fortran_env, only: output_unit
9853# 1799 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9854
9855# 1799 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9856 print *, 'm_rhs.fpp:1799: ', '@:DEALLOCATE(dqR_prim_dx_n(i)%vf)'
9857# 1799 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9858
9859# 1799 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9860 call flush (output_unit)
9861# 1799 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9862 end block
9863# 1799 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9864#endif
9865# 1799 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9866
9867# 1799 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9868#if defined(MFC_OpenACC)
9869# 1799 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9870!$acc exit data delete(dqR_prim_dx_n(i)%vf)
9871# 1799 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9872#elif defined(MFC_OpenMP)
9873# 1799 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9874!$omp target exit data map(release:dqR_prim_dx_n(i)%vf)
9875# 1799 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9876#endif
9877# 1799 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9878 deallocate (dqr_prim_dx_n(i)%vf)
9879#ifdef MFC_DEBUG
9880# 1800 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9881 block
9882# 1800 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9883 use iso_fortran_env, only: output_unit
9884# 1800 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9885
9886# 1800 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9887 print *, 'm_rhs.fpp:1800: ', '@:DEALLOCATE(dqR_prim_dy_n(i)%vf)'
9888# 1800 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9889
9890# 1800 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9891 call flush (output_unit)
9892# 1800 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9893 end block
9894# 1800 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9895#endif
9896# 1800 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9897
9898# 1800 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9899#if defined(MFC_OpenACC)
9900# 1800 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9901!$acc exit data delete(dqR_prim_dy_n(i)%vf)
9902# 1800 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9903#elif defined(MFC_OpenMP)
9904# 1800 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9905!$omp target exit data map(release:dqR_prim_dy_n(i)%vf)
9906# 1800 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9907#endif
9908# 1800 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9909 deallocate (dqr_prim_dy_n(i)%vf)
9910#ifdef MFC_DEBUG
9911# 1801 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9912 block
9913# 1801 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9914 use iso_fortran_env, only: output_unit
9915# 1801 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9916
9917# 1801 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9918 print *, 'm_rhs.fpp:1801: ', '@:DEALLOCATE(dqR_prim_dz_n(i)%vf)'
9919# 1801 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9920
9921# 1801 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9922 call flush (output_unit)
9923# 1801 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9924 end block
9925# 1801 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9926#endif
9927# 1801 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9928
9929# 1801 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9930#if defined(MFC_OpenACC)
9931# 1801 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9932!$acc exit data delete(dqR_prim_dz_n(i)%vf)
9933# 1801 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9934#elif defined(MFC_OpenMP)
9935# 1801 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9936!$omp target exit data map(release:dqR_prim_dz_n(i)%vf)
9937# 1801 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9938#endif
9939# 1801 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9940 deallocate (dqr_prim_dz_n(i)%vf)
9941 end do
9942
9943 if (weno_re_flux) then
9944#ifdef MFC_DEBUG
9945# 1805 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9946 block
9947# 1805 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9948 use iso_fortran_env, only: output_unit
9949# 1805 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9950
9951# 1805 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9952 print *, 'm_rhs.fpp:1805: ', '@:DEALLOCATE(dqL_rsx_vf, dqR_rsx_vf)'
9953# 1805 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9954
9955# 1805 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9956 call flush (output_unit)
9957# 1805 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9958 end block
9959# 1805 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9960#endif
9961# 1805 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9962
9963# 1805 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9964#if defined(MFC_OpenACC)
9965# 1805 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9966!$acc exit data delete(dqL_rsx_vf, dqR_rsx_vf)
9967# 1805 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9968#elif defined(MFC_OpenMP)
9969# 1805 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9970!$omp target exit data map(release:dqL_rsx_vf, dqR_rsx_vf)
9971# 1805 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9972#endif
9973# 1805 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9974 deallocate (dql_rsx_vf, dqr_rsx_vf)
9975 end if
9976
9977 do i = 1, num_dims
9978#ifdef MFC_DEBUG
9979# 1809 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9980 block
9981# 1809 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9982 use iso_fortran_env, only: output_unit
9983# 1809 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9984
9985# 1809 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9986 print *, 'm_rhs.fpp:1809: ', '@:DEALLOCATE(tau_Re_vf(eqn_idx%cont%end + i)%sf)'
9987# 1809 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9988
9989# 1809 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9990 call flush (output_unit)
9991# 1809 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9992 end block
9993# 1809 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9994#endif
9995# 1809 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9996
9997# 1809 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
9998#if defined(MFC_OpenACC)
9999# 1809 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10000!$acc exit data delete(tau_Re_vf(eqn_idx%cont%end + i)%sf)
10001# 1809 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10002#elif defined(MFC_OpenMP)
10003# 1809 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10004!$omp target exit data map(release:tau_Re_vf(eqn_idx%cont%end + i)%sf)
10005# 1809 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10006#endif
10007# 1809 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10008 deallocate (tau_re_vf(eqn_idx%cont%end + i)%sf)
10009 end do
10010#ifdef MFC_DEBUG
10011# 1811 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10012 block
10013# 1811 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10014 use iso_fortran_env, only: output_unit
10015# 1811 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10016
10017# 1811 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10018 print *, 'm_rhs.fpp:1811: ', '@:DEALLOCATE(tau_Re_vf(eqn_idx%E)%sf)'
10019# 1811 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10020
10021# 1811 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10022 call flush (output_unit)
10023# 1811 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10024 end block
10025# 1811 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10026#endif
10027# 1811 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10028
10029# 1811 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10030#if defined(MFC_OpenACC)
10031# 1811 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10032!$acc exit data delete(tau_Re_vf(eqn_idx%E)%sf)
10033# 1811 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10034#elif defined(MFC_OpenMP)
10035# 1811 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10036!$omp target exit data map(release:tau_Re_vf(eqn_idx%E)%sf)
10037# 1811 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10038#endif
10039# 1811 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10040 deallocate (tau_re_vf(eqn_idx%E)%sf)
10041#ifdef MFC_DEBUG
10042# 1812 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10043 block
10044# 1812 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10045 use iso_fortran_env, only: output_unit
10046# 1812 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10047
10048# 1812 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10049 print *, 'm_rhs.fpp:1812: ', '@:DEALLOCATE(tau_Re_vf)'
10050# 1812 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10051
10052# 1812 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10053 call flush (output_unit)
10054# 1812 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10055 end block
10056# 1812 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10057#endif
10058# 1812 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10059
10060# 1812 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10061#if defined(MFC_OpenACC)
10062# 1812 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10063!$acc exit data delete(tau_Re_vf)
10064# 1812 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10065#elif defined(MFC_OpenMP)
10066# 1812 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10067!$omp target exit data map(release:tau_Re_vf)
10068# 1812 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10069#endif
10070# 1812 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10071 deallocate (tau_re_vf)
10072 end if
10073#ifdef MFC_DEBUG
10074# 1814 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10075 block
10076# 1814 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10077 use iso_fortran_env, only: output_unit
10078# 1814 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10079
10080# 1814 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10081 print *, 'm_rhs.fpp:1814: ', '@:DEALLOCATE(dqL_prim_dx_n, dqL_prim_dy_n, dqL_prim_dz_n)'
10082# 1814 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10083
10084# 1814 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10085 call flush (output_unit)
10086# 1814 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10087 end block
10088# 1814 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10089#endif
10090# 1814 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10091
10092# 1814 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10093#if defined(MFC_OpenACC)
10094# 1814 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10095!$acc exit data delete(dqL_prim_dx_n, dqL_prim_dy_n, dqL_prim_dz_n)
10096# 1814 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10097#elif defined(MFC_OpenMP)
10098# 1814 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10099!$omp target exit data map(release:dqL_prim_dx_n, dqL_prim_dy_n, dqL_prim_dz_n)
10100# 1814 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10101#endif
10102# 1814 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10104#ifdef MFC_DEBUG
10105# 1815 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10106 block
10107# 1815 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10108 use iso_fortran_env, only: output_unit
10109# 1815 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10110
10111# 1815 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10112 print *, 'm_rhs.fpp:1815: ', '@:DEALLOCATE(dqR_prim_dx_n, dqR_prim_dy_n, dqR_prim_dz_n)'
10113# 1815 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10114
10115# 1815 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10116 call flush (output_unit)
10117# 1815 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10118 end block
10119# 1815 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10120#endif
10121# 1815 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10122
10123# 1815 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10124#if defined(MFC_OpenACC)
10125# 1815 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10126!$acc exit data delete(dqR_prim_dx_n, dqR_prim_dy_n, dqR_prim_dz_n)
10127# 1815 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10128#elif defined(MFC_OpenMP)
10129# 1815 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10130!$omp target exit data map(release:dqR_prim_dx_n, dqR_prim_dy_n, dqR_prim_dz_n)
10131# 1815 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10132#endif
10133# 1815 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10135 end if
10136
10137 if (mpp_lim .and. bubbles_euler) then
10138#ifdef MFC_DEBUG
10139# 1819 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10140 block
10141# 1819 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10142 use iso_fortran_env, only: output_unit
10143# 1819 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10144
10145# 1819 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10146 print *, 'm_rhs.fpp:1819: ', '@:DEALLOCATE(alf_sum%sf)'
10147# 1819 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10148
10149# 1819 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10150 call flush (output_unit)
10151# 1819 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10152 end block
10153# 1819 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10154#endif
10155# 1819 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10156
10157# 1819 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10158#if defined(MFC_OpenACC)
10159# 1819 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10160!$acc exit data delete(alf_sum%sf)
10161# 1819 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10162#elif defined(MFC_OpenMP)
10163# 1819 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10164!$omp target exit data map(release:alf_sum%sf)
10165# 1819 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10166#endif
10167# 1819 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10168 deallocate (alf_sum%sf)
10169 end if
10170
10171 if (.not. igr) then
10172 do i = num_dims, 1, -1
10173 if (i /= 1) then
10174 do l = 1, sys_size
10175 nullify (flux_n(i)%vf(l)%sf)
10176 nullify (flux_src_n(i)%vf(l)%sf)
10177#ifdef MFC_DEBUG
10178# 1828 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10179 block
10180# 1828 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10181 use iso_fortran_env, only: output_unit
10182# 1828 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10183
10184# 1828 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10185 print *, 'm_rhs.fpp:1828: ', '@:DEALLOCATE(flux_gsrc_n(i)%vf(l)%sf)'
10186# 1828 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10187
10188# 1828 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10189 call flush (output_unit)
10190# 1828 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10191 end block
10192# 1828 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10193#endif
10194# 1828 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10195
10196# 1828 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10197#if defined(MFC_OpenACC)
10198# 1828 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10199!$acc exit data delete(flux_gsrc_n(i)%vf(l)%sf)
10200# 1828 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10201#elif defined(MFC_OpenMP)
10202# 1828 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10203!$omp target exit data map(release:flux_gsrc_n(i)%vf(l)%sf)
10204# 1828 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10205#endif
10206# 1828 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10207 deallocate (flux_gsrc_n(i)%vf(l)%sf)
10208 end do
10209 else
10210 do l = 1, sys_size
10211#ifdef MFC_DEBUG
10212# 1832 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10213 block
10214# 1832 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10215 use iso_fortran_env, only: output_unit
10216# 1832 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10217
10218# 1832 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10219 print *, 'm_rhs.fpp:1832: ', '@:DEALLOCATE(flux_n(i)%vf(l)%sf)'
10220# 1832 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10221
10222# 1832 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10223 call flush (output_unit)
10224# 1832 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10225 end block
10226# 1832 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10227#endif
10228# 1832 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10229
10230# 1832 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10231#if defined(MFC_OpenACC)
10232# 1832 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10233!$acc exit data delete(flux_n(i)%vf(l)%sf)
10234# 1832 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10235#elif defined(MFC_OpenMP)
10236# 1832 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10237!$omp target exit data map(release:flux_n(i)%vf(l)%sf)
10238# 1832 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10239#endif
10240# 1832 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10241 deallocate (flux_n(i)%vf(l)%sf)
10242#ifdef MFC_DEBUG
10243# 1833 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10244 block
10245# 1833 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10246 use iso_fortran_env, only: output_unit
10247# 1833 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10248
10249# 1833 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10250 print *, 'm_rhs.fpp:1833: ', '@:DEALLOCATE(flux_gsrc_n(i)%vf(l)%sf)'
10251# 1833 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10252
10253# 1833 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10254 call flush (output_unit)
10255# 1833 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10256 end block
10257# 1833 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10258#endif
10259# 1833 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10260
10261# 1833 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10262#if defined(MFC_OpenACC)
10263# 1833 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10264!$acc exit data delete(flux_gsrc_n(i)%vf(l)%sf)
10265# 1833 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10266#elif defined(MFC_OpenMP)
10267# 1833 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10268!$omp target exit data map(release:flux_gsrc_n(i)%vf(l)%sf)
10269# 1833 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10270#endif
10271# 1833 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10272 deallocate (flux_gsrc_n(i)%vf(l)%sf)
10273 end do
10274
10275 if (viscous) then
10276 do l = eqn_idx%mom%beg, eqn_idx%E
10277#ifdef MFC_DEBUG
10278# 1838 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10279 block
10280# 1838 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10281 use iso_fortran_env, only: output_unit
10282# 1838 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10283
10284# 1838 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10285 print *, 'm_rhs.fpp:1838: ', '@:DEALLOCATE(flux_src_n(i)%vf(l)%sf)'
10286# 1838 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10287
10288# 1838 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10289 call flush (output_unit)
10290# 1838 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10291 end block
10292# 1838 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10293#endif
10294# 1838 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10295
10296# 1838 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10297#if defined(MFC_OpenACC)
10298# 1838 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10299!$acc exit data delete(flux_src_n(i)%vf(l)%sf)
10300# 1838 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10301#elif defined(MFC_OpenMP)
10302# 1838 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10303!$omp target exit data map(release:flux_src_n(i)%vf(l)%sf)
10304# 1838 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10305#endif
10306# 1838 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10307 deallocate (flux_src_n(i)%vf(l)%sf)
10308 end do
10309 end if
10310
10311 if (chem_params%diffusion .and. .not. viscous) then
10312#ifdef MFC_DEBUG
10313# 1843 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10314 block
10315# 1843 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10316 use iso_fortran_env, only: output_unit
10317# 1843 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10318
10319# 1843 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10320 print *, 'm_rhs.fpp:1843: ', '@:DEALLOCATE(flux_src_n(i)%vf(eqn_idx%E)%sf)'
10321# 1843 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10322
10323# 1843 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10324 call flush (output_unit)
10325# 1843 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10326 end block
10327# 1843 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10328#endif
10329# 1843 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10330
10331# 1843 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10332#if defined(MFC_OpenACC)
10333# 1843 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10334!$acc exit data delete(flux_src_n(i)%vf(eqn_idx%E)%sf)
10335# 1843 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10336#elif defined(MFC_OpenMP)
10337# 1843 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10338!$omp target exit data map(release:flux_src_n(i)%vf(eqn_idx%E)%sf)
10339# 1843 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10340#endif
10341# 1843 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10342 deallocate (flux_src_n(i)%vf(eqn_idx%E)%sf)
10343 end if
10344
10345 if (riemann_solver == riemann_solver_hll .or. riemann_solver == riemann_solver_hlld) then
10346 do l = eqn_idx%adv%beg + 1, eqn_idx%adv%end
10347#ifdef MFC_DEBUG
10348# 1848 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10349 block
10350# 1848 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10351 use iso_fortran_env, only: output_unit
10352# 1848 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10353
10354# 1848 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10355 print *, 'm_rhs.fpp:1848: ', '@:DEALLOCATE(flux_src_n(i)%vf(l)%sf)'
10356# 1848 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10357
10358# 1848 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10359 call flush (output_unit)
10360# 1848 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10361 end block
10362# 1848 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10363#endif
10364# 1848 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10365
10366# 1848 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10367#if defined(MFC_OpenACC)
10368# 1848 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10369!$acc exit data delete(flux_src_n(i)%vf(l)%sf)
10370# 1848 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10371#elif defined(MFC_OpenMP)
10372# 1848 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10373!$omp target exit data map(release:flux_src_n(i)%vf(l)%sf)
10374# 1848 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10375#endif
10376# 1848 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10377 deallocate (flux_src_n(i)%vf(l)%sf)
10378 end do
10379 else
10380 do l = eqn_idx%adv%beg + 1, eqn_idx%adv%end
10381 nullify (flux_src_n(i)%vf(l)%sf)
10382 end do
10383 end if
10384
10385#ifdef MFC_DEBUG
10386# 1856 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10387 block
10388# 1856 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10389 use iso_fortran_env, only: output_unit
10390# 1856 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10391
10392# 1856 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10393 print *, 'm_rhs.fpp:1856: ', '@:DEALLOCATE(flux_src_n(i)%vf(eqn_idx%adv%beg)%sf)'
10394# 1856 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10395
10396# 1856 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10397 call flush (output_unit)
10398# 1856 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10399 end block
10400# 1856 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10401#endif
10402# 1856 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10403
10404# 1856 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10405#if defined(MFC_OpenACC)
10406# 1856 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10407!$acc exit data delete(flux_src_n(i)%vf(eqn_idx%adv%beg)%sf)
10408# 1856 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10409#elif defined(MFC_OpenMP)
10410# 1856 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10411!$omp target exit data map(release:flux_src_n(i)%vf(eqn_idx%adv%beg)%sf)
10412# 1856 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10413#endif
10414# 1856 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10415 deallocate (flux_src_n(i)%vf(eqn_idx%adv%beg)%sf)
10416 end if
10417
10418#ifdef MFC_DEBUG
10419# 1859 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10420 block
10421# 1859 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10422 use iso_fortran_env, only: output_unit
10423# 1859 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10424
10425# 1859 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10426 print *, 'm_rhs.fpp:1859: ', '@:DEALLOCATE(flux_n(i)%vf, flux_src_n(i)%vf, flux_gsrc_n(i)%vf)'
10427# 1859 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10428
10429# 1859 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10430 call flush (output_unit)
10431# 1859 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10432 end block
10433# 1859 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10434#endif
10435# 1859 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10436
10437# 1859 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10438#if defined(MFC_OpenACC)
10439# 1859 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10440!$acc exit data delete(flux_n(i)%vf, flux_src_n(i)%vf, flux_gsrc_n(i)%vf)
10441# 1859 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10442#elif defined(MFC_OpenMP)
10443# 1859 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10444!$omp target exit data map(release:flux_n(i)%vf, flux_src_n(i)%vf, flux_gsrc_n(i)%vf)
10445# 1859 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10446#endif
10447# 1859 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10448 deallocate (flux_n(i)%vf, flux_src_n(i)%vf, flux_gsrc_n(i)%vf)
10449 end do
10450
10451#ifdef MFC_DEBUG
10452# 1862 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10453 block
10454# 1862 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10455 use iso_fortran_env, only: output_unit
10456# 1862 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10457
10458# 1862 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10459 print *, 'm_rhs.fpp:1862: ', '@:DEALLOCATE(flux_n, flux_src_n, flux_gsrc_n)'
10460# 1862 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10461
10462# 1862 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10463 call flush (output_unit)
10464# 1862 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10465 end block
10466# 1862 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10467#endif
10468# 1862 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10469
10470# 1862 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10471#if defined(MFC_OpenACC)
10472# 1862 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10473!$acc exit data delete(flux_n, flux_src_n, flux_gsrc_n)
10474# 1862 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10475#elif defined(MFC_OpenMP)
10476# 1862 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10477!$omp target exit data map(release:flux_n, flux_src_n, flux_gsrc_n)
10478# 1862 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10479#endif
10480# 1862 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10481 deallocate (flux_n, flux_src_n, flux_gsrc_n)
10482 do i = 1, num_dims
10483 do l = eqn_idx%mom%beg, eqn_idx%mom%end
10484#ifdef MFC_DEBUG
10485# 1865 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10486 block
10487# 1865 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10488 use iso_fortran_env, only: output_unit
10489# 1865 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10490
10491# 1865 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10492 print *, 'm_rhs.fpp:1865: ', '@:DEALLOCATE(qL_prim(i)%vf(l)%sf)'
10493# 1865 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10494
10495# 1865 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10496 call flush (output_unit)
10497# 1865 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10498 end block
10499# 1865 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10500#endif
10501# 1865 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10502
10503# 1865 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10504#if defined(MFC_OpenACC)
10505# 1865 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10506!$acc exit data delete(qL_prim(i)%vf(l)%sf)
10507# 1865 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10508#elif defined(MFC_OpenMP)
10509# 1865 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10510!$omp target exit data map(release:qL_prim(i)%vf(l)%sf)
10511# 1865 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10512#endif
10513# 1865 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10514 deallocate (ql_prim(i)%vf(l)%sf)
10515#ifdef MFC_DEBUG
10516# 1866 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10517 block
10518# 1866 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10519 use iso_fortran_env, only: output_unit
10520# 1866 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10521
10522# 1866 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10523 print *, 'm_rhs.fpp:1866: ', '@:DEALLOCATE(qR_prim(i)%vf(l)%sf)'
10524# 1866 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10525
10526# 1866 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10527 call flush (output_unit)
10528# 1866 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10529 end block
10530# 1866 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10531#endif
10532# 1866 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10533
10534# 1866 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10535#if defined(MFC_OpenACC)
10536# 1866 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10537!$acc exit data delete(qR_prim(i)%vf(l)%sf)
10538# 1866 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10539#elif defined(MFC_OpenMP)
10540# 1866 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10541!$omp target exit data map(release:qR_prim(i)%vf(l)%sf)
10542# 1866 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10543#endif
10544# 1866 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10545 deallocate (qr_prim(i)%vf(l)%sf)
10546 end do
10547#ifdef MFC_DEBUG
10548# 1868 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10549 block
10550# 1868 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10551 use iso_fortran_env, only: output_unit
10552# 1868 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10553
10554# 1868 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10555 print *, 'm_rhs.fpp:1868: ', '@:DEALLOCATE(qL_prim(i)%vf, qR_prim(i)%vf)'
10556# 1868 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10557
10558# 1868 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10559 call flush (output_unit)
10560# 1868 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10561 end block
10562# 1868 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10563#endif
10564# 1868 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10565
10566# 1868 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10567#if defined(MFC_OpenACC)
10568# 1868 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10569!$acc exit data delete(qL_prim(i)%vf, qR_prim(i)%vf)
10570# 1868 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10571#elif defined(MFC_OpenMP)
10572# 1868 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10573!$omp target exit data map(release:qL_prim(i)%vf, qR_prim(i)%vf)
10574# 1868 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10575#endif
10576# 1868 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10577 deallocate (ql_prim(i)%vf, qr_prim(i)%vf)
10578 end do
10579#ifdef MFC_DEBUG
10580# 1870 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10581 block
10582# 1870 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10583 use iso_fortran_env, only: output_unit
10584# 1870 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10585
10586# 1870 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10587 print *, 'm_rhs.fpp:1870: ', '@:DEALLOCATE(qL_prim, qR_prim)'
10588# 1870 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10589
10590# 1870 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10591 call flush (output_unit)
10592# 1870 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10593 end block
10594# 1870 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10595#endif
10596# 1870 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10597
10598# 1870 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10599#if defined(MFC_OpenACC)
10600# 1870 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10601!$acc exit data delete(qL_prim, qR_prim)
10602# 1870 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10603#elif defined(MFC_OpenMP)
10604# 1870 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10605!$omp target exit data map(release:qL_prim, qR_prim)
10606# 1870 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10607#endif
10608# 1870 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10609 deallocate (ql_prim, qr_prim)
10610 end if
10611
10612 if (alt_soundspeed) then
10613#ifdef MFC_DEBUG
10614# 1874 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10615 block
10616# 1874 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10617 use iso_fortran_env, only: output_unit
10618# 1874 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10619
10620# 1874 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10621 print *, 'm_rhs.fpp:1874: ', '@:DEALLOCATE(blkmod1)'
10622# 1874 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10623
10624# 1874 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10625 call flush (output_unit)
10626# 1874 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10627 end block
10628# 1874 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10629#endif
10630# 1874 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10631
10632# 1874 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10633#if defined(MFC_OpenACC)
10634# 1874 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10635!$acc exit data delete(blkmod1)
10636# 1874 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10637#elif defined(MFC_OpenMP)
10638# 1874 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10639!$omp target exit data map(release:blkmod1)
10640# 1874 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10641#endif
10642# 1874 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10643 deallocate (blkmod1)
10644 end if
10645
10646 if (qbmm) then
10647 do i = 0, 2
10648 do j = 0, 2
10649 do l = 1, nb
10650#ifdef MFC_DEBUG
10651# 1881 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10652 block
10653# 1881 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10654 use iso_fortran_env, only: output_unit
10655# 1881 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10656
10657# 1881 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10658 print *, 'm_rhs.fpp:1881: ', '@:DEALLOCATE(mom_3d(i, j, l)%sf)'
10659# 1881 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10660
10661# 1881 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10662 call flush (output_unit)
10663# 1881 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10664 end block
10665# 1881 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10666#endif
10667# 1881 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10668
10669# 1881 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10670#if defined(MFC_OpenACC)
10671# 1881 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10672!$acc exit data delete(mom_3d(i, j, l)%sf)
10673# 1881 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10674#elif defined(MFC_OpenMP)
10675# 1881 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10676!$omp target exit data map(release:mom_3d(i, j, l)%sf)
10677# 1881 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10678#endif
10679# 1881 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10680 deallocate (mom_3d(i, j, l)%sf)
10681 end do
10682 end do
10683 end do
10684 do i = 1, nmomsp
10685#ifdef MFC_DEBUG
10686# 1886 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10687 block
10688# 1886 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10689 use iso_fortran_env, only: output_unit
10690# 1886 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10691
10692# 1886 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10693 print *, 'm_rhs.fpp:1886: ', '@:DEALLOCATE(mom_sp(i)%sf)'
10694# 1886 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10695
10696# 1886 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10697 call flush (output_unit)
10698# 1886 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10699 end block
10700# 1886 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10701#endif
10702# 1886 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10703
10704# 1886 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10705#if defined(MFC_OpenACC)
10706# 1886 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10707!$acc exit data delete(mom_sp(i)%sf)
10708# 1886 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10709#elif defined(MFC_OpenMP)
10710# 1886 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10711!$omp target exit data map(release:mom_sp(i)%sf)
10712# 1886 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10713#endif
10714# 1886 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10715 deallocate (mom_sp(i)%sf)
10716 end do
10717#ifdef MFC_DEBUG
10718# 1888 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10719 block
10720# 1888 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10721 use iso_fortran_env, only: output_unit
10722# 1888 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10723
10724# 1888 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10725 print *, 'm_rhs.fpp:1888: ', '@:DEALLOCATE(mom_sp, mom_3d)'
10726# 1888 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10727
10728# 1888 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10729 call flush (output_unit)
10730# 1888 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10731 end block
10732# 1888 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10733#endif
10734# 1888 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10735
10736# 1888 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10737#if defined(MFC_OpenACC)
10738# 1888 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10739!$acc exit data delete(mom_sp, mom_3d)
10740# 1888 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10741#elif defined(MFC_OpenMP)
10742# 1888 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10743!$omp target exit data map(release:mom_sp, mom_3d)
10744# 1888 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10745#endif
10746# 1888 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10747 deallocate (mom_sp, mom_3d)
10748 end if
10749
10750 if (bf_spatial_support) then
10751#ifdef MFC_DEBUG
10752# 1892 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10753 block
10754# 1892 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10755 use iso_fortran_env, only: output_unit
10756# 1892 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10757
10758# 1892 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10759 print *, 'm_rhs.fpp:1892: ', '@:DEALLOCATE(spbf_source_x, spbf_source_y)'
10760# 1892 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10761
10762# 1892 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10763 call flush (output_unit)
10764# 1892 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10765 end block
10766# 1892 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10767#endif
10768# 1892 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10769
10770# 1892 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10771#if defined(MFC_OpenACC)
10772# 1892 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10773!$acc exit data delete(spbf_source_x, spbf_source_y)
10774# 1892 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10775#elif defined(MFC_OpenMP)
10776# 1892 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10777!$omp target exit data map(release:spbf_source_x, spbf_source_y)
10778# 1892 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10779#endif
10780# 1892 "/home/runner/work/MFC/MFC/src/simulation/m_rhs.fpp"
10781 deallocate (spbf_source_x, spbf_source_y)
10782 end if
10783
10784 end subroutine s_finalize_rhs_module
10785
10786end 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.
Condensed-phase reactive burn: a pressure-driven programmed-burn source that converts a "reactant" fl...
Assemble 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
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.
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, stage)
Compute the right-hand side of the semi-discrete governing equations for a single time stage.
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).