1# 1 "/home/runner/work/MFC/MFC/src/common/m_checker_common.fpp"
6# 1 "/home/runner/work/MFC/MFC/src/common/include/case.fpp" 1
12# 9 "/home/runner/work/MFC/MFC/src/common/include/case.fpp"
15# 14 "/home/runner/work/MFC/MFC/src/common/include/case.fpp"
16# 6 "/home/runner/work/MFC/MFC/src/common/m_checker_common.fpp" 2
17# 1 "/home/runner/work/MFC/MFC/src/common/include/macros.fpp" 1
18# 1 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp" 1
19# 1 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp" 1
20# 2 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
21# 3 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
22# 4 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
23# 5 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
24# 6 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
26# 8 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
27# 9 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
28# 10 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
30# 17 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
32# 46 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
34# 58 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
36# 68 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
38# 98 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
40# 110 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
42# 120 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
44# 2 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp" 2
45# 1 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp" 1
46# 1 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp" 1
47# 2 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
48# 3 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
49# 4 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
50# 5 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
51# 6 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
53# 8 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
54# 9 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
55# 10 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
57# 17 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
59# 46 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
61# 58 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
63# 68 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
65# 98 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
67# 110 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
69# 120 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
71# 2 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp" 2
73# 4 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
74# 5 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
75# 6 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
76# 7 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
77# 8 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
79# 20 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
81# 43 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
83# 48 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
85# 53 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
87# 58 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
89# 63 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
91# 68 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
93# 76 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
95# 81 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
97# 86 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
99# 91 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
101# 96 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
103# 101 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
105# 106 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
107# 111 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
109# 116 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
111# 121 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
113# 151 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
115# 192 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
117# 206 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
119# 231 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
121# 242 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
123# 244 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
124# 255 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
126# 284 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
128# 294 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
130# 304 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
132# 313 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
134# 330 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
136# 340 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
138# 347 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
140# 353 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
142# 359 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
144# 365 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
146# 371 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
148# 377 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
150# 3 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp" 2
151# 1 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp" 1
152# 1 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp" 1
153# 2 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
154# 3 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
155# 4 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
156# 5 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
157# 6 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
159# 8 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
160# 9 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
161# 10 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
163# 17 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
165# 46 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
167# 58 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
169# 68 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
171# 98 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
173# 110 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
175# 120 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
177# 2 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp" 2
179# 7 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
181# 17 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
183# 22 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
185# 27 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
187# 32 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
189# 37 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
191# 42 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
193# 47 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
195# 52 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
197# 57 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
199# 62 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
201# 73 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
203# 78 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
205# 83 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
207# 88 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
209# 103 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
211# 131 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
213# 160 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
215# 175 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
217# 193 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
219# 215 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
221# 244 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
223# 259 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
225# 269 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
227# 278 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
229# 294 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
231# 304 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
233# 311 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
235# 4 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp" 2
238# 23 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
241# 43 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
244# 55 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
247# 112 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
250# 130 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
253# 145 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
256# 164 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
259# 193 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
262# 207 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
265# 219 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
268# 231 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
271# 242 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
274# 254 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
277# 266 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
280# 275 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
283# 282 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
286# 289 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
289# 296 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
292# 303 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
294# 305 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
295# 306 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
297# 2 "/home/runner/work/MFC/MFC/src/common/include/macros.fpp" 2
299# 14 "/home/runner/work/MFC/MFC/src/common/include/macros.fpp"
304# 57 "/home/runner/work/MFC/MFC/src/common/include/macros.fpp"
307# 77 "/home/runner/work/MFC/MFC/src/common/include/macros.fpp"
310# 85 "/home/runner/work/MFC/MFC/src/common/include/macros.fpp"
313# 109 "/home/runner/work/MFC/MFC/src/common/include/macros.fpp"
316# 125 "/home/runner/work/MFC/MFC/src/common/include/macros.fpp"
319# 150 "/home/runner/work/MFC/MFC/src/common/include/macros.fpp"
321# 156 "/home/runner/work/MFC/MFC/src/common/include/macros.fpp"
323# 163 "/home/runner/work/MFC/MFC/src/common/include/macros.fpp"
325# 7 "/home/runner/work/MFC/MFC/src/common/m_checker_common.fpp" 2
344#ifndef MFC_SIMULATION
347# 31 "/home/runner/work/MFC/MFC/src/common/m_checker_common.fpp"
351#ifndef MFC_SIMULATION
355 character(len=18) :: numstr
356 integer(kind=8) :: min_cells
358 min_cells = int(2, kind=8)**int(min(1,
m) + min(1,
n) + min(1,
p), kind=8)*int(
num_procs, kind=8)
362# 44 "/home/runner/work/MFC/MFC/src/common/m_checker_common.fpp"
363 call s_prohibit_abort(
"nGlobal < min_cells",
"Total number of cells must be at least (2^[number of dimensions])*num_procs, " //
"which is currently " // trim(numstr))
364# 44 "/home/runner/work/MFC/MFC/src/common/m_checker_common.fpp"
366# 47 "/home/runner/work/MFC/MFC/src/common/m_checker_common.fpp"
374# 55 "/home/runner/work/MFC/MFC/src/common/m_checker_common.fpp"
376# 55 "/home/runner/work/MFC/MFC/src/common/m_checker_common.fpp"
377 call s_prohibit_abort(
"num_fluids > 3",
"num_fluids <= 3 for AMDFLang when Case optimization is off")
378# 55 "/home/runner/work/MFC/MFC/src/common/m_checker_common.fpp"
381# 56 "/home/runner/work/MFC/MFC/src/common/m_checker_common.fpp"
382 call s_prohibit_abort(.or..and.
"(bubbles_euler bubbles_lagrange) nb > 3",
"nb <= 3 for AMDFLang when Case optimization is off")
383# 56 "/home/runner/work/MFC/MFC/src/common/m_checker_common.fpp"
385 if (
chemistry .and. num_species /= 10)
then
386# 57 "/home/runner/work/MFC/MFC/src/common/m_checker_common.fpp"
387 call s_prohibit_abort(.and.
"chemistry num_species /= 10",
"num_species = 10 for AMDFLang when Case optimization is off")
388# 57 "/home/runner/work/MFC/MFC/src/common/m_checker_common.fpp"
390# 59 "/home/runner/work/MFC/MFC/src/common/m_checker_common.fpp"
394#ifndef MFC_POST_PROCESS
Shared input validation checks for grid dimensions and AMD GPU compiler limits.
impure subroutine, public s_check_inputs_common
Checks compatibility of parameters in the input file. Used by all three stages.
impure subroutine s_check_amd
Check that simulation parameters stay within AMD GPU compiler limits when case optimization is disabl...
impure subroutine s_check_total_cells
Verify that the total number of grid cells meets the minimum required by the number of dimensions and...
Defines global parameters for the computational domain, simulation algorithm, and initial conditions.
logical, parameter chemistry
Chemistry modeling.
integer num_fluids
Number of different fluids present in the flow.
integer num_procs
Number of processors.
integer(kind=8) nglobal
Global number of cells in the domain.
Basic floating-point utilities: approximate equality, default detection, and coordinate bounds.
Utility routines for bubble model setup, coordinate transforms, array sampling, and special functions...
elemental subroutine, public s_int_to_str(i, res)
Convert an integer to its trimmed string representation.
Broadcasts user inputs and decomposes the domain across MPI ranks for pre-processing.