1# 1 "/home/runner/work/MFC/MFC/src/pre_process/m_check_ib_patches.fpp"
8# 1 "/home/runner/work/MFC/MFC/src/common/include/macros.fpp" 1
9# 1 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp" 1
10# 1 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp" 1
11# 2 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
12# 3 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
13# 4 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
14# 5 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
15# 6 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
17# 8 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
18# 9 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
19# 10 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
21# 17 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
23# 46 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
25# 58 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
27# 68 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
29# 98 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
31# 110 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
33# 120 "/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# 2 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp" 2
64# 4 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
65# 5 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
66# 6 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
67# 7 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
68# 8 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
70# 20 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
72# 43 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
74# 48 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
76# 53 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
78# 58 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
80# 63 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
82# 68 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
84# 76 "/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# 151 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
106# 192 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
108# 207 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
110# 232 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
112# 243 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
114# 245 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
115# 255 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
117# 283 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
119# 293 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
121# 303 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
123# 312 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
125# 329 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
127# 339 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
129# 346 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
131# 352 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
133# 358 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
135# 364 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
137# 370 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
139# 376 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
141# 3 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp" 2
142# 1 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp" 1
143# 1 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp" 1
144# 2 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
145# 3 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
146# 4 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
147# 5 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
148# 6 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
150# 8 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
151# 9 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
152# 10 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
154# 17 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
156# 46 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
158# 58 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
160# 68 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
162# 98 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
164# 110 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
166# 120 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
168# 2 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp" 2
170# 7 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
172# 17 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
174# 22 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
176# 27 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
178# 32 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
180# 37 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
182# 42 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
184# 47 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
186# 52 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
188# 57 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
190# 62 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
192# 73 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
194# 78 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
196# 83 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
198# 88 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
200# 103 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
202# 131 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
204# 160 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
206# 175 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
208# 192 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
210# 213 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
212# 241 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
214# 256 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
216# 266 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
218# 275 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
220# 291 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
222# 301 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
224# 308 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
226# 4 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp" 2
228# 21 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
230# 37 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
232# 50 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
234# 104 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
236# 119 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
238# 130 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
240# 143 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
242# 171 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
244# 182 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
246# 193 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
248# 204 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
250# 214 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
252# 225 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
254# 236 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
256# 246 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
258# 252 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
260# 258 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
262# 264 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
264# 270 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
266# 272 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
267# 273 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
269# 2 "/home/runner/work/MFC/MFC/src/common/include/macros.fpp" 2
271# 14 "/home/runner/work/MFC/MFC/src/common/include/macros.fpp"
277# 63 "/home/runner/work/MFC/MFC/src/common/include/macros.fpp"
279# 81 "/home/runner/work/MFC/MFC/src/common/include/macros.fpp"
281# 88 "/home/runner/work/MFC/MFC/src/common/include/macros.fpp"
283# 111 "/home/runner/work/MFC/MFC/src/common/include/macros.fpp"
285# 127 "/home/runner/work/MFC/MFC/src/common/include/macros.fpp"
287# 153 "/home/runner/work/MFC/MFC/src/common/include/macros.fpp"
289# 159 "/home/runner/work/MFC/MFC/src/common/include/macros.fpp"
291# 167 "/home/runner/work/MFC/MFC/src/common/include/macros.fpp"
293# 8 "/home/runner/work/MFC/MFC/src/pre_process/m_check_ib_patches.fpp" 2
301 use m_mpi_proxy !< message passing interface (mpi) module proxy
303 use m_data_output !< procedures to write the grid data and the
307 use mpi !< message passing interface (mpi) module
330 do i = 1, num_patches_max
334 if (
patch_ib(i)%geometry == dflt_int)
then
335# 48 "/home/runner/work/MFC/MFC/src/pre_process/m_check_ib_patches.fpp"
336 call s_prohibit_abort(
"patch_ib(i)%geometry == dflt_int",
"IB patch undefined. patch_ib("//trim(
istr)//
")%geometry must be set.")
337# 48 "/home/runner/work/MFC/MFC/src/pre_process/m_check_ib_patches.fpp"
339# 50 "/home/runner/work/MFC/MFC/src/pre_process/m_check_ib_patches.fpp"
344 else if (
patch_ib(i)%geometry == 3)
then
346 else if (
patch_ib(i)%geometry == 8)
then
348 else if (
patch_ib(i)%geometry == 9)
then
350 else if (
patch_ib(i)%geometry == 4)
then
352 else if (
patch_ib(i)%geometry == 11)
then
354 else if (
patch_ib(i)%geometry == 10)
then
356 else if (
patch_ib(i)%geometry == 5 .or. &
359 else if (
patch_ib(i)%geometry == 6)
then
362 call s_prohibit_abort(
"Invalid IB patch", &
363 "patch_ib("//trim(
istr)//
")%geometry must be "// &
364 "2-4, 8-10, 11 or 12.")
367 if (
patch_ib(i)%geometry /= dflt_int)
then
368# 77 "/home/runner/work/MFC/MFC/src/pre_process/m_check_ib_patches.fpp"
369 call s_prohibit_abort(
"patch_ib(i)%geometry /= dflt_int",
"Inactive IB patch defined. "//
"patch_ib("//trim(
istr)//
")%geometry must not be set for inactive patches.")
370# 77 "/home/runner/work/MFC/MFC/src/pre_process/m_check_ib_patches.fpp"
372# 79 "/home/runner/work/MFC/MFC/src/pre_process/m_check_ib_patches.fpp"
385 integer,
intent(in) :: patch_id
390# 95 "/home/runner/work/MFC/MFC/src/pre_process/m_check_ib_patches.fpp"
391 call s_prohibit_abort(.or..or..or..or.
"n == 0 p > 0 patch_ib(patch_id)%radius <= 0._wp f_is_default(patch_ib(patch_id)%x_centroid) f_is_default(patch_ib(patch_id)%y_centroid)",
'in circle IB patch '//trim(
istr))
392# 95 "/home/runner/work/MFC/MFC/src/pre_process/m_check_ib_patches.fpp"
394# 100 "/home/runner/work/MFC/MFC/src/pre_process/m_check_ib_patches.fpp"
404 integer,
intent(in) :: patch_id
409# 113 "/home/runner/work/MFC/MFC/src/pre_process/m_check_ib_patches.fpp"
410 call s_prohibit_abort(.or..or..or..or..or.
"n == 0 p > 0 patch_ib(patch_id)%length_x <= 0._wp patch_ib(patch_id)%length_y <= 0._wp f_is_default(patch_ib(patch_id)%x_centroid) f_is_default(patch_ib(patch_id)%y_centroid)",
'in ellipse IB patch '//trim(
istr))
411# 113 "/home/runner/work/MFC/MFC/src/pre_process/m_check_ib_patches.fpp"
413# 119 "/home/runner/work/MFC/MFC/src/pre_process/m_check_ib_patches.fpp"
423 integer,
intent(in) :: patch_id
428# 132 "/home/runner/work/MFC/MFC/src/pre_process/m_check_ib_patches.fpp"
429 call s_prohibit_abort(.or..or..or..or..or..or..or.
"n == 0 p > 0 patch_ib(patch_id)%c <= 0._wp patch_ib(patch_id)%p <= 0._wp patch_ib(patch_id)%t <= 0._wp patch_ib(patch_id)%m <= 0._wp f_is_default(patch_ib(patch_id)%x_centroid) f_is_default(patch_ib(patch_id)%y_centroid)",
'in airfoil IB patch '//trim(
istr))
430# 132 "/home/runner/work/MFC/MFC/src/pre_process/m_check_ib_patches.fpp"
432# 140 "/home/runner/work/MFC/MFC/src/pre_process/m_check_ib_patches.fpp"
442 integer,
intent(in) :: patch_id
447# 153 "/home/runner/work/MFC/MFC/src/pre_process/m_check_ib_patches.fpp"
448 call s_prohibit_abort(.or..or..or..or..or..or..or..or..or.
"n == 0 p == 0 patch_ib(patch_id)%c <= 0._wp patch_ib(patch_id)%p <= 0._wp patch_ib(patch_id)%t <= 0._wp patch_ib(patch_id)%m <= 0._wp f_is_default(patch_ib(patch_id)%x_centroid) f_is_default(patch_ib(patch_id)%y_centroid) f_is_default(patch_ib(patch_id)%z_centroid) f_is_default(patch_ib(patch_id)%length_z)",
'in 3d airfoil IB patch '//trim(
istr))
449# 153 "/home/runner/work/MFC/MFC/src/pre_process/m_check_ib_patches.fpp"
451# 163 "/home/runner/work/MFC/MFC/src/pre_process/m_check_ib_patches.fpp"
461 integer,
intent(in) :: patch_id
466# 176 "/home/runner/work/MFC/MFC/src/pre_process/m_check_ib_patches.fpp"
467 call s_prohibit_abort(.or..or..or..or..or.
"n == 0 p > 0 f_is_default(patch_ib(patch_id)%x_centroid) f_is_default(patch_ib(patch_id)%y_centroid) patch_ib(patch_id)%length_x <= 0._wp patch_ib(patch_id)%length_y <= 0._wp",
'in rectangle IB patch '//trim(
istr))
468# 176 "/home/runner/work/MFC/MFC/src/pre_process/m_check_ib_patches.fpp"
470# 186 "/home/runner/work/MFC/MFC/src/pre_process/m_check_ib_patches.fpp"
480 integer,
intent(in) :: patch_id
485# 199 "/home/runner/work/MFC/MFC/src/pre_process/m_check_ib_patches.fpp"
486 call s_prohibit_abort(.or..or..or..or..or.
"n == 0 p == 0 f_is_default(patch_ib(patch_id)%x_centroid) f_is_default(patch_ib(patch_id)%y_centroid) f_is_default(patch_ib(patch_id)%z_centroid) patch_ib(patch_id)%radius <= 0._wp",
'in sphere IB patch '//trim(
istr))
487# 199 "/home/runner/work/MFC/MFC/src/pre_process/m_check_ib_patches.fpp"
489# 209 "/home/runner/work/MFC/MFC/src/pre_process/m_check_ib_patches.fpp"
499 integer,
intent(in) :: patch_id
504# 222 "/home/runner/work/MFC/MFC/src/pre_process/m_check_ib_patches.fpp"
505 call s_prohibit_abort(.or..or..or..or..or..or..or.
"n == 0 p == 0 f_is_default(patch_ib(patch_id)%x_centroid) f_is_default(patch_ib(patch_id)%y_centroid) f_is_default(patch_ib(patch_id)%z_centroid) patch_ib(patch_id)%length_x <= 0._wp patch_ib(patch_id)%length_y <= 0._wp patch_ib(patch_id)%length_z <= 0._wp",
'in cuboid IB patch '//trim(
istr))
506# 222 "/home/runner/work/MFC/MFC/src/pre_process/m_check_ib_patches.fpp"
508# 236 "/home/runner/work/MFC/MFC/src/pre_process/m_check_ib_patches.fpp"
518 integer,
intent(in) :: patch_id
523# 249 "/home/runner/work/MFC/MFC/src/pre_process/m_check_ib_patches.fpp"
524 call s_prohibit_abort(.or..or..or..or..and..and..or.
"p == 0 f_is_default(patch_ib(patch_id)%x_centroid) f_is_default(patch_ib(patch_id)%y_centroid) f_is_default(patch_ib(patch_id)%z_centroid) (patch_ib(patch_id)%length_x <= 0._wp patch_ib(patch_id)%length_y <= 0._wp patch_ib(patch_id)%length_z <= 0._wp) patch_ib(patch_id)%radius <= 0._wp",
'in cylinder IB patch '//trim(
istr))
525# 249 "/home/runner/work/MFC/MFC/src/pre_process/m_check_ib_patches.fpp"
527# 263 "/home/runner/work/MFC/MFC/src/pre_process/m_check_ib_patches.fpp"
530# 264 "/home/runner/work/MFC/MFC/src/pre_process/m_check_ib_patches.fpp"
531 call s_prohibit_abort(.and..not..or..not..or..and..not..or..not..or..and..not..or..not.
"(patch_ib(patch_id)%length_x > 0._wp (( f_is_default(patch_ib(patch_id)%length_y)) ( f_is_default(patch_ib(patch_id)%length_z)))) (patch_ib(patch_id)%length_y > 0._wp (( f_is_default(patch_ib(patch_id)%length_x)) ( f_is_default(patch_ib(patch_id)%length_z)))) (patch_ib(patch_id)%length_z > 0._wp (( f_is_default(patch_ib(patch_id)%length_x)) ( f_is_default(patch_ib(patch_id)%length_y))))",
'in cylinder IB patch '//trim(
istr))
532# 264 "/home/runner/work/MFC/MFC/src/pre_process/m_check_ib_patches.fpp"
534# 277 "/home/runner/work/MFC/MFC/src/pre_process/m_check_ib_patches.fpp"
544 integer,
intent(in) :: patch_id
548 if (
patch_ib(patch_id)%model_filepath == dflt_char)
then
549# 290 "/home/runner/work/MFC/MFC/src/pre_process/m_check_ib_patches.fpp"
550 call s_prohibit_abort(
"patch_ib(patch_id)%model_filepath == dflt_char",
'Empty model file path for patch '//trim(
istr))
551# 290 "/home/runner/work/MFC/MFC/src/pre_process/m_check_ib_patches.fpp"
553# 292 "/home/runner/work/MFC/MFC/src/pre_process/m_check_ib_patches.fpp"
555 if (
patch_ib(patch_id)%model_scale(1) <= 0._wp .or.
patch_ib(patch_id)%model_scale(2) <= 0._wp .or.
patch_ib(patch_id)%model_scale(3) <= 0._wp)
then
556# 293 "/home/runner/work/MFC/MFC/src/pre_process/m_check_ib_patches.fpp"
557 call s_prohibit_abort(.or..or.
"patch_ib(patch_id)%model_scale(1) <= 0._wp patch_ib(patch_id)%model_scale(2) <= 0._wp patch_ib(patch_id)%model_scale(3) <= 0._wp",
'Negative scale in model IB patch '//trim(
istr))
558# 293 "/home/runner/work/MFC/MFC/src/pre_process/m_check_ib_patches.fpp"
560# 299 "/home/runner/work/MFC/MFC/src/pre_process/m_check_ib_patches.fpp"
569 integer,
intent(in) :: patch_id
574# 311 "/home/runner/work/MFC/MFC/src/pre_process/m_check_ib_patches.fpp"
575 call s_prohibit_abort(.not..or..not..or..not..or..not..or..not..or..not..or..not.
"( f_is_default(patch_ib(patch_id)%x_centroid)) ( f_is_default(patch_ib(patch_id)%y_centroid)) ( f_is_default(patch_ib(patch_id)%z_centroid)) ( f_is_default(patch_ib(patch_id)%length_x)) ( f_is_default(patch_ib(patch_id)%length_y)) ( f_is_default(patch_ib(patch_id)%length_z)) ( f_is_default(patch_ib(patch_id)%radius))",
'in inactive IB patch '//trim(
istr))
576# 311 "/home/runner/work/MFC/MFC/src/pre_process/m_check_ib_patches.fpp"
578# 325 "/home/runner/work/MFC/MFC/src/pre_process/m_check_ib_patches.fpp"
Validates geometry parameters and constraints for immersed boundary patches.
impure subroutine s_check_circle_ib_patch_geometry(patch_id)
This subroutine verifies that the geometric parameters of the circle patch have consistently been inp...
impure subroutine s_check_rectangle_ib_patch_geometry(patch_id)
This subroutine verifies that the geometric parameters of the rectangle patch have consistently been ...
impure subroutine, public s_check_ib_patches
Validates the geometry parameters of all active and inactive immersed boundary patches.
impure subroutine s_check_sphere_ib_patch_geometry(patch_id)
This subroutine verifies that the geometric parameters of the sphere patch have consistently been inp...
impure subroutine s_check_ellipse_ib_patch_geometry(patch_id)
This subroutine verifies that the geometric parameters of the ellipse patch have consistently been in...
impure subroutine s_check_cylinder_ib_patch_geometry(patch_id)
This subroutine verifies that the geometric parameters of the cylinder patch have consistently been i...
impure subroutine s_check_model_ib_patch_geometry(patch_id)
This subroutine verifies that the geometric parameters of the model patch have consistently been inpu...
impure subroutine s_check_airfoil_ib_patch_geometry(patch_id)
This subroutine verifies that the geometric parameters of the airfoil patch have consistently been in...
impure subroutine s_check_inactive_ib_patch_geometry(patch_id)
impure subroutine s_check_3d_airfoil_ib_patch_geometry(patch_id)
This subroutine verifies that the geometric parameters of the 3d airfoil patch have consistently been...
impure subroutine s_check_cuboid_ib_patch_geometry(patch_id)
This subroutine verifies that the geometric parameters of the cuboid patch have consistently been inp...
Platform-specific file and directory operations: create, delete, inquire, getcwd, and basename.
Writes grid and initial condition data to serial or parallel output files.
Shared derived types for field data, patch geometry, bubble dynamics, and MPI I/O structures.
Defines global parameters for the computational domain, simulation algorithm, and initial conditions.
type(ib_patch_parameters), dimension(num_patches_max) patch_ib
integer num_ibs
Number of immersed boundaries.
Basic floating-point utilities: approximate equality, default detection, and coordinate bounds.
logical elemental function, public f_is_default(var)
Checks if a real(wp) variable is of default value.
Utility routines for bubble model setup, coordinate transforms, array sampling, and special functions...
elemental subroutine, public s_int_to_str(i, res)
Converts an integer to its trimmed string representation.
Broadcasts user inputs and decomposes the domain across MPI ranks for pre-processing.