1# 1 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.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# 167 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
35# 2 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp" 2
36# 1 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp" 1
37# 1 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp" 1
38# 2 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
39# 3 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
40# 4 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
41# 5 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
42# 6 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
44# 8 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
45# 9 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
46# 10 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
48# 17 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
50# 46 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
52# 58 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
54# 68 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
56# 98 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
58# 110 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
60# 120 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
62# 167 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
64# 2 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp" 2
66# 4 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
67# 5 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
68# 6 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
69# 7 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
70# 8 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
72# 20 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
74# 43 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
76# 48 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
78# 53 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
80# 58 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
82# 63 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
84# 68 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
86# 81 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
88# 86 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
90# 91 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
92# 96 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
94# 101 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
96# 106 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
98# 111 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
100# 116 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
102# 121 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
104# 126 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
106# 156 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
108# 197 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
110# 211 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
112# 236 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
114# 247 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
116# 249 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
117# 260 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
119# 310 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
121# 320 "/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# 339 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
127# 356 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
129# 366 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
131# 373 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
133# 379 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
135# 385 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
137# 391 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
139# 397 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
141# 403 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
143# 3 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp" 2
144# 1 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp" 1
145# 1 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp" 1
146# 2 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
147# 3 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
148# 4 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
149# 5 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
150# 6 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
152# 8 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
153# 9 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
154# 10 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
156# 17 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
158# 46 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
160# 58 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
162# 68 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
164# 98 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
166# 110 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
168# 120 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
170# 167 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
172# 2 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp" 2
174# 7 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
176# 17 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
178# 22 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
180# 27 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
182# 32 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
184# 37 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
186# 42 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
188# 47 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
190# 52 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
192# 57 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
194# 62 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
196# 73 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
198# 78 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
200# 83 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
202# 88 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
204# 103 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
206# 131 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
208# 160 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
210# 175 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
212# 193 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
214# 215 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
216# 244 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
218# 259 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
220# 269 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
222# 278 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
224# 294 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
226# 304 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
228# 311 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
230# 4 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp" 2
233# 23 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
236# 43 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
239# 55 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
242# 112 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
245# 130 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
248# 145 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
251# 164 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
254# 193 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
257# 207 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
260# 219 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
263# 231 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
266# 242 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
269# 254 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
272# 266 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
275# 275 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
278# 282 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
281# 289 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
284# 296 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
287# 303 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
289# 305 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
290# 306 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
292# 2 "/home/runner/work/MFC/MFC/src/common/include/macros.fpp" 2
294# 14 "/home/runner/work/MFC/MFC/src/common/include/macros.fpp"
299# 52 "/home/runner/work/MFC/MFC/src/common/include/macros.fpp"
302# 72 "/home/runner/work/MFC/MFC/src/common/include/macros.fpp"
305# 80 "/home/runner/work/MFC/MFC/src/common/include/macros.fpp"
308# 104 "/home/runner/work/MFC/MFC/src/common/include/macros.fpp"
311# 120 "/home/runner/work/MFC/MFC/src/common/include/macros.fpp"
314# 145 "/home/runner/work/MFC/MFC/src/common/include/macros.fpp"
316# 151 "/home/runner/work/MFC/MFC/src/common/include/macros.fpp"
318# 158 "/home/runner/work/MFC/MFC/src/common/include/macros.fpp"
320# 6 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp" 2
321# 1 "/home/runner/work/MFC/MFC/src/common/include/case.fpp" 1
327# 8 "/home/runner/work/MFC/MFC/src/common/include/case.fpp"
330# 12 "/home/runner/work/MFC/MFC/src/common/include/case.fpp"
331# 7 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp" 2
343 use m_thermochem,
only: num_species, get_temperature, get_pressure, gas_constant, get_mixture_molecular_weight, &
344 & get_mixture_energy_mass
357 & isentrope_b, cvs, qvs, qvps
359 real(wp),
allocatable,
dimension(:) ::
gs_vc
361 real(wp),
allocatable,
dimension(:,:) ::
res_vc
363# 37 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
364#if defined(MFC_OpenACC)
365# 37 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
367# 37 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
368#elif defined(MFC_OpenMP)
369# 37 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
371# 37 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
376# 40 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
377#if defined(MFC_OpenACC)
378# 40 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
380# 40 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
381#elif defined(MFC_OpenMP)
382# 40 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
384# 40 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
391# 45 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
392#if defined(MFC_OpenACC)
393# 45 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
395# 45 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
396#elif defined(MFC_OpenMP)
397# 45 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
399# 45 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
402 real(wp),
allocatable,
dimension(:,:,:),
public ::
rho_sf
403 real(wp),
allocatable,
dimension(:,:,:),
public ::
gamma_sf
404 real(wp),
allocatable,
dimension(:,:,:),
public ::
pi_inf_sf
410 subroutine s_convert_to_mixture_variables(q_vf, i, j, k, rho, gamma, pi_inf, qv, Re_K, G_K, G)
412 type(
scalar_field),
dimension(sys_size),
intent(in) :: q_vf
413 integer,
intent(in) :: i,
j,
k
414 real(wp),
intent(out),
target :: rho, gamma, pi_inf, qv
415 real(wp),
optional,
dimension(2),
intent(out) :: re_k
416 real(wp),
optional,
intent(out) :: g_k
417 real(wp),
optional,
dimension(num_fluids),
intent(in) :: g
422 call s_convert_species_to_mixture_variables(q_vf, i,
j,
k, rho, gamma, pi_inf, qv, re_k, g_k, g)
428 subroutine s_compute_pressure(energy, alf, dyn_p, pi_inf, gamma, rho, qv, rhoYks, pres, T, E_e_in, pres_mag)
431# 75 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
433# 75 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
435# 75 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
437# 75 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
439# 75 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
441# 75 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
443# 75 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
445# 75 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
447# 75 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
449# 75 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
451# 75 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
453# 75 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
455# 75 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
457# 75 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
459# 75 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
461# 75 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
463# 75 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
466 real(stp),
intent(in) :: energy, alf
467 real(wp),
intent(in) :: dyn_p
468 real(wp),
intent(in) :: pi_inf, gamma, rho, qv
469 real(wp),
intent(out) :: pres
470 real(wp),
intent(inout) :: t
471 real(wp),
intent(in),
optional :: e_e_in, pres_mag
474 real(wp),
dimension(1:num_species),
intent(in) :: rhoyks
475 real(wp),
dimension(1:num_species) :: y_rs
477 real(wp) :: e_per_kg, pdyn_per_kg
479# 91 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
484 e_int = energy - dyn_p - pres_mag
485 else if (bubbles_euler .neqv. .true.)
then
487 e_int = energy - dyn_p
490 e_int = (energy - dyn_p - qv)/(1._wp - alf) + qv
493 if (hypoelasticity .and.
present(e_e_in))
then
495 e_int = energy - dyn_p - e_e_in
499# 121 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
508 type(
scalar_field),
dimension(sys_size),
intent(in) :: q_vf
509 integer,
intent(in) :: i,
j,
k
510 real(wp),
intent(out),
target :: rho
511 real(wp),
intent(out),
target :: gamma
512 real(wp),
intent(out),
target :: pi_inf
513 real(wp),
intent(out),
target :: qv
517 rho = q_vf(1)%sf(i,
j,
k)
518 gamma = q_vf(eqn_idx%gamma)%sf(i,
j,
k)
519 pi_inf = q_vf(eqn_idx%pi_inf)%sf(i,
j,
k)
523 if (
allocated(
rho_sf))
then
534 subroutine s_convert_species_to_mixture_variables(q_vf, k, l, r, rho, gamma, pi_inf, qv, Re_K, G_K, G)
536 type(
scalar_field),
dimension(sys_size),
intent(in) :: q_vf
537 integer,
intent(in) ::
k,
l, r
538 real(wp),
intent(out),
target :: rho
539 real(wp),
intent(out),
target :: gamma
540 real(wp),
intent(out),
target :: pi_inf
541 real(wp),
intent(out),
target :: qv
542 real(wp),
optional,
dimension(2),
intent(out) :: re_k
543 real(wp),
optional,
intent(out) :: g_k
544 real(wp),
dimension(num_fluids) :: alpha_rho_k, alpha_k
545 real(wp),
optional,
dimension(num_fluids),
intent(in) :: g
556 if (
allocated(
rho_sf))
then
568# 188 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
570# 188 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
572# 188 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
574# 188 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
576# 188 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
578# 188 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
580# 188 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
582# 188 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
584# 188 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
586# 188 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
588# 188 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
590# 188 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
592# 188 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
594# 188 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
596# 188 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
598# 188 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
600# 188 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
603 real(wp),
intent(out) :: rho_k, gamma_k, pi_inf_k, qv_k
604# 195 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
605 real(wp),
dimension(num_fluids),
intent(inout) :: alpha_rho_k, alpha_k
606 real(wp),
optional,
dimension(num_fluids),
intent(in) :: g
607# 198 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
608 real(wp),
optional,
dimension(2),
intent(out) :: re_k
609 real(wp),
optional,
intent(out) :: g_k
610 real(wp) :: alpha_k_sum
618 if (
present(g_k)) g_k = 0._wp
624 alpha_rho_k(i) = max(0._wp, alpha_rho_k(i))
625 alpha_k(i) = min(max(0._wp, alpha_k(i)), 1._wp)
626 alpha_k_sum = alpha_k_sum + alpha_k(i)
628 alpha_k = alpha_k/max(alpha_k_sum,
sgm_eps)
632 if (
present(g_k))
then
636 g_k = g_k + alpha_k(i)*g(i)
638 g_k = max(0._wp, g_k)
641 if (viscous .and.
present(re_k))
then
645 if (re_size(i) > 0) re_k(i) = 0._wp
648 re_k(i) = alpha_k(re_idx(i,
j))/
res_vc(i,
j) + re_k(i)
651 re_k(i) = 1._wp/max(re_k(i),
sgm_eps)
659 & lagrange_beta_index)
662 logical,
optional,
intent(in) :: store_mixture_fields
663 logical,
optional,
intent(in) :: enforce_density_floor, preserve_qbmm_number
664 integer,
optional,
intent(in) :: lagrange_beta_index
665 logical :: allocate_mixture_fields
667 allocate_mixture_fields = .false.
668 if (
present(store_mixture_fields)) allocate_mixture_fields = store_mixture_fields
677# 266 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
678#if defined(MFC_OpenACC)
679# 266 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
681# 266 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
682#elif defined(MFC_OpenMP)
683# 266 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
685# 266 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
688# 267 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
689#if defined(MFC_OpenACC)
690# 267 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
692# 267 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
693#elif defined(MFC_OpenMP)
694# 267 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
696# 267 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
700# 269 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
702# 269 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
703 use iso_fortran_env,
only: output_unit
704# 269 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
706# 269 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
707 print *,
'm_variables_conversion.fpp:269: ',
'@:ALLOCATE(gammas (1:num_fluids))'
708# 269 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
710# 269 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
711 call flush (output_unit)
712# 269 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
714# 269 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
716# 269 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
717 allocate (gammas(1:num_fluids))
718# 269 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
720# 269 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
722# 269 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
723#if defined(MFC_OpenACC)
724# 269 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
726# 269 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
727#elif defined(MFC_OpenMP)
728# 269 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
730# 269 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
733# 270 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
735# 270 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
736 use iso_fortran_env,
only: output_unit
737# 270 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
739# 270 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
740 print *,
'm_variables_conversion.fpp:270: ',
'@:ALLOCATE(isentrope_n (1:num_fluids))'
741# 270 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
743# 270 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
744 call flush (output_unit)
745# 270 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
747# 270 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
749# 270 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
750 allocate (isentrope_n(1:num_fluids))
751# 270 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
753# 270 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
755# 270 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
756#if defined(MFC_OpenACC)
757# 270 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
759# 270 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
760#elif defined(MFC_OpenMP)
761# 270 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
763# 270 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
766# 271 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
768# 271 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
769 use iso_fortran_env,
only: output_unit
770# 271 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
772# 271 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
773 print *,
'm_variables_conversion.fpp:271: ',
'@:ALLOCATE(pi_infs(1:num_fluids))'
774# 271 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
776# 271 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
777 call flush (output_unit)
778# 271 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
780# 271 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
782# 271 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
783 allocate (pi_infs(1:num_fluids))
784# 271 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
786# 271 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
788# 271 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
789#if defined(MFC_OpenACC)
790# 271 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
792# 271 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
793#elif defined(MFC_OpenMP)
794# 271 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
796# 271 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
799# 272 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
801# 272 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
802 use iso_fortran_env,
only: output_unit
803# 272 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
805# 272 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
806 print *,
'm_variables_conversion.fpp:272: ',
'@:ALLOCATE(isentrope_B(1:num_fluids))'
807# 272 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
809# 272 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
810 call flush (output_unit)
811# 272 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
813# 272 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
815# 272 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
816 allocate (isentrope_b(1:num_fluids))
817# 272 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
819# 272 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
821# 272 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
822#if defined(MFC_OpenACC)
823# 272 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
825# 272 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
826#elif defined(MFC_OpenMP)
827# 272 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
829# 272 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
832# 273 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
834# 273 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
835 use iso_fortran_env,
only: output_unit
836# 273 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
838# 273 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
839 print *,
'm_variables_conversion.fpp:273: ',
'@:ALLOCATE(cvs (1:num_fluids))'
840# 273 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
842# 273 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
843 call flush (output_unit)
844# 273 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
846# 273 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
848# 273 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
849 allocate (cvs(1:num_fluids))
850# 273 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
852# 273 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
854# 273 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
855#if defined(MFC_OpenACC)
856# 273 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
858# 273 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
859#elif defined(MFC_OpenMP)
860# 273 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
862# 273 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
865# 274 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
867# 274 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
868 use iso_fortran_env,
only: output_unit
869# 274 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
871# 274 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
872 print *,
'm_variables_conversion.fpp:274: ',
'@:ALLOCATE(qvs (1:num_fluids))'
873# 274 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
875# 274 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
876 call flush (output_unit)
877# 274 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
879# 274 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
881# 274 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
882 allocate (qvs(1:num_fluids))
883# 274 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
885# 274 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
887# 274 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
888#if defined(MFC_OpenACC)
889# 274 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
891# 274 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
892#elif defined(MFC_OpenMP)
893# 274 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
895# 274 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
898# 275 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
900# 275 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
901 use iso_fortran_env,
only: output_unit
902# 275 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
904# 275 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
905 print *,
'm_variables_conversion.fpp:275: ',
'@:ALLOCATE(qvps (1:num_fluids))'
906# 275 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
908# 275 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
909 call flush (output_unit)
910# 275 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
912# 275 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
914# 275 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
915 allocate (qvps(1:num_fluids))
916# 275 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
918# 275 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
920# 275 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
921#if defined(MFC_OpenACC)
922# 275 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
924# 275 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
925#elif defined(MFC_OpenMP)
926# 275 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
928# 275 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
931# 276 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
933# 276 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
934 use iso_fortran_env,
only: output_unit
935# 276 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
937# 276 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
938 print *,
'm_variables_conversion.fpp:276: ',
'@:ALLOCATE(Gs_vc (1:num_fluids))'
939# 276 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
941# 276 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
942 call flush (output_unit)
943# 276 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
945# 276 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
947# 276 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
948 allocate (
gs_vc(1:num_fluids))
949# 276 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
951# 276 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
953# 276 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
954#if defined(MFC_OpenACC)
955# 276 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
957# 276 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
958#elif defined(MFC_OpenMP)
959# 276 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
961# 276 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
965 gammas(i) = fluid_pp(i)%gamma
970 select case (fluid_pp(i)%eos)
974 pi_infs(i) = fluid_pp(i)%pi_inf
976 gs_vc(i) = fluid_pp(i)%G
978 cvs(i) = fluid_pp(i)%cv
979 qvs(i) = fluid_pp(i)%qv
980 qvps(i) = fluid_pp(i)%qvp
983# 296 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
984#if defined(MFC_OpenACC)
985# 296 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
987# 296 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
988#elif defined(MFC_OpenMP)
989# 296 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
991# 296 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
995# 298 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
997# 298 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
998 use iso_fortran_env,
only: output_unit
999# 298 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1001# 298 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1002 print *,
'm_variables_conversion.fpp:298: ',
'@:ALLOCATE(Res_vc(1:2, 1:max(1, Re_size_max)))'
1003# 298 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1005# 298 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1006 call flush (output_unit)
1007# 298 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1009# 298 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1011# 298 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1012 allocate (
res_vc(1:2, 1:max(1, re_size_max)))
1013# 298 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1015# 298 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1017# 298 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1018#if defined(MFC_OpenACC)
1019# 298 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1021# 298 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1022#elif defined(MFC_OpenMP)
1023# 298 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1025# 298 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1028 if (
allocated(re_idx))
then
1030 do j = 1, re_size(i)
1031 res_vc(i,
j) = fluid_pp(re_idx(i,
j))%Re(i)
1035# 306 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1036#if defined(MFC_OpenACC)
1037# 306 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1039# 306 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1040#elif defined(MFC_OpenMP)
1041# 306 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1043# 306 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1047# 308 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1048#if defined(MFC_OpenACC)
1049# 308 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1051# 308 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1052#elif defined(MFC_OpenMP)
1053# 308 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1055# 308 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1058 if (bubbles_euler)
then
1060# 311 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1062# 311 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1063 use iso_fortran_env,
only: output_unit
1064# 311 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1066# 311 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1067 print *,
'm_variables_conversion.fpp:311: ',
'@:ALLOCATE(bubrs_vc(1:nb))'
1068# 311 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1070# 311 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1071 call flush (output_unit)
1072# 311 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1074# 311 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1076# 311 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1078# 311 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1080# 311 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1082# 311 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1083#if defined(MFC_OpenACC)
1084# 311 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1086# 311 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1087#elif defined(MFC_OpenMP)
1088# 311 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1090# 311 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1096# 315 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1097#if defined(MFC_OpenACC)
1098# 315 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1100# 315 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1101#elif defined(MFC_OpenMP)
1102# 315 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1104# 315 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1108 if (allocate_mixture_fields)
then
1112 allocate (
rho_sf(-buff_size:m + buff_size,-buff_size:n + buff_size,-buff_size:p + buff_size))
1113 allocate (
gamma_sf(-buff_size:m + buff_size,-buff_size:n + buff_size,-buff_size:p + buff_size))
1114 allocate (
pi_inf_sf(-buff_size:m + buff_size,-buff_size:n + buff_size,-buff_size:p + buff_size))
1116 allocate (
rho_sf(-buff_size:m + buff_size,-buff_size:n + buff_size,0:0))
1117 allocate (
gamma_sf(-buff_size:m + buff_size,-buff_size:n + buff_size,0:0))
1118 allocate (
pi_inf_sf(-buff_size:m + buff_size,-buff_size:n + buff_size,0:0))
1121 allocate (
rho_sf(-buff_size:m + buff_size,0:0,0:0))
1122 allocate (
gamma_sf(-buff_size:m + buff_size,0:0,0:0))
1123 allocate (
pi_inf_sf(-buff_size:m + buff_size,0:0,0:0))
1132 type(scalar_field),
dimension(sys_size),
intent(in) :: qk_cons_vf
1133 real(stp),
dimension(idwint(1)%beg:,idwint(2)%beg:,idwint(3)%beg:,1:,1:),
intent(inout) :: mv
1134 integer :: i,
j,
k,
l
1135 real(wp) :: mu, sig, nbub_sc
1137 do l = idwint(3)%beg, idwint(3)%end
1138 do k = idwint(2)%beg, idwint(2)%end
1139 do j = idwint(1)%beg, idwint(1)%end
1140 nbub_sc = qk_cons_vf(eqn_idx%bub%beg)%sf(
j,
k,
l)
1143# 352 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1144#if defined(MFC_OpenACC)
1145# 352 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1147# 352 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1148#elif defined(MFC_OpenMP)
1149# 352 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1151# 352 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1154 mu = qk_cons_vf(eqn_idx%bub%beg + 1 + (i - 1)*nmom)%sf(
j,
k,
l)/nbub_sc
1155 sig = (qk_cons_vf(eqn_idx%bub%beg + 3 + (i - 1)*nmom)%sf(
j,
k,
l)/nbub_sc - mu**2)**0.5_wp
1157 mv(
j,
k,
l, 1, i) = (mass_v0(i))*(mu - sig)**(3._wp)/(r0(i)**(3._wp))
1158 mv(
j,
k,
l, 2, i) = (mass_v0(i))*(mu - sig)**(3._wp)/(r0(i)**(3._wp))
1159 mv(
j,
k,
l, 3, i) = (mass_v0(i))*(mu + sig)**(3._wp)/(r0(i)**(3._wp))
1160 mv(
j,
k,
l, 4, i) = (mass_v0(i))*(mu + sig)**(3._wp)/(r0(i)**(3._wp))
1171 type(scalar_field),
dimension(sys_size),
intent(in) :: qk_cons_vf
1172 real(stp),
dimension(idwint(1)%beg:,idwint(2)%beg:,idwint(3)%beg:,1:,1:),
intent(in) :: mv
1173 real(stp),
dimension(idwint(1)%beg:,idwint(2)%beg:,idwint(3)%beg:,1:,1:),
intent(inout) :: pb
1174 integer :: i,
j,
k,
l
1175 real(wp) :: mu, sig, nbub_sc
1177 do l = idwint(3)%beg, idwint(3)%end
1178 do k = idwint(2)%beg, idwint(2)%end
1179 do j = idwint(1)%beg, idwint(1)%end
1180 nbub_sc = qk_cons_vf(eqn_idx%bub%beg)%sf(
j,
k,
l)
1183# 382 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1184#if defined(MFC_OpenACC)
1185# 382 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1187# 382 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1188#elif defined(MFC_OpenMP)
1189# 382 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1191# 382 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1194 mu = qk_cons_vf(eqn_idx%bub%beg + 1 + (i - 1)*nmom)%sf(
j,
k,
l)/nbub_sc
1195 sig = (qk_cons_vf(eqn_idx%bub%beg + 3 + (i - 1)*nmom)%sf(
j,
k,
l)/nbub_sc - mu**2)**0.5_wp
1198 pb(
j,
k,
l, 1, i) = (pb0(i))*(r0(i)**(3._wp))*(mass_g0(i) + mv(
j,
k,
l, 1, &
1199 & i))/(mu - sig)**(3._wp)/(mass_g0(i) + mass_v0(i))
1200 pb(
j,
k,
l, 2, i) = (pb0(i))*(r0(i)**(3._wp))*(mass_g0(i) + mv(
j,
k,
l, 2, &
1201 & i))/(mu - sig)**(3._wp)/(mass_g0(i) + mass_v0(i))
1202 pb(
j,
k,
l, 3, i) = (pb0(i))*(r0(i)**(3._wp))*(mass_g0(i) + mv(
j,
k,
l, 3, &
1203 & i))/(mu + sig)**(3._wp)/(mass_g0(i) + mass_v0(i))
1204 pb(
j,
k,
l, 4, i) = (pb0(i))*(r0(i)**(3._wp))*(mass_g0(i) + mv(
j,
k,
l, 4, &
1205 & i))/(mu + sig)**(3._wp)/(mass_g0(i) + mass_v0(i))
1219 type(scalar_field),
dimension(sys_size),
intent(in) :: qk_cons_vf
1220 type(scalar_field),
intent(inout) :: q_t_sf
1221 type(scalar_field),
dimension(sys_size),
intent(inout) :: qk_prim_vf
1222 type(int_bounds_info),
dimension(1:3),
intent(in) :: ibounds
1224# 419 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1225 real(wp),
dimension(num_fluids) :: alpha_k, alpha_rho_k
1226 real(wp),
dimension(nb) :: nrtmp
1227 real(wp) :: rhoyks(1:num_species)
1228# 423 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1229 real(wp),
dimension(2) :: re_k
1230 real(wp) :: rho_k, gamma_k, pi_inf_k, qv_k, dyn_pres_k
1231 real(wp) :: vftmp, nbub_sc
1233 real(wp) :: g_damaged
1235 integer :: i,
j,
k,
l
1237 real(wp) :: pres_mag
1245 real(wp) :: f, dga_dw, dp_dw, df_dw
1249# 442 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1251# 442 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1252#if defined(MFC_OpenACC)
1253# 442 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1255# 442 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1257# 442 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1258#elif defined(MFC_OpenMP)
1259# 442 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1261# 442 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1263# 442 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1265# 442 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1267# 442 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1269# 442 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1271# 445 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1272 do l = ibounds(3)%beg, ibounds(3)%end
1273 do k = ibounds(2)%beg, ibounds(2)%end
1274 do j = ibounds(1)%beg, ibounds(1)%end
1291 call s_convert_to_mixture_variables(qk_cons_vf,
j,
k,
l, rho_k, gamma_k, pi_inf_k, qv_k, re_k, g_k, &
1303 b(3) = qk_cons_vf(
eqn_idx%B%beg + 1)%sf(
j,
k,
l)
1306 b(2) = qk_cons_vf(
eqn_idx%B%beg + 1)%sf(
j,
k,
l)
1307 b(3) = qk_cons_vf(
eqn_idx%B%beg + 2)%sf(
j,
k,
l)
1309 b2 = b(1)**2 + b(2)**2 + b(3)**2
1313# 485 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1314#if defined(MFC_OpenACC)
1315# 485 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1317# 485 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1318#elif defined(MFC_OpenMP)
1319# 485 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1321# 485 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1324 m2 = m2 + qk_cons_vf(i)%sf(
j,
k,
l)**2
1329# 491 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1330#if defined(MFC_OpenACC)
1331# 491 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1333# 491 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1334#elif defined(MFC_OpenMP)
1335# 491 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1337# 491 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1340 s = s + qk_cons_vf(
eqn_idx%mom%beg + i - 1)%sf(
j,
k,
l)*b(i)
1347# 499 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1348#if defined(MFC_OpenACC)
1349# 499 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1351# 499 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1352#elif defined(MFC_OpenMP)
1353# 499 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1355# 499 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1358 d = d + qk_cons_vf(i)%sf(
j,
k,
l)
1364# 506 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1365#if defined(MFC_OpenACC)
1366# 506 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1368# 506 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1369#elif defined(MFC_OpenMP)
1370# 506 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1372# 506 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1374 do iter = 1, relativity_cons_to_prim_max_iter
1376 ga = (w + b2)*w/sqrt((w + b2)**2*w**2 - (m2*w**2 + s**2*(2*w + b2)))
1378 pres = (w - d*ga)/((gamma_k + 1)*ga**2)
1379 f = w - pres + (1 - 1/(2*ga**2))*b2 - s**2/(2*w**2) - e - d
1385 dga_dw = -ga**3*(2*s**2*(3*w**2 + 3*w*b2 + b2**2) + m2*w**2)/(2*w**3*(w + b2)**3)
1387 dp_dw = (ga*(1 + d*dga_dw) - 2*w*dga_dw)/((gamma_k + 1)*ga**3)
1388 df_dw = 1 - dp_dw + (b2/ga**3)*dga_dw + s**2/w**3
1392 if (abs(dw) < 1.e-12_wp*w)
exit
1396 ga = (w + b2)*w/sqrt((w + b2)**2*w**2 - (m2*w**2 + s**2*(2*w + b2)))
1397 qk_prim_vf(
eqn_idx%E)%sf(
j,
k,
l) = (w - d*ga)/((gamma_k + 1)*ga**2)
1401# 533 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1402#if defined(MFC_OpenACC)
1403# 533 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1405# 533 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1406#elif defined(MFC_OpenMP)
1407# 533 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1409# 533 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1412 qk_prim_vf(
eqn_idx%mom%beg + i - 1)%sf(
j,
k,
l) = (qk_cons_vf(
eqn_idx%mom%beg + i - 1)%sf(
j,
k, &
1413 &
l) + (s/w)*b(i))/(w + b2)
1415 qk_prim_vf(1)%sf(
j,
k,
l) = d/ga
1418# 540 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1419#if defined(MFC_OpenACC)
1420# 540 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1422# 540 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1423#elif defined(MFC_OpenMP)
1424# 540 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1426# 540 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1429 qk_prim_vf(i)%sf(
j,
k,
l) = qk_cons_vf(i)%sf(
j,
k,
l)
1439# 551 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1440#if defined(MFC_OpenACC)
1441# 551 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1443# 551 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1444#elif defined(MFC_OpenMP)
1445# 551 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1447# 551 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1450 rho_k = rho_k + max(0._wp, qk_cons_vf(i)%sf(
j,
k,
l))
1454# 556 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1455#if defined(MFC_OpenACC)
1456# 556 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1458# 556 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1459#elif defined(MFC_OpenMP)
1460# 556 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1462# 556 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1465 qk_prim_vf(i)%sf(
j,
k,
l) = rho_k
1469# 561 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1470#if defined(MFC_OpenACC)
1471# 561 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1473# 561 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1474#elif defined(MFC_OpenMP)
1475# 561 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1477# 561 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1480 qk_prim_vf(i)%sf(
j,
k,
l) = max(0._wp, qk_cons_vf(i)%sf(
j,
k,
l)/rho_k)
1485# 567 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1486#if defined(MFC_OpenACC)
1487# 567 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1489# 567 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1490#elif defined(MFC_OpenMP)
1491# 567 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1493# 567 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1496 qk_prim_vf(i)%sf(
j,
k,
l) = qk_cons_vf(i)%sf(
j,
k,
l)
1504# 576 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1505#if defined(MFC_OpenACC)
1506# 576 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1508# 576 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1509#elif defined(MFC_OpenMP)
1510# 576 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1512# 576 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1515 qk_prim_vf(i)%sf(
j,
k,
l) = qk_cons_vf(i)%sf(
j,
k,
l)/rho_k
1516 dyn_pres_k = dyn_pres_k + 5.e-1_wp*qk_cons_vf(i)%sf(
j,
k,
l)*qk_prim_vf(i)%sf(
j,
k,
l)
1521# 583 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1522#if defined(MFC_OpenACC)
1523# 583 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1525# 583 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1526#elif defined(MFC_OpenMP)
1527# 583 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1529# 583 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1531 do i = 1, num_species
1532 rhoyks(i) = qk_cons_vf(
eqn_idx%species%beg + i - 1)%sf(
j,
k,
l)
1535 t = q_t_sf%sf(
j,
k,
l)
1540 pres_mag = 0.5_wp*(
bx0**2 + qk_cons_vf(
eqn_idx%B%beg)%sf(
j,
k, &
1541 &
l)**2 + qk_cons_vf(
eqn_idx%B%beg + 1)%sf(
j,
k,
l)**2)
1543 pres_mag = 0.5_wp*(qk_cons_vf(
eqn_idx%B%beg)%sf(
j,
k,
l)**2 + qk_cons_vf(
eqn_idx%B%beg + 1)%sf(
j,
k, &
1544 &
l)**2 + qk_cons_vf(
eqn_idx%B%beg + 2)%sf(
j,
k,
l)**2)
1551 & pi_inf_k, gamma_k, rho_k, qv_k, rhoyks, pres, t, pres_mag=pres_mag)
1556 q_t_sf%sf(
j,
k,
l) = t
1562# 614 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1563#if defined(MFC_OpenACC)
1564# 614 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1566# 614 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1567#elif defined(MFC_OpenMP)
1568# 614 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1570# 614 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1580 nbub_sc = qk_cons_vf(
eqn_idx%bub%beg)%sf(
j,
k,
l)
1584# 626 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1585#if defined(MFC_OpenACC)
1586# 626 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1588# 626 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1589#elif defined(MFC_OpenMP)
1590# 626 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1592# 626 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1595 qk_prim_vf(i)%sf(
j,
k,
l) = qk_cons_vf(i)%sf(
j,
k,
l)/nbub_sc
1606 call s_comp_n_from_cons(vftmp, nrtmp, nbub_sc, weight)
1610# 642 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1611#if defined(MFC_OpenACC)
1612# 642 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1614# 642 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1615#elif defined(MFC_OpenMP)
1616# 642 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1618# 642 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1621 qk_prim_vf(i)%sf(
j,
k,
l) = qk_cons_vf(i)%sf(
j,
k,
l)/nbub_sc
1628# 650 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1629#if defined(MFC_OpenACC)
1630# 650 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1632# 650 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1633#elif defined(MFC_OpenMP)
1634# 650 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1636# 650 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1639 qk_prim_vf(i)%sf(
j,
k,
l) = qk_cons_vf(i)%sf(
j,
k,
l)
1645# 657 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1646#if defined(MFC_OpenACC)
1647# 657 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1649# 657 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1650#elif defined(MFC_OpenMP)
1651# 657 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1653# 657 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1656 qk_prim_vf(i)%sf(
j,
k,
l) = qk_cons_vf(i)%sf(
j,
k,
l)/rho_k
1668# 670 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1669#if defined(MFC_OpenACC)
1670# 670 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1672# 670 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1673#elif defined(MFC_OpenMP)
1674# 670 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1676# 670 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1687# 679 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1688#if defined(MFC_OpenACC)
1689# 679 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1691# 679 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1692#elif defined(MFC_OpenMP)
1693# 679 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1695# 679 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1698 qk_prim_vf(i)%sf(
j,
k,
l) = qk_cons_vf(i)%sf(
j,
k,
l)
1716# 698 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1717#if defined(MFC_OpenACC)
1718# 698 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1720# 698 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1721#elif defined(MFC_OpenMP)
1722# 698 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1724# 698 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1726# 698 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1734 type(scalar_field),
dimension(sys_size),
intent(in) :: q_prim_vf
1735 type(scalar_field),
dimension(sys_size),
intent(inout) ::
q_cons_vf
1743 real(wp) :: dyn_pres
1744 real(wp) :: nbub, r3tmp
1745 real(wp),
dimension(nb) :: rtmp
1747 real(wp),
dimension(2) :: re_k
1748 integer :: i,
j,
k,
l
1749 real(wp),
dimension(num_species) :: ys
1750 real(wp) :: e_mix, mix_mol_weight, t
1751 real(wp) :: pres_mag
1768 call s_convert_to_mixture_variables(q_prim_vf,
j,
k,
l, rho, gamma, pi_inf, qv, re_k, g, fluid_pp(:)%G)
1770 if (.not. igr .or. num_fluids > 1)
then
1772 do i = eqn_idx%adv%beg, eqn_idx%adv%end
1777 if (relativity)
then
1780 b(2) = q_prim_vf(eqn_idx%B%beg)%sf(
j,
k,
l)
1781 b(3) = q_prim_vf(eqn_idx%B%beg + 1)%sf(
j,
k,
l)
1783 b(1) = q_prim_vf(eqn_idx%B%beg)%sf(
j,
k,
l)
1784 b(2) = q_prim_vf(eqn_idx%B%beg + 1)%sf(
j,
k,
l)
1785 b(3) = q_prim_vf(eqn_idx%B%beg + 2)%sf(
j,
k,
l)
1789 do i = eqn_idx%mom%beg, eqn_idx%mom%end
1790 v2 = v2 + q_prim_vf(i)%sf(
j,
k,
l)**2
1792 if (v2 >= 1._wp)
call s_mpi_abort(
'Error: v squared > 1 in s_convert_primitive_to_conservative_variables')
1794 ga = 1._wp/sqrt(1._wp - v2)
1796 h = 1._wp + (gamma + 1)*q_prim_vf(eqn_idx%E)%sf(
j,
k,
l)/rho
1799 do i = eqn_idx%B%beg, eqn_idx%B%end
1800 b2 = b2 + q_prim_vf(i)%sf(
j,
k,
l)**2
1802 if (n == 0) b2 = b2 + bx0**2
1806 vdotb = vdotb + q_prim_vf(eqn_idx%mom%beg + i - 1)%sf(
j,
k,
l)*b(i)
1809 do i = 1, eqn_idx%cont%end
1813 do i = eqn_idx%mom%beg, eqn_idx%mom%end
1814 q_cons_vf(i)%sf(
j,
k,
l) = (rho*h*ga**2 + b2)*q_prim_vf(i)%sf(
j,
k, &
1815 &
l) - vdotb*b(i - eqn_idx%mom%beg + 1)
1818 q_cons_vf(eqn_idx%E)%sf(
j,
k,
l) = rho*h*ga**2 - q_prim_vf(eqn_idx%E)%sf(
j,
k, &
1819 &
l) + 0.5_wp*(b2 + v2*b2 - vdotb**2)
1821 do i = 1, eqn_idx%cont%end
1825 do i = eqn_idx%B%beg, eqn_idx%B%end
1833 do i = 1, eqn_idx%cont%end
1841 do i = eqn_idx%mom%beg, eqn_idx%mom%end
1843 dyn_pres = dyn_pres +
q_cons_vf(i)%sf(
j,
k,
l)*q_prim_vf(i)%sf(
j,
k,
l)/2._wp
1848 do i = eqn_idx%species%beg, eqn_idx%species%end
1849 ys(i - eqn_idx%species%beg + 1) = q_prim_vf(i)%sf(
j,
k,
l)
1853 call get_mixture_molecular_weight(ys, mix_mol_weight)
1854 t = q_prim_vf(eqn_idx%E)%sf(
j,
k,
l)*mix_mol_weight/(gas_constant*rho)
1855 call get_mixture_energy_mass(t, ys, e_mix)
1857 q_cons_vf(eqn_idx%E)%sf(
j,
k,
l) = dyn_pres + rho*e_mix
1862 pres_mag = 0.5_wp*(bx0**2 + q_prim_vf(eqn_idx%B%beg)%sf(
j,
k, &
1863 &
l)**2 + q_prim_vf(eqn_idx%B%beg + 1)%sf(
j,
k,
l)**2)
1865 pres_mag = 0.5_wp*(q_prim_vf(eqn_idx%B%beg)%sf(
j,
k,
l)**2 + q_prim_vf(eqn_idx%B%beg + 1)%sf(
j, &
1866 &
k,
l)**2 + q_prim_vf(eqn_idx%B%beg + 2)%sf(
j,
k,
l)**2)
1869 q_cons_vf(eqn_idx%E)%sf(
j,
k,
l) = gamma*q_prim_vf(eqn_idx%E)%sf(
j,
k, &
1870 &
l) + dyn_pres + pres_mag + pi_inf + qv
1871 else if (bubbles_euler .neqv. .true.)
then
1873 q_cons_vf(eqn_idx%E)%sf(
j,
k,
l) = gamma*q_prim_vf(eqn_idx%E)%sf(
j,
k,
l) + dyn_pres + pi_inf + qv
1876 q_cons_vf(eqn_idx%E)%sf(
j,
k,
l) = dyn_pres + (1._wp - q_prim_vf(eqn_idx%alf)%sf(
j,
k, &
1877 &
l))*(gamma*q_prim_vf(eqn_idx%E)%sf(
j,
k,
l) + pi_inf) + qv
1882 if (model_eqns == model_eqns_6eq)
then
1883 do i = 1, num_fluids
1885 &
l)*(gammas(i)*q_prim_vf(eqn_idx%E)%sf(
j,
k, &
1886 &
l) + pi_infs(i)) +
q_cons_vf(i + eqn_idx%cont%beg - 1)%sf(
j,
k,
l)*qvs(i)
1890 if (bubbles_euler)
then
1893 rtmp(i) = q_prim_vf(qbmm_idx%rs(i))%sf(
j,
k,
l)
1896 if (.not. qbmm)
then
1899 nbub = q_prim_vf(eqn_idx%n)%sf(
j,
k,
l)
1901 call s_comp_n_from_prim(real(q_prim_vf(eqn_idx%alf)%sf(
j,
k,
l), kind=wp), rtmp, nbub, weight)
1907 r3tmp = r3tmp + weight(i)*0.5_wp*(rtmp(i) + sigr)**3._wp
1908 r3tmp = r3tmp + weight(i)*0.5_wp*(rtmp(i) - sigr)**3._wp
1911 nbub = 3._wp*q_prim_vf(eqn_idx%alf)%sf(
j,
k,
l)/(4._wp*pi*r3tmp)
1914 do i = eqn_idx%bub%beg, eqn_idx%bub%end
1920 do i = eqn_idx%B%beg, eqn_idx%B%end
1925 if (hypoelasticity)
then
1927 do i = eqn_idx%stress%beg, eqn_idx%stress%end
1932 if (hypoelasticity)
then
1933 if (cont_damage) g = g*max((1._wp - q_prim_vf(eqn_idx%damage)%sf(
j,
k,
l)), 0._wp)
1934 do i = eqn_idx%stress%beg, eqn_idx%stress%end
1936 if (g > verysmall)
then
1938 &
l)**2._wp)/max(4._wp*g, verysmall)
1940 if (any(i == shear_indices))
then
1942 &
l)**2._wp)/max(4._wp*g, verysmall)
1948 if (surface_tension)
then
1952 if (cont_damage)
q_cons_vf(eqn_idx%damage)%sf(
j,
k,
l) = q_prim_vf(eqn_idx%damage)%sf(
j,
k,
l)
1954 if (hyper_cleaning)
q_cons_vf(eqn_idx%psi)%sf(
j,
k,
l) = q_prim_vf(eqn_idx%psi)%sf(
j,
k,
l)
1963 & dir_flg_in, hll_u_interface_in)
1965 integer,
intent(in) :: s2b, s3b
1968 integer,
dimension(3),
intent(in) :: dir_idx_in
1969 real(wp),
dimension(3),
intent(in) :: dir_flg_in
1970 logical,
intent(in) :: hll_u_interface_in
1971 real(wp),
dimension(0:,idwbuff(2)%beg:,idwbuff(3)%beg:,1:),
intent(in) :: qk_prim_vf
1972 real(wp),
dimension(0:,idwbuff(2)%beg:,idwbuff(3)%beg:,1:),
intent(inout) :: fk_vf
1973 real(wp),
dimension(0:,idwbuff(2)%beg:,idwbuff(3)%beg:,eqn_idx%adv%beg:),
intent(inout) :: fk_src_vf
1974 type(int_bounds_info),
intent(in) :: is1, is2, is3
1979# 956 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1980 real(wp),
dimension(num_fluids) :: alpha_rho_k
1981 real(wp),
dimension(num_fluids) :: alpha_k
1982 real(wp),
dimension(num_vels) :: vel_k
1983 real(wp),
dimension(num_species) :: y_k
1984# 961 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
1986 real(wp) :: vel_k_sum
1990 real(wp) :: pi_inf_k
1992 real(wp),
dimension(2) :: re_k
1994 real(wp) :: blkmod1_k, blkmod2_k, k_k
1995 real(wp) :: t_k, mix_mol_weight, r_gas
1996 integer :: i,
j,
k,
l
2003# 978 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2004#if defined(MFC_OpenACC)
2005# 978 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2007# 978 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2008#elif defined(MFC_OpenMP)
2009# 978 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2011# 978 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2017# 982 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2019# 982 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2020#if defined(MFC_OpenACC)
2021# 982 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2023# 982 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2025# 982 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2027# 982 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2028#elif defined(MFC_OpenMP)
2029# 982 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2031# 982 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2033# 982 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2035# 982 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2037# 982 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2039# 982 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2041# 982 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2043# 985 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2048# 988 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2049#if defined(MFC_OpenACC)
2050# 988 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2052# 988 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2053#elif defined(MFC_OpenMP)
2054# 988 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2056# 988 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2058 do i = 1, eqn_idx%cont%end
2059 alpha_rho_k(i) = qk_prim_vf(
j,
k,
l, i)
2063# 993 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2064#if defined(MFC_OpenACC)
2065# 993 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2067# 993 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2068#elif defined(MFC_OpenMP)
2069# 993 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2071# 993 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2073 do i = eqn_idx%adv%beg, eqn_idx%adv%end
2074 alpha_k(i - eqn_idx%E) = qk_prim_vf(
j,
k,
l, i)
2078# 998 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2079#if defined(MFC_OpenACC)
2080# 998 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2082# 998 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2083#elif defined(MFC_OpenMP)
2084# 998 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2086# 998 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2089 vel_k(i) = qk_prim_vf(
j,
k,
l, eqn_idx%cont%end + i)
2094# 1004 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2095#if defined(MFC_OpenACC)
2096# 1004 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2098# 1004 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2099#elif defined(MFC_OpenMP)
2100# 1004 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2102# 1004 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2105 vel_k_sum = vel_k_sum + vel_k(i)**2._wp
2108 pres_k = qk_prim_vf(
j,
k,
l, eqn_idx%E)
2109 if (hypoelasticity)
then
2121# 1021 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2122#if defined(MFC_OpenACC)
2123# 1021 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2125# 1021 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2126#elif defined(MFC_OpenMP)
2127# 1021 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2129# 1021 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2131 do i = eqn_idx%species%beg, eqn_idx%species%end
2132 y_k(i - eqn_idx%species%beg + 1) = qk_prim_vf(
j,
k,
l, i)
2135 call get_mixture_molecular_weight(y_k, mix_mol_weight)
2136 r_gas = gas_constant/mix_mol_weight
2137 t_k = pres_k/rho_k/r_gas
2138 call get_mixture_energy_mass(t_k, y_k, e_k)
2139 e_k = rho_k*e_k + 5.e-1_wp*rho_k*vel_k_sum
2142 e_k = gamma_k*pres_k + pi_inf_k + 5.e-1_wp*rho_k*vel_k_sum + qv_k
2147# 1037 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2148#if defined(MFC_OpenACC)
2149# 1037 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2151# 1037 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2152#elif defined(MFC_OpenMP)
2153# 1037 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2155# 1037 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2157 do i = 1, eqn_idx%cont%end
2158 fk_vf(
j,
k,
l, i) = alpha_rho_k(i)*vel_k(dir_idx_in(1))
2162# 1042 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2163#if defined(MFC_OpenACC)
2164# 1042 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2166# 1042 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2167#elif defined(MFC_OpenMP)
2168# 1042 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2170# 1042 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2174 & eqn_idx%cont%end + dir_idx_in(i)) = rho_k*vel_k(dir_idx_in(1))*vel_k(dir_idx_in(i)) &
2175 & + pres_k*dir_flg_in(dir_idx_in(i))
2179 fk_vf(
j,
k,
l, eqn_idx%E) = vel_k(dir_idx_in(1))*(e_k + pres_k)
2184# 1054 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2185#if defined(MFC_OpenACC)
2186# 1054 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2188# 1054 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2189#elif defined(MFC_OpenMP)
2190# 1054 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2192# 1054 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2194 do i = 1, num_species
2195 fk_vf(
j,
k,
l, i - 1 + eqn_idx%species%beg) = vel_k(dir_idx_in(1))*(rho_k*y_k(i))
2206 if (riemann_solver == riemann_solver_hlld)
then
2207 if (hypoelasticity)
then
2212# 1074 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2213 if (alt_soundspeed)
then
2216 k_k = alpha_k(1)*alpha_k(2)*(blkmod2_k - blkmod1_k)/(alpha_k(1)*blkmod2_k + alpha_k(2) &
2217 & *blkmod1_k + verysmall)
2219# 1081 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2221# 1081 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2222#if defined(MFC_OpenACC)
2223# 1081 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2225# 1081 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2226#elif defined(MFC_OpenMP)
2227# 1081 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2229# 1081 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2231 do i = eqn_idx%adv%beg, eqn_idx%adv%end
2232 fk_vf(
j,
k,
l, i) = 0._wp
2233 fk_src_vf(
j,
k,
l, i) = 0._wp
2235 fk_vf(
j,
k,
l, eqn_idx%adv%beg) = -k_k*vel_k(dir_idx_in(1))
2236 fk_vf(
j,
k,
l, eqn_idx%adv%end) = k_k*vel_k(dir_idx_in(1))
2239# 1089 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2240#if defined(MFC_OpenACC)
2241# 1089 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2243# 1089 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2244#elif defined(MFC_OpenMP)
2245# 1089 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2247# 1089 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2249 do i = eqn_idx%adv%beg, eqn_idx%adv%end
2250 fk_vf(
j,
k,
l, i) = 0._wp
2251 fk_src_vf(
j,
k,
l, i) = alpha_k(i - eqn_idx%E)
2254 else if (riemann_solver == riemann_solver_hll .and. .not. hll_u_interface_in)
then
2256# 1096 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2257#if defined(MFC_OpenACC)
2258# 1096 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2260# 1096 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2261#elif defined(MFC_OpenMP)
2262# 1096 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2264# 1096 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2266 do i = eqn_idx%adv%beg, eqn_idx%adv%end
2267 fk_vf(
j,
k,
l, i) = 0._wp
2268 fk_src_vf(
j,
k,
l, i) = alpha_k(i - eqn_idx%E)
2273# 1103 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2274#if defined(MFC_OpenACC)
2275# 1103 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2277# 1103 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2278#elif defined(MFC_OpenMP)
2279# 1103 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2281# 1103 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2283 do i = eqn_idx%adv%beg, eqn_idx%adv%end
2284 fk_vf(
j,
k,
l, i) = vel_k(dir_idx_in(1))*alpha_k(i - eqn_idx%E)
2288# 1108 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2289#if defined(MFC_OpenACC)
2290# 1108 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2292# 1108 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2293#elif defined(MFC_OpenMP)
2294# 1108 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2296# 1108 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2298 do i = eqn_idx%adv%beg, eqn_idx%adv%end
2299 fk_src_vf(
j,
k,
l, i) = vel_k(dir_idx_in(1))
2306# 1116 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2307#if defined(MFC_OpenACC)
2308# 1116 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2310# 1116 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2311#elif defined(MFC_OpenMP)
2312# 1116 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2314# 1116 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2316# 1116 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2325# 1123 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2327# 1123 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2329# 1123 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2331# 1123 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2333# 1123 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2335# 1123 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2337# 1123 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2339# 1123 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2341# 1123 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2343# 1123 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2345# 1123 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2347# 1123 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2349# 1123 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2351# 1123 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2353# 1123 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2355# 1123 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2357# 1123 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2359 type(scalar_field),
dimension(sys_size),
intent(in) :: q_vf
2360 integer,
intent(in) ::
k,
l, r
2361# 1129 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2362 real(wp),
dimension(num_fluids),
intent(out) :: alpha_rho_k, alpha_k
2363# 1131 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2365 real(wp) :: alpha_k_sum
2367 if (num_fluids == 1)
then
2368 alpha_rho_k(1) = q_vf(eqn_idx%cont%beg)%sf(
k,
l, r)
2369 if (igr .or. bubbles_euler)
then
2372 alpha_k(1) = q_vf(eqn_idx%adv%beg)%sf(
k,
l, r)
2376 do i = 1, num_fluids - 1
2377 alpha_rho_k(i) = q_vf(i)%sf(
k,
l, r)
2378 alpha_k(i) = q_vf(eqn_idx%adv%beg + i - 1)%sf(
k,
l, r)
2380 alpha_rho_k(num_fluids) = q_vf(num_fluids)%sf(
k,
l, r)
2381 alpha_k(num_fluids) = 1._wp - sum(alpha_k(1:num_fluids - 1))
2383 do i = 1, num_fluids
2384 alpha_rho_k(i) = q_vf(i)%sf(
k,
l, r)
2385 alpha_k(i) = q_vf(eqn_idx%adv%beg + i - 1)%sf(
k,
l, r)
2392 do i = 1, num_fluids
2393 alpha_rho_k(i) = max(0._wp, alpha_rho_k(i))
2394 alpha_k(i) = min(max(0._wp, alpha_k(i)), 1._wp)
2395 alpha_k_sum = alpha_k_sum + alpha_k(i)
2397 alpha_k = alpha_k/max(alpha_k_sum, 1.e-16_wp)
2400 if (num_fluids == 1 .and. bubbles_euler) alpha_k(1) = q_vf(eqn_idx%adv%beg)%sf(
k,
l, r)
2410# 1176 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2412# 1176 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2413 use iso_fortran_env,
only: output_unit
2414# 1176 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2416# 1176 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2417 print *,
'm_variables_conversion.fpp:1176: ',
'@:DEALLOCATE(gammas, isentrope_n, pi_infs, isentrope_B, cvs, qvs, qvps, Gs_vc)'
2418# 1176 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2420# 1176 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2421 call flush (output_unit)
2422# 1176 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2424# 1176 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2426# 1176 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2428# 1176 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2429#if defined(MFC_OpenACC)
2430# 1176 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2432# 1176 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2433#elif defined(MFC_OpenMP)
2434# 1176 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2436# 1176 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2438# 1176 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2439 deallocate (gammas, isentrope_n, pi_infs, isentrope_b, cvs, qvs, qvps,
gs_vc)
2442# 1178 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2444# 1178 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2445 use iso_fortran_env,
only: output_unit
2446# 1178 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2448# 1178 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2449 print *,
'm_variables_conversion.fpp:1178: ',
'@:DEALLOCATE(bubrs_vc)'
2450# 1178 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2452# 1178 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2453 call flush (output_unit)
2454# 1178 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2456# 1178 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2458# 1178 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2460# 1178 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2461#if defined(MFC_OpenACC)
2462# 1178 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2464# 1178 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2465#elif defined(MFC_OpenMP)
2466# 1178 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2468# 1178 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2470# 1178 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2473 if (
allocated(
res_vc))
then
2475# 1181 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2477# 1181 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2478 use iso_fortran_env,
only: output_unit
2479# 1181 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2481# 1181 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2482 print *,
'm_variables_conversion.fpp:1181: ',
'@:DEALLOCATE(Res_vc)'
2483# 1181 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2485# 1181 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2486 call flush (output_unit)
2487# 1181 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2489# 1181 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2491# 1181 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2493# 1181 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2494#if defined(MFC_OpenACC)
2495# 1181 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2497# 1181 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2498#elif defined(MFC_OpenMP)
2499# 1181 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2501# 1181 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2503# 1181 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2515# 1191 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2517# 1191 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2519# 1191 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2521# 1191 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2523# 1191 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2525# 1191 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2527# 1191 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2529# 1191 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2531# 1191 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2533# 1191 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2535# 1191 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2537# 1191 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2539# 1191 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2541# 1191 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2543# 1191 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2545# 1191 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2547# 1191 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2550# 1196 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2551 real(wp),
dimension(num_fluids),
intent(in) :: alpha_rho_k, alpha_k
2552# 1198 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2553 real(wp),
intent(out) :: rho_k, gamma_k, pi_inf_k, qv_k
2560 if (bubbles_euler)
then
2561 rho_k = alpha_rho_k(1)
2563 pi_inf_k = pi_infs(1)
2565 qv_k = alpha_rho_k(1)*qvs(1)
2573# 1217 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2574#if defined(MFC_OpenACC)
2575# 1217 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2577# 1217 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2578#elif defined(MFC_OpenMP)
2579# 1217 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2581# 1217 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2583 do i = 1, num_fluids
2584 rho_k = rho_k + alpha_rho_k(i)
2585 gamma_k = gamma_k + alpha_k(i)*gammas(i)
2586 pi_inf_k = pi_inf_k + alpha_k(i)*pi_infs(i)
2587 qv_k = qv_k + alpha_rho_k(i)*qvs(i)
2597# 1231 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2599# 1231 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2601# 1231 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2603# 1231 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2605# 1231 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2607# 1231 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2609# 1231 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2611# 1231 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2613# 1231 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2615# 1231 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2617# 1231 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2619# 1231 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2621# 1231 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2623# 1231 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2625# 1231 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2627# 1231 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2629# 1231 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2632# 1236 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2633 real(wp),
dimension(num_fluids),
intent(in) :: dalpha_rho_dt, dadv_dt
2634# 1238 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2635 real(wp),
intent(out) :: drho_dt, dgamma_dt, dpi_inf_dt, dqv_dt
2642 if (num_fluids == 1 .and. bubbles_euler)
then
2644 drho_dt = dalpha_rho_dt(1)
2649# 1251 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2650#if defined(MFC_OpenACC)
2651# 1251 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2653# 1251 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2654#elif defined(MFC_OpenMP)
2655# 1251 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2657# 1251 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2659 do i = 1, num_fluids
2660 drho_dt = drho_dt + dalpha_rho_dt(i)
2661 dgamma_dt = dgamma_dt + dadv_dt(i)*gammas(i)
2662 dpi_inf_dt = dpi_inf_dt + dadv_dt(i)*pi_infs(i)
2663 dqv_dt = dqv_dt + dalpha_rho_dt(i)*qvs(i)
2674# 1266 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2676# 1266 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2678# 1266 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2680# 1266 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2682# 1266 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2684# 1266 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2686# 1266 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2688# 1266 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2690# 1266 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2692# 1266 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2694# 1266 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2696# 1266 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2698# 1266 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2700# 1266 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2702# 1266 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2704# 1266 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2706# 1266 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2709# 1271 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2710 real(wp),
dimension(num_fluids),
intent(in) :: alpha_rho_k, alpha_k
2711# 1273 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2712 real(wp),
intent(in) :: pres, vel_sum
2713 real(wp),
intent(out) :: e
2714 real(wp) :: rho, gamma, pi_inf, qv
2720 e = gamma*pres + pi_inf
2721 if (bubbles_euler) e = e*(1._wp - alpha_k(num_fluids))
2722 e = e + qv + 5.e-1_wp*rho*vel_sum
2730# 1290 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2732# 1290 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2734# 1290 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2736# 1290 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2738# 1290 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2740# 1290 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2742# 1290 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2744# 1290 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2746# 1290 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2748# 1290 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2750# 1290 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2752# 1290 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2754# 1290 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2756# 1290 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2758# 1290 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2760# 1290 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2762# 1290 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2765 real(wp),
intent(in) :: gamma
2768 n = 1._wp/gamma + 1._wp
2776# 1302 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2778# 1302 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2780# 1302 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2782# 1302 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2784# 1302 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2786# 1302 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2788# 1302 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2790# 1302 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2792# 1302 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2794# 1302 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2796# 1302 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2798# 1302 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2800# 1302 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2802# 1302 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2804# 1302 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2806# 1302 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2808# 1302 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2811 real(wp),
intent(in) :: pi_inf, gamma
2814 b = pi_inf/(1._wp + gamma)
2822# 1314 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2824# 1314 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2826# 1314 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2828# 1314 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2830# 1314 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2832# 1314 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2834# 1314 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2836# 1314 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2838# 1314 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2840# 1314 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2842# 1314 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2844# 1314 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2846# 1314 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2848# 1314 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2850# 1314 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2852# 1314 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2854# 1314 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2857 real(wp),
intent(in) :: pres, rho_or_t, n, b, cv
2858 real(wp) :: t_or_rho
2860 t_or_rho = (pres + b)/((n - 1._wp)*cv*rho_or_t)
2868# 1326 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2870# 1326 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2872# 1326 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2874# 1326 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2876# 1326 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2878# 1326 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2880# 1326 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2882# 1326 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2884# 1326 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2886# 1326 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2888# 1326 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2890# 1326 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2892# 1326 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2894# 1326 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2896# 1326 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2898# 1326 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2900# 1326 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2903 real(wp),
intent(in) :: pres, xi, n, b
2906 p_isen = (pres + b)*xi**n - b
2915# 1339 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2917# 1339 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2919# 1339 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2921# 1339 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2923# 1339 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2925# 1339 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2927# 1339 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2929# 1339 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2931# 1339 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2933# 1339 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2935# 1339 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2937# 1339 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2939# 1339 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2941# 1339 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2943# 1339 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2945# 1339 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2947# 1339 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2950 real(wp),
intent(in) :: pres, alpha, alpha_rho, gamma, pi_inf, qv
2953 e_phase = alpha*(gamma*pres + pi_inf) + alpha_rho*qv
2962# 1352 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2964# 1352 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2966# 1352 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2968# 1352 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2970# 1352 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2972# 1352 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2974# 1352 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2976# 1352 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2978# 1352 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2980# 1352 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2982# 1352 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2984# 1352 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2986# 1352 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2988# 1352 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2990# 1352 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2992# 1352 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2994# 1352 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
2997 real(wp),
intent(in) :: tau, g
2998 logical,
intent(in) :: is_shear
3002 if (g > verysmall)
then
3003 de = (tau*tau)/max(4._wp*g, verysmall)
3004 if (is_shear) de = de + (tau*tau)/max(4._wp*g, verysmall)
3012 type(scalar_field),
dimension(sys_size),
intent(in) ::
q_cons_vf
3013 integer,
intent(in) ::
j,
k,
l
3014 real(wp),
intent(in) :: rho, g
3019 do s = eqn_idx%stress%beg, eqn_idx%stress%end
3030# 1386 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
3032# 1386 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
3034# 1386 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
3036# 1386 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
3038# 1386 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
3040# 1386 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
3042# 1386 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
3044# 1386 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
3046# 1386 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
3048# 1386 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
3050# 1386 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
3052# 1386 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
3054# 1386 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
3056# 1386 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
3058# 1386 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
3060# 1386 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
3062# 1386 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
3065 real(wp),
intent(in) :: e_int, gamma, pi_inf, qv
3068 pres = (e_int - pi_inf - qv)/gamma
3077# 1399 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
3079# 1399 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
3081# 1399 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
3083# 1399 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
3085# 1399 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
3087# 1399 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
3089# 1399 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
3091# 1399 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
3093# 1399 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
3095# 1399 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
3097# 1399 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
3099# 1399 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
3101# 1399 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
3103# 1399 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
3105# 1399 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
3107# 1399 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
3109# 1399 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
3112 real(wp),
intent(in) :: pres, gamma, pi_inf
3115 blkmod = ((gamma + 1._wp)*pres + pi_inf)/gamma
3124# 1412 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
3126# 1412 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
3128# 1412 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
3130# 1412 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
3132# 1412 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
3134# 1412 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
3136# 1412 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
3138# 1412 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
3140# 1412 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
3142# 1412 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
3144# 1412 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
3146# 1412 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
3148# 1412 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
3150# 1412 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
3152# 1412 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
3154# 1412 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
3156# 1412 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
3159 real(wp),
intent(in) :: pres, rho, gamma
3162 h = 1._wp + (gamma + 1._wp)*pres/rho
3171# 1425 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
3173# 1425 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
3175# 1425 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
3177# 1425 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
3179# 1425 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
3181# 1425 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
3183# 1425 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
3186 real(wp),
intent(in) :: pres, rho, gamma, pi_inf
3187# 1431 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
3188 real(wp),
dimension(num_fluids),
intent(in) :: adv
3189# 1433 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
3190 real(wp),
intent(out) :: c
3195 c = sqrt((1.0_wp + 1.0_wp/gamma)*pres/rho)
3196 else if (relativity)
then
3201 if (alt_soundspeed)
then
3204 else if (model_eqns == model_eqns_6eq)
then
3207# 1449 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
3208#if defined(MFC_OpenACC)
3209# 1449 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
3211# 1449 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
3212#elif defined(MFC_OpenMP)
3213# 1449 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
3215# 1449 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
3217 do q = 1, num_fluids
3227 if (model_eqns == model_eqns_5eq .and. bubbles_euler .and. .not. (mpp_lim .and. num_fluids > 1))
then
3228 alf = adv(num_fluids)
3233 if (mixture_err .and. c < 0._wp)
then
3248# 1480 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
3250# 1480 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
3252# 1480 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
3254# 1480 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
3256# 1480 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
3258# 1480 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
3260# 1480 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
3263 real(wp),
intent(in) :: pres, rho, gamma, pi_inf, qv, vel_sum, h, c_c
3264# 1486 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
3265 real(wp),
dimension(num_fluids),
intent(in) :: adv
3266# 1488 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
3267 real(wp),
intent(out) :: c
3270 if (avg_state == avg_state_roe .and. abs(c_c) > verysmall)
then
3271 c = sqrt(c_c - (gamma - 1.0_wp)*(vel_sum - h))
3275 else if (relativity)
then
3276 c = sqrt((1._wp + 1._wp/gamma)*pres/rho/h)
3277 else if (alt_soundspeed .or. model_eqns == model_eqns_6eq .or. (model_eqns == model_eqns_5eq .and. bubbles_euler))
then
3280 c = (h - 5.e-1*vel_sum - qv/rho)/gamma
3282 if (mixture_err .and. c < 0._wp)
then
3295# 1515 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
3297# 1515 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
3299# 1515 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
3301# 1515 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
3303# 1515 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
3305# 1515 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
3307# 1515 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
3309# 1515 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
3311# 1515 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
3313# 1515 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
3315# 1515 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
3317# 1515 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
3319# 1515 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
3321# 1515 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
3323# 1515 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
3325# 1515 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
3327# 1515 "/home/runner/work/MFC/MFC/src/common/m_variables_conversion.fpp"
3330 real(wp),
intent(in) :: b(3), rho, c
3331 real(wp),
intent(in) :: h
3332 real(wp),
intent(out) :: c_fast
3333 integer,
intent(in) :: norm
3334 real(wp) :: b2, term, disc
3338 if (.not. relativity)
then
3339 term = c**2 + b2/rho
3340 disc = term**2 - 4*c**2*(b(norm)**2/rho)
3343 term = (c**2*(b(norm)**2 + rho*h) + b2)/(rho*h + b2)
3344 disc = term**2 - 4*c**2*b(norm)**2/(rho*h + b2)
3348 if (disc < 0._wp)
then
3349 print *,
'rho, c, Bx, By, Bz, h, term, disc:', rho, c, b(1), b(2), b(3), h, term, disc
3353 call s_mpi_abort(
'Error: negative discriminant in s_compute_fast_magnetosonic_speed')
3358 c_fast = sqrt(0.5_wp*(term + sqrt(disc)))
type(scalar_field), dimension(sys_size), intent(inout) q_cons_vf
Compile-time constant parameters: default values, tolerances, and physical constants.
integer, parameter model_eqns_5eq
integer, parameter avg_state_roe
integer, parameter riemann_solver_hll
integer, parameter riemann_solver_hlld
real(wp), parameter sgm_eps
Segmentation tolerance.
real(wp), parameter dflt_real
Default real value.
integer, parameter model_eqns_6eq
integer, parameter model_eqns_gamma_law
Shared derived types for field data, patch geometry, bubble dynamics, and MPI I/O structures.
Shared global parameters and equation-index setup for all three executables. Each per-target m_global...
type(physical_parameters), dimension(num_fluids_max) fluid_pp
Per-fluid stiffened-gas EOS parameters, Reynolds numbers, and shear modulus.
type(eqn_idx_info) eqn_idx
All conserved-variable equation index ranges and scalars.
logical, parameter chemistry
integer, dimension(3) shear_indices
Indices of the stress components that represent shear stress.
Defines global parameters for the computational domain, simulation algorithm, and initial conditions.
Basic floating-point utilities: approximate equality, default detection, and coordinate bounds.
Utility routines for bubble model setup, coordinate transforms, array sampling, and special functions...
Broadcasts user inputs and decomposes the domain across MPI ranks for pre-processing.
Conservative-to-primitive variable conversion, mixture property evaluation, and pressure computation.
real(wp) function, public f_bulk_modulus(pres, gamma, pi_inf)
Isentropic bulk modulus. Takes coefficients rather than a fluid index, so a mixture - whose effective...
real(wp) function, public f_elastic_energy(tau, g, is_shear)
Elastic strain energy of one stress component, doubled for a shear component: the tensor stores it on...
subroutine, public s_compute_species_fraction(q_vf, k, l, r, alpha_rho_k, alpha_k)
Compute partial densities and volume fractions.
subroutine, public s_compute_speed_of_sound_avg(pres, rho, gamma, pi_inf, qv, vel_sum, h, c_c, adv, c)
Speed of sound of an interface-averaged state. An average of two states is not a state - its enthalpy...
real(wp), dimension(:,:), allocatable res_vc
impure subroutine, public s_finalize_variables_conversion_module()
Deallocate fluid property arrays and post-processing fields allocated during module initialization.
subroutine, public s_compute_mixture_coefficients(alpha_rho_k, alpha_k, rho_k, gamma_k, pi_inf_k, qv_k)
Mixture coefficients of one state. Under bubbles_euler with num_fluids == 1 the sole advection slot a...
real(wp) function, public f_hypoelastic_energy(q_cons_vf, j, k, l, rho, g)
Hypoelastic strain energy at one cell, summed over the stress components.
subroutine, public s_initialize_mv(qk_cons_vf, mv)
Initialize bubble mass-vapor values at quadrature nodes from the conserved moment statistics.
subroutine, public s_initialize_pb(qk_cons_vf, mv, pb)
Initialize bubble internal pressures at quadrature nodes using isothermal relations from the Preston ...
subroutine, public s_compute_mixture_coefficients_dt(dalpha_rho_dt, dadv_dt, drho_dt, dgamma_dt, dpi_inf_dt, dqv_dt)
Time derivative of the mixture coefficients, mirroring s_compute_mixture_coefficients.
impure subroutine, public s_convert_primitive_to_conservative_variables(q_prim_vf, q_cons_vf)
Convert primitives (rho, u, p, alpha) to conserved variables (rho*alpha, rho*u, E,...
real(wp) function, public f_sg_thermal(pres, rho_or_t, n, b, cv)
Stiffened-gas thermal law p + B = (n - 1)*cv*rho*T. Pass rho to get T, or T to get rho.
real(wp) function, public f_pressure_on_isentrope(pres, xi, n, b)
Pressure after isentropic compression from pres through density ratio xi.
subroutine, public s_convert_conservative_to_primitive_variables(qk_cons_vf, q_t_sf, qk_prim_vf, ibounds)
Convert conserved variables (rho*alpha, rho*u, E, alpha) to primitives (rho, u, p,...
real(wp) function, public f_relativistic_enthalpy(pres, rho, gamma)
Relativistic specific enthalpy, h = 1 + (Gamma + 1)p/rho. Ideal gas only: the stiffness does not appe...
subroutine, public s_convert_species_to_mixture_variables(q_vf, k, l, r, rho, gamma, pi_inf, qv, re_k, g_k, g)
Convert species volume fractions and partial densities to mixture density, gamma, pi_inf,...
subroutine, public s_compute_pressure(energy, alf, dyn_p, pi_inf, gamma, rho, qv, rhoyks, pres, t, e_e_in, pres_mag)
Compute the pressure from the appropriate equation of state.
subroutine, public s_convert_mixture_to_mixture_variables(q_vf, i, j, k, rho, gamma, pi_inf, qv)
Convert mixture variables to density, gamma, pi_inf, and qv for the gamma/pi_inf model....
real(wp), dimension(:,:,:), allocatable, public pi_inf_sf
Scalar liquid stiffness function.
subroutine, public s_compute_energy(pres, alpha_rho_k, alpha_k, vel_sum, e)
Total energy per unit volume, thermodynamic terms only. Callers add magnetic and elastic energy,...
subroutine, public s_convert_primitive_to_flux_variables(qk_prim_vf, fk_vf, fk_src_vf, is1, is2, is3, s2b, s3b, dir_idx_in, dir_flg_in, hll_u_interface_in)
Convert primitive variables to Eulerian flux variables.
subroutine, public s_compute_fast_magnetosonic_speed(rho, c, b, norm, c_fast, h)
Compute the fast magnetosonic wave speed from the sound speed, density, and magnetic field components...
subroutine, public s_compute_speed_of_sound(pres, rho, gamma, pi_inf, adv, c)
Speed of sound of a thermodynamic state. Enthalpy is not an argument: for a real state H,...
real(wp), dimension(:,:,:), allocatable, public gamma_sf
Scalar sp. heat ratio function.
real(wp) function, public f_isentrope_exponent(gamma)
Exponent of the stiffened-gas isentrope p + B = const rho**n. Precomputed per fluid as isentrope_n.
impure subroutine, public s_initialize_variables_conversion_module(store_mixture_fields, enforce_density_floor, preserve_qbmm_number, lagrange_beta_index)
Initialize the variables conversion module.
real(wp), dimension(:,:,:), allocatable, public rho_sf
Scalar density function.
real(wp) function, public f_isentrope_pressure(pi_inf, gamma)
Reference pressure of that isentrope. Precomputed per fluid as isentrope_B.
integer, dimension(:), allocatable bubrs_vc
real(wp), dimension(:), allocatable gs_vc
real(wp) function, public f_phase_internal_energy(pres, alpha, alpha_rho, gamma, pi_inf, qv)
Internal energy of one six-equation phase: volume-fraction-weighted stiffened-gas energy plus the hea...
subroutine, public s_convert_species_to_mixture_variables_kernel(rho_k, gamma_k, pi_inf_k, qv_k, alpha_k, alpha_rho_k, re_k, g_k, g)
Host- and device-callable conversion kernel for species and mixture variables.
logical enforce_density_floor_vc
subroutine, public s_convert_to_mixture_variables(q_vf, i, j, k, rho, gamma, pi_inf, qv, re_k, g_k, g)
Dispatch to the s_convert_mixture_to_mixture_variables and s_convert_species_to_mixture_variables sub...
integer lagrange_beta_index_vc
real(wp) function, public f_pressure(e_int, gamma, pi_inf, qv)
Pressure of a stiffened gas from its internal energy density - the inverse of s_compute_energy....
logical preserve_qbmm_number_vc
Derived type annexing a scalar field (SF).