1# 1 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
6# 1 "/home/runner/work/MFC/MFC/src/common/include/macros.fpp" 1
7# 1 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp" 1
8# 1 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp" 1
9# 2 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
10# 3 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
11# 4 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
12# 5 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
13# 6 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
15# 8 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
16# 9 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
17# 10 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
19# 17 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
21# 46 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
23# 58 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
25# 68 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
27# 98 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
29# 110 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
31# 120 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
33# 2 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp" 2
34# 1 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp" 1
35# 1 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp" 1
36# 2 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
37# 3 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
38# 4 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
39# 5 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
40# 6 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
42# 8 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
43# 9 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
44# 10 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
46# 17 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
48# 46 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
50# 58 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
52# 68 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
54# 98 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
56# 110 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
58# 120 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
60# 2 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp" 2
62# 4 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
63# 5 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
64# 6 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
65# 7 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
66# 8 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
68# 20 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
70# 43 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
72# 48 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
74# 53 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
76# 58 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
78# 63 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
80# 68 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
82# 76 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
84# 81 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
86# 86 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
88# 91 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
90# 96 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
92# 101 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
94# 106 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
96# 111 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
98# 116 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
100# 121 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
102# 151 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
104# 192 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
106# 206 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
108# 231 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
110# 242 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
112# 244 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
113# 255 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
115# 284 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
117# 294 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
119# 304 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
121# 313 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
123# 330 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
125# 340 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
127# 347 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
129# 353 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
131# 359 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
133# 365 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
135# 371 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
137# 377 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
139# 3 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp" 2
140# 1 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp" 1
141# 1 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp" 1
142# 2 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
143# 3 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
144# 4 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
145# 5 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
146# 6 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
148# 8 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
149# 9 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
150# 10 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
152# 17 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
154# 46 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
156# 58 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
158# 68 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
160# 98 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
162# 110 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
164# 120 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
166# 2 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp" 2
168# 7 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
170# 17 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
172# 22 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
174# 27 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
176# 32 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
178# 37 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
180# 42 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
182# 47 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
184# 52 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
186# 57 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
188# 62 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
190# 73 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
192# 78 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
194# 83 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
196# 88 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
198# 103 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
200# 131 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
202# 160 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
204# 175 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
206# 193 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
208# 215 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
210# 244 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
212# 259 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
214# 269 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
216# 278 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
218# 294 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
220# 304 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
222# 311 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
224# 4 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp" 2
227# 23 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
230# 43 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
233# 55 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
236# 112 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
239# 130 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
242# 145 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
245# 164 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
248# 193 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
251# 207 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
254# 219 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
257# 231 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
260# 242 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
263# 254 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
266# 266 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
269# 275 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
272# 282 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
275# 289 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
278# 296 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
281# 303 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
283# 305 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
284# 306 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
286# 2 "/home/runner/work/MFC/MFC/src/common/include/macros.fpp" 2
288# 14 "/home/runner/work/MFC/MFC/src/common/include/macros.fpp"
293# 57 "/home/runner/work/MFC/MFC/src/common/include/macros.fpp"
296# 77 "/home/runner/work/MFC/MFC/src/common/include/macros.fpp"
299# 85 "/home/runner/work/MFC/MFC/src/common/include/macros.fpp"
302# 109 "/home/runner/work/MFC/MFC/src/common/include/macros.fpp"
305# 125 "/home/runner/work/MFC/MFC/src/common/include/macros.fpp"
308# 150 "/home/runner/work/MFC/MFC/src/common/include/macros.fpp"
310# 156 "/home/runner/work/MFC/MFC/src/common/include/macros.fpp"
312# 163 "/home/runner/work/MFC/MFC/src/common/include/macros.fpp"
314# 6 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp" 2
333 integer,
allocatable,
dimension(:,:) ::
lag_id
334 real(wp),
allocatable,
dimension(:) ::
bub_r0
338# 28 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
339#if defined(MFC_OpenACC)
340# 28 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
342# 28 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
343#elif defined(MFC_OpenMP)
344# 28 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
346# 28 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
349 real(wp),
allocatable,
dimension(:) ::
gas_mg
354# 34 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
355#if defined(MFC_OpenACC)
356# 34 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
358# 34 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
359#elif defined(MFC_OpenMP)
360# 34 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
362# 34 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
366 real(wp),
allocatable,
dimension(:,:) ::
gas_p
367 real(wp),
allocatable,
dimension(:,:) ::
gas_mv
371# 41 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
372#if defined(MFC_OpenACC)
373# 41 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
375# 41 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
376#elif defined(MFC_OpenMP)
377# 41 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
379# 41 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
382 real(wp),
allocatable,
dimension(:,:,:) ::
mtn_pos
384 real(wp),
allocatable,
dimension(:,:,:) ::
mtn_vel
385 real(wp),
allocatable,
dimension(:,:,:) ::
mtn_s
387# 47 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
388#if defined(MFC_OpenACC)
389# 47 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
391# 47 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
392#elif defined(MFC_OpenMP)
393# 47 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
395# 47 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
405# 55 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
406#if defined(MFC_OpenACC)
407# 55 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
409# 55 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
410#elif defined(MFC_OpenMP)
411# 55 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
413# 55 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
418# 58 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
419#if defined(MFC_OpenACC)
420# 58 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
422# 58 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
423#elif defined(MFC_OpenMP)
424# 58 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
426# 58 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
432 type(scalar_field),
dimension(:),
allocatable ::
q_beta
435# 65 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
436#if defined(MFC_OpenACC)
437# 65 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
439# 65 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
440#elif defined(MFC_OpenMP)
441# 65 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
443# 65 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
451 type(scalar_field),
dimension(sys_size),
intent(inout) ::
q_cons_vf
452 integer :: nbubs_glb, i
462 else if (
lag_params%solver_approach == 2)
then
470 call s_mpi_abort(
'Please check the lag_params%solver_approach input')
474# 94 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
475#if defined(MFC_OpenACC)
476# 94 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
478# 94 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
479#elif defined(MFC_OpenMP)
480# 94 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
482# 94 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
486# 96 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
488# 96 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
489 use iso_fortran_env,
only: output_unit
490# 96 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
492# 96 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
493 print *,
'm_bubbles_EL.fpp:96: ',
'@:ALLOCATE(q_beta(1:q_beta_idx))'
494# 96 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
496# 96 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
497 call flush (output_unit)
498# 96 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
500# 96 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
502# 96 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
504# 96 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
506# 96 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
508# 96 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
509#if defined(MFC_OpenACC)
510# 96 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
512# 96 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
513#elif defined(MFC_OpenMP)
514# 96 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
516# 96 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
521# 99 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
523# 99 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
524 use iso_fortran_env,
only: output_unit
525# 99 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
527# 99 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
528 print *,
'm_bubbles_EL.fpp:99: ',
'@:ALLOCATE(q_beta(i)%sf(idwbuff(1)%beg:idwbuff(1)%end, idwbuff(2)%beg:idwbuff(2)%end, idwbuff(3)%beg:idwbuff(3)%end))'
529# 99 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
531# 99 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
532 call flush (output_unit)
533# 99 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
535# 99 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
537# 99 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
538 allocate (
q_beta(i)%sf(idwbuff(1)%beg:idwbuff(1)%end, idwbuff(2)%beg:idwbuff(2)%end, idwbuff(3)%beg:idwbuff(3)%end))
539# 99 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
541# 99 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
543# 99 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
544#if defined(MFC_OpenACC)
545# 99 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
547# 99 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
548#elif defined(MFC_OpenMP)
549# 99 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
551# 99 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
557# 103 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
559# 103 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
561# 103 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
563# 103 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
564 use iso_fortran_env,
only: output_unit
565# 103 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
567# 103 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
568 print *,
'm_bubbles_EL.fpp:103: ',
'@:ACC_SETUP_SFs(q_beta(i))'
569# 103 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
571# 103 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
572 call flush (output_unit)
573# 103 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
575# 103 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
577# 103 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
579# 103 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
581# 103 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
582#if defined(MFC_OpenACC)
583# 103 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
585# 103 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
586#elif defined(MFC_OpenMP)
587# 103 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
589# 103 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
591# 103 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
592 if (
associated(
q_beta(i)%sf))
then
593# 103 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
595# 103 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
596#if defined(MFC_OpenACC)
597# 103 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
599# 103 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
600#elif defined(MFC_OpenMP)
601# 103 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
603# 103 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
605# 103 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
607# 103 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
609# 103 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
614 nbubs_glb = lag_params%nBubs_glb
617# 109 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
619# 109 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
620 use iso_fortran_env,
only: output_unit
621# 109 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
623# 109 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
624 print *,
'm_bubbles_EL.fpp:109: ',
'@:ALLOCATE(lag_id(1:nBubs_glb, 1:2))'
625# 109 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
627# 109 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
628 call flush (output_unit)
629# 109 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
631# 109 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
633# 109 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
634 allocate (
lag_id(1:nbubs_glb, 1:2))
635# 109 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
637# 109 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
639# 109 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
640#if defined(MFC_OpenACC)
641# 109 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
643# 109 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
644#elif defined(MFC_OpenMP)
645# 109 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
647# 109 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
650# 110 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
652# 110 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
653 use iso_fortran_env,
only: output_unit
654# 110 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
656# 110 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
657 print *,
'm_bubbles_EL.fpp:110: ',
'@:ALLOCATE(bub_R0(1:nBubs_glb))'
658# 110 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
660# 110 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
661 call flush (output_unit)
662# 110 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
664# 110 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
666# 110 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
667 allocate (
bub_r0(1:nbubs_glb))
668# 110 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
670# 110 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
672# 110 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
673#if defined(MFC_OpenACC)
674# 110 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
676# 110 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
677#elif defined(MFC_OpenMP)
678# 110 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
680# 110 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
683# 111 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
685# 111 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
686 use iso_fortran_env,
only: output_unit
687# 111 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
689# 111 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
690 print *,
'm_bubbles_EL.fpp:111: ',
'@:ALLOCATE(Rmax_stats(1:nBubs_glb))'
691# 111 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
693# 111 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
694 call flush (output_unit)
695# 111 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
697# 111 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
699# 111 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
701# 111 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
703# 111 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
705# 111 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
706#if defined(MFC_OpenACC)
707# 111 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
709# 111 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
710#elif defined(MFC_OpenMP)
711# 111 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
713# 111 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
716# 112 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
718# 112 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
719 use iso_fortran_env,
only: output_unit
720# 112 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
722# 112 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
723 print *,
'm_bubbles_EL.fpp:112: ',
'@:ALLOCATE(Rmin_stats(1:nBubs_glb))'
724# 112 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
726# 112 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
727 call flush (output_unit)
728# 112 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
730# 112 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
732# 112 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
734# 112 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
736# 112 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
738# 112 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
739#if defined(MFC_OpenACC)
740# 112 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
742# 112 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
743#elif defined(MFC_OpenMP)
744# 112 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
746# 112 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
749# 113 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
751# 113 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
752 use iso_fortran_env,
only: output_unit
753# 113 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
755# 113 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
756 print *,
'm_bubbles_EL.fpp:113: ',
'@:ALLOCATE(gas_mg(1:nBubs_glb))'
757# 113 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
759# 113 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
760 call flush (output_unit)
761# 113 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
763# 113 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
765# 113 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
766 allocate (
gas_mg(1:nbubs_glb))
767# 113 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
769# 113 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
771# 113 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
772#if defined(MFC_OpenACC)
773# 113 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
775# 113 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
776#elif defined(MFC_OpenMP)
777# 113 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
779# 113 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
782# 114 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
784# 114 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
785 use iso_fortran_env,
only: output_unit
786# 114 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
788# 114 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
789 print *,
'm_bubbles_EL.fpp:114: ',
'@:ALLOCATE(gas_betaT(1:nBubs_glb))'
790# 114 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
792# 114 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
793 call flush (output_unit)
794# 114 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
796# 114 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
798# 114 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
800# 114 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
802# 114 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
804# 114 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
805#if defined(MFC_OpenACC)
806# 114 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
808# 114 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
809#elif defined(MFC_OpenMP)
810# 114 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
812# 114 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
815# 115 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
817# 115 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
818 use iso_fortran_env,
only: output_unit
819# 115 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
821# 115 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
822 print *,
'm_bubbles_EL.fpp:115: ',
'@:ALLOCATE(gas_betaC(1:nBubs_glb))'
823# 115 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
825# 115 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
826 call flush (output_unit)
827# 115 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
829# 115 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
831# 115 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
833# 115 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
835# 115 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
837# 115 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
838#if defined(MFC_OpenACC)
839# 115 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
841# 115 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
842#elif defined(MFC_OpenMP)
843# 115 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
845# 115 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
848# 116 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
850# 116 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
851 use iso_fortran_env,
only: output_unit
852# 116 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
854# 116 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
855 print *,
'm_bubbles_EL.fpp:116: ',
'@:ALLOCATE(bub_dphidt(1:nBubs_glb))'
856# 116 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
858# 116 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
859 call flush (output_unit)
860# 116 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
862# 116 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
864# 116 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
866# 116 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
868# 116 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
870# 116 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
871#if defined(MFC_OpenACC)
872# 116 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
874# 116 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
875#elif defined(MFC_OpenMP)
876# 116 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
878# 116 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
881# 117 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
883# 117 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
884 use iso_fortran_env,
only: output_unit
885# 117 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
887# 117 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
888 print *,
'm_bubbles_EL.fpp:117: ',
'@:ALLOCATE(gas_p(1:nBubs_glb, 1:2))'
889# 117 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
891# 117 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
892 call flush (output_unit)
893# 117 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
895# 117 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
897# 117 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
898 allocate (
gas_p(1:nbubs_glb, 1:2))
899# 117 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
901# 117 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
903# 117 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
904#if defined(MFC_OpenACC)
905# 117 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
907# 117 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
908#elif defined(MFC_OpenMP)
909# 117 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
911# 117 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
914# 118 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
916# 118 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
917 use iso_fortran_env,
only: output_unit
918# 118 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
920# 118 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
921 print *,
'm_bubbles_EL.fpp:118: ',
'@:ALLOCATE(gas_mv(1:nBubs_glb, 1:2))'
922# 118 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
924# 118 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
925 call flush (output_unit)
926# 118 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
928# 118 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
930# 118 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
931 allocate (
gas_mv(1:nbubs_glb, 1:2))
932# 118 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
934# 118 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
936# 118 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
937#if defined(MFC_OpenACC)
938# 118 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
940# 118 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
941#elif defined(MFC_OpenMP)
942# 118 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
944# 118 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
947# 119 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
949# 119 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
950 use iso_fortran_env,
only: output_unit
951# 119 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
953# 119 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
954 print *,
'm_bubbles_EL.fpp:119: ',
'@:ALLOCATE(intfc_rad(1:nBubs_glb, 1:2))'
955# 119 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
957# 119 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
958 call flush (output_unit)
959# 119 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
961# 119 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
963# 119 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
965# 119 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
967# 119 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
969# 119 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
970#if defined(MFC_OpenACC)
971# 119 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
973# 119 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
974#elif defined(MFC_OpenMP)
975# 119 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
977# 119 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
980# 120 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
982# 120 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
983 use iso_fortran_env,
only: output_unit
984# 120 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
986# 120 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
987 print *,
'm_bubbles_EL.fpp:120: ',
'@:ALLOCATE(intfc_vel(1:nBubs_glb, 1:2))'
988# 120 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
990# 120 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
991 call flush (output_unit)
992# 120 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
994# 120 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
996# 120 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
998# 120 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1000# 120 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1002# 120 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1003#if defined(MFC_OpenACC)
1004# 120 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1006# 120 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1007#elif defined(MFC_OpenMP)
1008# 120 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1010# 120 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1013# 121 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1015# 121 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1016 use iso_fortran_env,
only: output_unit
1017# 121 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1019# 121 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1020 print *,
'm_bubbles_EL.fpp:121: ',
'@:ALLOCATE(mtn_pos(1:nBubs_glb, 1:3, 1:2))'
1021# 121 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1023# 121 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1024 call flush (output_unit)
1025# 121 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1027# 121 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1029# 121 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1030 allocate (
mtn_pos(1:nbubs_glb, 1:3, 1:2))
1031# 121 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1033# 121 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1035# 121 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1036#if defined(MFC_OpenACC)
1037# 121 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1039# 121 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1040#elif defined(MFC_OpenMP)
1041# 121 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1043# 121 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1046# 122 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1048# 122 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1049 use iso_fortran_env,
only: output_unit
1050# 122 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1052# 122 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1053 print *,
'm_bubbles_EL.fpp:122: ',
'@:ALLOCATE(mtn_posPrev(1:nBubs_glb, 1:3, 1:2))'
1054# 122 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1056# 122 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1057 call flush (output_unit)
1058# 122 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1060# 122 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1062# 122 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1064# 122 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1066# 122 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1068# 122 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1069#if defined(MFC_OpenACC)
1070# 122 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1072# 122 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1073#elif defined(MFC_OpenMP)
1074# 122 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1076# 122 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1079# 123 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1081# 123 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1082 use iso_fortran_env,
only: output_unit
1083# 123 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1085# 123 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1086 print *,
'm_bubbles_EL.fpp:123: ',
'@:ALLOCATE(mtn_vel(1:nBubs_glb, 1:3, 1:2))'
1087# 123 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1089# 123 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1090 call flush (output_unit)
1091# 123 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1093# 123 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1095# 123 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1096 allocate (
mtn_vel(1:nbubs_glb, 1:3, 1:2))
1097# 123 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1099# 123 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1101# 123 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1102#if defined(MFC_OpenACC)
1103# 123 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1105# 123 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1106#elif defined(MFC_OpenMP)
1107# 123 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1109# 123 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1112# 124 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1114# 124 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1115 use iso_fortran_env,
only: output_unit
1116# 124 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1118# 124 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1119 print *,
'm_bubbles_EL.fpp:124: ',
'@:ALLOCATE(mtn_s(1:nBubs_glb, 1:3, 1:2))'
1120# 124 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1122# 124 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1123 call flush (output_unit)
1124# 124 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1126# 124 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1128# 124 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1129 allocate (
mtn_s(1:nbubs_glb, 1:3, 1:2))
1130# 124 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1132# 124 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1134# 124 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1135#if defined(MFC_OpenACC)
1136# 124 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1138# 124 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1139#elif defined(MFC_OpenMP)
1140# 124 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1142# 124 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1145# 125 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1147# 125 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1148 use iso_fortran_env,
only: output_unit
1149# 125 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1151# 125 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1152 print *,
'm_bubbles_EL.fpp:125: ',
'@:ALLOCATE(intfc_draddt(1:nBubs_glb, 1:lag_num_ts))'
1153# 125 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1155# 125 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1156 call flush (output_unit)
1157# 125 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1159# 125 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1161# 125 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1163# 125 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1165# 125 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1167# 125 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1168#if defined(MFC_OpenACC)
1169# 125 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1171# 125 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1172#elif defined(MFC_OpenMP)
1173# 125 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1175# 125 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1178# 126 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1180# 126 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1181 use iso_fortran_env,
only: output_unit
1182# 126 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1184# 126 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1185 print *,
'm_bubbles_EL.fpp:126: ',
'@:ALLOCATE(intfc_dveldt(1:nBubs_glb, 1:lag_num_ts))'
1186# 126 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1188# 126 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1189 call flush (output_unit)
1190# 126 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1192# 126 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1194# 126 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1196# 126 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1198# 126 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1200# 126 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1201#if defined(MFC_OpenACC)
1202# 126 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1204# 126 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1205#elif defined(MFC_OpenMP)
1206# 126 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1208# 126 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1211# 127 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1213# 127 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1214 use iso_fortran_env,
only: output_unit
1215# 127 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1217# 127 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1218 print *,
'm_bubbles_EL.fpp:127: ',
'@:ALLOCATE(gas_dpdt(1:nBubs_glb, 1:lag_num_ts))'
1219# 127 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1221# 127 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1222 call flush (output_unit)
1223# 127 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1225# 127 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1227# 127 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1229# 127 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1231# 127 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1233# 127 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1234#if defined(MFC_OpenACC)
1235# 127 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1237# 127 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1238#elif defined(MFC_OpenMP)
1239# 127 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1241# 127 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1244# 128 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1246# 128 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1247 use iso_fortran_env,
only: output_unit
1248# 128 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1250# 128 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1251 print *,
'm_bubbles_EL.fpp:128: ',
'@:ALLOCATE(gas_dmvdt(1:nBubs_glb, 1:lag_num_ts))'
1252# 128 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1254# 128 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1255 call flush (output_unit)
1256# 128 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1258# 128 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1260# 128 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1262# 128 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1264# 128 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1266# 128 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1267#if defined(MFC_OpenACC)
1268# 128 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1270# 128 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1271#elif defined(MFC_OpenMP)
1272# 128 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1274# 128 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1277# 129 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1279# 129 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1280 use iso_fortran_env,
only: output_unit
1281# 129 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1283# 129 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1284 print *,
'm_bubbles_EL.fpp:129: ',
'@:ALLOCATE(mtn_dposdt(1:nBubs_glb, 1:3, 1:lag_num_ts))'
1285# 129 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1287# 129 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1288 call flush (output_unit)
1289# 129 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1291# 129 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1293# 129 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1295# 129 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1297# 129 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1299# 129 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1300#if defined(MFC_OpenACC)
1301# 129 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1303# 129 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1304#elif defined(MFC_OpenMP)
1305# 129 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1307# 129 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1310# 130 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1312# 130 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1313 use iso_fortran_env,
only: output_unit
1314# 130 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1316# 130 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1317 print *,
'm_bubbles_EL.fpp:130: ',
'@:ALLOCATE(mtn_dveldt(1:nBubs_glb, 1:3, 1:lag_num_ts))'
1318# 130 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1320# 130 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1321 call flush (output_unit)
1322# 130 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1324# 130 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1326# 130 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1328# 130 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1330# 130 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1332# 130 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1333#if defined(MFC_OpenACC)
1334# 130 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1336# 130 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1337#elif defined(MFC_OpenMP)
1338# 130 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1340# 130 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1343 if (adap_dt .and. f_is_default(adap_dt_tol)) adap_dt_tol = dflt_adap_dt_tol
1353 type(scalar_field),
dimension(sys_size),
intent(inout) ::
q_cons_vf
1354 real(wp),
dimension(8) :: inputbubble
1356 integer :: id, bub_id, save_count
1358 logical :: file_exist, indomain
1359 character(LEN=path_len + 2*name_len) :: path_d_dir
1367 save_count = n_start
1368 qtime = n_start*t_save
1370 save_count = t_step_start
1371 qtime = t_step_start*dt
1374 if (save_count == 0)
then
1375 if (proc_rank == 0) print *,
'Reading lagrange bubbles input file.'
1376 inquire (file=
'input/lag_bubbles.dat', exist=file_exist)
1377 if (file_exist)
then
1378 open (94, file=
'input/lag_bubbles.dat', form=
'formatted', iostat=ios)
1380 read (94, *, iostat=ios) (inputbubble(i), i=1, 8)
1384 if (id > lag_params%nBubs_glb .and. proc_rank == 0)
then
1385 call s_mpi_abort(
"Current number of bubbles is larger than nBubs_glb")
1391 lag_id(bub_id, 2) = bub_id
1397 call s_mpi_abort(
"Initialize the lagrange bubbles in input/lag_bubbles.dat")
1400 if (proc_rank == 0) print *,
'Restarting lagrange bubbles at save_count: ', save_count
1404 print *,
" Lagrange bubbles running, in proc", proc_rank,
"number:", bub_id,
"/", id
1407# 195 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1408#if defined(MFC_OpenACC)
1409# 195 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1411# 195 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1412#elif defined(MFC_OpenMP)
1413# 195 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1415# 195 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1419# 197 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1420#if defined(MFC_OpenACC)
1421# 197 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1423# 197 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1424#elif defined(MFC_OpenMP)
1425# 197 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1427# 197 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1429# 200 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1431 rmax_glb = min(dflt_real, -dflt_real)
1432 rmin_glb = max(dflt_real, -dflt_real)
1434# 203 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1435#if defined(MFC_OpenACC)
1436# 203 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1438# 203 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1439#elif defined(MFC_OpenMP)
1440# 203 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1442# 203 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1446# 205 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1447#if defined(MFC_OpenACC)
1448# 205 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1450# 205 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1451#elif defined(MFC_OpenMP)
1452# 205 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1454# 205 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1463 if (save_count == 0)
then
1465 write (path_d_dir,
'(A,I0,A,I0)') trim(case_dir) //
'/D'
1466 call my_inquire(path_d_dir, file_exist)
1467 if (.not. file_exist)
call s_create_directory(trim(path_d_dir))
1477 type(scalar_field),
dimension(sys_size),
intent(in) ::
q_cons_vf
1478 real(wp),
dimension(8),
intent(in) :: inputbubble
1479 integer,
intent(in) :: bub_id
1481 real(wp) :: pliq, volparticle, concvap, totalmass, kparticle, cpparticle
1482 real(wp) :: omegan_local, peg, pet, rhol, pcrit, qv, gamma, pi_inf, dynp
1483 integer,
dimension(3) :: cell
1484 real(wp),
dimension(2) :: re
1485 real(wp) :: massflag, heatflag, re_trans, im_trans
1489 if (lag_params%massTransfer_model) massflag = 1._wp
1490 if (lag_params%heatTransfer_model) heatflag = 1._wp
1492 bub_r0(bub_id) = inputbubble(7)
1493 rmax_stats(bub_id) = min(dflt_real, -dflt_real)
1494 rmin_stats(bub_id) = max(dflt_real, -dflt_real)
1498 mtn_pos(bub_id,1:3,1) = inputbubble(1:3)
1500 mtn_vel(bub_id,1:3,1) = inputbubble(4:6)
1502 if (cyl_coord .and. p == 0)
then
1505 mtn_pos(bub_id, 3, 1) = atan2(inputbubble(3), inputbubble(2))
1513 if ((any(bc_x%beg == (/bc_reflective, bc_char_slip_wall, bc_slip_wall, &
1514 & bc_no_slip_wall/)) .and. cell(1) < 0) .or. (any(bc_x%end == (/bc_reflective, bc_char_slip_wall, bc_slip_wall, &
1515 & bc_no_slip_wall/)) .and. cell(1) > m) .or. (any(bc_y%beg == (/bc_reflective, bc_char_slip_wall, bc_slip_wall, &
1516 & bc_no_slip_wall/)) .and. cell(2) < 0) .or. (any(bc_y%end == (/bc_reflective, bc_char_slip_wall, bc_slip_wall, &
1517 & bc_no_slip_wall/)) .and. cell(2) > n))
then
1518 call s_mpi_abort(
"Lagrange bubble is in the ghost cells of a symmetric or wall boundary.")
1522 if ((any(bc_z%beg == (/bc_reflective, bc_char_slip_wall, bc_slip_wall, &
1523 & bc_no_slip_wall/)) .and. cell(3) < 0) .or. (any(bc_z%end == (/bc_reflective, bc_char_slip_wall, bc_slip_wall, &
1524 & bc_no_slip_wall/)) .and. cell(3) > p))
then
1525 call s_mpi_abort(
"Lagrange bubble is in the ghost cells of a symmetric or wall boundary.")
1529 call s_convert_to_mixture_variables(
q_cons_vf, cell(1), cell(2), cell(3), rhol, gamma, pi_inf, qv, re)
1532 dynp = dynp + 0.5_wp*
q_cons_vf(contxe + i)%sf(cell(1), cell(2), cell(3))**2/rhol
1534 pliq = (
q_cons_vf(e_idx)%sf(cell(1), cell(2), cell(3)) - dynp - pi_inf)/gamma
1535 if (pliq < 0) print *,
"Negative pressure", proc_rank,
q_cons_vf(e_idx)%sf(cell(1), cell(2), cell(3)), pi_inf, gamma, &
1539 gas_p(bub_id, 1) = pliq + 2._wp*(1._wp/web)/
bub_r0(bub_id)
1540 if (.not. f_approx_equal((1._wp/web), 0._wp))
then
1541 pcrit = pv - 4._wp*(1._wp/web)/(3._wp*sqrt(3._wp*
gas_p(bub_id, 1)*
bub_r0(bub_id)**3._wp/(2._wp*(1._wp/web))))
1542 pref =
gas_p(bub_id, 1)
1548 volparticle = 4._wp/3._wp*pi*
bub_r0(bub_id)**3._wp
1549 gas_mv(bub_id, 1) = pv*volparticle*(1._wp/(r_v*tw))*(massflag)
1550 gas_mg(bub_id) = (
gas_p(bub_id, 1) - pv*(massflag))*volparticle*(1._wp/(r_g*tw))
1551 if (
gas_mg(bub_id) <= 0._wp)
then
1552 call s_mpi_abort(
"The initial mass of gas inside the bubble is negative. Check the initial conditions.")
1558 omegan_local = (3._wp*(
gas_p(bub_id, 1) - pv*(massflag)) + 4._wp*(1._wp/web)/
bub_r0(bub_id))/rhol
1559 if (pv*(massflag) >
gas_p(bub_id, 1))
then
1560 call s_mpi_abort(
"Lagrange bubble initially located in a region with pressure below the vapor pressure.")
1562 omegan_local = sqrt(omegan_local/
bub_r0(bub_id)**2._wp)
1564 cpparticle = concvap*cp_v + (1._wp - concvap)*cp_g
1565 kparticle = concvap*k_vl + (1._wp - concvap)*k_gl
1568 pet = totalmass/volparticle*cpparticle*
bub_r0(bub_id)**2._wp*omegan_local/kparticle
1569 call s_transcoeff(1._wp, pet, re_trans, im_trans)
1570 gas_betat(bub_id) = re_trans*(heatflag)*kparticle
1572 peg =
bub_r0(bub_id)**2._wp*omegan_local/vd
1573 call s_transcoeff(1._wp, peg, re_trans, im_trans)
1574 gas_betac(bub_id) = re_trans*(massflag)*vd
1576 if (
gas_mg(bub_id) <= 0._wp)
then
1577 call s_mpi_abort(
"Negative gas mass in the bubble, check if the bubble is in the domain.")
1585 integer,
intent(inout) :: bub_id, save_count
1586 character(LEN=path_len + 2*name_len) :: file_loc
1587 real(wp) :: file_time, file_dt
1588 integer :: file_num_procs, file_tot_part, tot_part
1591 real(wp),
dimension(20) :: inputvals
1592 integer,
dimension(MPI_STATUS_SIZE) :: status
1593 integer(kind=MPI_OFFSET_KIND) :: disp
1595 integer,
dimension(3) :: cell
1596 logical :: indomain, particle_file, file_exist
1597 integer,
dimension(2) :: gsizes, lsizes, start_idx_part
1598 integer :: ifile, ierr, tot_data, id
1600 integer,
dimension(:),
allocatable :: proc_bubble_counts
1601 real(wp),
dimension(1:1,1:lag_io_vars) :: dummy
1606 write (file_loc,
'(A,I0,A)')
'lag_bubbles_', save_count,
'.dat'
1607 file_loc = trim(case_dir) //
'/restart_data' // trim(mpiiofs) // trim(file_loc)
1610 inquire (file=trim(file_loc), exist=file_exist)
1611 if (.not. file_exist)
then
1612 call s_mpi_abort(
'Restart file ' // trim(file_loc) //
' does not exist!')
1615 if (.not. parallel_io)
return
1617 if (proc_rank == 0)
then
1618 call mpi_file_open(mpi_comm_self, file_loc, mpi_mode_rdonly, mpi_info_int, ifile, ierr)
1620 call mpi_file_read(ifile, file_tot_part, 1, mpi_integer, status, ierr)
1621 call mpi_file_read(ifile, file_time, 1, mpi_p, status, ierr)
1622 call mpi_file_read(ifile, file_dt, 1, mpi_p, status, ierr)
1623 call mpi_file_read(ifile, file_num_procs, 1, mpi_integer, status, ierr)
1625 call mpi_file_close(ifile, ierr)
1628 call mpi_bcast(file_tot_part, 1, mpi_integer, 0, mpi_comm_world, ierr)
1629 call mpi_bcast(file_time, 1, mpi_p, 0, mpi_comm_world, ierr)
1630 call mpi_bcast(file_dt, 1, mpi_p, 0, mpi_comm_world, ierr)
1631 call mpi_bcast(file_num_procs, 1, mpi_integer, 0, mpi_comm_world, ierr)
1633 allocate (proc_bubble_counts(file_num_procs))
1635 if (proc_rank == 0)
then
1636 call mpi_file_open(mpi_comm_self, file_loc, mpi_mode_rdonly, mpi_info_int, ifile, ierr)
1639 disp = int(sizeof(file_tot_part) + 2*sizeof(file_time) + sizeof(file_num_procs), mpi_offset_kind)
1640 call mpi_file_seek(ifile, disp, mpi_seek_set, ierr)
1641 call mpi_file_read(ifile, proc_bubble_counts, file_num_procs, mpi_integer, status, ierr)
1643 call mpi_file_close(ifile, ierr)
1646 call mpi_bcast(proc_bubble_counts, file_num_procs, mpi_integer, 0, mpi_comm_world, ierr)
1652 bub_id = proc_bubble_counts(proc_rank + 1)
1654 start_idx_part(1) = 0
1656 start_idx_part(1) = start_idx_part(1) + proc_bubble_counts(i)
1659 start_idx_part(2) = 0
1661 lsizes(2) = lag_io_vars
1663 gsizes(1) = file_tot_part
1664 gsizes(2) = lag_io_vars
1666 if (bub_id > 0)
then
1667 allocate (mpi_io_data_lag_bubbles(bub_id,1:lag_io_vars))
1669 call mpi_type_create_subarray(2, gsizes, lsizes, start_idx_part, mpi_order_fortran, mpi_p, view, ierr)
1670 call mpi_type_commit(view, ierr)
1672 call mpi_file_open(mpi_comm_world, file_loc, mpi_mode_rdonly, mpi_info_int, ifile, ierr)
1675 disp = int(sizeof(file_tot_part) + 2*sizeof(file_time) + sizeof(file_num_procs) &
1676 & + file_num_procs*sizeof(proc_bubble_counts(1)), mpi_offset_kind)
1677 call mpi_file_set_view(ifile, disp, mpi_p, view,
'native', mpi_info_int, ierr)
1679 call mpi_file_read_all(ifile, mpi_io_data_lag_bubbles, lag_io_vars*bub_id, mpi_p, status, ierr)
1681 call mpi_file_close(ifile, ierr)
1682 call mpi_type_free(view, ierr)
1687 lag_id(i, 1) = int(mpi_io_data_lag_bubbles(i, 1))
1688 mtn_pos(i,1:3,1) = mpi_io_data_lag_bubbles(i,2:4)
1689 mtn_posprev(i,1:3,1) = mpi_io_data_lag_bubbles(i,5:7)
1690 mtn_vel(i,1:3,1) = mpi_io_data_lag_bubbles(i,8:10)
1691 intfc_rad(i, 1) = mpi_io_data_lag_bubbles(i, 11)
1692 intfc_vel(i, 1) = mpi_io_data_lag_bubbles(i, 12)
1693 bub_r0(i) = mpi_io_data_lag_bubbles(i, 13)
1694 rmax_stats(i) = mpi_io_data_lag_bubbles(i, 14)
1695 rmin_stats(i) = mpi_io_data_lag_bubbles(i, 15)
1696 bub_dphidt(i) = mpi_io_data_lag_bubbles(i, 16)
1697 gas_p(i, 1) = mpi_io_data_lag_bubbles(i, 17)
1698 gas_mv(i, 1) = mpi_io_data_lag_bubbles(i, 18)
1699 gas_mg(i) = mpi_io_data_lag_bubbles(i, 19)
1700 gas_betat(i) = mpi_io_data_lag_bubbles(i, 20)
1701 gas_betac(i) = mpi_io_data_lag_bubbles(i, 21)
1706 deallocate (mpi_io_data_lag_bubbles)
1710 call mpi_type_contiguous(0, mpi_p, view, ierr)
1711 call mpi_type_commit(view, ierr)
1713 call mpi_file_open(mpi_comm_world, file_loc, mpi_mode_rdonly, mpi_info_int, ifile, ierr)
1716 disp = int(sizeof(file_tot_part) + 2*sizeof(file_time) + sizeof(file_num_procs) &
1717 & + file_num_procs*sizeof(proc_bubble_counts(1)), mpi_offset_kind)
1718 call mpi_file_set_view(ifile, disp, mpi_p, view,
'native', mpi_info_int, ierr)
1720 call mpi_file_read_all(ifile, dummy, 0, mpi_p, status, ierr)
1722 call mpi_file_close(ifile, ierr)
1723 call mpi_type_free(view, ierr)
1726 if (proc_rank == 0)
then
1727 write (*,
'(A,I0,A,I0)')
'Read ', file_tot_part,
' particles from restart file at t_step = ', save_count
1728 write (*,
'(A,E15.7,A,E15.7)')
'Restart time = ', mytime,
', dt = ', dt
1731 deallocate (proc_bubble_counts)
1739 type(scalar_field),
dimension(sys_size),
intent(inout) :: q_prim_vf
1740 integer,
intent(in) :: stage
1741 real(wp) :: myVapFlux
1742 real(wp) :: preterm1, term2, paux, pint, Romega, term1_fac
1743 real(wp) :: myR_m, mygamma_m, myPb, myMass_n, myMass_v
1744 real(wp) :: myR, myV, myBeta_c, myBeta_t, myR0, myPbdot, myMvdot
1745 real(wp) :: myPinf, aux1, aux2, myCson, myRho
1746 real(wp) :: gamma, pi_inf, qv
1748# 501 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1749 real(wp),
dimension(num_fluids) :: myalpha_rho, myalpha
1750# 503 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1751 real(wp),
dimension(2) :: Re
1752 integer,
dimension(3) :: cell
1753 integer :: adap_dt_stop_max, adap_dt_stop
1754 real(wp) :: dmalf, dmntait, dmBtait, dm_bub_adv_src, dm_divu
1757 call nvtxstartrange(
"LAGRANGE-BUBBLE-DYNAMICS")
1760 if (lag_params%pressure_corrector)
then
1763# 514 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1765# 514 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1766#if defined(MFC_OpenACC)
1767# 514 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1769# 514 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1770#elif defined(MFC_OpenMP)
1771# 514 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1773# 514 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1775# 514 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1777# 514 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1779# 514 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1782 call s_get_pinf(k, q_prim_vf, 2, paux, cell, preterm1, term2, romega)
1787 pint = f_cpbw_km(myr0, myr, myv, mypb)
1788 pint = pint + 0.5_wp*myv**2._wp
1789 if (lag_params%cluster_type == 2)
then
1793 term1_fac = 3._wp/2._wp*(myr*(romega**2._wp - myr**2._wp))/(romega**3._wp - myr**3._wp)
1798# 531 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1799#if defined(MFC_OpenACC)
1800# 531 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1802# 531 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1803#elif defined(MFC_OpenMP)
1804# 531 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1806# 531 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1808# 531 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1813 adap_dt_stop_max = 0
1815# 536 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1817# 536 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1818#if defined(MFC_OpenACC)
1819# 536 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1821# 536 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1822#elif defined(MFC_OpenMP)
1823# 536 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1825# 536 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1827# 536 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1829# 536 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1831# 536 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1833# 541 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1848 call s_vflux(myr, myv, mypb, mymass_v, k, myvapflux, mymass_n, mybeta_c, myr_m, mygamma_m)
1849 mypbdot = f_bpres_dot(myvapflux, myr, myv, mypb, mymass_v, k, mybeta_t, myr_m, mygamma_m)
1850 mymvdot = 4._wp*pi*myr**2._wp*myvapflux
1853 call s_get_pinf(k, q_prim_vf, 1, mypinf, cell, aux1, aux2)
1856 call s_compute_species_fraction(q_prim_vf, cell(1), cell(2), cell(3), myalpha_rho, myalpha)
1857 call s_convert_species_to_mixture_variables_acc(myrho, gamma, pi_inf, qv, myalpha, myalpha_rho, re)
1864 call s_advance_step(myrho, mypinf, myr, myv, myr0, mypb, mypbdot, dmalf, dmntait, dmbtait, dm_bub_adv_src, &
1865 & dm_divu, k, mymass_v, mymass_n, mybeta_c, mybeta_t, mycson, adap_dt_stop)
1874 intfc_dveldt(k, stage) = f_rddot(myrho, mypinf, myr, myv, myr0, mypb, mypbdot, dmalf, dmntait, dmbtait, &
1875 & dm_bub_adv_src, dm_divu, mycson)
1881 adap_dt_stop_max = max(adap_dt_stop_max, adap_dt_stop)
1884# 590 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1885#if defined(MFC_OpenACC)
1886# 590 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1888# 590 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1889#elif defined(MFC_OpenMP)
1890# 590 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1892# 590 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1894# 590 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1897 if (adap_dt .and. adap_dt_stop_max > 0)
call s_mpi_abort(
"Adaptive time stepping failed to converge.")
1901# 595 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1903# 595 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1904#if defined(MFC_OpenACC)
1905# 595 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1907# 595 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1908#elif defined(MFC_OpenMP)
1909# 595 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1911# 595 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1913# 595 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1915# 595 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1917# 595 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1926# 602 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1927#if defined(MFC_OpenACC)
1928# 602 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1930# 602 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1931#elif defined(MFC_OpenMP)
1932# 602 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1934# 602 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1936# 602 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1946 type(scalar_field),
dimension(sys_size),
intent(inout) :: q_cons_vf
1947 type(scalar_field),
dimension(sys_size),
intent(inout) :: q_prim_vf
1948 type(scalar_field),
dimension(sys_size),
intent(inout) :: rhs_vf
1949 integer :: i, j, k, l
1953 if (lag_params%solver_approach == 2)
then
1957# 621 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1959# 621 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1960#if defined(MFC_OpenACC)
1961# 621 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1963# 621 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1964#elif defined(MFC_OpenMP)
1965# 621 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1967# 621 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1969# 621 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1971# 621 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1973# 621 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1979 if (
q_beta(1)%sf(i, j, k) > (1._wp - lag_params%valmaxvoid))
then
1980 rhs_vf(l)%sf(i, j, k) = rhs_vf(l)%sf(i, j, k) + q_cons_vf(l)%sf(i, j, k)*(
q_beta(2)%sf(i, j, &
1981 & k) +
q_beta(5)%sf(i, j, k))
1988# 634 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1989#if defined(MFC_OpenACC)
1990# 634 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1992# 634 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1993#elif defined(MFC_OpenMP)
1994# 634 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1996# 634 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
1998# 634 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2002# 636 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2004# 636 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2005#if defined(MFC_OpenACC)
2006# 636 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2008# 636 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2009#elif defined(MFC_OpenMP)
2010# 636 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2012# 636 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2014# 636 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2016# 636 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2018# 636 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2024 if (
q_beta(1)%sf(i, j, k) > (1._wp - lag_params%valmaxvoid))
then
2025 rhs_vf(l)%sf(i, j, k) = rhs_vf(l)%sf(i, j, k) + q_cons_vf(l)%sf(i, j, k)/
q_beta(1)%sf(i, j, &
2026 & k)*
q_beta(2)%sf(i, j, k)
2033# 649 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2034#if defined(MFC_OpenACC)
2035# 649 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2037# 649 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2038#elif defined(MFC_OpenMP)
2039# 649 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2041# 649 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2043# 649 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2052# 656 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2054# 656 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2055#if defined(MFC_OpenACC)
2056# 656 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2058# 656 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2059#elif defined(MFC_OpenMP)
2060# 656 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2062# 656 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2064# 656 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2066# 656 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2068# 656 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2073 if (
q_beta(1)%sf(i, j, k) > (1._wp - lag_params%valmaxvoid))
then
2074 rhs_vf(contxe + l)%sf(i, j, k) = rhs_vf(contxe + l)%sf(i, j, k) - (1._wp -
q_beta(1)%sf(i, j, &
2081# 667 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2082#if defined(MFC_OpenACC)
2083# 667 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2085# 667 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2086#elif defined(MFC_OpenMP)
2087# 667 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2089# 667 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2091# 667 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2096# 670 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2098# 670 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2099#if defined(MFC_OpenACC)
2100# 670 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2102# 670 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2103#elif defined(MFC_OpenMP)
2104# 670 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2106# 670 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2108# 670 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2110# 670 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2112# 670 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2114 do k = idwbuff(3)%beg, idwbuff(3)%end
2115 do j = idwbuff(2)%beg, idwbuff(2)%end
2116 do i = idwbuff(1)%beg, idwbuff(1)%end
2117 q_beta(3)%sf(i, j, k) = q_prim_vf(e_idx)%sf(i, j, k)*q_prim_vf(contxe + l)%sf(i, j, k)
2122# 678 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2123#if defined(MFC_OpenACC)
2124# 678 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2126# 678 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2127#elif defined(MFC_OpenMP)
2128# 678 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2130# 678 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2132# 678 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2139# 683 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2141# 683 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2142#if defined(MFC_OpenACC)
2143# 683 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2145# 683 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2146#elif defined(MFC_OpenMP)
2147# 683 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2149# 683 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2151# 683 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2153# 683 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2155# 683 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2160 if (
q_beta(1)%sf(i, j, k) > (1._wp - lag_params%valmaxvoid))
then
2161 rhs_vf(e_idx)%sf(i, j, k) = rhs_vf(e_idx)%sf(i, j, k) -
q_beta(4)%sf(i, j, &
2162 & k)*(1._wp -
q_beta(1)%sf(i, j, k))/
q_beta(1)%sf(i, j, k)
2168# 694 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2169#if defined(MFC_OpenACC)
2170# 694 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2172# 694 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2173#elif defined(MFC_OpenMP)
2174# 694 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2176# 694 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2178# 694 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2189# 703 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2191# 703 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2193# 703 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2195# 703 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2197# 703 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2199# 703 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2201# 703 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2203# 703 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2205# 703 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2207# 703 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2209# 703 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2211# 703 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2213# 703 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2215# 703 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2217# 703 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2219# 703 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2221# 703 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2224 type(scalar_field),
dimension(sys_size),
intent(in) :: q_prim_vf
2225 real(wp),
intent(in) :: pinf, rhol, gamma, pi_inf
2226 integer,
dimension(3),
intent(in) :: cell
2227 real(wp),
intent(out) :: cson
2229# 713 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2230 real(wp),
dimension(num_dims) :: vel
2231# 715 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2236# 718 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2237#if defined(MFC_OpenACC)
2238# 718 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2240# 718 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2241#elif defined(MFC_OpenMP)
2242# 718 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2244# 718 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2247 vel(i) = q_prim_vf(i + contxe)%sf(cell(1), cell(2), cell(3))
2249 e = gamma*pinf + pi_inf + 0.5_wp*rhol*dot_product(vel, vel)
2251 cson = sqrt((h - 0.5_wp*dot_product(vel, vel))/gamma)
2258 integer :: i, j, k, l
2260 call nvtxstartrange(
"BUBBLES-LAGRANGE-KERNELS")
2263# 735 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2265# 735 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2266#if defined(MFC_OpenACC)
2267# 735 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2269# 735 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2270#elif defined(MFC_OpenMP)
2271# 735 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2273# 735 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2275# 735 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2277# 735 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2279# 735 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2282 do l = idwbuff(3)%beg, idwbuff(3)%end
2283 do k = idwbuff(2)%beg, idwbuff(2)%end
2284 do j = idwbuff(1)%beg, idwbuff(1)%end
2285 q_beta(i)%sf(j, k, l) = 0._wp
2291# 745 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2292#if defined(MFC_OpenACC)
2293# 745 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2295# 745 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2296#elif defined(MFC_OpenMP)
2297# 745 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2299# 745 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2301# 745 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2308# 750 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2310# 750 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2311#if defined(MFC_OpenACC)
2312# 750 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2314# 750 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2315#elif defined(MFC_OpenMP)
2316# 750 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2318# 750 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2320# 750 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2322# 750 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2324# 750 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2326 do l = idwbuff(3)%beg, idwbuff(3)%end
2327 do k = idwbuff(2)%beg, idwbuff(2)%end
2328 do j = idwbuff(1)%beg, idwbuff(1)%end
2331 q_beta(1)%sf(j, k, l) = max(
q_beta(1)%sf(j, k, l), 1._wp - lag_params%valmaxvoid)
2336# 760 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2337#if defined(MFC_OpenACC)
2338# 760 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2340# 760 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2341#elif defined(MFC_OpenMP)
2342# 760 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2344# 760 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2346# 760 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2354 subroutine s_get_pinf(bub_id, q_prim_vf, ptype, f_pinfl, cell, preterm1, term2, Romega)
2357# 769 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2359# 769 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2361# 769 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2363# 769 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2365# 769 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2367# 769 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2369# 769 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2371# 769 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2373# 769 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2375# 769 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2377# 769 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2379# 769 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2381# 769 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2383# 769 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2385# 769 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2387# 769 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2389# 769 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2392 integer,
intent(in) :: bub_id, ptype
2393 type(scalar_field),
dimension(sys_size),
intent(in) :: q_prim_vf
2394 real(wp),
intent(out) :: f_pinfl
2395 integer,
dimension(3),
intent(out) :: cell
2396 real(wp),
intent(out),
optional :: preterm1, term2, Romega
2397 real(wp),
dimension(3) :: scoord, psi
2398 real(wp) :: dc, vol, aux
2399 real(wp) :: volgas, term1, Rbeq, denom
2400 real(wp) :: charvol, charpres, charvol2, charpres2
2401 integer,
dimension(3) :: cellaux
2403 integer :: smearGrid, smearGridz
2404 logical :: celloutside
2406 scoord =
mtn_s(bub_id,1:3,2)
2410 cell(:) = int(scoord(:))
2412# 790 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2413#if defined(MFC_OpenACC)
2414# 790 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2416# 790 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2417#elif defined(MFC_OpenMP)
2418# 790 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2420# 790 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2423 if (scoord(i) < 0._wp) cell(i) = cell(i) - 1
2426 if ((lag_params%cluster_type == 1))
then
2430 vol = dx(cell(1))*dy(cell(2))*dz(cell(3))
2433 vol = dx(cell(1))*dy(cell(2))*y_cc(cell(2))*2._wp*pi
2435 vol = dx(cell(1))*dy(cell(2))*lag_params%charwidth
2440 psi(1) = (scoord(1) - real(cell(1)))*dx(cell(1)) + x_cb(cell(1) - 1)
2441 if (cell(1) == (m + buff_size))
then
2442 cell(1) = cell(1) - 1
2444 else if (cell(1) == (-buff_size))
then
2447 if (psi(1) < x_cc(cell(1))) cell(1) = cell(1) - 1
2448 psi(1) = abs((psi(1) - x_cc(cell(1)))/(x_cc(cell(1) + 1) - x_cc(cell(1))))
2451 psi(2) = (scoord(2) - real(cell(2)))*dy(cell(2)) + y_cb(cell(2) - 1)
2452 if (cell(2) == (n + buff_size))
then
2453 cell(2) = cell(2) - 1
2455 else if (cell(2) == (-buff_size))
then
2458 if (psi(2) < y_cc(cell(2))) cell(2) = cell(2) - 1
2459 psi(2) = abs((psi(2) - y_cc(cell(2)))/(y_cc(cell(2) + 1) - y_cc(cell(2))))
2463 psi(3) = (scoord(3) - real(cell(3)))*dz(cell(3)) + z_cb(cell(3) - 1)
2464 if (cell(3) == (p + buff_size))
then
2465 cell(3) = cell(3) - 1
2467 else if (cell(3) == (-buff_size))
then
2470 if (psi(3) < z_cc(cell(3))) cell(3) = cell(3) - 1
2471 psi(3) = abs((psi(3) - z_cc(cell(3)))/(z_cc(cell(3) + 1) - z_cc(cell(3))))
2479 f_pinfl = q_prim_vf(e_idx)%sf(cell(1), cell(2), cell(3))*(1._wp - psi(1))*(1._wp - psi(2))
2480 f_pinfl = f_pinfl + q_prim_vf(e_idx)%sf(cell(1) + 1, cell(2), cell(3))*psi(1)*(1._wp - psi(2))
2481 f_pinfl = f_pinfl + q_prim_vf(e_idx)%sf(cell(1) + 1, cell(2) + 1, cell(3))*psi(1)*psi(2)
2482 f_pinfl = f_pinfl + q_prim_vf(e_idx)%sf(cell(1), cell(2) + 1, cell(3))*(1._wp - psi(1))*psi(2)
2484 f_pinfl = q_prim_vf(e_idx)%sf(cell(1), cell(2), cell(3))*(1._wp - psi(1))*(1._wp - psi(2))*(1._wp - psi(3))
2485 f_pinfl = f_pinfl + q_prim_vf(e_idx)%sf(cell(1) + 1, cell(2), cell(3))*psi(1)*(1._wp - psi(2))*(1._wp - psi(3))
2486 f_pinfl = f_pinfl + q_prim_vf(e_idx)%sf(cell(1) + 1, cell(2) + 1, cell(3))*psi(1)*psi(2)*(1._wp - psi(3))
2487 f_pinfl = f_pinfl + q_prim_vf(e_idx)%sf(cell(1), cell(2) + 1, cell(3))*(1._wp - psi(1))*psi(2)*(1._wp - psi(3))
2488 f_pinfl = f_pinfl + q_prim_vf(e_idx)%sf(cell(1), cell(2), cell(3) + 1)*(1._wp - psi(1))*(1._wp - psi(2))*psi(3)
2489 f_pinfl = f_pinfl + q_prim_vf(e_idx)%sf(cell(1) + 1, cell(2), cell(3) + 1)*psi(1)*(1._wp - psi(2))*psi(3)
2490 f_pinfl = f_pinfl + q_prim_vf(e_idx)%sf(cell(1) + 1, cell(2) + 1, cell(3) + 1)*psi(1)*psi(2)*psi(3)
2491 f_pinfl = f_pinfl + q_prim_vf(e_idx)%sf(cell(1), cell(2) + 1, cell(3) + 1)*(1._wp - psi(1))*psi(2)*psi(3)
2495 dc = (3._wp*vol/(4._wp*pi))**(1._wp/3._wp)
2496 else if (lag_params%cluster_type >= 2)
then
2500 smeargrid = mapcells - (-mapcells) + 1
2501 smeargridz = smeargrid
2502 if (p == 0) smeargridz = 1
2511# 879 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2512#if defined(MFC_OpenACC)
2513# 879 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2515# 879 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2516#elif defined(MFC_OpenMP)
2517# 879 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2519# 879 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2523# 881 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2524#if defined(MFC_OpenACC)
2525# 881 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2527# 881 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2528#elif defined(MFC_OpenMP)
2529# 881 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2531# 881 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2535# 883 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2536#if defined(MFC_OpenACC)
2537# 883 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2539# 883 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2540#elif defined(MFC_OpenMP)
2541# 883 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2543# 883 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2545 do k = 1, smeargridz
2546 cellaux(1) = cell(1) + i - (mapcells + 1)
2547 cellaux(2) = cell(2) + j - (mapcells + 1)
2548 cellaux(3) = cell(3) + k - (mapcells + 1)
2549 if (p == 0) cellaux(3) = 0
2552 celloutside = .false.
2553 if (num_dims == 2)
then
2554 if ((cellaux(1) < -buff_size) .or. (cellaux(2) < -buff_size))
then
2555 celloutside = .true.
2557 if (cyl_coord .and. y_cc(cellaux(2)) < 0._wp)
then
2558 celloutside = .true.
2560 if ((cellaux(2) > n + buff_size) .or. (cellaux(1) > m + buff_size))
then
2561 celloutside = .true.
2564 if ((cellaux(3) < -buff_size) .or. (cellaux(1) < -buff_size) .or. (cellaux(2) < -buff_size))
then
2565 celloutside = .true.
2568 if ((cellaux(3) > p + buff_size) .or. (cellaux(2) > n + buff_size) .or. (cellaux(1) > m + buff_size)) &
2570 celloutside = .true.
2573 if (.not. celloutside)
then
2574 if (cyl_coord .and. (p == 0) .and. (y_cc(cellaux(2)) < 0._wp))
then
2575 celloutside = .true.
2579 if (.not. celloutside)
then
2582 vol = dx(cellaux(1))*dy(cellaux(2))*dz(cellaux(3))
2585 vol = dx(cellaux(1))*dy(cellaux(2))*y_cc(cellaux(2))*2._wp*pi
2587 vol = dx(cellaux(1))*dy(cellaux(2))*lag_params%charwidth
2591 charvol = charvol + vol
2592 charpres = charpres + q_prim_vf(e_idx)%sf(cellaux(1), cellaux(2), cellaux(3))*vol
2593 charvol2 = charvol2 + vol*
q_beta(1)%sf(cellaux(1), cellaux(2), cellaux(3))
2594 charpres2 = charpres2 + q_prim_vf(e_idx)%sf(cellaux(1), cellaux(2), &
2595 & cellaux(3))*vol*
q_beta(1)%sf(cellaux(1), cellaux(2), cellaux(3))
2601 f_pinfl = charpres2/charvol2
2603 dc = (3._wp*abs(vol)/(4._wp*pi))**(1._wp/3._wp)
2606 if (lag_params%pressure_corrector)
then
2613 rbeq = volgas**(1._wp/3._wp)
2614 aux = dc**3._wp - rbeq**3._wp
2616 term2 = 3._wp/2._wp*term2**2._wp*rbeq**3._wp*(1._wp - rbeq/dc)/aux
2617 preterm1 = 3._wp/2._wp*rbeq*(dc**2._wp - rbeq**2._wp)/(aux*denom)
2620 if (ptype == 2) romega = dc
2623 if (ptype == 1)
then
2624 f_pinfl = f_pinfl + preterm1*term1 + term2
2633 integer,
intent(in) :: stage
2636 if (time_stepper == 1)
then
2638# 976 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2640# 976 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2641#if defined(MFC_OpenACC)
2642# 976 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2644# 976 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2645#elif defined(MFC_OpenMP)
2646# 976 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2648# 976 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2650# 976 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2652# 976 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2654# 976 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2666# 986 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2667#if defined(MFC_OpenACC)
2668# 986 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2670# 986 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2671#elif defined(MFC_OpenMP)
2672# 986 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2674# 986 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2676# 986 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2683 if (lag_params%write_bubbles)
then
2685# 993 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2686#if defined(MFC_OpenACC)
2687# 993 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2689# 993 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2690#elif defined(MFC_OpenMP)
2691# 993 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2693# 993 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2697 else if (time_stepper == 2)
then
2698 if (stage == 1)
then
2700# 998 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2702# 998 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2703#if defined(MFC_OpenACC)
2704# 998 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2706# 998 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2707#elif defined(MFC_OpenMP)
2708# 998 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2710# 998 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2712# 998 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2714# 998 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2716# 998 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2728# 1008 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2729#if defined(MFC_OpenACC)
2730# 1008 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2732# 1008 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2733#elif defined(MFC_OpenMP)
2734# 1008 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2736# 1008 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2738# 1008 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2740 else if (stage == 2)
then
2742# 1010 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2744# 1010 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2745#if defined(MFC_OpenACC)
2746# 1010 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2748# 1010 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2749#elif defined(MFC_OpenMP)
2750# 1010 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2752# 1010 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2754# 1010 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2756# 1010 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2758# 1010 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2770# 1020 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2771#if defined(MFC_OpenACC)
2772# 1020 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2774# 1020 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2775#elif defined(MFC_OpenMP)
2776# 1020 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2778# 1020 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2780# 1020 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2787 if (lag_params%write_bubbles)
then
2789# 1027 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2790#if defined(MFC_OpenACC)
2791# 1027 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2793# 1027 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2794#elif defined(MFC_OpenMP)
2795# 1027 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2797# 1027 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2802 else if (time_stepper == 3)
then
2803 if (stage == 1)
then
2805# 1033 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2807# 1033 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2808#if defined(MFC_OpenACC)
2809# 1033 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2811# 1033 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2812#elif defined(MFC_OpenMP)
2813# 1033 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2815# 1033 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2817# 1033 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2819# 1033 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2821# 1033 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2833# 1043 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2834#if defined(MFC_OpenACC)
2835# 1043 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2837# 1043 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2838#elif defined(MFC_OpenMP)
2839# 1043 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2841# 1043 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2843# 1043 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2845 else if (stage == 2)
then
2847# 1045 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2849# 1045 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2850#if defined(MFC_OpenACC)
2851# 1045 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2853# 1045 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2854#elif defined(MFC_OpenMP)
2855# 1045 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2857# 1045 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2859# 1045 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2861# 1045 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2863# 1045 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2875# 1055 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2876#if defined(MFC_OpenACC)
2877# 1055 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2879# 1055 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2880#elif defined(MFC_OpenMP)
2881# 1055 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2883# 1055 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2885# 1055 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2887 else if (stage == 3)
then
2889# 1057 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2891# 1057 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2892#if defined(MFC_OpenACC)
2893# 1057 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2895# 1057 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2896#elif defined(MFC_OpenMP)
2897# 1057 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2899# 1057 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2901# 1057 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2903# 1057 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2905# 1057 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2921# 1071 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2922#if defined(MFC_OpenACC)
2923# 1071 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2925# 1071 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2926#elif defined(MFC_OpenMP)
2927# 1071 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2929# 1071 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2931# 1071 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2938 if (lag_params%write_bubbles)
then
2940# 1078 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2941#if defined(MFC_OpenACC)
2942# 1078 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2944# 1078 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2945#elif defined(MFC_OpenMP)
2946# 1078 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2948# 1078 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
2960 real(wp),
dimension(3),
intent(in) :: pos
2961 real(wp),
dimension(3),
intent(out) :: scoord
2962 integer,
dimension(3),
intent(inout) :: cell
2965 do while (pos(1) < x_cb(cell(1) - 1))
2966 cell(1) = cell(1) - 1
2969 do while (pos(1) > x_cb(cell(1)))
2970 cell(1) = cell(1) + 1
2973 do while (pos(2) < y_cb(cell(2) - 1))
2974 cell(2) = cell(2) - 1
2977 do while (pos(2) > y_cb(cell(2)))
2978 cell(2) = cell(2) + 1
2982 do while (pos(3) < z_cb(cell(3) - 1))
2983 cell(3) = cell(3) - 1
2985 do while (pos(3) > z_cb(cell(3)))
2986 cell(3) = cell(3) + 1
2995 scoord(1) = cell(1) + (pos(1) - x_cb(cell(1) - 1))/dx(cell(1))
2996 scoord(2) = cell(2) + (pos(2) - y_cb(cell(2) - 1))/dy(cell(2))
2998 if (p > 0) scoord(3) = cell(3) + (pos(3) - z_cb(cell(3) - 1))/dz(cell(3))
2999 cell(:) = int(scoord(:))
3001 if (scoord(i) < 0._wp) cell(i) = cell(i) - 1
3012# 1140 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3014# 1140 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3015#if defined(MFC_OpenACC)
3016# 1140 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3018# 1140 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3019#elif defined(MFC_OpenMP)
3020# 1140 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3022# 1140 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3024# 1140 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3026# 1140 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3028# 1140 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3041# 1151 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3042#if defined(MFC_OpenACC)
3043# 1151 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3045# 1151 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3046#elif defined(MFC_OpenMP)
3047# 1151 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3049# 1151 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3051# 1151 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3060 real(wp),
dimension(3),
intent(in) :: pos_part
3064 if (p == 0 .and. cyl_coord .neqv. .true.)
then
3066 particle_in_domain = ((pos_part(1) < x_cb(m + buff_size)) .and. (pos_part(1) >= x_cb(-buff_size - 1)) &
3067 & .and. (pos_part(2) < y_cb(n + buff_size)) .and. (pos_part(2) >= y_cb(-buff_size - 1)) &
3068 & .and. (pos_part(3) < lag_params%charwidth/2._wp) .and. (pos_part(3) >= &
3069 & -lag_params%charwidth/2._wp))
3072 particle_in_domain = ((pos_part(1) < x_cb(m + buff_size)) .and. (pos_part(1) >= x_cb(-buff_size - 1)) &
3073 & .and. (abs(pos_part(2)) < y_cb(n + buff_size)) .and. (abs(pos_part(2)) >= max(y_cb(-buff_size &
3079 particle_in_domain = ((pos_part(1) < x_cb(m + buff_size)) .and. (pos_part(1) >= x_cb(-buff_size - 1)) &
3080 & .and. (pos_part(2) < y_cb(n + buff_size)) .and. (pos_part(2) >= y_cb(-buff_size - 1)) &
3081 & .and. (pos_part(3) < z_cb(p + buff_size)) .and. (pos_part(3) >= z_cb(-buff_size - 1)))
3085 if (any(bc_x%beg == (/bc_reflective, bc_char_slip_wall, bc_slip_wall, bc_no_slip_wall/)))
then
3088 if (any(bc_x%end == (/bc_reflective, bc_char_slip_wall, bc_slip_wall, bc_no_slip_wall/)))
then
3091 if (any(bc_y%beg == (/bc_reflective, bc_char_slip_wall, bc_slip_wall, bc_no_slip_wall/)) .and. (.not. cyl_coord))
then
3094 if (any(bc_y%end == (/bc_reflective, bc_char_slip_wall, bc_slip_wall, bc_no_slip_wall/)) .and. (.not. cyl_coord))
then
3098 if (any(bc_z%beg == (/bc_reflective, bc_char_slip_wall, bc_slip_wall, bc_no_slip_wall/)))
then
3101 if (any(bc_z%end == (/bc_reflective, bc_char_slip_wall, bc_slip_wall, bc_no_slip_wall/)))
then
3112 real(wp),
dimension(3),
intent(in) :: pos_part
3115 & .and. (pos_part(2) >= y_cb(-1)))
3127 real(stp),
dimension(idwbuff(1)%beg:,idwbuff(2)%beg:,idwbuff(3)%beg:),
intent(inout) :: q, dq
3128 integer,
intent(in) :: dir
3134# 1232 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3136# 1232 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3137#if defined(MFC_OpenACC)
3138# 1232 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3140# 1232 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3141#elif defined(MFC_OpenMP)
3142# 1232 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3144# 1232 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3146# 1232 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3148# 1232 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3150# 1232 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3155 dq(i, j, k) = q(i, j, k)*(dx(i + 1) - dx(i - 1)) + q(i + 1, j, k)*(dx(i) + dx(i - 1)) - q(i - 1, j, &
3156 & k)*(dx(i) + dx(i + 1))
3157 dq(i, j, k) = dq(i, j, k)/((dx(i) + dx(i - 1))*(dx(i) + dx(i + 1)))
3162# 1242 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3163#if defined(MFC_OpenACC)
3164# 1242 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3166# 1242 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3167#elif defined(MFC_OpenMP)
3168# 1242 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3170# 1242 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3172# 1242 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3174 else if (dir == 2)
then
3177# 1245 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3179# 1245 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3180#if defined(MFC_OpenACC)
3181# 1245 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3183# 1245 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3184#elif defined(MFC_OpenMP)
3185# 1245 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3187# 1245 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3189# 1245 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3191# 1245 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3193# 1245 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3198 dq(i, j, k) = q(i, j, k)*(dy(j + 1) - dy(j - 1)) + q(i, j + 1, k)*(dy(j) + dy(j - 1)) - q(i, j - 1, &
3199 & k)*(dy(j) + dy(j + 1))
3200 dq(i, j, k) = dq(i, j, k)/((dy(j) + dy(j - 1))*(dy(j) + dy(j + 1)))
3205# 1255 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3206#if defined(MFC_OpenACC)
3207# 1255 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3209# 1255 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3210#elif defined(MFC_OpenMP)
3211# 1255 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3213# 1255 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3215# 1255 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3217 else if (dir == 3)
then
3220# 1258 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3222# 1258 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3223#if defined(MFC_OpenACC)
3224# 1258 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3226# 1258 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3227#elif defined(MFC_OpenMP)
3228# 1258 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3230# 1258 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3232# 1258 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3234# 1258 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3236# 1258 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3241 dq(i, j, k) = q(i, j, k)*(dz(k + 1) - dz(k - 1)) + q(i, j, k + 1)*(dz(k) + dz(k - 1)) - q(i, j, &
3242 & k - 1)*(dz(k) + dz(k + 1))
3243 dq(i, j, k) = dq(i, j, k)/((dz(k) + dz(k - 1))*(dz(k) + dz(k + 1)))
3248# 1268 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3249#if defined(MFC_OpenACC)
3250# 1268 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3252# 1268 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3253#elif defined(MFC_OpenMP)
3254# 1268 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3256# 1268 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3258# 1268 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3267 real(wp),
intent(in) :: qtime
3269 character(LEN=path_len + 2*name_len) :: file_loc
3270 logical :: file_exist
3271 character(LEN=25) :: fmt
3273 write (file_loc,
'(A,I0,A)')
'lag_bubble_evol_', proc_rank,
'.dat'
3274 file_loc = trim(case_dir) //
'/D/' // trim(file_loc)
3275 inquire (file=trim(file_loc), exist=file_exist)
3277 if (precision == 1)
then
3278 fmt =
"(A16,A14,8A16)"
3280 fmt =
"(A24,A14,8A24)"
3283 if (.not. file_exist)
then
3284 open (11, file=trim(file_loc), form=
'formatted', position=
'rewind')
3285 write (11, fmt)
'currentTime',
'particleID',
'x',
'y',
'z',
'coreVaporMass',
'coreVaporConcentration',
'radius', &
3286 &
'interfaceVelocity',
'corePressure'
3288 open (11, file=trim(file_loc), form=
'formatted', position=
'append')
3291 if (precision == 1)
then
3292 fmt =
"(F16.8,I14,8F16.8)"
3294 fmt =
"(F24.16,I14,8F24.16)"
3299 write (11, fmt) qtime,
lag_id(
k, 1),
mtn_pos(
k, 1, 1),
mtn_pos(
k, 2, 1),
mtn_pos(
k, 3, 1),
gas_mv(
k, 1),
gas_mv(
k, &
3310 real(wp),
intent(in) :: qtime
3311 real(wp) :: volcell, voltot
3312 real(wp) :: lag_void_max, lag_void_avg, lag_vol
3313 real(wp) :: void_max_glb, void_avg_glb, vol_glb
3315 character(LEN=path_len + 2*name_len) :: file_loc
3316 logical :: file_exist
3318 if (proc_rank == 0)
then
3319 write (file_loc,
'(A)')
'voidfraction.dat'
3320 file_loc = trim(case_dir) //
'/D/' // trim(file_loc)
3321 inquire (file=trim(file_loc), exist=file_exist)
3322 if (.not. file_exist)
then
3323 open (12, file=trim(file_loc), form=
'formatted', position=
'rewind')
3325 open (12, file=trim(file_loc), form=
'formatted', position=
'append')
3329 lag_void_max = 0._wp
3330 lag_void_avg = 0._wp
3333# 1341 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3335# 1341 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3336#if defined(MFC_OpenACC)
3337# 1341 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3339# 1341 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3340#elif defined(MFC_OpenMP)
3341# 1341 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3343# 1341 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3345# 1341 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3347# 1341 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3349# 1341 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3351# 1343 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3355 lag_void_max = max(lag_void_max, 1._wp -
q_beta(1)%sf(i,
j,
k))
3356 call s_get_char_vol(i,
j,
k, volcell)
3357 if ((1._wp -
q_beta(1)%sf(i,
j,
k)) > 5.0d-11)
then
3358 lag_void_avg = lag_void_avg + (1._wp -
q_beta(1)%sf(i,
j,
k))*volcell
3359 lag_vol = lag_vol + volcell
3365# 1355 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3366#if defined(MFC_OpenACC)
3367# 1355 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3369# 1355 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3370#elif defined(MFC_OpenMP)
3371# 1355 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3373# 1355 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3375# 1355 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3379 if (num_procs > 1)
then
3380 call s_mpi_allreduce_max(lag_void_max, void_max_glb)
3381 lag_void_max = void_max_glb
3382 call s_mpi_allreduce_sum(lag_vol, vol_glb)
3384 call s_mpi_allreduce_sum(lag_void_avg, void_avg_glb)
3385 lag_void_avg = void_avg_glb
3388 voltot = lag_void_avg
3391 if (lag_vol > 0._wp) lag_void_avg = lag_void_avg/lag_vol
3393 if (proc_rank == 0)
then
3394 write (12,
'(6X,4e24.8)') qtime, lag_void_avg, lag_void_max, voltot
3404 integer,
intent(in) :: t_step
3405 character(LEN=path_len + 2*name_len) :: file_loc
3406 logical :: file_exist
3407 integer :: bub_id, tot_part
3412 integer :: ifile, ierr
3413 integer,
dimension(MPI_STATUS_SIZE) :: status
3414 integer(KIND=MPI_OFFSET_KIND) :: disp
3416 integer,
dimension(2) :: gsizes, lsizes, start_idx_part
3417 integer,
allocatable :: proc_bubble_counts(:)
3418 real(wp),
dimension(1:1,1:lag_io_vars) :: dummy
3423 if (
nbubs /= 0)
then
3431 if (.not. parallel_io)
return
3433 allocate (proc_bubble_counts(num_procs))
3436 lsizes(2) = lag_io_vars
3439 call mpi_allreduce(bub_id, tot_part, 1, mpi_integer, mpi_sum, mpi_comm_world, ierr)
3441 call mpi_allgather(bub_id, 1, mpi_integer, proc_bubble_counts, 1, mpi_integer, mpi_comm_world, ierr)
3444 call mpi_exscan(lsizes(1), start_idx_part(1), 1, mpi_integer, mpi_sum, mpi_comm_world, ierr)
3445 if (proc_rank == 0) start_idx_part(1) = 0
3446 start_idx_part(2) = 0
3448 gsizes(1) = tot_part
3449 gsizes(2) = lag_io_vars
3451 write (file_loc,
'(A,I0,A)')
'lag_bubbles_', t_step,
'.dat'
3452 file_loc = trim(case_dir) //
'/restart_data' // trim(mpiiofs) // trim(file_loc)
3455 if (proc_rank == 0)
then
3456 inquire (file=trim(file_loc), exist=file_exist)
3457 if (file_exist)
then
3458 call mpi_file_delete(file_loc, mpi_info_int, ierr)
3462 call mpi_barrier(mpi_comm_world, ierr)
3464 if (proc_rank == 0)
then
3465 call mpi_file_open(mpi_comm_self, file_loc, ior(mpi_mode_wronly, mpi_mode_create), mpi_info_int, ifile, ierr)
3468 call mpi_file_write(ifile, tot_part, 1, mpi_integer, status, ierr)
3469 call mpi_file_write(ifile, mytime, 1, mpi_p, status, ierr)
3470 call mpi_file_write(ifile, dt, 1, mpi_p, status, ierr)
3471 call mpi_file_write(ifile, num_procs, 1, mpi_integer, status, ierr)
3472 call mpi_file_write(ifile, proc_bubble_counts, num_procs, mpi_integer, status, ierr)
3474 call mpi_file_close(ifile, ierr)
3477 call mpi_barrier(mpi_comm_world, ierr)
3479 if (bub_id > 0)
then
3480 allocate (mpi_io_data_lag_bubbles(max(1, bub_id),1:lag_io_vars))
3485 mpi_io_data_lag_bubbles(i, 1) = real(
lag_id(
k, 1))
3486 mpi_io_data_lag_bubbles(i,2:4) =
mtn_pos(
k,1:3,1)
3488 mpi_io_data_lag_bubbles(i,8:10) =
mtn_vel(
k,1:3,1)
3489 mpi_io_data_lag_bubbles(i, 11) =
intfc_rad(
k, 1)
3490 mpi_io_data_lag_bubbles(i, 12) =
intfc_vel(
k, 1)
3491 mpi_io_data_lag_bubbles(i, 13) =
bub_r0(
k)
3495 mpi_io_data_lag_bubbles(i, 17) =
gas_p(
k, 1)
3496 mpi_io_data_lag_bubbles(i, 18) =
gas_mv(
k, 1)
3497 mpi_io_data_lag_bubbles(i, 19) =
gas_mg(
k)
3498 mpi_io_data_lag_bubbles(i, 20) =
gas_betat(
k)
3499 mpi_io_data_lag_bubbles(i, 21) =
gas_betac(
k)
3504 call mpi_type_create_subarray(2, gsizes, lsizes, start_idx_part, mpi_order_fortran, mpi_p, view, ierr)
3505 call mpi_type_commit(view, ierr)
3507 call mpi_file_open(mpi_comm_world, file_loc, ior(mpi_mode_wronly, mpi_mode_create), mpi_info_int, ifile, ierr)
3510 disp = int(sizeof(tot_part) + 2*sizeof(mytime) + sizeof(num_procs) + num_procs*sizeof(proc_bubble_counts(1)), &
3512 call mpi_file_set_view(ifile, disp, mpi_p, view,
'native', mpi_info_int, ierr)
3514 call mpi_file_write_all(ifile, mpi_io_data_lag_bubbles, lag_io_vars*bub_id, mpi_p, status, ierr)
3516 call mpi_file_close(ifile, ierr)
3518 deallocate (mpi_io_data_lag_bubbles)
3520 call mpi_type_contiguous(0, mpi_p, view, ierr)
3521 call mpi_type_commit(view, ierr)
3523 call mpi_file_open(mpi_comm_world, file_loc, ior(mpi_mode_wronly, mpi_mode_create), mpi_info_int, ifile, ierr)
3526 disp = int(sizeof(tot_part) + 2*sizeof(mytime) + sizeof(num_procs) + num_procs*sizeof(proc_bubble_counts(1)), &
3528 call mpi_file_set_view(ifile, disp, mpi_p, view,
'native', mpi_info_int, ierr)
3530 call mpi_file_write_all(ifile, dummy, 0, mpi_p, status, ierr)
3532 call mpi_file_close(ifile, ierr)
3535 deallocate (proc_bubble_counts)
3546# 1524 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3548# 1524 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3549#if defined(MFC_OpenACC)
3550# 1524 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3552# 1524 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3553#elif defined(MFC_OpenMP)
3554# 1524 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3556# 1524 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3558# 1524 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3560# 1524 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3562# 1524 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3564# 1526 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3572# 1532 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3573#if defined(MFC_OpenACC)
3574# 1532 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3576# 1532 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3577#elif defined(MFC_OpenMP)
3578# 1532 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3580# 1532 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3582# 1532 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3591 character(LEN=path_len + 2*name_len) :: file_loc
3592 character(len=20) :: fmt
3594 write (file_loc,
'(A,I0,A)')
'stats_lag_bubbles_', proc_rank,
'.dat'
3595 file_loc = trim(case_dir) //
'/D/' // trim(file_loc)
3598# 1546 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3599#if defined(MFC_OpenACC)
3600# 1546 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3602# 1546 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3603#elif defined(MFC_OpenMP)
3604# 1546 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3606# 1546 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3609 if (precision == 1)
then
3610 fmt =
"(A10,A14,5A16)"
3612 fmt =
"(A10,A14,5A24)"
3615 open (13, file=trim(file_loc), form=
'formatted', position=
'rewind')
3616 write (13, fmt)
'proc_rank',
'particleID',
'x',
'y',
'z',
'Rmax_glb',
'Rmin_glb'
3618 if (precision == 1)
then
3619 fmt =
"(I10,I14,5F16.8)"
3621 fmt =
"(I10,I14,5F24.16)"
3625 write (13, fmt) proc_rank,
lag_id(
k, 1),
mtn_pos(
k, 1, 1),
mtn_pos(
k, 2, 1),
mtn_pos(
k, 3, 1),
rmax_stats(
k), &
3636 integer,
intent(in) :: bub_id
3640# 1578 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3641#if defined(MFC_OpenACC)
3642# 1578 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3644# 1578 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3645#elif defined(MFC_OpenMP)
3646# 1578 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3648# 1578 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3650 do i = bub_id,
nbubs - 1
3675# 1603 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3676#if defined(MFC_OpenACC)
3677# 1603 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3679# 1603 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3680#elif defined(MFC_OpenMP)
3681# 1603 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3683# 1603 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3695# 1613 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3697# 1613 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3698 use iso_fortran_env,
only: output_unit
3699# 1613 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3701# 1613 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3702 print *,
'm_bubbles_EL.fpp:1613: ',
'@:DEALLOCATE(q_beta(i)%sf)'
3703# 1613 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3705# 1613 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3706 call flush (output_unit)
3707# 1613 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3709# 1613 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3711# 1613 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3713# 1613 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3714#if defined(MFC_OpenACC)
3715# 1613 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3717# 1613 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3718#elif defined(MFC_OpenMP)
3719# 1613 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3721# 1613 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3723# 1613 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3724 deallocate (
q_beta(i)%sf)
3727# 1615 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3729# 1615 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3730 use iso_fortran_env,
only: output_unit
3731# 1615 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3733# 1615 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3734 print *,
'm_bubbles_EL.fpp:1615: ',
'@:DEALLOCATE(q_beta)'
3735# 1615 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3737# 1615 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3738 call flush (output_unit)
3739# 1615 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3741# 1615 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3743# 1615 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3745# 1615 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3746#if defined(MFC_OpenACC)
3747# 1615 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3749# 1615 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3750#elif defined(MFC_OpenMP)
3751# 1615 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3753# 1615 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3755# 1615 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3760# 1618 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3762# 1618 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3763 use iso_fortran_env,
only: output_unit
3764# 1618 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3766# 1618 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3767 print *,
'm_bubbles_EL.fpp:1618: ',
'@:DEALLOCATE(lag_id)'
3768# 1618 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3770# 1618 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3771 call flush (output_unit)
3772# 1618 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3774# 1618 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3776# 1618 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3778# 1618 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3779#if defined(MFC_OpenACC)
3780# 1618 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3782# 1618 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3783#elif defined(MFC_OpenMP)
3784# 1618 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3786# 1618 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3788# 1618 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3791# 1619 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3793# 1619 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3794 use iso_fortran_env,
only: output_unit
3795# 1619 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3797# 1619 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3798 print *,
'm_bubbles_EL.fpp:1619: ',
'@:DEALLOCATE(bub_R0)'
3799# 1619 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3801# 1619 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3802 call flush (output_unit)
3803# 1619 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3805# 1619 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3807# 1619 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3809# 1619 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3810#if defined(MFC_OpenACC)
3811# 1619 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3813# 1619 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3814#elif defined(MFC_OpenMP)
3815# 1619 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3817# 1619 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3819# 1619 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3822# 1620 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3824# 1620 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3825 use iso_fortran_env,
only: output_unit
3826# 1620 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3828# 1620 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3829 print *,
'm_bubbles_EL.fpp:1620: ',
'@:DEALLOCATE(Rmax_stats)'
3830# 1620 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3832# 1620 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3833 call flush (output_unit)
3834# 1620 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3836# 1620 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3838# 1620 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3840# 1620 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3841#if defined(MFC_OpenACC)
3842# 1620 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3844# 1620 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3845#elif defined(MFC_OpenMP)
3846# 1620 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3848# 1620 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3850# 1620 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3853# 1621 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3855# 1621 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3856 use iso_fortran_env,
only: output_unit
3857# 1621 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3859# 1621 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3860 print *,
'm_bubbles_EL.fpp:1621: ',
'@:DEALLOCATE(Rmin_stats)'
3861# 1621 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3863# 1621 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3864 call flush (output_unit)
3865# 1621 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3867# 1621 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3869# 1621 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3871# 1621 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3872#if defined(MFC_OpenACC)
3873# 1621 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3875# 1621 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3876#elif defined(MFC_OpenMP)
3877# 1621 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3879# 1621 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3881# 1621 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3884# 1622 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3886# 1622 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3887 use iso_fortran_env,
only: output_unit
3888# 1622 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3890# 1622 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3891 print *,
'm_bubbles_EL.fpp:1622: ',
'@:DEALLOCATE(gas_mg)'
3892# 1622 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3894# 1622 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3895 call flush (output_unit)
3896# 1622 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3898# 1622 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3900# 1622 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3902# 1622 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3903#if defined(MFC_OpenACC)
3904# 1622 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3906# 1622 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3907#elif defined(MFC_OpenMP)
3908# 1622 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3910# 1622 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3912# 1622 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3915# 1623 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3917# 1623 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3918 use iso_fortran_env,
only: output_unit
3919# 1623 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3921# 1623 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3922 print *,
'm_bubbles_EL.fpp:1623: ',
'@:DEALLOCATE(gas_betaT)'
3923# 1623 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3925# 1623 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3926 call flush (output_unit)
3927# 1623 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3929# 1623 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3931# 1623 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3933# 1623 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3934#if defined(MFC_OpenACC)
3935# 1623 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3937# 1623 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3938#elif defined(MFC_OpenMP)
3939# 1623 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3941# 1623 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3943# 1623 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3946# 1624 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3948# 1624 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3949 use iso_fortran_env,
only: output_unit
3950# 1624 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3952# 1624 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3953 print *,
'm_bubbles_EL.fpp:1624: ',
'@:DEALLOCATE(gas_betaC)'
3954# 1624 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3956# 1624 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3957 call flush (output_unit)
3958# 1624 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3960# 1624 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3962# 1624 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3964# 1624 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3965#if defined(MFC_OpenACC)
3966# 1624 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3968# 1624 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3969#elif defined(MFC_OpenMP)
3970# 1624 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3972# 1624 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3974# 1624 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3977# 1625 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3979# 1625 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3980 use iso_fortran_env,
only: output_unit
3981# 1625 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3983# 1625 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3984 print *,
'm_bubbles_EL.fpp:1625: ',
'@:DEALLOCATE(bub_dphidt)'
3985# 1625 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3987# 1625 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3988 call flush (output_unit)
3989# 1625 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3991# 1625 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3993# 1625 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3995# 1625 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3996#if defined(MFC_OpenACC)
3997# 1625 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
3999# 1625 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4000#elif defined(MFC_OpenMP)
4001# 1625 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4003# 1625 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4005# 1625 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4008# 1626 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4010# 1626 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4011 use iso_fortran_env,
only: output_unit
4012# 1626 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4014# 1626 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4015 print *,
'm_bubbles_EL.fpp:1626: ',
'@:DEALLOCATE(gas_p)'
4016# 1626 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4018# 1626 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4019 call flush (output_unit)
4020# 1626 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4022# 1626 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4024# 1626 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4026# 1626 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4027#if defined(MFC_OpenACC)
4028# 1626 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4030# 1626 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4031#elif defined(MFC_OpenMP)
4032# 1626 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4034# 1626 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4036# 1626 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4039# 1627 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4041# 1627 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4042 use iso_fortran_env,
only: output_unit
4043# 1627 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4045# 1627 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4046 print *,
'm_bubbles_EL.fpp:1627: ',
'@:DEALLOCATE(gas_mv)'
4047# 1627 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4049# 1627 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4050 call flush (output_unit)
4051# 1627 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4053# 1627 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4055# 1627 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4057# 1627 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4058#if defined(MFC_OpenACC)
4059# 1627 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4061# 1627 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4062#elif defined(MFC_OpenMP)
4063# 1627 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4065# 1627 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4067# 1627 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4070# 1628 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4072# 1628 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4073 use iso_fortran_env,
only: output_unit
4074# 1628 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4076# 1628 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4077 print *,
'm_bubbles_EL.fpp:1628: ',
'@:DEALLOCATE(intfc_rad)'
4078# 1628 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4080# 1628 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4081 call flush (output_unit)
4082# 1628 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4084# 1628 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4086# 1628 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4088# 1628 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4089#if defined(MFC_OpenACC)
4090# 1628 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4092# 1628 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4093#elif defined(MFC_OpenMP)
4094# 1628 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4096# 1628 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4098# 1628 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4101# 1629 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4103# 1629 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4104 use iso_fortran_env,
only: output_unit
4105# 1629 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4107# 1629 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4108 print *,
'm_bubbles_EL.fpp:1629: ',
'@:DEALLOCATE(intfc_vel)'
4109# 1629 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4111# 1629 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4112 call flush (output_unit)
4113# 1629 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4115# 1629 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4117# 1629 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4119# 1629 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4120#if defined(MFC_OpenACC)
4121# 1629 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4123# 1629 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4124#elif defined(MFC_OpenMP)
4125# 1629 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4127# 1629 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4129# 1629 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4132# 1630 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4134# 1630 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4135 use iso_fortran_env,
only: output_unit
4136# 1630 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4138# 1630 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4139 print *,
'm_bubbles_EL.fpp:1630: ',
'@:DEALLOCATE(mtn_pos)'
4140# 1630 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4142# 1630 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4143 call flush (output_unit)
4144# 1630 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4146# 1630 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4148# 1630 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4150# 1630 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4151#if defined(MFC_OpenACC)
4152# 1630 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4154# 1630 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4155#elif defined(MFC_OpenMP)
4156# 1630 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4158# 1630 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4160# 1630 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4163# 1631 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4165# 1631 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4166 use iso_fortran_env,
only: output_unit
4167# 1631 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4169# 1631 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4170 print *,
'm_bubbles_EL.fpp:1631: ',
'@:DEALLOCATE(mtn_posPrev)'
4171# 1631 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4173# 1631 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4174 call flush (output_unit)
4175# 1631 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4177# 1631 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4179# 1631 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4181# 1631 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4182#if defined(MFC_OpenACC)
4183# 1631 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4185# 1631 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4186#elif defined(MFC_OpenMP)
4187# 1631 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4189# 1631 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4191# 1631 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4194# 1632 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4196# 1632 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4197 use iso_fortran_env,
only: output_unit
4198# 1632 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4200# 1632 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4201 print *,
'm_bubbles_EL.fpp:1632: ',
'@:DEALLOCATE(mtn_vel)'
4202# 1632 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4204# 1632 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4205 call flush (output_unit)
4206# 1632 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4208# 1632 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4210# 1632 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4212# 1632 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4213#if defined(MFC_OpenACC)
4214# 1632 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4216# 1632 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4217#elif defined(MFC_OpenMP)
4218# 1632 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4220# 1632 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4222# 1632 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4225# 1633 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4227# 1633 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4228 use iso_fortran_env,
only: output_unit
4229# 1633 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4231# 1633 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4232 print *,
'm_bubbles_EL.fpp:1633: ',
'@:DEALLOCATE(mtn_s)'
4233# 1633 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4235# 1633 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4236 call flush (output_unit)
4237# 1633 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4239# 1633 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4241# 1633 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4243# 1633 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4244#if defined(MFC_OpenACC)
4245# 1633 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4247# 1633 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4248#elif defined(MFC_OpenMP)
4249# 1633 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4251# 1633 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4253# 1633 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4256# 1634 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4258# 1634 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4259 use iso_fortran_env,
only: output_unit
4260# 1634 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4262# 1634 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4263 print *,
'm_bubbles_EL.fpp:1634: ',
'@:DEALLOCATE(intfc_draddt)'
4264# 1634 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4266# 1634 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4267 call flush (output_unit)
4268# 1634 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4270# 1634 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4272# 1634 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4274# 1634 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4275#if defined(MFC_OpenACC)
4276# 1634 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4278# 1634 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4279#elif defined(MFC_OpenMP)
4280# 1634 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4282# 1634 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4284# 1634 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4287# 1635 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4289# 1635 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4290 use iso_fortran_env,
only: output_unit
4291# 1635 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4293# 1635 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4294 print *,
'm_bubbles_EL.fpp:1635: ',
'@:DEALLOCATE(intfc_dveldt)'
4295# 1635 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4297# 1635 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4298 call flush (output_unit)
4299# 1635 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4301# 1635 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4303# 1635 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4305# 1635 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4306#if defined(MFC_OpenACC)
4307# 1635 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4309# 1635 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4310#elif defined(MFC_OpenMP)
4311# 1635 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4313# 1635 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4315# 1635 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4318# 1636 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4320# 1636 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4321 use iso_fortran_env,
only: output_unit
4322# 1636 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4324# 1636 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4325 print *,
'm_bubbles_EL.fpp:1636: ',
'@:DEALLOCATE(gas_dpdt)'
4326# 1636 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4328# 1636 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4329 call flush (output_unit)
4330# 1636 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4332# 1636 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4334# 1636 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4336# 1636 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4337#if defined(MFC_OpenACC)
4338# 1636 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4340# 1636 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4341#elif defined(MFC_OpenMP)
4342# 1636 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4344# 1636 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4346# 1636 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4349# 1637 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4351# 1637 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4352 use iso_fortran_env,
only: output_unit
4353# 1637 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4355# 1637 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4356 print *,
'm_bubbles_EL.fpp:1637: ',
'@:DEALLOCATE(gas_dmvdt)'
4357# 1637 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4359# 1637 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4360 call flush (output_unit)
4361# 1637 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4363# 1637 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4365# 1637 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4367# 1637 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4368#if defined(MFC_OpenACC)
4369# 1637 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4371# 1637 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4372#elif defined(MFC_OpenMP)
4373# 1637 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4375# 1637 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4377# 1637 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4380# 1638 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4382# 1638 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4383 use iso_fortran_env,
only: output_unit
4384# 1638 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4386# 1638 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4387 print *,
'm_bubbles_EL.fpp:1638: ',
'@:DEALLOCATE(mtn_dposdt)'
4388# 1638 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4390# 1638 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4391 call flush (output_unit)
4392# 1638 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4394# 1638 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4396# 1638 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4398# 1638 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4399#if defined(MFC_OpenACC)
4400# 1638 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4402# 1638 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4403#elif defined(MFC_OpenMP)
4404# 1638 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4406# 1638 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4408# 1638 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4411# 1639 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4413# 1639 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4414 use iso_fortran_env,
only: output_unit
4415# 1639 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4417# 1639 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4418 print *,
'm_bubbles_EL.fpp:1639: ',
'@:DEALLOCATE(mtn_dveldt)'
4419# 1639 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4421# 1639 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4422 call flush (output_unit)
4423# 1639 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4425# 1639 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4427# 1639 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4429# 1639 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4430#if defined(MFC_OpenACC)
4431# 1639 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4433# 1639 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4434#elif defined(MFC_OpenMP)
4435# 1639 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4437# 1639 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
4439# 1639 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EL.fpp"
type(scalar_field), dimension(sys_size), intent(inout) q_cons_vf
Noncharacteristic and processor boundary condition application for ghost cells and buffer regions.
Kernel functions (Gaussian, delta) that smear Lagrangian bubble effects onto the Eulerian grid.
Tracks Lagrangian bubbles and couples their dynamics to the Eulerian flow via volume averaging.
real(wp), dimension(:,:), allocatable intfc_draddt
Time derivative of bubble's radius.
impure subroutine s_write_lag_bubble_stats()
Write the maximum and minimum radius statistics for each bubble.
subroutine s_gradient_dir(q, dq, dir)
Compute the gradient of a scalar field using second-order central differences on a non-uniform grid.
real(wp) rmin_glb
Maximum and minimum bubbe size in the local domain.
real(wp), dimension(:,:,:), allocatable mtn_vel
Bubble's velocity.
real(wp), dimension(:), allocatable gas_betat
heatflux model (Preston et al., 2007)
real(wp), dimension(:), allocatable bub_dphidt
subgrid velocity potential (Maeda & Colonius, 2018)
real(wp), dimension(:,:,:), allocatable mtn_dveldt
Time derivative of the bubble's velocity.
integer q_beta_idx
Size of the q_beta vector field.
real(wp), dimension(:,:), allocatable gas_dpdt
Time derivative of gas pressure.
real(wp), dimension(:), allocatable gas_mg
Bubble's gas mass.
subroutine s_compute_bubble_el_dynamics(q_prim_vf, stage)
Contains the bubble dynamics subroutines.
impure subroutine s_write_restart_lag_bubbles(t_step)
Write restart files for the Lagrangian bubble solver.
impure subroutine s_read_input_bubbles(q_cons_vf)
Read initial bubble data from input files.
integer nbubs
Number of bubbles in the local domain.
real(wp), dimension(:,:), allocatable intfc_dveldt
Time derivative of bubble's interface velocity.
integer, private lag_num_ts
Number of time stages in the time-stepping scheme.
real(wp), dimension(:), allocatable bub_r0
Initial bubble radius.
impure subroutine s_add_bubbles(inputbubble, q_cons_vf, bub_id)
Add a new bubble from input data for a fresh start.
impure subroutine s_initialize_bubbles_el_module(q_cons_vf)
Initializes the lagrangian subgrid bubble solver.
real(wp), dimension(:), allocatable rmin_stats
Minimum radius.
real(wp), dimension(:,:), allocatable gas_mv
Vapor mass in the bubble.
impure subroutine s_update_lagrange_tdv_rk(stage)
Update Lagrangian bubble variables using TVD Runge-Kutta time stepping.
logical function particle_in_domain_physical(pos_part)
Determine if a Lagrangian bubble is within the physical domain excluding ghost cells.
impure subroutine s_restart_bubbles(bub_id, save_count)
Restore bubble data from a restart file.
real(wp), dimension(:,:), allocatable gas_dmvdt
Time derivative of the vapor mass in the bubble.
subroutine s_smear_voidfraction()
Smear the bubble effects onto the Eulerian grid.
logical function particle_in_domain(pos_part)
Determine if a bubble position lies within the current MPI subdomain including ghost cells.
subroutine s_compute_bubbles_el_source(q_cons_vf, q_prim_vf, rhs_vf)
Compute the Lagrangian bubble source terms and add them to the RHS.
subroutine s_locate_cell(pos, cell, scoord)
Locate the cell index for a given physical position.
subroutine s_compute_cson_from_pinf(q_prim_vf, pinf, cell, rhol, gamma, pi_inf, cson)
Compute the speed of sound from a given driving pressure.
real(wp), dimension(:), allocatable rmax_stats
Maximum radius.
impure subroutine s_write_void_evol(qtime)
Write void fraction statistics at each time step.
impure subroutine s_transfer_data_to_tmp()
Transfer data into the temporal variables.
integer, dimension(:,:), allocatable lag_id
Global and local IDs.
real(wp), dimension(:,:,:), allocatable mtn_s
Bubble's computational cell position in real format.
subroutine s_calculate_lag_bubble_stats()
Compute the maximum and minimum radius of each bubble.
impure subroutine s_remove_lag_bubble(bub_id)
Remove a specific Lagrangian bubble when dt becomes too small.
type(scalar_field), dimension(:), allocatable q_beta
Projection of the lagrangian particles in the Eulerian framework.
real(wp), dimension(:), allocatable gas_betac
massflux model (Preston et al., 2007)
real(wp), dimension(:,:), allocatable intfc_vel
Velocity of the bubble interface.
real(wp), dimension(:,:), allocatable gas_p
Pressure in the bubble.
real(wp), dimension(:,:), allocatable intfc_rad
Bubble radius.
impure subroutine s_write_lag_particles(qtime)
Write Lagrangian bubble state data at each time step.
impure subroutine s_finalize_lagrangian_solver()
Finalize the Lagrangian bubble solver.
real(wp), dimension(:,:,:), allocatable mtn_dposdt
Time derivative of the bubble's position.
real(wp), dimension(:,:,:), allocatable mtn_pos
Bubble's position.
real(wp), dimension(:,:,:), allocatable mtn_posprev
Bubble's previous position.
subroutine s_get_pinf(bub_id, q_prim_vf, ptype, f_pinfl, cell, preterm1, term2, romega)
Compute the bubble driving pressure p_inf.
Shared bubble-dynamics procedures (radial acceleration, wall pressure, sound speed) for ensemble- and...
Platform-specific file and directory operations: create, delete, inquire, getcwd, and basename.
Global parameters for the computational domain, fluid properties, and simulation algorithm configurat...
type(bubbles_lagrange_parameters) lag_params
Lagrange bubbles' parameters.
integer time_stepper
Time-stepper algorithm.
Basic floating-point utilities: approximate equality, default detection, and coordinate bounds.
Utility routines for bubble model setup, coordinate transforms, array sampling, and special functions...
MPI halo exchange, domain decomposition, and buffer packing/unpacking for the simulation solver.
Simulation helper routines for enthalpy computation, CFL calculation, and stability checks.
Conservative-to-primitive variable conversion, mixture property evaluation, and pressure computation.