1# 1 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
6# 1 "/home/runner/work/MFC/MFC/src/common/include/macros.fpp" 1
7# 1 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp" 1
8# 1 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp" 1
9# 2 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
10# 3 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
11# 4 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
12# 5 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
13# 6 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
15# 8 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
16# 9 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
17# 10 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
19# 17 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
21# 46 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
23# 58 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
25# 68 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
27# 98 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
29# 110 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
31# 120 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
33# 2 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp" 2
34# 1 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp" 1
35# 1 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp" 1
36# 2 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
37# 3 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
38# 4 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
39# 5 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
40# 6 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
42# 8 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
43# 9 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
44# 10 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
46# 17 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
48# 46 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
50# 58 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
52# 68 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
54# 98 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
56# 110 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
58# 120 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
60# 2 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp" 2
62# 4 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
63# 5 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
64# 6 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
65# 7 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
66# 8 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
68# 20 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
70# 43 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
72# 48 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
74# 53 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
76# 58 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
78# 63 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
80# 68 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
82# 76 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
84# 81 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
86# 86 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
88# 91 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
90# 96 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
92# 101 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
94# 106 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
96# 111 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
98# 116 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
100# 121 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
102# 151 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
104# 192 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
106# 207 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
108# 232 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
110# 243 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
112# 245 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
113# 255 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
115# 283 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
117# 293 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
119# 303 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
121# 312 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
123# 329 "/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# 346 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
129# 352 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
131# 358 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
133# 364 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
135# 370 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
137# 376 "/home/runner/work/MFC/MFC/src/common/include/omp_macros.fpp"
139# 3 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp" 2
140# 1 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp" 1
141# 1 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp" 1
142# 2 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
143# 3 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
144# 4 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
145# 5 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
146# 6 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
148# 8 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
149# 9 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
150# 10 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
152# 17 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
154# 46 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
156# 58 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
158# 68 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
160# 98 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
162# 110 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
164# 120 "/home/runner/work/MFC/MFC/src/common/include/shared_parallel_macros.fpp"
166# 2 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp" 2
168# 7 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
170# 17 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
172# 22 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
174# 27 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
176# 32 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
178# 37 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
180# 42 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
182# 47 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
184# 52 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
186# 57 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
188# 62 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
190# 73 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
192# 78 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
194# 83 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
196# 88 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
198# 103 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
200# 131 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
202# 160 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
204# 175 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
206# 192 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
208# 213 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
210# 241 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
212# 256 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
214# 266 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
216# 275 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
218# 291 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
220# 301 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
222# 308 "/home/runner/work/MFC/MFC/src/common/include/acc_macros.fpp"
224# 4 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp" 2
226# 21 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
228# 37 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
230# 50 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
232# 76 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
234# 91 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
236# 102 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
238# 115 "/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# 154 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
244# 165 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
246# 176 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
248# 187 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
250# 198 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
252# 208 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
254# 214 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
256# 220 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
258# 226 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
260# 232 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
262# 234 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
263# 235 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
265# 2 "/home/runner/work/MFC/MFC/src/common/include/macros.fpp" 2
267# 14 "/home/runner/work/MFC/MFC/src/common/include/macros.fpp"
273# 63 "/home/runner/work/MFC/MFC/src/common/include/macros.fpp"
275# 81 "/home/runner/work/MFC/MFC/src/common/include/macros.fpp"
277# 88 "/home/runner/work/MFC/MFC/src/common/include/macros.fpp"
279# 111 "/home/runner/work/MFC/MFC/src/common/include/macros.fpp"
281# 127 "/home/runner/work/MFC/MFC/src/common/include/macros.fpp"
283# 153 "/home/runner/work/MFC/MFC/src/common/include/macros.fpp"
285# 159 "/home/runner/work/MFC/MFC/src/common/include/macros.fpp"
287# 167 "/home/runner/work/MFC/MFC/src/common/include/macros.fpp"
289# 6 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp" 2
293 use,
intrinsic :: iso_c_binding
299 use m_mpi_proxy !< message passing interface (mpi) module proxy
301#if defined(MFC_GPU) && defined(__PGI)
303#elif defined(MFC_GPU)
333# 48 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
334#if defined(MFC_OpenACC)
335# 48 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
337# 48 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
338#elif defined(MFC_OpenMP)
339# 48 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
341# 48 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
348# 53 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
349#if defined(MFC_OpenACC)
350# 53 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
352# 53 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
353#elif defined(MFC_OpenMP)
354# 53 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
356# 53 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
400# 95 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
401#if defined(MFC_OpenACC)
402# 95 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
404# 95 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
405#elif defined(MFC_OpenMP)
406# 95 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
408# 95 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
411# 96 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
412#if defined(MFC_OpenACC)
413# 96 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
415# 96 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
416#elif defined(MFC_OpenMP)
417# 96 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
419# 96 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
438# 113 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
440# 113 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
441 use iso_fortran_env,
only: output_unit
442# 113 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
444# 113 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
445 print *,
'm_fftw.fpp:113: ',
'@:ALLOCATE(data_real_gpu(1:real_size*x_size*sys_size))'
446# 113 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
448# 113 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
449 call flush (output_unit)
450# 113 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
452# 113 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
454# 113 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
456# 113 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
458# 113 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
460# 113 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
461#if defined(MFC_OpenACC)
462# 113 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
464# 113 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
465#elif defined(MFC_OpenMP)
466# 113 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
468# 113 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
471# 114 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
473# 114 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
474 use iso_fortran_env,
only: output_unit
475# 114 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
477# 114 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
478 print *,
'm_fftw.fpp:114: ',
'@:ALLOCATE(data_cmplx_gpu(1:cmplx_size*x_size*sys_size))'
479# 114 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
481# 114 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
482 call flush (output_unit)
483# 114 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
485# 114 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
487# 114 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
489# 114 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
491# 114 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
493# 114 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
494#if defined(MFC_OpenACC)
495# 114 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
497# 114 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
498#elif defined(MFC_OpenMP)
499# 114 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
501# 114 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
504# 115 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
506# 115 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
507 use iso_fortran_env,
only: output_unit
508# 115 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
510# 115 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
511 print *,
'm_fftw.fpp:115: ',
'@:ALLOCATE(data_fltr_cmplx_gpu(1:cmplx_size*x_size*sys_size))'
512# 115 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
514# 115 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
515 call flush (output_unit)
516# 115 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
518# 115 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
520# 115 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
522# 115 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
524# 115 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
526# 115 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
527#if defined(MFC_OpenACC)
528# 115 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
530# 115 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
531#elif defined(MFC_OpenMP)
532# 115 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
534# 115 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
538 ierr = cufftplanmany(
fwd_plan_gpu,
rank,
gpu_fft_size,
iembed,
istride,
real_size,
oembed,
ostride,
cmplx_size, cufft_d2z,
batch_size)
539 ierr = cufftplanmany(
bwd_plan_gpu,
rank,
gpu_fft_size,
iembed,
istride,
cmplx_size,
oembed,
ostride,
real_size, cufft_z2d,
batch_size)
541 ierr = hipfftplanmany(
fwd_plan_gpu,
rank,
gpu_fft_size,
iembed,
istride,
real_size,
oembed,
ostride,
cmplx_size, hipfft_d2z,
batch_size)
542 ierr = hipfftplanmany(
bwd_plan_gpu,
rank,
gpu_fft_size,
iembed,
istride,
cmplx_size,
oembed,
ostride,
real_size, hipfft_z2d,
batch_size)
556 type(scalar_field),
dimension(sys_size),
intent(inout) ::
q_cons_vf
557 integer :: i,
j,
k,
l
561 if (bc_y%beg >= 0)
return
565# 144 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
567# 144 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
568#if defined(MFC_OpenACC)
569# 144 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
571# 144 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
572#elif defined(MFC_OpenMP)
573# 144 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
575# 144 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
577# 144 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
579# 144 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
581# 144 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
583# 144 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
593# 152 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
595# 152 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
596#if defined(MFC_OpenACC)
597# 152 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
599# 152 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
600#elif defined(MFC_OpenMP)
601# 152 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
603# 152 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
605# 152 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
607# 152 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
609# 152 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
613# 154 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
615# 154 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
616#if defined(MFC_OpenACC)
617# 154 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
619# 154 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
620#elif defined(MFC_OpenMP)
621# 154 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
623# 154 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
625# 154 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
627# 154 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
629# 154 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
631# 154 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
641# 162 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
643# 162 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
644#if defined(MFC_OpenACC)
645# 162 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
647# 162 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
648#elif defined(MFC_OpenMP)
649# 162 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
651# 162 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
653# 162 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
655# 162 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
657# 162 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
661# 164 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
663# 164 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
664#if defined(MFC_OpenACC)
665# 164 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
667# 164 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
669# 164 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
671# 164 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
673# 164 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
675# 164 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
676 call hipcheck(hipdevicesynchronize())
677# 164 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
679# 164 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
681# 164 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
682#elif defined(MFC_OpenMP)
683# 164 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
685# 164 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
687# 164 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
689# 164 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
691# 164 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
693# 164 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
694 call hipcheck(hipdevicesynchronize())
695# 164 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
697# 164 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
699# 164 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
701# 164 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
703# 164 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
705# 164 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
707# 164 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
709# 164 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
710 call hipcheck(hipdevicesynchronize())
711# 164 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
713# 164 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
715# 172 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
718# 173 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
719#if defined(MFC_OpenACC)
720# 173 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
722# 173 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
723#elif defined(MFC_OpenMP)
724# 173 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
726# 173 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
730# 175 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
732# 175 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
733#if defined(MFC_OpenACC)
734# 175 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
736# 175 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
737#elif defined(MFC_OpenMP)
738# 175 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
740# 175 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
742# 175 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
744# 175 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
746# 175 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
748# 175 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
758# 183 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
760# 183 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
761#if defined(MFC_OpenACC)
762# 183 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
764# 183 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
765#elif defined(MFC_OpenMP)
766# 183 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
768# 183 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
770# 183 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
772# 183 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
774# 183 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
778# 185 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
780# 185 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
781#if defined(MFC_OpenACC)
782# 185 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
784# 185 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
786# 185 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
788# 185 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
790# 185 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
792# 185 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
793 call hipcheck(hipdevicesynchronize())
794# 185 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
796# 185 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
798# 185 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
799#elif defined(MFC_OpenMP)
800# 185 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
802# 185 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
804# 185 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
806# 185 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
808# 185 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
810# 185 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
811 call hipcheck(hipdevicesynchronize())
812# 185 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
814# 185 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
816# 185 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
818# 185 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
820# 185 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
822# 185 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
824# 185 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
826# 185 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
827 call hipcheck(hipdevicesynchronize())
828# 185 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
830# 185 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
832# 193 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
835# 194 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
837# 194 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
838#if defined(MFC_OpenACC)
839# 194 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
841# 194 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
842#elif defined(MFC_OpenMP)
843# 194 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
845# 194 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
847# 194 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
849# 194 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
851# 194 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
853# 194 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
864# 203 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
866# 203 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
867#if defined(MFC_OpenACC)
868# 203 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
870# 203 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
871#elif defined(MFC_OpenMP)
872# 203 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
874# 203 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
876# 203 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
878# 203 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
880# 203 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
883 do i = 1, fourier_rings
886# 207 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
888# 207 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
889#if defined(MFC_OpenACC)
890# 207 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
892# 207 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
893#elif defined(MFC_OpenMP)
894# 207 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
896# 207 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
898# 207 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
900# 207 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
902# 207 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
904# 207 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
914# 215 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
916# 215 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
917#if defined(MFC_OpenACC)
918# 215 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
920# 215 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
921#elif defined(MFC_OpenMP)
922# 215 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
924# 215 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
926# 215 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
928# 215 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
930# 215 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
934# 217 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
936# 217 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
937#if defined(MFC_OpenACC)
938# 217 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
940# 217 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
941#elif defined(MFC_OpenMP)
942# 217 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
944# 217 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
946# 217 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
948# 217 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
950# 217 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
952# 217 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
962# 225 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
964# 225 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
965#if defined(MFC_OpenACC)
966# 225 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
968# 225 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
969#elif defined(MFC_OpenMP)
970# 225 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
972# 225 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
974# 225 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
976# 225 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
978# 225 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
982# 227 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
984# 227 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
985#if defined(MFC_OpenACC)
986# 227 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
988# 227 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
990# 227 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
992# 227 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
994# 227 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
996# 227 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
997 call hipcheck(hipdevicesynchronize())
998# 227 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
1000# 227 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
1002# 227 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
1003#elif defined(MFC_OpenMP)
1004# 227 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
1006# 227 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
1008# 227 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
1010# 227 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
1012# 227 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
1014# 227 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
1015 call hipcheck(hipdevicesynchronize())
1016# 227 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
1018# 227 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
1020# 227 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
1022# 227 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
1024# 227 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
1026# 227 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
1028# 227 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
1030# 227 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
1031 call hipcheck(hipdevicesynchronize())
1032# 227 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
1034# 227 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
1036# 235 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
1040# 237 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
1041#if defined(MFC_OpenACC)
1042# 237 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
1044# 237 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
1045#elif defined(MFC_OpenMP)
1046# 237 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
1048# 237 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
1052# 239 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
1054# 239 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
1055#if defined(MFC_OpenACC)
1056# 239 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
1058# 239 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
1059#elif defined(MFC_OpenMP)
1060# 239 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
1062# 239 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
1064# 239 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
1066# 239 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
1068# 239 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
1070# 239 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
1080# 247 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
1082# 247 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
1083#if defined(MFC_OpenACC)
1084# 247 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
1086# 247 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
1087#elif defined(MFC_OpenMP)
1088# 247 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
1090# 247 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
1092# 247 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
1094# 247 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
1096# 247 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
1100# 249 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
1102# 249 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
1103#if defined(MFC_OpenACC)
1104# 249 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
1106# 249 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
1108# 249 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
1110# 249 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
1112# 249 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
1114# 249 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
1115 call hipcheck(hipdevicesynchronize())
1116# 249 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
1118# 249 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
1120# 249 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
1121#elif defined(MFC_OpenMP)
1122# 249 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
1124# 249 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
1126# 249 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
1128# 249 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
1130# 249 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
1132# 249 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
1133 call hipcheck(hipdevicesynchronize())
1134# 249 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
1136# 249 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
1138# 249 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
1140# 249 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
1142# 249 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
1144# 249 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
1146# 249 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
1148# 249 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
1149 call hipcheck(hipdevicesynchronize())
1150# 249 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
1152# 249 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
1154# 257 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
1157# 258 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
1159# 258 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
1160#if defined(MFC_OpenACC)
1161# 258 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
1163# 258 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
1164#elif defined(MFC_OpenMP)
1165# 258 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
1167# 258 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
1169# 258 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
1171# 258 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
1173# 258 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
1175# 258 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
1186# 267 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
1188# 267 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
1189#if defined(MFC_OpenACC)
1190# 267 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
1192# 267 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
1193#elif defined(MFC_OpenMP)
1194# 267 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
1196# 267 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
1198# 267 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
1200# 267 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
1202# 267 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
1221 do i = 1, fourier_rings
1247# 310 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
1249# 310 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
1250 use iso_fortran_env,
only: output_unit
1251# 310 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
1253# 310 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
1254 print *,
'm_fftw.fpp:310: ',
'@:DEALLOCATE(data_real_gpu, data_fltr_cmplx_gpu, data_cmplx_gpu)'
1255# 310 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
1257# 310 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
1258 call flush (output_unit)
1259# 310 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
1261# 310 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
1263# 310 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
1265# 310 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
1266#if defined(MFC_OpenACC)
1267# 310 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
1269# 310 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
1270#elif defined(MFC_OpenMP)
1271# 310 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
1273# 310 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
1275# 310 "/home/runner/work/MFC/MFC/src/simulation/m_fftw.fpp"
type(scalar_field), dimension(sys_size), intent(inout) q_cons_vf
Shared derived types for field data, patch geometry, bubble dynamics, and MPI I/O structures.
Forward and inverse FFT wrappers (FFTW/cuFFT/hipFFT) for azimuthal Fourier filtering in cylindrical g...
type(c_ptr) fftw_real_data
complex(dp), dimension(:), allocatable, target data_fltr_cmplx_gpu
complex(c_double_complex), dimension(:), pointer data_fltr_cmplx
Filtered complex data in Fourier space.
real(dp), dimension(:), allocatable, target data_real_gpu
complex(c_double_complex), dimension(:), pointer data_cmplx
Complex data in Fourier space.
type(c_ptr) fftw_cmplx_data
real(c_double), dimension(:), pointer data_real
Real data.
impure subroutine, public s_apply_fourier_filter(q_cons_vf)
The purpose of this subroutine is to apply a Fourier low- pass filter to the flow variables in the az...
integer, dimension(:), allocatable iembed
integer, dimension(:), allocatable gpu_fft_size
complex(dp), dimension(:), allocatable, target data_cmplx_gpu
type(c_ptr) fftw_fltr_cmplx_data
impure subroutine, public s_initialize_fftw_module
The purpose of this subroutine is to create the fftw plan that will be used in the forward and backwa...
impure subroutine, public s_finalize_fftw_module
The purpose of this subroutine is to destroy the fftw plan that will be used in the forward and backw...
integer, dimension(:), allocatable oembed
Global parameters for the computational domain, fluid properties, and simulation algorithm configurat...
integer sys_size
Number of unknowns in system of eqns.
MPI halo exchange, domain decomposition, and buffer packing/unpacking for the simulation solver.