1# 1 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
5# 1 "/home/runner/work/MFC/MFC/src/common/include/case.fpp" 1
11# 8 "/home/runner/work/MFC/MFC/src/common/include/case.fpp"
14# 12 "/home/runner/work/MFC/MFC/src/common/include/case.fpp"
15# 5 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp" 2
16# 1 "/home/runner/work/MFC/MFC/src/common/include/macros.fpp" 1
17# 1 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp" 1
18# 1 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp" 1
19# 2 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
20# 3 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
21# 4 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
22# 5 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
23# 6 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
25# 8 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
26# 9 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
27# 10 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
29# 17 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
31# 46 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
33# 58 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
35# 68 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
37# 98 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
39# 110 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
41# 120 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
43# 145 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
45# 2 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp" 2
46# 1 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp" 1
47# 1 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp" 1
48# 2 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
49# 3 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
50# 4 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
51# 5 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
52# 6 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
54# 8 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
55# 9 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
56# 10 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
58# 17 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
60# 46 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
62# 58 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
64# 68 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
66# 98 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
68# 110 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
70# 120 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
72# 145 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
74# 2 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp" 2
76# 4 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
77# 5 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
78# 6 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
79# 7 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
80# 8 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
82# 20 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
84# 43 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
86# 48 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
88# 53 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
90# 58 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
92# 63 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
94# 68 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
96# 76 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
98# 81 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
100# 86 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
102# 91 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
104# 96 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
106# 101 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
108# 106 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
110# 111 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
112# 116 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
114# 121 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
116# 151 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
118# 192 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
120# 206 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
122# 231 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
124# 242 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
126# 244 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
127# 255 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
129# 284 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
131# 294 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
133# 304 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
135# 313 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
137# 330 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
139# 340 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
141# 347 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
143# 353 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
145# 359 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
147# 365 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
149# 371 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
151# 377 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
153# 3 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp" 2
154# 1 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp" 1
155# 1 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp" 1
156# 2 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
157# 3 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
158# 4 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
159# 5 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
160# 6 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
162# 8 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
163# 9 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
164# 10 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
166# 17 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
168# 46 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
170# 58 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
172# 68 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
174# 98 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
176# 110 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
178# 120 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
180# 145 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
182# 2 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp" 2
184# 7 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
186# 17 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
188# 22 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
190# 27 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
192# 32 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
194# 37 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
196# 42 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
198# 47 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
200# 52 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
202# 57 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
204# 62 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
206# 73 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
208# 78 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
210# 83 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
212# 88 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
214# 103 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
216# 131 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
218# 160 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
220# 175 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
222# 193 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
224# 215 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
226# 244 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
228# 259 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
230# 269 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
232# 278 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
234# 294 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
236# 304 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
238# 311 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
240# 4 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp" 2
243# 23 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
246# 43 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
249# 55 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
252# 112 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
255# 130 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
258# 145 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
261# 164 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
264# 193 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
267# 207 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
270# 219 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
273# 231 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
276# 242 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
279# 254 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
282# 266 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
285# 275 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
288# 282 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
291# 289 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
294# 296 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
297# 303 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
299# 305 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
300# 306 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
302# 2 "/home/runner/work/MFC/MFC/src/common/include/macros.fpp" 2
304# 14 "/home/runner/work/MFC/MFC/src/common/include/macros.fpp"
309# 57 "/home/runner/work/MFC/MFC/src/common/include/macros.fpp"
312# 77 "/home/runner/work/MFC/MFC/src/common/include/macros.fpp"
315# 85 "/home/runner/work/MFC/MFC/src/common/include/macros.fpp"
318# 109 "/home/runner/work/MFC/MFC/src/common/include/macros.fpp"
321# 125 "/home/runner/work/MFC/MFC/src/common/include/macros.fpp"
324# 150 "/home/runner/work/MFC/MFC/src/common/include/macros.fpp"
326# 156 "/home/runner/work/MFC/MFC/src/common/include/macros.fpp"
328# 163 "/home/runner/work/MFC/MFC/src/common/include/macros.fpp"
330# 6 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp" 2
346 function f_base_l1(lambda, rho, c, dpres_ds, dvel_ds)
result(L1)
349# 23 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
351# 23 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
353# 23 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
355# 23 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
357# 23 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
359# 23 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
361# 23 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
363 real(wp),
dimension(3),
intent(in) :: lambda
364 real(wp),
intent(in) :: rho, c, dpres_ds
365# 29 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
366 real(wp),
dimension(num_dims),
intent(in) :: dvel_ds
367# 31 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
369 l1 = lambda(1)*(dpres_ds - rho*c*dvel_ds(
dir_idx(1)))
377# 39 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
379# 39 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
381# 39 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
383# 39 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
385# 39 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
387# 39 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
389# 39 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
391# 43 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
392 real(wp),
dimension(sys_size),
intent(inout) :: L
393# 45 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
394# 48 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
395 real(wp),
dimension(num_fluids),
intent(in) :: mf, dalpha_rho_ds
396# 50 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
397 real(wp),
intent(in) :: lambda_factor, lambda2, c
398 real(wp),
intent(in) :: dpres_ds
402 do i = 2, eqn_idx%mom%beg
403 l(i) = lambda_factor*lambda2*(c*c*dalpha_rho_ds(i - 1) - mf(i - 1)*dpres_ds)
412# 64 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
414# 64 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
416# 64 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
418# 64 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
420# 64 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
422# 64 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
424# 64 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
426# 68 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
427 real(wp),
dimension(sys_size),
intent(inout) :: L
428# 70 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
429# 73 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
430 real(wp),
dimension(num_dims),
intent(in) :: dvel_ds
431# 75 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
432 real(wp),
intent(in) :: lambda_factor, lambda2
436 do i = eqn_idx%mom%beg + 1, eqn_idx%mom%end
437 l(i) = lambda_factor*lambda2*dvel_ds(
dir_idx(i - eqn_idx%cont%end))
446# 88 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
448# 88 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
450# 88 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
452# 88 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
454# 88 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
456# 88 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
458# 88 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
460# 92 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
461 real(wp),
dimension(sys_size),
intent(inout) :: L
462# 94 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
463# 97 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
464 real(wp),
dimension(num_fluids),
intent(in) :: dadv_ds
465# 99 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
466 real(wp),
intent(in) :: lambda_factor, lambda2
470 do i = eqn_idx%E, eqn_idx%adv%end - 1
471 l(i) = lambda_factor*lambda2*dadv_ds(i - eqn_idx%mom%end)
480# 112 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
482# 112 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
484# 112 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
486# 112 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
488# 112 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
490# 112 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
492# 112 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
494# 116 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
495 real(wp),
dimension(sys_size),
intent(inout) :: L
496# 118 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
497# 121 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
498 real(wp),
dimension(num_species),
intent(in) :: dYs_ds
499# 123 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
500 real(wp),
intent(in) :: lambda_factor, lambda2
503 if (.not. chemistry)
return
506 do i = eqn_idx%species%beg, eqn_idx%species%end
507 l(i) = lambda_factor*lambda2*dys_ds(i - eqn_idx%species%beg + 1)
516# 138 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
518# 138 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
520# 138 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
522# 138 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
524# 138 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
526# 138 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
528# 138 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
530# 138 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
532# 138 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
534# 138 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
536# 138 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
538# 138 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
540# 138 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
542# 138 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
544# 138 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
546# 138 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
548# 138 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
551 real(wp),
dimension(3),
intent(in) :: lambda
552# 144 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
553 real(wp),
dimension(sys_size),
intent(inout) ::
l
554# 146 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
555# 149 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
556 real(wp),
dimension(num_dims),
intent(in) :: dvel_ds
557# 151 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
558 real(wp),
intent(in) :: rho, c, dpres_ds
560 l(1) =
f_base_l1(lambda, rho, c, dpres_ds, dvel_ds)
561 l(2:eqn_idx%adv%end - 1) = 0._wp
562 l(eqn_idx%adv%end) =
l(1)
570# 162 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
572# 162 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
574# 162 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
576# 162 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
578# 162 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
580# 162 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
582# 162 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
584# 162 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
586# 162 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
588# 162 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
590# 162 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
592# 162 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
594# 162 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
596# 162 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
598# 162 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
600# 162 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
602# 162 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
605 real(wp),
dimension(3),
intent(in) :: lambda
606# 168 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
607 real(wp),
dimension(sys_size),
intent(inout) ::
l
608# 170 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
609# 176 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
610 real(wp),
dimension(num_fluids),
intent(in) :: mf, dalpha_rho_ds
611 real(wp),
dimension(num_dims),
intent(in) :: dvel_ds
612 real(wp),
dimension(num_fluids),
intent(in) :: dadv_ds
613 real(wp),
dimension(num_species),
intent(in) :: dys_ds
614# 181 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
615 real(wp),
intent(in) :: rho, c
616 real(wp),
intent(in) :: dpres_ds
617 real(wp) :: lambda_factor
619 lambda_factor = (5.e-1_wp - 5.e-1_wp*sign(1._wp, lambda(1)))
620 l(1) = lambda_factor*lambda(1)*(dpres_ds - rho*c*dvel_ds(
dir_idx(1)))
622 lambda_factor = (5.e-1_wp - 5.e-1_wp*sign(1._wp, lambda(2)))
623 call s_fill_density_l(
l, lambda_factor, lambda(2), c, mf, dalpha_rho_ds, dpres_ds)
628 lambda_factor = (5.e-1_wp - 5.e-1_wp*sign(1._wp, lambda(3)))
629 l(eqn_idx%adv%end) = lambda_factor*lambda(3)*(dpres_ds + rho*c*dvel_ds(
dir_idx(1)))
637# 202 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
639# 202 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
641# 202 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
643# 202 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
645# 202 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
647# 202 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
649# 202 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
651# 202 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
653# 202 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
655# 202 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
657# 202 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
659# 202 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
661# 202 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
663# 202 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
665# 202 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
667# 202 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
669# 202 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
672 real(wp),
dimension(3),
intent(in) :: lambda
673# 208 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
674 real(wp),
dimension(sys_size),
intent(inout) ::
l
675# 210 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
676# 213 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
677 real(wp),
dimension(num_dims),
intent(in) :: dvel_ds
678# 215 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
679 real(wp),
intent(in) :: rho, c, dpres_ds
681 l(1) =
f_base_l1(lambda, rho, c, dpres_ds, dvel_ds)
682 l(2:eqn_idx%adv%end) = 0._wp
683 if (chemistry)
l(eqn_idx%species%beg:eqn_idx%species%end) = 0._wp
691# 226 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
693# 226 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
695# 226 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
697# 226 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
699# 226 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
701# 226 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
703# 226 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
705# 226 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
707# 226 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
709# 226 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
711# 226 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
713# 226 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
715# 226 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
717# 226 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
719# 226 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
721# 226 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
723# 226 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
726 real(wp),
dimension(3),
intent(in) :: lambda
727# 232 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
728 real(wp),
dimension(sys_size),
intent(inout) ::
l
729# 234 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
730# 240 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
731 real(wp),
dimension(num_fluids),
intent(in) :: mf, dalpha_rho_ds
732 real(wp),
dimension(num_dims),
intent(in) :: dvel_ds
733 real(wp),
dimension(num_fluids),
intent(in) :: dadv_ds
734 real(wp),
dimension(num_species),
intent(in) :: dys_ds
735# 245 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
736 real(wp),
intent(in) :: rho, c
737 real(wp),
intent(in) :: dpres_ds
739 l(1) =
f_base_l1(lambda, rho, c, dpres_ds, dvel_ds)
744 l(eqn_idx%adv%end) = 0._wp
752# 260 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
754# 260 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
756# 260 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
758# 260 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
760# 260 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
762# 260 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
764# 260 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
766# 260 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
768# 260 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
770# 260 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
772# 260 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
774# 260 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
776# 260 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
778# 260 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
780# 260 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
782# 260 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
784# 260 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
787 real(wp),
dimension(3),
intent(in) :: lambda
788# 266 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
789 real(wp),
dimension(sys_size),
intent(inout) ::
l
790# 268 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
791# 273 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
792 real(wp),
dimension(num_fluids),
intent(in) :: mf, dalpha_rho_ds
793 real(wp),
dimension(num_dims),
intent(in) :: dvel_ds
794 real(wp),
dimension(num_fluids),
intent(in) :: dadv_ds
795# 277 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
796 real(wp),
intent(in) :: rho, c
797 real(wp),
intent(in) :: dpres_ds
799 l(1) =
f_base_l1(lambda, rho, c, dpres_ds, dvel_ds)
803 l(eqn_idx%adv%end) =
l(1) + 2._wp*rho*c*lambda(2)*dvel_ds(
dir_idx(1))
811# 291 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
813# 291 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
815# 291 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
817# 291 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
819# 291 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
821# 291 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
823# 291 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
825# 291 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
827# 291 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
829# 291 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
831# 291 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
833# 291 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
835# 291 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
837# 291 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
839# 291 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
841# 291 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
843# 291 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
846 real(wp),
dimension(3),
intent(in) :: lambda
847# 297 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
848 real(wp),
dimension(sys_size),
intent(inout) ::
l
849# 299 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
850# 304 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
851 real(wp),
dimension(num_fluids),
intent(in) :: mf, dalpha_rho_ds
852 real(wp),
dimension(num_dims),
intent(in) :: dvel_ds
853 real(wp),
dimension(num_fluids),
intent(in) :: dadv_ds
854# 308 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
855 real(wp),
intent(in) :: rho, c
856 real(wp),
intent(in) :: dpres_ds
858 l(1) =
f_base_l1(lambda, rho, c, dpres_ds, dvel_ds)
862 l(eqn_idx%adv%end) = -
l(1)
870# 322 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
872# 322 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
874# 322 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
876# 322 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
878# 322 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
880# 322 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
882# 322 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
884# 322 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
886# 322 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
888# 322 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
890# 322 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
892# 322 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
894# 322 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
896# 322 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
898# 322 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
900# 322 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
902# 322 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
904# 326 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
905 real(wp),
dimension(sys_size),
intent(inout) ::
l
906# 328 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
907 l(1:eqn_idx%adv%end) = 0._wp
908 if (chemistry)
l(eqn_idx%species%beg:eqn_idx%species%end) = 0._wp
916# 336 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
918# 336 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
920# 336 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
922# 336 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
924# 336 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
926# 336 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
928# 336 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
930# 336 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
932# 336 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
934# 336 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
936# 336 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
938# 336 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
940# 336 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
942# 336 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
944# 336 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
946# 336 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
948# 336 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
951 real(wp),
dimension(3),
intent(in) :: lambda
952# 342 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
953 real(wp),
dimension(sys_size),
intent(inout) ::
l
954# 344 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
955# 350 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
956 real(wp),
dimension(num_fluids),
intent(in) :: mf, dalpha_rho_ds
957 real(wp),
dimension(num_dims),
intent(in) :: dvel_ds
958 real(wp),
dimension(num_fluids),
intent(in) :: dadv_ds
959 real(wp),
dimension(num_species),
intent(in) :: dys_ds
960# 355 "/home/runner/work/MFC/MFC/src/simulation/m_compute_cbc.fpp"
961 real(wp),
intent(in) :: rho, c
962 real(wp),
intent(in) :: dpres_ds
964 l(1) =
f_base_l1(lambda, rho, c, dpres_ds, dvel_ds)
969 l(eqn_idx%adv%end) = lambda(3)*(dpres_ds + rho*c*dvel_ds(
dir_idx(1)))
Characteristic boundary condition (CBC) computations for subsonic inflow, outflow,...
subroutine s_fill_velocity_l(l, lambda_factor, lambda2, dvel_ds)
Fill velocity L variables.
subroutine, public s_compute_nonreflecting_subsonic_buffer_l(lambda, l, rho, c, mf, dalpha_rho_ds, dpres_ds, dvel_ds, dadv_ds, dys_ds)
Nonreflecting subsonic buffer CBC (Thompson 1987, pg. 13).
subroutine, public s_compute_force_free_subsonic_outflow_l(lambda, l, rho, c, mf, dalpha_rho_ds, dpres_ds, dvel_ds, dadv_ds)
Force-free subsonic outflow CBC (Thompson 1990, pg. 454).
subroutine, public s_compute_nonreflecting_subsonic_inflow_l(lambda, l, rho, c, dpres_ds, dvel_ds)
Nonreflecting subsonic inflow CBC (Thompson 1990, pg. 455).
subroutine, public s_compute_supersonic_outflow_l(lambda, l, rho, c, mf, dalpha_rho_ds, dpres_ds, dvel_ds, dadv_ds, dys_ds)
Supersonic outflow CBC (Thompson 1990, pg. 453).
subroutine s_fill_density_l(l, lambda_factor, lambda2, c, mf, dalpha_rho_ds, dpres_ds)
Fill density L variables.
subroutine, public s_compute_constant_pressure_subsonic_outflow_l(lambda, l, rho, c, mf, dalpha_rho_ds, dpres_ds, dvel_ds, dadv_ds)
Constant pressure subsonic outflow CBC (Thompson 1990, pg. 455).
subroutine s_fill_chemistry_l(l, lambda_factor, lambda2, dys_ds)
Fill chemistry L variables.
subroutine, public s_compute_slip_wall_l(lambda, l, rho, c, dpres_ds, dvel_ds)
Slip wall CBC (Thompson 1990, pg. 451).
subroutine, public s_compute_supersonic_inflow_l(l)
Supersonic inflow CBC (Thompson 1990, pg. 453).
subroutine, public s_compute_nonreflecting_subsonic_outflow_l(lambda, l, rho, c, mf, dalpha_rho_ds, dpres_ds, dvel_ds, dadv_ds, dys_ds)
Nonreflecting subsonic outflow CBC (Thompson 1990, pg. 454).
subroutine s_fill_advection_l(l, lambda_factor, lambda2, dadv_ds)
Fill advection L variables.
real(wp) function f_base_l1(lambda, rho, c, dpres_ds, dvel_ds)
Base L1 calculation.
Global parameters for the computational domain, fluid properties, and simulation algorithm configurat...
integer, dimension(3) dir_idx