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_p, 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 call mpi_bcast(patch_bc(i)%radius, 1, mpi_p, 0, mpi_comm_world, ierr)
276
277# 82 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
278 call mpi_bcast(patch_bc(i)%centroid, size(patch_bc(i)%centroid), mpi_p, 0, mpi_comm_world, ierr)
279# 82 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
280 call mpi_bcast(patch_bc(i)%length, size(patch_bc(i)%length), mpi_p, 0, mpi_comm_world, ierr)
281# 84 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
282 end do
283
284 do i = 1, num_patches_max
285# 88 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
286 call mpi_bcast(patch_icpp(i)%geometry, 1, mpi_integer, 0, mpi_comm_world, ierr)
287# 88 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
288 call mpi_bcast(patch_icpp(i)%smooth_patch_id, 1, mpi_integer, 0, mpi_comm_world, ierr)
289# 90 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
290
291 call mpi_bcast(patch_icpp(i)%smoothen, 1, mpi_logical, 0, mpi_comm_world, ierr)
292 call mpi_bcast(patch_icpp(i)%non_axis_sym, 1, mpi_logical, 0, mpi_comm_world, ierr)
293 call mpi_bcast(patch_icpp(i)%alter_patch(0), num_patches_max, mpi_logical, 0, mpi_comm_world, ierr)
294
295# 100 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
296 call mpi_bcast(patch_icpp(i)%x_centroid, 1, mpi_p, 0, mpi_comm_world, ierr)
297# 100 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
298 call mpi_bcast(patch_icpp(i)%y_centroid, 1, mpi_p, 0, mpi_comm_world, ierr)
299# 100 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
300 call mpi_bcast(patch_icpp(i)%z_centroid, 1, mpi_p, 0, mpi_comm_world, ierr)
301# 100 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
302 call mpi_bcast(patch_icpp(i)%length_x, 1, mpi_p, 0, mpi_comm_world, ierr)
303# 100 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
304 call mpi_bcast(patch_icpp(i)%length_y, 1, mpi_p, 0, mpi_comm_world, ierr)
305# 100 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
306 call mpi_bcast(patch_icpp(i)%length_z, 1, mpi_p, 0, mpi_comm_world, ierr)
307# 100 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
308 call mpi_bcast(patch_icpp(i)%radius, 1, mpi_p, 0, mpi_comm_world, ierr)
309# 100 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
310 call mpi_bcast(patch_icpp(i)%epsilon, 1, mpi_p, 0, mpi_comm_world, ierr)
311# 100 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
312 call mpi_bcast(patch_icpp(i)%beta, 1, mpi_p, 0, mpi_comm_world, ierr)
313# 100 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
314 call mpi_bcast(patch_icpp(i)%smooth_coeff, 1, mpi_p, 0, mpi_comm_world, ierr)
315# 100 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
316 call mpi_bcast(patch_icpp(i)%rho, 1, mpi_p, 0, mpi_comm_world, ierr)
317# 100 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
318 call mpi_bcast(patch_icpp(i)%p0, 1, mpi_p, 0, mpi_comm_world, ierr)
319# 100 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
320 call mpi_bcast(patch_icpp(i)%m0, 1, mpi_p, 0, mpi_comm_world, ierr)
321# 100 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
322 call mpi_bcast(patch_icpp(i)%r0, 1, mpi_p, 0, mpi_comm_world, ierr)
323# 100 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
324 call mpi_bcast(patch_icpp(i)%v0, 1, mpi_p, 0, mpi_comm_world, ierr)
325# 100 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
326 call mpi_bcast(patch_icpp(i)%pres, 1, mpi_p, 0, mpi_comm_world, ierr)
327# 100 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
328 call mpi_bcast(patch_icpp(i)%gamma, 1, mpi_p, 0, mpi_comm_world, ierr)
329# 100 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
330 call mpi_bcast(patch_icpp(i)%pi_inf, 1, mpi_p, 0, mpi_comm_world, ierr)
331# 100 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
332 call mpi_bcast(patch_icpp(i)%hcid, 1, mpi_p, 0, mpi_comm_world, ierr)
333# 100 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
334 call mpi_bcast(patch_icpp(i)%cv, 1, mpi_p, 0, mpi_comm_world, ierr)
335# 100 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
336 call mpi_bcast(patch_icpp(i)%qv, 1, mpi_p, 0, mpi_comm_world, ierr)
337# 100 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
338 call mpi_bcast(patch_icpp(i)%qvp, 1, mpi_p, 0, mpi_comm_world, ierr)
339# 100 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
340 call mpi_bcast(patch_icpp(i)%model_threshold, 1, mpi_p, 0, mpi_comm_world, ierr)
341# 100 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
342 call mpi_bcast(patch_icpp(i)%cf_val, 1, mpi_p, 0, mpi_comm_world, ierr)
343# 100 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
344 call mpi_bcast(patch_icpp(i)%Bx, 1, mpi_p, 0, mpi_comm_world, ierr)
345# 100 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
346 call mpi_bcast(patch_icpp(i)%By, 1, mpi_p, 0, mpi_comm_world, ierr)
347# 100 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
348 call mpi_bcast(patch_icpp(i)%Bz, 1, mpi_p, 0, mpi_comm_world, ierr)
349# 102 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
350
351# 104 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
352 call mpi_bcast(patch_icpp(i)%a(2), 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)%a(3), 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)%a(4), 1, mpi_p, 0, mpi_comm_world, ierr)
357# 104 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
358 call mpi_bcast(patch_icpp(i)%a(5), 1, mpi_p, 0, mpi_comm_world, ierr)
359# 104 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
360 call mpi_bcast(patch_icpp(i)%a(6), 1, mpi_p, 0, mpi_comm_world, ierr)
361# 104 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
362 call mpi_bcast(patch_icpp(i)%a(7), 1, mpi_p, 0, mpi_comm_world, ierr)
363# 104 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
364 call mpi_bcast(patch_icpp(i)%a(8), 1, mpi_p, 0, mpi_comm_world, ierr)
365# 104 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
366 call mpi_bcast(patch_icpp(i)%a(9), 1, mpi_p, 0, mpi_comm_world, ierr)
367# 106 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
368
369 call mpi_bcast(patch_icpp(i)%model_filepath, len(patch_icpp(i)%model_filepath), mpi_character, 0, mpi_comm_world, ierr)
370
371# 112 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
372 call mpi_bcast(patch_icpp(i)%model_translate, size(patch_icpp(i)%model_translate), mpi_p, 0, mpi_comm_world, ierr)
373# 112 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
374 call mpi_bcast(patch_icpp(i)%model_scale, size(patch_icpp(i)%model_scale), mpi_p, 0, mpi_comm_world, ierr)
375# 112 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
376 call mpi_bcast(patch_icpp(i)%model_rotate, size(patch_icpp(i)%model_rotate), mpi_p, 0, mpi_comm_world, ierr)
377# 112 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
378 call mpi_bcast(patch_icpp(i)%normal, size(patch_icpp(i)%normal), mpi_p, 0, mpi_comm_world, ierr)
379# 112 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
380 call mpi_bcast(patch_icpp(i)%radii, size(patch_icpp(i)%radii), mpi_p, 0, mpi_comm_world, ierr)
381# 112 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
382 call mpi_bcast(patch_icpp(i)%vel, size(patch_icpp(i)%vel), mpi_p, 0, mpi_comm_world, ierr)
383# 112 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
384 call mpi_bcast(patch_icpp(i)%tau_e, size(patch_icpp(i)%tau_e), mpi_p, 0, mpi_comm_world, ierr)
385# 112 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
386 call mpi_bcast(patch_icpp(i)%alpha_rho, size(patch_icpp(i)%alpha_rho), mpi_p, 0, mpi_comm_world, ierr)
387# 112 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
388 call mpi_bcast(patch_icpp(i)%alpha, size(patch_icpp(i)%alpha), mpi_p, 0, mpi_comm_world, ierr)
389# 112 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
390 call mpi_bcast(patch_icpp(i)%fourier_cos, size(patch_icpp(i)%fourier_cos), mpi_p, 0, mpi_comm_world, ierr)
391# 112 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
392 call mpi_bcast(patch_icpp(i)%fourier_sin, size(patch_icpp(i)%fourier_sin), mpi_p, 0, mpi_comm_world, ierr)
393# 114 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
394
395 call mpi_bcast(patch_icpp(i)%sph_har_coeff, size(patch_icpp(i)%sph_har_coeff), mpi_p, 0, mpi_comm_world, ierr)
396 call mpi_bcast(patch_icpp(i)%modal_clip_r_to_min, 1, mpi_logical, 0, mpi_comm_world, ierr)
397 call mpi_bcast(patch_icpp(i)%modal_r_min, 1, mpi_p, 0, mpi_comm_world, ierr)
398 call mpi_bcast(patch_icpp(i)%modal_use_exp_form, 1, mpi_logical, 0, mpi_comm_world, ierr)
399
400 call mpi_bcast(patch_icpp(i)%model_spc, 1, mpi_integer, 0, mpi_comm_world, ierr)
401
402 if (chemistry) then
403 call mpi_bcast(patch_icpp(i)%Y, size(patch_icpp(i)%Y), mpi_p, 0, mpi_comm_world, ierr)
404 end if
405 ! Broadcast IB variables: patch_ib is indexed 1:num_patches_max,
406 ! not 1:num_bc_patches_max, so these must live in the num_patches_max loop.
407# 128 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
408 call mpi_bcast(patch_ib(i)%vel, size(patch_ib(i)%vel), mpi_p, 0, mpi_comm_world, ierr)
409# 128 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
410 call mpi_bcast(patch_ib(i)%angular_vel, size(patch_ib(i)%angular_vel), mpi_p, 0, mpi_comm_world, ierr)
411# 128 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
412 call mpi_bcast(patch_ib(i)%angles, size(patch_ib(i)%angles), mpi_p, 0, mpi_comm_world, ierr)
413# 130 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
414 call mpi_bcast(patch_ib(i)%geometry, 1, mpi_integer, 0, mpi_comm_world, ierr)
415 call mpi_bcast(patch_ib(i)%model_filepath, len(patch_ib(i)%model_filepath), mpi_character, 0, mpi_comm_world, ierr)
416 call mpi_bcast(patch_ib(i)%model_threshold, 1, mpi_p, 0, mpi_comm_world, ierr)
417 call mpi_bcast(patch_ib(i)%model_spc, 1, mpi_integer, 0, mpi_comm_world, ierr)
418
419# 137 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
420 call mpi_bcast(patch_ib(i)%x_centroid, 1, mpi_p, 0, mpi_comm_world, ierr)
421# 137 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
422 call mpi_bcast(patch_ib(i)%y_centroid, 1, mpi_p, 0, mpi_comm_world, ierr)
423# 137 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
424 call mpi_bcast(patch_ib(i)%z_centroid, 1, mpi_p, 0, mpi_comm_world, ierr)
425# 137 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
426 call mpi_bcast(patch_ib(i)%length_x, 1, mpi_p, 0, mpi_comm_world, ierr)
427# 137 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
428 call mpi_bcast(patch_ib(i)%length_y, 1, mpi_p, 0, mpi_comm_world, ierr)
429# 137 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
430 call mpi_bcast(patch_ib(i)%length_z, 1, mpi_p, 0, mpi_comm_world, ierr)
431# 137 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
432 call mpi_bcast(patch_ib(i)%radius, 1, mpi_p, 0, mpi_comm_world, ierr)
433# 137 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
434 call mpi_bcast(patch_ib(i)%c, 1, mpi_p, 0, mpi_comm_world, ierr)
435# 137 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
436 call mpi_bcast(patch_ib(i)%p, 1, mpi_p, 0, mpi_comm_world, ierr)
437# 137 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
438 call mpi_bcast(patch_ib(i)%t, 1, mpi_p, 0, mpi_comm_world, ierr)
439# 137 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
440 call mpi_bcast(patch_ib(i)%m, 1, mpi_p, 0, mpi_comm_world, ierr)
441# 137 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
442 call mpi_bcast(patch_ib(i)%theta, 1, mpi_p, 0, mpi_comm_world, ierr)
443# 139 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
444 call mpi_bcast(patch_ib(i)%slip, 1, mpi_logical, 0, mpi_comm_world, ierr)
445
446# 142 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
447 call mpi_bcast(patch_ib(i)%model_translate, size(patch_ib(i)%model_translate), mpi_p, 0, mpi_comm_world, ierr)
448# 142 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
449 call mpi_bcast(patch_ib(i)%model_scale, size(patch_ib(i)%model_scale), mpi_p, 0, mpi_comm_world, ierr)
450# 142 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
451 call mpi_bcast(patch_ib(i)%model_rotate, size(patch_ib(i)%model_rotate), mpi_p, 0, mpi_comm_world, ierr)
452# 144 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
453 end do
454
455 ! Simplex noise and fluid physical parameters
456 do i = 1, num_fluids_max
457# 149 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
458 call mpi_bcast(fluid_pp(i)%gamma, 1, mpi_p, 0, mpi_comm_world, ierr)
459# 149 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
460 call mpi_bcast(fluid_pp(i)%pi_inf, 1, mpi_p, 0, mpi_comm_world, ierr)
461# 149 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
462 call mpi_bcast(fluid_pp(i)%G, 1, mpi_p, 0, mpi_comm_world, ierr)
463# 149 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
464 call mpi_bcast(fluid_pp(i)%cv, 1, mpi_p, 0, mpi_comm_world, ierr)
465# 149 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
466 call mpi_bcast(fluid_pp(i)%qv, 1, mpi_p, 0, mpi_comm_world, ierr)
467# 149 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
468 call mpi_bcast(fluid_pp(i)%qvp, 1, mpi_p, 0, mpi_comm_world, ierr)
469# 151 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
470
471 call mpi_bcast(simplex_params%perturb_dens(i), 1, mpi_logical, 0, mpi_comm_world, ierr)
472 call mpi_bcast(simplex_params%perturb_dens_freq(i), 1, mpi_p, 0, mpi_comm_world, ierr)
473 call mpi_bcast(simplex_params%perturb_dens_scale(i), 1, mpi_p, 0, mpi_comm_world, ierr)
474
475 do j = 1, 3
476 call mpi_bcast(simplex_params%perturb_dens_offset(i, j), 1, mpi_p, 0, mpi_comm_world, ierr)
477 end do
478 end do
479
480 ! Subgrid bubble parameters
481 if (bubbles_euler .or. bubbles_lagrange) then
482# 166 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
483 call mpi_bcast(bub_pp%R0ref, 1, mpi_p, 0, mpi_comm_world, ierr)
484# 166 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
485 call mpi_bcast(bub_pp%p0ref, 1, mpi_p, 0, mpi_comm_world, ierr)
486# 166 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
487 call mpi_bcast(bub_pp%rho0ref, 1, mpi_p, 0, mpi_comm_world, ierr)
488# 166 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
489 call mpi_bcast(bub_pp%T0ref, 1, mpi_p, 0, mpi_comm_world, ierr)
490# 166 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
491 call mpi_bcast(bub_pp%ss, 1, mpi_p, 0, mpi_comm_world, ierr)
492# 166 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
493 call mpi_bcast(bub_pp%pv, 1, mpi_p, 0, mpi_comm_world, ierr)
494# 166 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
495 call mpi_bcast(bub_pp%vd, 1, mpi_p, 0, mpi_comm_world, ierr)
496# 166 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
497 call mpi_bcast(bub_pp%mu_l, 1, mpi_p, 0, mpi_comm_world, ierr)
498# 166 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
499 call mpi_bcast(bub_pp%mu_v, 1, mpi_p, 0, mpi_comm_world, ierr)
500# 166 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
501 call mpi_bcast(bub_pp%mu_g, 1, mpi_p, 0, mpi_comm_world, ierr)
502# 166 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
503 call mpi_bcast(bub_pp%gam_v, 1, mpi_p, 0, mpi_comm_world, ierr)
504# 166 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
505 call mpi_bcast(bub_pp%gam_g, 1, mpi_p, 0, mpi_comm_world, ierr)
506# 166 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
507 call mpi_bcast(bub_pp%M_v, 1, mpi_p, 0, mpi_comm_world, ierr)
508# 166 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
509 call mpi_bcast(bub_pp%M_g, 1, mpi_p, 0, mpi_comm_world, ierr)
510# 166 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
511 call mpi_bcast(bub_pp%k_v, 1, mpi_p, 0, mpi_comm_world, ierr)
512# 166 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
513 call mpi_bcast(bub_pp%k_g, 1, mpi_p, 0, mpi_comm_world, ierr)
514# 166 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
515 call mpi_bcast(bub_pp%cp_v, 1, mpi_p, 0, mpi_comm_world, ierr)
516# 166 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
517 call mpi_bcast(bub_pp%cp_g, 1, mpi_p, 0, mpi_comm_world, ierr)
518# 166 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
519 call mpi_bcast(bub_pp%R_v, 1, mpi_p, 0, mpi_comm_world, ierr)
520# 166 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
521 call mpi_bcast(bub_pp%R_g, 1, mpi_p, 0, mpi_comm_world, ierr)
522# 168 "/home/runner/work/MFC/MFC/src/pre_process/m_mpi_proxy.fpp"
523 end if
524
525 do i = 1, 3
526 call mpi_bcast(simplex_params%perturb_vel(i), 1, mpi_logical, 0, mpi_comm_world, ierr)
527 call mpi_bcast(simplex_params%perturb_vel_freq(i), 1, mpi_p, 0, mpi_comm_world, ierr)
528 call mpi_bcast(simplex_params%perturb_vel_scale(i), 1, mpi_p, 0, mpi_comm_world, ierr)
529
530 do j = 1, 3
531 call mpi_bcast(simplex_params%perturb_vel_offset(i, j), 1, mpi_p, 0, mpi_comm_world, ierr)
532 end do
533 end do
534
535#endif
536
537 end subroutine s_mpi_bcast_user_inputs
538
539end 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...