876 integer,
intent(in) :: idir
877 type(scalar_field),
dimension(sys_size),
intent(in) :: q_prim_vf
878 type(scalar_field),
intent(inout) :: divu_in
884# 102 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
886# 102 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
887#if defined(MFC_OpenACC)
888# 102 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
890# 102 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
891#elif defined(MFC_OpenMP)
892# 102 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
894# 102 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
896# 102 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
898# 102 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
900# 102 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
905 divu_in%sf(j, k, l) = 0._wp
906 divu_in%sf(j, k, l) = 5.e-1_wp/dx(j)*(q_prim_vf(eqn_idx%cont%end + idir)%sf(j + 1, k, &
907 & l) - q_prim_vf(eqn_idx%cont%end + idir)%sf(j - 1, k, l))
912# 112 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
913#if defined(MFC_OpenACC)
914# 112 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
916# 112 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
917#elif defined(MFC_OpenMP)
918# 112 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
920# 112 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
922# 112 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
925 else if (idir == 2)
then
927# 115 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
929# 115 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
930#if defined(MFC_OpenACC)
931# 115 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
933# 115 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
934#elif defined(MFC_OpenMP)
935# 115 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
937# 115 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
939# 115 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
941# 115 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
943# 115 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
948 divu_in%sf(j, k, l) = divu_in%sf(j, k, l) + 5.e-1_wp/dy(k)*(q_prim_vf(eqn_idx%cont%end + idir)%sf(j, &
949 & k + 1, l) - q_prim_vf(eqn_idx%cont%end + idir)%sf(j, k - 1, l))
954# 124 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
955#if defined(MFC_OpenACC)
956# 124 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
958# 124 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
959#elif defined(MFC_OpenMP)
960# 124 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
962# 124 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
964# 124 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
966 else if (idir == 3)
then
968# 126 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
970# 126 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
971#if defined(MFC_OpenACC)
972# 126 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
974# 126 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
975#elif defined(MFC_OpenMP)
976# 126 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
978# 126 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
980# 126 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
982# 126 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
984# 126 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
989 divu_in%sf(j, k, l) = divu_in%sf(j, k, l) + 5.e-1_wp/dz(l)*(q_prim_vf(eqn_idx%cont%end + idir)%sf(j, k, &
990 & l + 1) - q_prim_vf(eqn_idx%cont%end + idir)%sf(j, k, l - 1))
995# 135 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
996#if defined(MFC_OpenACC)
997# 135 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
999# 135 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1000#elif defined(MFC_OpenMP)
1001# 135 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1003# 135 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1005# 135 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1014 type(scalar_field),
dimension(sys_size),
intent(inout) ::
q_cons_vf
1015 type(scalar_field),
dimension(sys_size),
intent(in) :: q_prim_vf
1016 type(scalar_field),
dimension(sys_size),
intent(inout) :: rhs_vf
1017 type(scalar_field),
intent(in) :: divu_in
1019 real(wp) :: pb_local, mv_local, vflux, pbdot
1020 real(wp) :: n_tait, b_tait
1021 real(wp) :: chi_vw_l, k_mw_l, rho_mw_l
1023# 156 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1024 real(wp),
dimension(nb) :: rtmp, vtmp
1025 real(wp),
dimension(num_fluids) :: myalpha, myalpha_rho
1026# 159 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1027 real(wp) :: myr, myv, alf, myp, myrho, r2vav, r3
1029 integer :: i,
j,
k,
l, q, ii
1030 integer :: adap_dt_stop_sum, adap_dt_stop
1032 real(wp) :: dmmass_v, dmmass_n, dmbeta_c, dmbeta_t, dmcson
1035# 166 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1037# 166 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1038#if defined(MFC_OpenACC)
1039# 166 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1041# 166 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1042#elif defined(MFC_OpenMP)
1043# 166 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1045# 166 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1047# 166 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1049# 166 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1051# 166 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1059# 172 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1060#if defined(MFC_OpenACC)
1061# 172 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1063# 172 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1064#elif defined(MFC_OpenMP)
1065# 172 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1067# 172 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1079# 182 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1080#if defined(MFC_OpenACC)
1081# 182 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1083# 182 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1084#elif defined(MFC_OpenMP)
1085# 182 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1087# 182 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1089# 182 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1092 adap_dt_stop_sum = 0
1094# 185 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1096# 185 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1097#if defined(MFC_OpenACC)
1098# 185 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1100# 185 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1102# 185 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1104# 185 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1105#elif defined(MFC_OpenMP)
1106# 185 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1108# 185 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1110# 185 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1112# 185 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1114# 185 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1116# 185 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1118# 185 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1120# 188 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1125 nbub = q_prim_vf(eqn_idx%n)%sf(
j,
k,
l)
1128# 194 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1129#if defined(MFC_OpenACC)
1130# 194 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1132# 194 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1133#elif defined(MFC_OpenMP)
1134# 194 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1136# 194 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1139 rtmp(q) = q_prim_vf(
rs(q))%sf(
j,
k,
l)
1140 vtmp(q) = q_prim_vf(
vs(q))%sf(
j,
k,
l)
1146# 202 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1147#if defined(MFC_OpenACC)
1148# 202 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1150# 202 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1151#elif defined(MFC_OpenMP)
1152# 202 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1154# 202 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1157 r3 = r3 + weight(q)*rtmp(q)**3._wp
1160 nbub = (3._wp/(4._wp*pi))*q_prim_vf(eqn_idx%alf)%sf(
j,
k,
l)/r3
1163 if (.not. adap_dt)
then
1167# 213 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1168#if defined(MFC_OpenACC)
1169# 213 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1171# 213 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1172#elif defined(MFC_OpenMP)
1173# 213 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1175# 213 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1178 r2vav = r2vav + weight(q)*rtmp(q)**2._wp*vtmp(q)
1185# 221 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1186#if defined(MFC_OpenACC)
1187# 221 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1189# 221 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1190#elif defined(MFC_OpenMP)
1191# 221 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1193# 221 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1197# 223 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1198#if defined(MFC_OpenACC)
1199# 223 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1201# 223 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1202#elif defined(MFC_OpenMP)
1203# 223 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1205# 223 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1207 do ii = 1, num_fluids
1209 myalpha(ii) =
q_cons_vf(eqn_idx%adv%beg + ii - 1)%sf(
j,
k,
l)
1212 if (num_fluids == 1)
then
1213 myrho = myalpha_rho(1)
1215 b_tait = pi_infs(1)/pi_fac
1222# 238 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1223#if defined(MFC_OpenACC)
1224# 238 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1226# 238 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1227#elif defined(MFC_OpenMP)
1228# 238 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1230# 238 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1232 do ii = 1, num_fluids
1233 myrho = myrho + myalpha_rho(ii)
1234 n_tait = n_tait + myalpha(ii)*gammas(ii)
1235 b_tait = b_tait + myalpha(ii)*pi_infs(ii)/pi_fac
1239 n_tait = 1._wp/n_tait + 1._wp
1240 b_tait = b_tait*(n_tait - 1)/n_tait
1242 myp = q_prim_vf(eqn_idx%E)%sf(
j,
k,
l)
1243 alf = q_prim_vf(eqn_idx%alf)%sf(
j,
k,
l)
1244 myr = q_prim_vf(
rs(q))%sf(
j,
k,
l)
1245 myv = q_prim_vf(
vs(q))%sf(
j,
k,
l)
1247 if (alf < small_alf)
then
1251 if (.not. polytropic)
then
1256 if (.not. polytropic)
then
1257 pb_local = q_prim_vf(
ps(q))%sf(
j,
k,
l)
1258 mv_local = q_prim_vf(
ms(q))%sf(
j,
k,
l)
1259 call s_bwproperty(pb_local, q, chi_vw_l, k_mw_l, rho_mw_l)
1260 call s_vflux(myr, myv, pb_local, mv_local, q, vflux, fchi_vw=chi_vw_l, frho_mw=rho_mw_l)
1261 pbdot = f_bpres_dot(vflux, myr, myv, pb_local, mv_local, q, fk_mw=k_mw_l)
1263 bub_m_src(
j,
k,
l, q) = nbub*vflux*4._wp*pi*(myr**2._wp)
1265 pb_local = 0._wp; mv_local = 0._wp; vflux = 0._wp; pbdot = 0._wp
1272 adap_dt_stop = f_advance_step(myrho, myp, myr, myv, r0(q), pb_local, pbdot, alf, n_tait, b_tait, &
1274 & dmmass_n, dmbeta_c, dmbeta_t, dmcson)
1279 rddot = f_rddot(myrho, myp, myr, myv, r0(q), pb_local, pbdot, alf, n_tait, b_tait,
bub_adv_src(
j, &
1280 &
k,
l), divu_in%sf(
j,
k,
l), dmcson)
1286# 292 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1287#if defined(MFC_OpenACC)
1288# 292 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1290# 292 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1291#elif defined(MFC_OpenMP)
1292# 292 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1294# 292 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1296 adap_dt_stop_sum = adap_dt_stop_sum + adap_dt_stop
1303# 299 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1304#if defined(MFC_OpenACC)
1305# 299 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1307# 299 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1308#elif defined(MFC_OpenMP)
1309# 299 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1311# 299 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1313# 299 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1316 if (adap_dt .and. adap_dt_stop_sum > 0)
call s_mpi_abort(
"Adaptive time stepping failed to converge.")
1318 if (.not. adap_dt)
then
1320# 304 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1322# 304 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1323#if defined(MFC_OpenACC)
1324# 304 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1326# 304 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1327#elif defined(MFC_OpenMP)
1328# 304 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1330# 304 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1332# 304 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1334# 304 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1336# 304 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1341 rhs_vf(eqn_idx%alf)%sf(i, q,
l) = rhs_vf(eqn_idx%alf)%sf(i, q,
l) +
bub_adv_src(i, q,
l)
1342 if (num_fluids > 1) rhs_vf(eqn_idx%adv%beg)%sf(i, q,
l) = rhs_vf(eqn_idx%adv%beg)%sf(i, q, &
1345# 311 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1346#if defined(MFC_OpenACC)
1347# 311 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1349# 311 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1350#elif defined(MFC_OpenMP)
1351# 311 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1353# 311 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1358 if (polytropic .neqv. .true.)
then
1367# 323 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1368#if defined(MFC_OpenACC)
1369# 323 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1371# 323 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1372#elif defined(MFC_OpenMP)
1373# 323 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1375# 323 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1377# 323 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"