1# 1 "/home/runner/work/MFC/MFC/src/common/m_derived_types.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# 186 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
250# 197 "/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# 218 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
256# 224 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
258# 230 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
260# 236 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
262# 242 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
264# 244 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
265# 245 "/home/runner/work/MFC/MFC/src/common/include/parallel_macros.fpp"
267# 2 "/home/runner/work/MFC/MFC/src/common/include/macros.fpp" 2
269# 14 "/home/runner/work/MFC/MFC/src/common/include/macros.fpp"
275# 63 "/home/runner/work/MFC/MFC/src/common/include/macros.fpp"
277# 81 "/home/runner/work/MFC/MFC/src/common/include/macros.fpp"
279# 88 "/home/runner/work/MFC/MFC/src/common/include/macros.fpp"
281# 111 "/home/runner/work/MFC/MFC/src/common/include/macros.fpp"
283# 127 "/home/runner/work/MFC/MFC/src/common/include/macros.fpp"
285# 153 "/home/runner/work/MFC/MFC/src/common/include/macros.fpp"
287# 159 "/home/runner/work/MFC/MFC/src/common/include/macros.fpp"
289# 167 "/home/runner/work/MFC/MFC/src/common/include/macros.fpp"
291# 6 "/home/runner/work/MFC/MFC/src/common/m_derived_types.fpp" 2
299 use m_thermochem,
only: num_species
305 real(
stp),
allocatable,
dimension(:, :, :) :: fp
310 real(
stp),
pointer,
dimension(:, :, :) :: sf => null()
315 real(
stp),
pointer,
dimension(:, :, :, :, :) :: sf => null()
320#ifdef MFC_MIXED_PRECISION
321 integer(kind=1),
pointer,
dimension(:, :, :) :: sf => null()
323 integer,
pointer,
dimension(:, :, :) :: sf => null()
329 real(
stp),
pointer,
dimension(:, :, :, :) :: sf => null()
334 real(
stp),
pointer,
dimension(:, :, :, :, :) :: sf => null()
338 integer,
allocatable,
dimension(:) :: view
393 real(
wp) :: pres_in, pres_out
394 real(
wp),
dimension(3) :: vel_in, vel_out
395 real(
wp),
dimension(num_fluids_max) :: alpha_rho_in, alpha_in
396 logical :: grcbc_in, grcbc_out, grcbc_vel_out
405 real(
wp),
dimension(3) :: centroid
406 real(
wp),
dimension(3) :: length
420 integer,
dimension(:),
allocatable :: rs
421 integer,
dimension(:),
allocatable :: vs
422 integer,
dimension(:),
allocatable :: ps
423 integer,
dimension(:),
allocatable :: ms
424 integer,
dimension(:, :),
allocatable :: moms
425 integer,
dimension(:, :, :),
allocatable :: fullmom
430 character(LEN=pathlen_max) :: filepath
433 real(
wp),
dimension(1:3) :: translate
436 real(
wp),
dimension(1:3) :: scale
439 real(
wp),
dimension(1:3) :: rotate
446 real(
wp) :: threshold
451 real(
wp),
dimension(1:3, 1:3) :: v
452 real(
wp),
dimension(1:3) :: n
456 real(
wp),
dimension(1:3) :: o
457 real(
wp),
dimension(1:3) :: d
461 real(
wp),
dimension(1:3) :: min
462 real(
wp),
dimension(1:3) :: max
474 real(
wp),
allocatable,
dimension(:, :, :) :: boundary_v
475 real(
wp),
allocatable,
dimension(:, :) :: interpolated_boundary_v
476 integer :: boundary_edge_count
477 integer :: total_vertices
478 integer :: interpolate
482 real(
wp),
allocatable,
dimension(:, :, :) :: trs_v
483 real(
wp),
allocatable,
dimension(:, :) :: trs_n
494 real(
wp) :: x_centroid, y_centroid, z_centroid
498 real(
wp) :: length_x, length_y, length_z
501 real(
wp),
dimension(3) :: radii
506 real(
wp) :: epsilon, beta
510 real(
wp),
dimension(2:9) :: a
513 logical :: non_axis_sym
515 real(
wp),
dimension(3) :: normal
519 logical,
dimension(0:num_patches_max - 1) :: alter_patch
529 integer :: smooth_patch_id
532 real(
wp) :: smooth_coeff
536 real(
wp),
dimension(num_fluids_max) :: alpha_rho
538 real(
wp),
dimension(3) :: vel
540 real(
wp),
dimension(num_fluids_max) :: alpha
551 real(
wp) :: bx, by, bz
554 real(
wp),
dimension(6) :: tau_e
567 real(
wp) :: y(1:num_species)
570 character(LEN=pathlen_max) :: model_filepath
573 real(
wp),
dimension(1:3) :: model_translate
576 real(
wp),
dimension(1:3) :: model_scale
579 real(
wp),
dimension(1:3) :: model_rotate
586 real(
wp) :: model_threshold
595 real(
wp) :: x_centroid, y_centroid, z_centroid
598 real(
wp) :: step_x_centroid, step_y_centroid, step_z_centroid
600 real(
wp),
dimension(1:3) :: centroid_offset
602 real(
wp),
dimension(1:3) :: angles
603 real(
wp),
dimension(1:3) :: step_angles
604 real(
wp),
dimension(1:3, 1:3) :: rotation_matrix
605 real(
wp),
dimension(1:3, 1:3) :: rotation_matrix_inverse
607 real(
wp) :: c, p, t, m
609 real(
wp) :: length_x, length_y, length_z
616 character(LEN=pathlen_max) :: model_filepath
619 real(
wp),
dimension(1:3) :: model_translate
622 real(
wp),
dimension(1:3) :: model_scale
625 real(
wp),
dimension(1:3) :: model_rotate
632 real(
wp) :: model_threshold
636 integer :: moving_ibm
637 real(
wp) :: mass, moment
638 real(
wp),
dimension(1:3) :: force, torque
639 real(
wp),
dimension(1:3) :: vel
640 real(
wp),
dimension(1:3) :: step_vel
641 real(
wp),
dimension(1:3) :: angular_vel
642 real(
wp),
dimension(1:3) :: step_angular_vel
651 real(
wp),
dimension(2) :: re
683 integer,
dimension(2) :: view
684 type(
vec3_dt),
allocatable,
dimension(:) :: var
702 real(
wp),
dimension(3) :: loc
706 real(
wp) :: wavelength
707 real(
wp) :: frequency
708 real(
wp) :: gauss_sigma_dist
709 real(
wp) :: gauss_sigma_time
713 real(
wp) :: foc_length
715 real(
wp) :: element_spacing_angle
716 real(
wp) :: element_polygon_ratio
717 real(
wp) :: rotate_angle
718 real(
wp) :: bb_bandwidth
719 real(
wp) :: bb_lowest_freq
720 integer :: num_elements
721 integer :: element_on
722 integer :: bb_num_freq
727 integer,
pointer,
dimension(:, :) :: coord => null()
728 real(
wp),
pointer,
dimension(:) :: val => null()
729 real(
wp),
pointer,
dimension(:) :: angle => null()
730 real(
wp),
pointer,
dimension(:, :) :: xyz_to_r_ratios => null()
736 integer,
dimension(3) :: loc
737 real(
wp),
dimension(3) :: ip_loc
738 integer,
dimension(3) :: ip_grid
739 real(
wp),
dimension(2, 2, 2) :: interp_coeffs
740 integer :: ib_patch_id
742 real(
wp),
dimension(1:3) :: levelset_norm
744 integer,
dimension(3) :: db
745 integer :: x_periodicity, y_periodicity, z_periodicity
750 character(LEN=name_len) :: name
755 character(LEN=name_len) :: cantera_file
763 integer :: gamma_method
764 integer :: transport_model
770 integer :: solver_approach
771 integer :: cluster_type
772 logical :: pressure_corrector
773 integer :: smooth_type
774 logical :: heattransfer_model
775 logical :: masstransfer_model
776 logical :: write_bubbles
777 logical :: write_bubbles_stats
780 real(
wp) :: charwidth
781 real(
wp) :: valmaxvoid
787 integer :: mn_max, np_max, mp_max, mnp_max
788 integer :: mn_min, np_min, mp_min, mnp_min
792 logical,
dimension(3) :: perturb_vel
793 real(
wp),
dimension(3) :: perturb_vel_freq
794 real(
wp),
dimension(3) :: perturb_vel_scale
795 real(
wp),
dimension(3, 3) :: perturb_vel_offset
797 logical,
dimension(1:num_fluids_max) :: perturb_dens
798 real(
wp),
dimension(1:num_fluids_max) :: perturb_dens_freq
799 real(
wp),
dimension(1:num_fluids_max) :: perturb_dens_scale
800 real(
wp),
dimension(1:num_fluids_max, 3) :: perturb_dens_offset
Compile-time constant parameters: default values, tolerances, and physical constants.
Shared derived types for field data, patch geometry, bubble dynamics, and MPI I/O structures.
Working-precision kind selection (half/single/double) and corresponding MPI datatype parameters.
Acoustic source parameters.
Derived type adding beginning (beg) and end bounds info as attributes.
bounds for the bubble dynamic variables
Lagrangian bubble parameters.
Max and min number of cells in a direction of each combination of x-,y-, and z-.
Derived type adding the field position (fp) as an attribute.
Ghost Point for Immersed Boundaries.
Defines parameters for a Model Patch.
Derived type adding initial condition (ic) patch parameters as attributes NOTE: The requirements for ...
Integer bounds for variables.
Derived type annexing an integer scalar field (SF).
Derived type annexing integral regions.
Derived type for levelset.
Derived type for levelset norm.
Derived type annexing the physical parameters (PP) of the fluids. These include the specific heat rat...
Derived type for bubble variables pb and mv at quadrature nodes (qbmm).
Left and right Riemann states for 3-component vectors.
Left and right Riemann states.
Derived type annexing a scalar field (SF).
Acoustic source source_spatial pre-calculated values.
Derived type annexing the physical parameters required for sub-grid bubble models.
Generic 3-component vector (e.g., spatial coordinates or field components) Named _dt (derived types: ...
Derived type annexing a vector field (VF).