859 integer,
intent(in) :: idir
860 type(scalar_field),
dimension(sys_size),
intent(in) :: q_prim_vf
861 type(scalar_field),
intent(inout) :: divu_in
869# 110 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
871# 110 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
872#if defined(MFC_OpenACC)
873# 110 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
875# 110 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
876#elif defined(MFC_OpenMP)
877# 110 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
879# 110 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
881# 110 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
883# 110 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
885# 110 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
887# 110 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
892 divu_in%sf(j, k, l) = 0._wp
893 divu_in%sf(j, k, l) = &
894 5.e-1_wp/dx(j)*(q_prim_vf(contxe + idir)%sf(j + 1, k, l) - &
895 q_prim_vf(contxe + idir)%sf(j - 1, k, l))
901# 122 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
903# 122 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
904#if defined(MFC_OpenACC)
905# 122 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
907# 122 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
908#elif defined(MFC_OpenMP)
909# 122 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
911# 122 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
913# 122 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
915# 122 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
917# 122 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
921 elseif (idir == 2)
then
924# 127 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
926# 127 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
927#if defined(MFC_OpenACC)
928# 127 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
930# 127 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
931#elif defined(MFC_OpenMP)
932# 127 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
934# 127 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
936# 127 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
938# 127 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
940# 127 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
942# 127 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
947 divu_in%sf(j, k, l) = divu_in%sf(j, k, l) + &
948 5.e-1_wp/dy(k)*(q_prim_vf(contxe + idir)%sf(j, k + 1, l) - &
949 q_prim_vf(contxe + idir)%sf(j, k - 1, l))
955# 138 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
957# 138 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
958#if defined(MFC_OpenACC)
959# 138 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
961# 138 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
962#elif defined(MFC_OpenMP)
963# 138 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
965# 138 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
967# 138 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
969# 138 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
971# 138 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
974 elseif (idir == 3)
then
977# 142 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
979# 142 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
980#if defined(MFC_OpenACC)
981# 142 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
983# 142 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
984#elif defined(MFC_OpenMP)
985# 142 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
987# 142 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
989# 142 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
991# 142 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
993# 142 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
995# 142 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1000 divu_in%sf(j, k, l) = divu_in%sf(j, k, l) + &
1001 5.e-1_wp/dz(l)*(q_prim_vf(contxe + idir)%sf(j, k, l + 1) - &
1002 q_prim_vf(contxe + idir)%sf(j, k, l - 1))
1008# 153 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1010# 153 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1011#if defined(MFC_OpenACC)
1012# 153 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1014# 153 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1015#elif defined(MFC_OpenMP)
1016# 153 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1018# 153 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1020# 153 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1022# 153 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1024# 153 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1037 type(scalar_field),
dimension(sys_size),
intent(inout) ::
q_cons_vf
1038 type(scalar_field),
dimension(sys_size),
intent(in) :: q_prim_vf
1039 type(scalar_field),
dimension(sys_size),
intent(inout) :: rhs_vf
1040 type(scalar_field),
intent(in) :: divu_in
1043 real(wp) :: pb_local, mv_local, vflux, pbdot
1044 real(wp) :: n_tait, b_tait
1045# 177 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1046 real(wp),
dimension(nb) :: rtmp, vtmp
1047 real(wp),
dimension(num_fluids) :: myalpha, myalpha_rho
1048# 180 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1049 real(wp) :: myr, myv, alf, myp, myrho, r2vav, r3
1053 integer :: i,
j,
k,
l, q, ii
1055 integer :: adap_dt_stop_max, adap_dt_stop
1057 real(wp) :: dmmass_v, dmmass_n, dmbeta_c, dmbeta_t, dmcson
1060# 190 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1062# 190 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1063#if defined(MFC_OpenACC)
1064# 190 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1066# 190 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1067#elif defined(MFC_OpenMP)
1068# 190 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1070# 190 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1072# 190 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1074# 190 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1076# 190 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1078# 190 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1086# 196 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1087#if defined(MFC_OpenACC)
1088# 196 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1090# 196 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1091#elif defined(MFC_OpenMP)
1092# 196 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1094# 196 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1106# 206 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1108# 206 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1109#if defined(MFC_OpenACC)
1110# 206 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1112# 206 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1113#elif defined(MFC_OpenMP)
1114# 206 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1116# 206 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1118# 206 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1120# 206 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1122# 206 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1125 adap_dt_stop_max = 0
1127# 209 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1129# 209 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1130#if defined(MFC_OpenACC)
1131# 209 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1133# 209 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1134#elif defined(MFC_OpenMP)
1135# 209 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1137# 209 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1139# 209 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1141# 209 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1143# 209 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1145# 209 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1147# 212 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1153 nbub = q_prim_vf(n_idx)%sf(
j,
k,
l)
1156# 219 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1157#if defined(MFC_OpenACC)
1158# 219 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1160# 219 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1161#elif defined(MFC_OpenMP)
1162# 219 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1164# 219 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1167 rtmp(q) = q_prim_vf(
rs(q))%sf(
j,
k,
l)
1168 vtmp(q) = q_prim_vf(
vs(q))%sf(
j,
k,
l)
1174# 227 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1175#if defined(MFC_OpenACC)
1176# 227 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1178# 227 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1179#elif defined(MFC_OpenMP)
1180# 227 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1182# 227 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1185 r3 = r3 + weight(q)*rtmp(q)**3._wp
1188 nbub = (3._wp/(4._wp*pi))*q_prim_vf(alf_idx)%sf(
j,
k,
l)/r3
1191 if (.not. adap_dt)
then
1195# 238 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1196#if defined(MFC_OpenACC)
1197# 238 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1199# 238 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1200#elif defined(MFC_OpenMP)
1201# 238 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1203# 238 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1206 r2vav = r2vav + weight(q)*rtmp(q)**2._wp*vtmp(q)
1213# 246 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1214#if defined(MFC_OpenACC)
1215# 246 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1217# 246 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1218#elif defined(MFC_OpenMP)
1219# 246 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1221# 246 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1226# 249 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1227#if defined(MFC_OpenACC)
1228# 249 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1230# 249 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1231#elif defined(MFC_OpenMP)
1232# 249 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1234# 249 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1236 do ii = 1, num_fluids
1241 if (num_fluids == 1)
then
1242 myrho = myalpha_rho(1)
1244 b_tait = pi_infs(1)/pi_fac
1251# 264 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1252#if defined(MFC_OpenACC)
1253# 264 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1255# 264 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1256#elif defined(MFC_OpenMP)
1257# 264 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1259# 264 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1261 do ii = 1, num_fluids
1262 myrho = myrho + myalpha_rho(ii)
1263 n_tait = n_tait + myalpha(ii)*gammas(ii)
1264 b_tait = b_tait + myalpha(ii)*pi_infs(ii)/pi_fac
1268 n_tait = 1._wp/n_tait + 1._wp
1269 b_tait = b_tait*(n_tait - 1)/n_tait
1271 myp = q_prim_vf(e_idx)%sf(
j,
k,
l)
1272 alf = q_prim_vf(alf_idx)%sf(
j,
k,
l)
1273 myr = q_prim_vf(
rs(q))%sf(
j,
k,
l)
1274 myv = q_prim_vf(
vs(q))%sf(
j,
k,
l)
1276 if (alf < small_alf)
then
1280 if (.not. polytropic)
then
1285 if (.not. polytropic)
then
1286 pb_local = q_prim_vf(
ps(q))%sf(
j,
k,
l)
1287 mv_local = q_prim_vf(
ms(q))%sf(
j,
k,
l)
1288 call s_bwproperty(pb_local, q, chi_vw, k_mw, rho_mw)
1289 call s_vflux(myr, myv, pb_local, mv_local, q, vflux)
1290 pbdot = f_bpres_dot(vflux, myr, myv, pb_local, mv_local, q)
1292 bub_m_src(
j,
k,
l, q) = nbub*vflux*4._wp*pi*(myr**2._wp)
1294 pb_local = 0._wp; mv_local = 0._wp; vflux = 0._wp; pbdot = 0._wp
1301 call s_advance_step(myrho, myp, myr, myv, r0(q), &
1302 pb_local, pbdot, alf, n_tait, b_tait, &
1304 dmbub_id, dmmass_v, dmmass_n, dmbeta_c, &
1305 dmbeta_t, dmcson, adap_dt_stop)
1310 adap_dt_stop_max = max(adap_dt_stop_max, adap_dt_stop)
1313 rddot = f_rddot(myrho, myp, myr, myv, r0(q), &
1314 pb_local, pbdot, alf, n_tait, b_tait, &
1326# 329 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1328# 329 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1329#if defined(MFC_OpenACC)
1330# 329 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1332# 329 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1333#elif defined(MFC_OpenMP)
1334# 329 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1336# 329 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1338# 329 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1340# 329 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1342# 329 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1345 if (adap_dt .and. adap_dt_stop_max > 0)
call s_mpi_abort(
"Adaptive time stepping failed to converge.")
1347 if (.not. adap_dt)
then
1349# 334 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1351# 334 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1352#if defined(MFC_OpenACC)
1353# 334 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1355# 334 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1356#elif defined(MFC_OpenMP)
1357# 334 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1359# 334 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1361# 334 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1363# 334 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1365# 334 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1367# 334 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1372 rhs_vf(alf_idx)%sf(i, q,
l) = rhs_vf(alf_idx)%sf(i, q,
l) +
bub_adv_src(i, q,
l)
1373 if (num_fluids > 1) rhs_vf(advxb)%sf(i, q,
l) = &
1376# 341 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1377#if defined(MFC_OpenACC)
1378# 341 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1380# 341 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1381#elif defined(MFC_OpenMP)
1382# 341 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1384# 341 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1389 if (polytropic .neqv. .true.)
then
1398# 353 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1400# 353 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1401#if defined(MFC_OpenACC)
1402# 353 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1404# 353 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1405#elif defined(MFC_OpenMP)
1406# 353 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1408# 353 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1410# 353 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1412# 353 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"
1414# 353 "/home/runner/work/MFC/MFC/src/simulation/m_bubbles_EE.fpp"