MFC
Exascale flow solver
Loading...
Searching...
No Matches
m_mpi_proxy.fpp.f90
Go to the documentation of this file.
1# 1 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
2!>
3!! @file
4!! @brief Contains module m_mpi_proxy
5
6!> @brief Broadcasts user inputs and decomposes the domain across MPI ranks for pre-processing
8
9#ifdef MFC_MPI
10 use mpi !< message passing interface (mpi) module
11#endif
12
13 use m_helper
14
15 use m_derived_types !< definitions of the derived types
16
17 use m_global_parameters !< global parameters for the code
18
19 use m_mpi_common
20
21 implicit none
22
23contains
24 !> Since only processor with rank 0 is in charge of reading
25 !! and checking the consistency of the user provided inputs,
26 !! these are not available to the remaining processors. This
27 !! subroutine is then in charge of broadcasting the required
28 !! information.
29 impure subroutine s_mpi_bcast_user_inputs
30
31#ifdef MFC_MPI
32
33 ! Generic loop iterator
34 integer :: i, j
35 ! Generic flag used to identify and report MPI errors
36 integer :: ierr
37
38 ! Logistics
39 call mpi_bcast(case_dir, len(case_dir), mpi_character, 0, mpi_comm_world, ierr)
40
41# 47 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
42 call mpi_bcast(t_step_old, 1, mpi_integer, 0, mpi_comm_world, ierr)
43# 47 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
44 call mpi_bcast(t_step_start, 1, mpi_integer, 0, mpi_comm_world, ierr)
45# 47 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
46 call mpi_bcast(m, 1, mpi_integer, 0, mpi_comm_world, ierr)
47# 47 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
48 call mpi_bcast(n, 1, mpi_integer, 0, mpi_comm_world, ierr)
49# 47 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
50 call mpi_bcast(p, 1, mpi_integer, 0, mpi_comm_world, ierr)
51# 47 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
52 call mpi_bcast(m_glb, 1, mpi_integer, 0, mpi_comm_world, ierr)
53# 47 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
54 call mpi_bcast(n_glb, 1, mpi_integer, 0, mpi_comm_world, ierr)
55# 47 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
56 call mpi_bcast(p_glb, 1, mpi_integer, 0, mpi_comm_world, ierr)
57# 47 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
58 call mpi_bcast(loops_x, 1, mpi_integer, 0, mpi_comm_world, ierr)
59# 47 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
60 call mpi_bcast(loops_y, 1, mpi_integer, 0, mpi_comm_world, ierr)
61# 47 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
62 call mpi_bcast(loops_z, 1, mpi_integer, 0, mpi_comm_world, ierr)
63# 47 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
64 call mpi_bcast(model_eqns, 1, mpi_integer, 0, mpi_comm_world, ierr)
65# 47 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
66 call mpi_bcast(num_fluids, 1, mpi_integer, 0, mpi_comm_world, ierr)
67# 47 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
68 call mpi_bcast(weno_order, 1, mpi_integer, 0, mpi_comm_world, ierr)
69# 47 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
70 call mpi_bcast(precision, 1, mpi_integer, 0, mpi_comm_world, ierr)
71# 47 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
72 call mpi_bcast(perturb_flow_fluid, 1, mpi_integer, 0, mpi_comm_world, ierr)
73# 47 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
74 call mpi_bcast(perturb_sph_fluid, 1, mpi_integer, 0, mpi_comm_world, ierr)
75# 47 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
76 call mpi_bcast(num_patches, 1, mpi_integer, 0, mpi_comm_world, ierr)
77# 47 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
78 call mpi_bcast(thermal, 1, mpi_integer, 0, mpi_comm_world, ierr)
79# 47 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
80 call mpi_bcast(nb, 1, mpi_integer, 0, mpi_comm_world, ierr)
81# 47 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
82 call mpi_bcast(dist_type, 1, mpi_integer, 0, mpi_comm_world, ierr)
83# 47 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
84 call mpi_bcast(relax_model, 1, mpi_integer, 0, mpi_comm_world, ierr)
85# 47 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
86 call mpi_bcast(num_ibs, 1, mpi_integer, 0, mpi_comm_world, ierr)
87# 47 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
88 call mpi_bcast(n_start, 1, mpi_integer, 0, mpi_comm_world, ierr)
89# 47 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
90 call mpi_bcast(elliptic_smoothing_iters, 1, mpi_integer, 0, mpi_comm_world, ierr)
91# 47 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
92 call mpi_bcast(num_bc_patches, 1, mpi_integer, 0, mpi_comm_world, ierr)
93# 47 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
94 call mpi_bcast(mixlayer_perturb_nk, 1, mpi_integer, 0, mpi_comm_world, ierr)
95# 47 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
96 call mpi_bcast(recon_type, 1, mpi_integer, 0, mpi_comm_world, ierr)
97# 47 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
98 call mpi_bcast(muscl_order, 1, mpi_integer, 0, mpi_comm_world, ierr)
99# 47 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
100 call mpi_bcast(igr_order, 1, mpi_integer, 0, mpi_comm_world, ierr)
101# 49 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
102
103# 59 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
104 call mpi_bcast(old_grid, 1, mpi_logical, 0, mpi_comm_world, ierr)
105# 59 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
106 call mpi_bcast(old_ic, 1, mpi_logical, 0, mpi_comm_world, ierr)
107# 59 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
108 call mpi_bcast(stretch_x, 1, mpi_logical, 0, mpi_comm_world, ierr)
109# 59 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
110 call mpi_bcast(stretch_y, 1, mpi_logical, 0, mpi_comm_world, ierr)
111# 59 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
112 call mpi_bcast(stretch_z, 1, mpi_logical, 0, mpi_comm_world, ierr)
113# 59 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
114 call mpi_bcast(cyl_coord, 1, mpi_logical, 0, mpi_comm_world, ierr)
115# 59 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
116 call mpi_bcast(mpp_lim, 1, mpi_logical, 0, mpi_comm_world, ierr)
117# 59 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
118 call mpi_bcast(hypoelasticity, 1, mpi_logical, 0, mpi_comm_world, ierr)
119# 59 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
120 call mpi_bcast(relax, 1, mpi_logical, 0, mpi_comm_world, ierr)
121# 59 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
122 call mpi_bcast(parallel_io, 1, mpi_logical, 0, mpi_comm_world, ierr)
123# 59 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
124 call mpi_bcast(perturb_flow, 1, mpi_logical, 0, mpi_comm_world, ierr)
125# 59 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
126 call mpi_bcast(perturb_sph, 1, mpi_logical, 0, mpi_comm_world, ierr)
127# 59 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
128 call mpi_bcast(mixlayer_vel_profile, 1, mpi_logical, 0, mpi_comm_world, ierr)
129# 59 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
130 call mpi_bcast(mixlayer_perturb, 1, mpi_logical, 0, mpi_comm_world, ierr)
131# 59 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
132 call mpi_bcast(bubbles_euler, 1, mpi_logical, 0, mpi_comm_world, ierr)
133# 59 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
134 call mpi_bcast(polytropic, 1, mpi_logical, 0, mpi_comm_world, ierr)
135# 59 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
136 call mpi_bcast(polydisperse, 1, mpi_logical, 0, mpi_comm_world, ierr)
137# 59 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
138 call mpi_bcast(qbmm, 1, mpi_logical, 0, mpi_comm_world, ierr)
139# 59 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
140 call mpi_bcast(file_per_process, 1, mpi_logical, 0, mpi_comm_world, ierr)
141# 59 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
142 call mpi_bcast(adv_n, 1, mpi_logical, 0, mpi_comm_world, ierr)
143# 59 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
144 call mpi_bcast(ib, 1, mpi_logical, 0, mpi_comm_world, ierr)
145# 59 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
146 call mpi_bcast(cfl_adap_dt, 1, mpi_logical, 0, mpi_comm_world, ierr)
147# 59 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
148 call mpi_bcast(cfl_const_dt, 1, mpi_logical, 0, mpi_comm_world, ierr)
149# 59 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
150 call mpi_bcast(cfl_dt, 1, mpi_logical, 0, mpi_comm_world, ierr)
151# 59 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
152 call mpi_bcast(surface_tension, 1, mpi_logical, 0, mpi_comm_world, ierr)
153# 59 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
154 call mpi_bcast(hyperelasticity, 1, mpi_logical, 0, mpi_comm_world, ierr)
155# 59 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
156 call mpi_bcast(pre_stress, 1, mpi_logical, 0, mpi_comm_world, ierr)
157# 59 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
158 call mpi_bcast(elliptic_smoothing, 1, mpi_logical, 0, mpi_comm_world, ierr)
159# 59 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
160 call mpi_bcast(viscous, 1, mpi_logical, 0, mpi_comm_world, ierr)
161# 59 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
162 call mpi_bcast(bubbles_lagrange, 1, mpi_logical, 0, mpi_comm_world, ierr)
163# 59 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
164 call mpi_bcast(bc_io, 1, mpi_logical, 0, mpi_comm_world, ierr)
165# 59 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
166 call mpi_bcast(mhd, 1, mpi_logical, 0, mpi_comm_world, ierr)
167# 59 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
168 call mpi_bcast(relativity, 1, mpi_logical, 0, mpi_comm_world, ierr)
169# 59 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
170 call mpi_bcast(cont_damage, 1, mpi_logical, 0, mpi_comm_world, ierr)
171# 59 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
172 call mpi_bcast(igr, 1, mpi_logical, 0, mpi_comm_world, ierr)
173# 59 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
174 call mpi_bcast(down_sample, 1, mpi_logical, 0, mpi_comm_world, ierr)
175# 59 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
176 call mpi_bcast(simplex_perturb, 1, mpi_logical, 0, mpi_comm_world, ierr)
177# 59 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
178 call mpi_bcast(fft_wrt, 1, mpi_logical, 0, mpi_comm_world, ierr)
179# 59 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
180 call mpi_bcast(hyper_cleaning, 1, mpi_logical, 0, mpi_comm_world, ierr)
181# 61 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
182 call mpi_bcast(fluid_rho(1), num_fluids_max, mpi_logical, 0, mpi_comm_world, ierr)
183
184# 71 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
185 call mpi_bcast(x_domain%beg, 1, mpi_p, 0, mpi_comm_world, ierr)
186# 71 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
187 call mpi_bcast(x_domain%end, 1, mpi_p, 0, mpi_comm_world, ierr)
188# 71 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
189 call mpi_bcast(y_domain%beg, 1, mpi_p, 0, mpi_comm_world, ierr)
190# 71 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
191 call mpi_bcast(y_domain%end, 1, mpi_p, 0, mpi_comm_world, ierr)
192# 71 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
193 call mpi_bcast(z_domain%beg, 1, mpi_p, 0, mpi_comm_world, ierr)
194# 71 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
195 call mpi_bcast(z_domain%end, 1, mpi_p, 0, mpi_comm_world, ierr)
196# 71 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
197 call mpi_bcast(a_x, 1, mpi_p, 0, mpi_comm_world, ierr)
198# 71 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
199 call mpi_bcast(a_y, 1, mpi_p, 0, mpi_comm_world, ierr)
200# 71 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
201 call mpi_bcast(a_z, 1, mpi_p, 0, mpi_comm_world, ierr)
202# 71 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
203 call mpi_bcast(x_a, 1, mpi_p, 0, mpi_comm_world, ierr)
204# 71 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
205 call mpi_bcast(x_b, 1, mpi_p, 0, mpi_comm_world, ierr)
206# 71 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
207 call mpi_bcast(y_a, 1, mpi_p, 0, mpi_comm_world, ierr)
208# 71 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
209 call mpi_bcast(y_b, 1, mpi_p, 0, mpi_comm_world, ierr)
210# 71 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
211 call mpi_bcast(z_a, 1, mpi_p, 0, mpi_comm_world, ierr)
212# 71 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
213 call mpi_bcast(z_b, 1, mpi_p, 0, mpi_comm_world, ierr)
214# 71 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
215 call mpi_bcast(bc_x%beg, 1, mpi_p, 0, mpi_comm_world, ierr)
216# 71 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
217 call mpi_bcast(bc_x%end, 1, mpi_p, 0, mpi_comm_world, ierr)
218# 71 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
219 call mpi_bcast(bc_y%beg, 1, mpi_p, 0, mpi_comm_world, ierr)
220# 71 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
221 call mpi_bcast(bc_y%end, 1, mpi_p, 0, mpi_comm_world, ierr)
222# 71 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
223 call mpi_bcast(bc_z%beg, 1, mpi_p, 0, mpi_comm_world, ierr)
224# 71 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
225 call mpi_bcast(bc_z%end, 1, mpi_p, 0, mpi_comm_world, ierr)
226# 71 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
227 call mpi_bcast(perturb_flow_mag, 1, mpi_p, 0, mpi_comm_world, ierr)
228# 71 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
229 call mpi_bcast(pref, 1, mpi_p, 0, mpi_comm_world, ierr)
230# 71 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
231 call mpi_bcast(rhoref, 1, mpi_p, 0, mpi_comm_world, ierr)
232# 71 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
233 call mpi_bcast(poly_sigma, 1, mpi_p, 0, mpi_comm_world, ierr)
234# 71 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
235 call mpi_bcast(r0ref, 1, mpi_p, 0, mpi_comm_world, ierr)
236# 71 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
237 call mpi_bcast(web, 1, mpi_p, 0, mpi_comm_world, ierr)
238# 71 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
239 call mpi_bcast(ca, 1, mpi_p, 0, mpi_comm_world, ierr)
240# 71 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
241 call mpi_bcast(re_inv, 1, mpi_p, 0, mpi_comm_world, ierr)
242# 71 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
243 call mpi_bcast(sigr, 1, mpi_p, 0, mpi_comm_world, ierr)
244# 71 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
245 call mpi_bcast(sigv, 1, mpi_p, 0, mpi_comm_world, ierr)
246# 71 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
247 call mpi_bcast(rhorv, 1, mpi_p, 0, mpi_comm_world, ierr)
248# 71 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
249 call mpi_bcast(palpha_eps, 1, mpi_p, 0, mpi_comm_world, ierr)
250# 71 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
251 call mpi_bcast(ptgalpha_eps, 1, mpi_p, 0, mpi_comm_world, ierr)
252# 71 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
253 call mpi_bcast(sigma, 1, mpi_p, 0, mpi_comm_world, ierr)
254# 71 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
255 call mpi_bcast(pi_fac, 1, mpi_p, 0, mpi_comm_world, ierr)
256# 71 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
257 call mpi_bcast(mixlayer_vel_coef, 1, mpi_p, 0, mpi_comm_world, ierr)
258# 71 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
259 call mpi_bcast(bx0, 1, mpi_p, 0, mpi_comm_world, ierr)
260# 71 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
261 call mpi_bcast(mixlayer_perturb_k0, 1, mpi_p, 0, mpi_comm_world, ierr)
262# 73 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
263
264 do i = 1, num_bc_patches_max
265# 76 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
266 call mpi_bcast(patch_bc(i)%geometry, 1, mpi_integer, 0, mpi_comm_world, ierr)
267# 76 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
268 call mpi_bcast(patch_bc(i)%type, 1, mpi_integer, 0, mpi_comm_world, ierr)
269# 76 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
270 call mpi_bcast(patch_bc(i)%dir, 1, mpi_integer, 0, mpi_comm_world, ierr)
271# 76 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
272 call mpi_bcast(patch_bc(i)%loc, 1, mpi_integer, 0, mpi_comm_world, ierr)
273# 78 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
274
275# 80 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
276 call mpi_bcast(patch_ib(i)%vel, 3, mpi_p, 0, mpi_comm_world, ierr)
277# 80 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
278 call mpi_bcast(patch_ib(i)%angular_vel, 3, mpi_p, 0, mpi_comm_world, ierr)
279# 80 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
280 call mpi_bcast(patch_ib(i)%angles, 3, mpi_p, 0, mpi_comm_world, ierr)
281# 82 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
282
283 call mpi_bcast(patch_bc(i)%radius, 1, mpi_p, 0, mpi_comm_world, ierr)
284
285# 86 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
286 call mpi_bcast(patch_bc(i)%centroid, size(patch_bc(i)%centroid), mpi_p, 0, mpi_comm_world, ierr)
287# 86 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
288 call mpi_bcast(patch_bc(i)%length, size(patch_bc(i)%length), mpi_p, 0, mpi_comm_world, ierr)
289# 88 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
290 end do
291
292 do i = 1, num_patches_max
293# 92 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
294 call mpi_bcast(patch_icpp(i)%geometry, 1, mpi_integer, 0, mpi_comm_world, ierr)
295# 92 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
296 call mpi_bcast(patch_icpp(i)%smooth_patch_id, 1, mpi_integer, 0, mpi_comm_world, ierr)
297# 94 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
298
299 call mpi_bcast(patch_icpp(i)%smoothen, 1, mpi_logical, 0, mpi_comm_world, ierr)
300 call mpi_bcast(patch_icpp(i)%non_axis_sym, 1, mpi_logical, 0, mpi_comm_world, ierr)
301 call mpi_bcast(patch_icpp(i)%alter_patch(0), num_patches_max, mpi_logical, 0, mpi_comm_world, ierr)
302
303# 104 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
304 call mpi_bcast(patch_icpp(i)%x_centroid, 1, mpi_p, 0, mpi_comm_world, ierr)
305# 104 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
306 call mpi_bcast(patch_icpp(i)%y_centroid, 1, mpi_p, 0, mpi_comm_world, ierr)
307# 104 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
308 call mpi_bcast(patch_icpp(i)%z_centroid, 1, mpi_p, 0, mpi_comm_world, ierr)
309# 104 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
310 call mpi_bcast(patch_icpp(i)%length_x, 1, mpi_p, 0, mpi_comm_world, ierr)
311# 104 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
312 call mpi_bcast(patch_icpp(i)%length_y, 1, mpi_p, 0, mpi_comm_world, ierr)
313# 104 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
314 call mpi_bcast(patch_icpp(i)%length_z, 1, mpi_p, 0, mpi_comm_world, ierr)
315# 104 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
316 call mpi_bcast(patch_icpp(i)%radius, 1, mpi_p, 0, mpi_comm_world, ierr)
317# 104 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
318 call mpi_bcast(patch_icpp(i)%epsilon, 1, mpi_p, 0, mpi_comm_world, ierr)
319# 104 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
320 call mpi_bcast(patch_icpp(i)%beta, 1, mpi_p, 0, mpi_comm_world, ierr)
321# 104 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
322 call mpi_bcast(patch_icpp(i)%smooth_coeff, 1, mpi_p, 0, mpi_comm_world, ierr)
323# 104 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
324 call mpi_bcast(patch_icpp(i)%rho, 1, mpi_p, 0, mpi_comm_world, ierr)
325# 104 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
326 call mpi_bcast(patch_icpp(i)%p0, 1, mpi_p, 0, mpi_comm_world, ierr)
327# 104 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
328 call mpi_bcast(patch_icpp(i)%m0, 1, mpi_p, 0, mpi_comm_world, ierr)
329# 104 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
330 call mpi_bcast(patch_icpp(i)%r0, 1, mpi_p, 0, mpi_comm_world, ierr)
331# 104 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
332 call mpi_bcast(patch_icpp(i)%v0, 1, mpi_p, 0, mpi_comm_world, ierr)
333# 104 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
334 call mpi_bcast(patch_icpp(i)%pres, 1, mpi_p, 0, mpi_comm_world, ierr)
335# 104 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
336 call mpi_bcast(patch_icpp(i)%gamma, 1, mpi_p, 0, mpi_comm_world, ierr)
337# 104 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
338 call mpi_bcast(patch_icpp(i)%pi_inf, 1, mpi_p, 0, mpi_comm_world, ierr)
339# 104 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
340 call mpi_bcast(patch_icpp(i)%hcid, 1, mpi_p, 0, mpi_comm_world, ierr)
341# 104 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
342 call mpi_bcast(patch_icpp(i)%cv, 1, mpi_p, 0, mpi_comm_world, ierr)
343# 104 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
344 call mpi_bcast(patch_icpp(i)%qv, 1, mpi_p, 0, mpi_comm_world, ierr)
345# 104 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
346 call mpi_bcast(patch_icpp(i)%qvp, 1, mpi_p, 0, mpi_comm_world, ierr)
347# 104 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
348 call mpi_bcast(patch_icpp(i)%model_threshold, 1, mpi_p, 0, mpi_comm_world, ierr)
349# 104 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
350 call mpi_bcast(patch_icpp(i)%cf_val, 1, mpi_p, 0, mpi_comm_world, ierr)
351# 104 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
352 call mpi_bcast(patch_icpp(i)%Bx, 1, mpi_p, 0, mpi_comm_world, ierr)
353# 104 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
354 call mpi_bcast(patch_icpp(i)%By, 1, mpi_p, 0, mpi_comm_world, ierr)
355# 104 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
356 call mpi_bcast(patch_icpp(i)%Bz, 1, mpi_p, 0, mpi_comm_world, ierr)
357# 106 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
358
359# 108 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
360 call mpi_bcast(patch_icpp(i)%a(2), 1, mpi_p, 0, mpi_comm_world, ierr)
361# 108 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
362 call mpi_bcast(patch_icpp(i)%a(3), 1, mpi_p, 0, mpi_comm_world, ierr)
363# 108 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
364 call mpi_bcast(patch_icpp(i)%a(4), 1, mpi_p, 0, mpi_comm_world, ierr)
365# 108 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
366 call mpi_bcast(patch_icpp(i)%a(5), 1, mpi_p, 0, mpi_comm_world, ierr)
367# 108 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
368 call mpi_bcast(patch_icpp(i)%a(6), 1, mpi_p, 0, mpi_comm_world, ierr)
369# 108 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
370 call mpi_bcast(patch_icpp(i)%a(7), 1, mpi_p, 0, mpi_comm_world, ierr)
371# 108 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
372 call mpi_bcast(patch_icpp(i)%a(8), 1, mpi_p, 0, mpi_comm_world, ierr)
373# 108 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
374 call mpi_bcast(patch_icpp(i)%a(9), 1, mpi_p, 0, mpi_comm_world, ierr)
375# 110 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
376
377 call mpi_bcast(patch_icpp(i)%model_filepath, len(patch_icpp(i)%model_filepath), mpi_character, 0, mpi_comm_world, ierr)
378
379# 115 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
380 call mpi_bcast(patch_icpp(i)%model_translate, size(patch_icpp(i)%model_translate), mpi_p, 0, mpi_comm_world, ierr)
381# 115 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
382 call mpi_bcast(patch_icpp(i)%model_scale, size(patch_icpp(i)%model_scale), mpi_p, 0, mpi_comm_world, ierr)
383# 115 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
384 call mpi_bcast(patch_icpp(i)%model_rotate, size(patch_icpp(i)%model_rotate), mpi_p, 0, mpi_comm_world, ierr)
385# 115 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
386 call mpi_bcast(patch_icpp(i)%normal, size(patch_icpp(i)%normal), mpi_p, 0, mpi_comm_world, ierr)
387# 115 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
388 call mpi_bcast(patch_icpp(i)%radii, size(patch_icpp(i)%radii), mpi_p, 0, mpi_comm_world, ierr)
389# 115 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
390 call mpi_bcast(patch_icpp(i)%vel, size(patch_icpp(i)%vel), mpi_p, 0, mpi_comm_world, ierr)
391# 115 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
392 call mpi_bcast(patch_icpp(i)%tau_e, size(patch_icpp(i)%tau_e), mpi_p, 0, mpi_comm_world, ierr)
393# 115 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
394 call mpi_bcast(patch_icpp(i)%alpha_rho, size(patch_icpp(i)%alpha_rho), mpi_p, 0, mpi_comm_world, ierr)
395# 115 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
396 call mpi_bcast(patch_icpp(i)%alpha, size(patch_icpp(i)%alpha), mpi_p, 0, mpi_comm_world, ierr)
397# 117 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
398
399 call mpi_bcast(patch_icpp(i)%model_spc, 1, mpi_integer, 0, mpi_comm_world, ierr)
400
401 if (chemistry) then
402 call mpi_bcast(patch_icpp(i)%Y, size(patch_icpp(i)%Y), mpi_p, 0, mpi_comm_world, ierr)
403 end if
404 ! Broadcast IB variables
405 call mpi_bcast(patch_ib(i)%geometry, 1, mpi_integer, 0, mpi_comm_world, ierr)
406 call mpi_bcast(patch_ib(i)%model_filepath, len(patch_ib(i)%model_filepath), mpi_character, 0, mpi_comm_world, ierr)
407 call mpi_bcast(patch_ib(i)%model_threshold, 1, mpi_p, 0, mpi_comm_world, ierr)
408 call mpi_bcast(patch_ib(i)%model_spc, 1, mpi_integer, 0, mpi_comm_world, ierr)
409
410# 131 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
411 call mpi_bcast(patch_ib(i)%x_centroid, 1, mpi_p, 0, mpi_comm_world, ierr)
412# 131 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
413 call mpi_bcast(patch_ib(i)%y_centroid, 1, mpi_p, 0, mpi_comm_world, ierr)
414# 131 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
415 call mpi_bcast(patch_ib(i)%z_centroid, 1, mpi_p, 0, mpi_comm_world, ierr)
416# 131 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
417 call mpi_bcast(patch_ib(i)%length_x, 1, mpi_p, 0, mpi_comm_world, ierr)
418# 131 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
419 call mpi_bcast(patch_ib(i)%length_y, 1, mpi_p, 0, mpi_comm_world, ierr)
420# 131 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
421 call mpi_bcast(patch_ib(i)%length_z, 1, mpi_p, 0, mpi_comm_world, ierr)
422# 131 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
423 call mpi_bcast(patch_ib(i)%radius, 1, mpi_p, 0, mpi_comm_world, ierr)
424# 131 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
425 call mpi_bcast(patch_ib(i)%c, 1, mpi_p, 0, mpi_comm_world, ierr)
426# 131 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
427 call mpi_bcast(patch_ib(i)%p, 1, mpi_p, 0, mpi_comm_world, ierr)
428# 131 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
429 call mpi_bcast(patch_ib(i)%t, 1, mpi_p, 0, mpi_comm_world, ierr)
430# 131 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
431 call mpi_bcast(patch_ib(i)%m, 1, mpi_p, 0, mpi_comm_world, ierr)
432# 131 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
433 call mpi_bcast(patch_ib(i)%theta, 1, mpi_p, 0, mpi_comm_world, ierr)
434# 133 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
435 call mpi_bcast(patch_ib(i)%slip, 1, mpi_logical, 0, mpi_comm_world, ierr)
436
437# 136 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
438 call mpi_bcast(patch_ib(i)%model_translate, size(patch_ib(i)%model_translate), mpi_p, 0, mpi_comm_world, ierr)
439# 136 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
440 call mpi_bcast(patch_ib(i)%model_scale, size(patch_ib(i)%model_scale), mpi_p, 0, mpi_comm_world, ierr)
441# 136 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
442 call mpi_bcast(patch_ib(i)%model_rotate, size(patch_ib(i)%model_rotate), mpi_p, 0, mpi_comm_world, ierr)
443# 138 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
444 end do
445
446 ! Simplex noise and fluid physical parameters
447 do i = 1, num_fluids_max
448# 143 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
449 call mpi_bcast(fluid_pp(i)%gamma, 1, mpi_p, 0, mpi_comm_world, ierr)
450# 143 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
451 call mpi_bcast(fluid_pp(i)%pi_inf, 1, mpi_p, 0, mpi_comm_world, ierr)
452# 143 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
453 call mpi_bcast(fluid_pp(i)%G, 1, mpi_p, 0, mpi_comm_world, ierr)
454# 143 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
455 call mpi_bcast(fluid_pp(i)%cv, 1, mpi_p, 0, mpi_comm_world, ierr)
456# 143 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
457 call mpi_bcast(fluid_pp(i)%qv, 1, mpi_p, 0, mpi_comm_world, ierr)
458# 143 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
459 call mpi_bcast(fluid_pp(i)%qvp, 1, mpi_p, 0, mpi_comm_world, ierr)
460# 145 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
461
462 call mpi_bcast(simplex_params%perturb_dens(i), 1, mpi_logical, 0, mpi_comm_world, ierr)
463 call mpi_bcast(simplex_params%perturb_dens_freq(i), 1, mpi_p, 0, mpi_comm_world, ierr)
464 call mpi_bcast(simplex_params%perturb_dens_scale(i), 1, mpi_p, 0, mpi_comm_world, ierr)
465
466 do j = 1, 3
467 call mpi_bcast(simplex_params%perturb_dens_offset(i, j), 1, mpi_p, 0, mpi_comm_world, ierr)
468 end do
469 end do
470
471 ! Subgrid bubble parameters
472 if (bubbles_euler .or. bubbles_lagrange) then
473# 160 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
474 call mpi_bcast(bub_pp%R0ref, 1, mpi_p, 0, mpi_comm_world, ierr)
475# 160 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
476 call mpi_bcast(bub_pp%p0ref, 1, mpi_p, 0, mpi_comm_world, ierr)
477# 160 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
478 call mpi_bcast(bub_pp%rho0ref, 1, mpi_p, 0, mpi_comm_world, ierr)
479# 160 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
480 call mpi_bcast(bub_pp%T0ref, 1, mpi_p, 0, mpi_comm_world, ierr)
481# 160 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
482 call mpi_bcast(bub_pp%ss, 1, mpi_p, 0, mpi_comm_world, ierr)
483# 160 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
484 call mpi_bcast(bub_pp%pv, 1, mpi_p, 0, mpi_comm_world, ierr)
485# 160 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
486 call mpi_bcast(bub_pp%vd, 1, mpi_p, 0, mpi_comm_world, ierr)
487# 160 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
488 call mpi_bcast(bub_pp%mu_l, 1, mpi_p, 0, mpi_comm_world, ierr)
489# 160 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
490 call mpi_bcast(bub_pp%mu_v, 1, mpi_p, 0, mpi_comm_world, ierr)
491# 160 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
492 call mpi_bcast(bub_pp%mu_g, 1, mpi_p, 0, mpi_comm_world, ierr)
493# 160 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
494 call mpi_bcast(bub_pp%gam_v, 1, mpi_p, 0, mpi_comm_world, ierr)
495# 160 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
496 call mpi_bcast(bub_pp%gam_g, 1, mpi_p, 0, mpi_comm_world, ierr)
497# 160 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
498 call mpi_bcast(bub_pp%M_v, 1, mpi_p, 0, mpi_comm_world, ierr)
499# 160 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
500 call mpi_bcast(bub_pp%M_g, 1, mpi_p, 0, mpi_comm_world, ierr)
501# 160 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
502 call mpi_bcast(bub_pp%k_v, 1, mpi_p, 0, mpi_comm_world, ierr)
503# 160 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
504 call mpi_bcast(bub_pp%k_g, 1, mpi_p, 0, mpi_comm_world, ierr)
505# 160 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
506 call mpi_bcast(bub_pp%cp_v, 1, mpi_p, 0, mpi_comm_world, ierr)
507# 160 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
508 call mpi_bcast(bub_pp%cp_g, 1, mpi_p, 0, mpi_comm_world, ierr)
509# 160 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
510 call mpi_bcast(bub_pp%R_v, 1, mpi_p, 0, mpi_comm_world, ierr)
511# 160 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
512 call mpi_bcast(bub_pp%R_g, 1, mpi_p, 0, mpi_comm_world, ierr)
513# 162 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
514 end if
515
516 do i = 1, 3
517 call mpi_bcast(simplex_params%perturb_vel(i), 1, mpi_logical, 0, mpi_comm_world, ierr)
518 call mpi_bcast(simplex_params%perturb_vel_freq(i), 1, mpi_p, 0, mpi_comm_world, ierr)
519 call mpi_bcast(simplex_params%perturb_vel_scale(i), 1, mpi_p, 0, mpi_comm_world, ierr)
520
521 do j = 1, 3
522 call mpi_bcast(simplex_params%perturb_vel_offset(i, j), 1, mpi_p, 0, mpi_comm_world, ierr)
523 end do
524 end do
525
526#endif
527
528 end subroutine s_mpi_bcast_user_inputs
529
530end module m_mpi_proxy
integer, intent(in) j
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.
real(wp) perturb_flow_mag
Magnitude of perturbation with perturb_flow flag.
real(wp) mixlayer_perturb_k0
Peak wavenumber of prescribed energy spectra with mixlayer_perturb flag Default value (k0 = 0....
logical cont_damage
continuum damage modeling
integer p_glb
Global number of cells in each direction.
logical igr
Use information geometric regularization.
logical hypoelasticity
activate hypoelasticity
integer perturb_flow_fluid
Fluid to be perturbed with perturb_flow flag.
integer recon_type
Reconstruction Type.
logical, parameter chemistry
Chemistry modeling.
type(ib_patch_parameters), dimension(num_patches_max) patch_ib
type(int_bounds_info) bc_z
Boundary conditions in the x-, y- and z-coordinate directions.
integer num_fluids
Number of different fluids present in the flow.
logical pre_stress
activate pre_stressed domain
logical bc_io
whether or not to save BC data
type(bounds_info) z_domain
Locations of the domain bounds in the x-, y- and z-coordinate directions.
type(simplex_noise_params) simplex_params
integer muscl_order
Order of accuracy for the MUSCL reconstruction.
real(wp) ptgalpha_eps
trigger parameter for the pTg relaxation procedure, phase change model
integer relax_model
Relax Model.
integer num_patches
Number of patches composing initial condition.
logical ib
Turn immersed boundaries on.
integer num_bc_patches
Number of boundary condition patches.
type(bc_patch_parameters), dimension(num_bc_patches_max) patch_bc
integer model_eqns
Multicomponent flow model.
integer precision
Precision of output files.
logical hyperelasticity
activate hyperelasticity
type(physical_parameters), dimension(num_fluids_max) fluid_pp
Database of the physical parameters of each of the fluids that is present in the flow....
integer mixlayer_perturb_nk
Number of Fourier modes for perturbation with mixlayer_perturb flag.
integer perturb_sph_fluid
Fluid to be perturbed with perturb_sph flag.
logical relax
activate phase change
logical qbmm
Quadrature moment method.
logical old_grid
Use existing grid data.
real(wp) pi_fac
Factor for artificial pi_inf.
logical hyper_cleaning
Hyperbolic cleaning for MHD.
real(wp), dimension(num_fluids_max) fluid_rho
real(wp) pref
Reference parameters for Tait EOS.
real(wp) bx0
Constant magnetic field in the x-direction (1D).
logical stretch_z
Grid stretching flags for the x-, y- and z-coordinate directions.
logical adv_n
Solve the number density equation and compute alpha from number density.
character(len=path_len) case_dir
Case folder location.
type(ic_patch_parameters), dimension(num_patches_max) patch_icpp
Database of the initial condition patch parameters (icpp) for each of the patches employed in the con...
integer weno_order
Order of accuracy for the WENO reconstruction.
logical mhd
Magnetohydrodynamics.
logical parallel_io
Format of the data files.
logical down_sample
Down-sample the output data.
logical file_per_process
type of data output
real(wp) palpha_eps
trigger parameter for the p relaxation procedure, phase change model
integer t_step_start
Existing IC/grid folder.
real(wp) mixlayer_vel_coef
Coefficient for the hyperbolic tangent streamwise velocity profile.
logical mpp_lim
Alpha limiter.
integer igr_order
IGR reconstruction order.
type(subgrid_bubble_physical_parameters) bub_pp
real(wp) rhorv
standard deviations in R/V
logical relativity
Relativity for RMHD.
integer num_ibs
Number of immersed boundaries.
logical mixlayer_vel_profile
Set hyperbolic tangent streamwise velocity profile.
logical mixlayer_perturb
Superimpose instability waves to surrounding fluid flow.
Utility routines for bubble model setup, coordinate transforms, array sampling, and special functions...
MPI communication layer: domain decomposition, halo exchange, reductions, and parallel I/O setup.
Broadcasts user inputs and decomposes the domain across MPI ranks for pre-processing.
impure subroutine s_mpi_bcast_user_inputs
Since only processor with rank 0 is in charge of reading and checking the consistency of the user pro...