379 subroutine s_hlld_riemann_solver(qL_prim_rsx_vf, dqL_prim_dx_vf, dqL_prim_dy_vf, dqL_prim_dz_vf, qL_prim_vf, qR_prim_rsx_vf, &
380 & dqR_prim_dx_vf, dqR_prim_dy_vf, dqR_prim_dz_vf, qR_prim_vf, q_prim_vf, flux_vf, &
381 & flux_src_vf, flux_gsrc_vf, norm_dir, ix, iy, iz)
383 real(wp),
dimension(idwbuff(1)%beg:,idwbuff(2)%beg:,idwbuff(3)%beg:,1:),
intent(inout) :: qL_prim_rsx_vf, qR_prim_rsx_vf
384 type(
scalar_field),
allocatable,
dimension(:),
intent(inout) :: dqL_prim_dx_vf, dqR_prim_dx_vf, dqL_prim_dy_vf, &
385 & dqR_prim_dy_vf, dqL_prim_dz_vf, dqR_prim_dz_vf
387 type(
scalar_field),
allocatable,
dimension(:),
intent(inout) :: qL_prim_vf, qR_prim_vf
388 type(
scalar_field),
dimension(sys_size),
intent(in) :: q_prim_vf
389 type(
scalar_field),
dimension(sys_size),
intent(inout) :: flux_vf, flux_src_vf, flux_gsrc_vf
390 integer,
intent(in) :: norm_dir
395# 40 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
396 real(wp),
dimension(num_fluids) :: alpha_L, alpha_R, alpha_rho_L, alpha_rho_R
397# 42 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
406 real(wp) :: s_L, s_R, s_M, s_starL, s_starR
407 real(wp) :: pTot_L, pTot_R, p_star, rhoL_star, rhoR_star, E_starL, E_starR
408 real(wp),
dimension(7) :: U_L, U_R, U_starL, U_starR, U_doubleL, U_doubleR
409 real(wp),
dimension(7) :: F_L, F_R, F_starL, F_starR, F_hlld
415 real(wp) :: sqrt_rhoL_star, sqrt_rhoR_star, denom_ds, sign_Bx
416 real(wp) :: vL_star, vR_star, wL_star, wR_star
417 real(wp) :: v_double, w_double, By_double, Bz_double, E_doubleL, E_doubleR, E_double
418 integer :: i, j, k, l
421 & qr_prim_rsx_vf, dqr_prim_dx_vf, dqr_prim_dy_vf, dqr_prim_dz_vf, norm_dir, ix, iy, iz)
425# 73 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
426# 74 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
427# 75 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
428 if (norm_dir == 1)
then
429# 76 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
431# 76 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
433# 76 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
434#if defined(MFC_OpenACC)
435# 76 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
437# 76 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
439# 76 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
441# 76 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
442#elif defined(MFC_OpenMP)
443# 76 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
445# 76 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
447# 76 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
449# 76 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
451# 76 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
453# 76 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
455# 76 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
457# 76 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
459# 82 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
461# 83 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
463# 84 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
465# 85 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
467 do i = 1, eqn_idx%cont%end
468 alpha_rho_l(i) = ql_prim_rsx_vf(j, k, l, i)
469# 88 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
470 alpha_rho_r(i) = qr_prim_rsx_vf(j + 1, k, l, i)
471# 89 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
476 vel%L(i) = ql_prim_rsx_vf(j, k, l, eqn_idx%cont%end +
dir_idx(i))
477# 94 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
478 vel%R(i) = qr_prim_rsx_vf(j + 1, k, l, eqn_idx%cont%end +
dir_idx(i))
479# 95 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
482 vel_rms%L = sum(vel%L**2._wp)
483 vel_rms%R = sum(vel%R**2._wp)
486 alpha_l(i) = ql_prim_rsx_vf(j, k, l, eqn_idx%E + i)
487# 102 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
488 alpha_r(i) = qr_prim_rsx_vf(j + 1, k, l, eqn_idx%E + i)
489# 103 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
492 pres%L = ql_prim_rsx_vf(j, k, l, eqn_idx%E)
493# 106 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
494 pres%R = qr_prim_rsx_vf(j + 1, k, l, eqn_idx%E)
495# 107 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
500 b%L = [bx0, ql_prim_rsx_vf(j, k, l, eqn_idx%B%beg), ql_prim_rsx_vf(j, k, l, &
501# 112 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
502 & eqn_idx%B%beg + 1)]
503 b%R = [bx0, qr_prim_rsx_vf(j + 1, k, l, eqn_idx%B%beg), qr_prim_rsx_vf(j + 1, k, l, &
504# 114 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
505 & eqn_idx%B%beg + 1)]
507 b%L = [ql_prim_rsx_vf(j, k, l, eqn_idx%B%beg +
dir_idx(1) - 1), ql_prim_rsx_vf(j, k, l, &
508# 117 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
509 & eqn_idx%B%beg +
dir_idx(2) - 1), ql_prim_rsx_vf(j, k, l, &
510# 118 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
511 & eqn_idx%B%beg +
dir_idx(3) - 1)]
512 b%R = [qr_prim_rsx_vf(j + 1, k, l, eqn_idx%B%beg +
dir_idx(1) - 1), &
513# 120 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
514 & qr_prim_rsx_vf(j + 1, k, l, eqn_idx%B%beg +
dir_idx(2) - 1), &
515# 121 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
516 & qr_prim_rsx_vf(j + 1, k, l, eqn_idx%B%beg +
dir_idx(3) - 1)]
517# 122 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
521 call s_compute_mixture_coefficients(alpha_rho_l, alpha_l, rho%L, gamma%L, pi_inf%L, qv%L)
522 call s_compute_mixture_coefficients(alpha_rho_r, alpha_r, rho%R, gamma%R, pi_inf%R, qv%R)
524 pres_mag%L = 0.5_wp*sum(b%L**2._wp)
525 pres_mag%R = 0.5_wp*sum(b%R**2._wp)
527 e%L = e%L + pres_mag%L
529 e%R = e%R + pres_mag%R
530 h_no_mag%L = (e%L + pres%L - pres_mag%L)/rho%L
532 h_no_mag%R = (e%R + pres%R - pres_mag%R)/rho%R
535 call s_compute_speed_of_sound(pres%L, rho%L, gamma%L, pi_inf%L, alpha_l, c%L)
536 call s_compute_speed_of_sound(pres%R, rho%R, gamma%R, pi_inf%R, alpha_r, c%R)
541 s_l = min(vel%L(1) - c_fast%L, vel%R(1) - c_fast%R)
542 s_r = max(vel%R(1) + c_fast%R, vel%L(1) + c_fast%L)
544 ptot_l = pres%L + pres_mag%L
545 ptot_r = pres%R + pres_mag%R
547 s_m = (((s_r - vel%R(1))*rho%R*vel%R(1) - (s_l - vel%L(1))*rho%L*vel%L(1) - ptot_r + ptot_l)/((s_r &
548 & - vel%R(1))*rho%R - (s_l - vel%L(1))*rho%L))
551 rhol_star = rho%L*(s_l - vel%L(1))/(s_l - s_m)
552 rhor_star = rho%R*(s_r - vel%R(1))/(s_r - s_m)
553 p_star = ptot_l + rho%L*(s_l - vel%L(1))*(s_m - vel%L(1))/(s_l - s_m)
554 e_starl = ((s_l - vel%L(1))*e%L - ptot_l*vel%L(1) + p_star*s_m)/(s_l - s_m)
555 e_starr = ((s_r - vel%R(1))*e%R - ptot_r*vel%R(1) + p_star*s_m)/(s_r - s_m)
558 u_l = [rho%L, rho%L*vel%L(1:3), b%L(2:3), e%L]
559 u_starl = [rhol_star, rhol_star*s_m, rhol_star*vel%L(2:3), b%L(2:3), e_starl]
560 u_r = [rho%R, rho%R*vel%R(1:3), b%R(2:3), e%R]
561 u_starr = [rhor_star, rhor_star*s_m, rhor_star*vel%R(2:3), b%R(2:3), e_starr]
565 f_l(2) = u_l(2)*vel%L(1) - b%L(1)*b%L(1) + ptot_l
566 f_l(3:4) = u_l(2)*vel%L(2:3) - b%L(1)*b%L(2:3)
567 f_l(5:6) = vel%L(1)*b%L(2:3) - vel%L(2:3)*b%L(1)
568 f_l(7) = (e%L + ptot_l)*vel%L(1) - b%L(1)*(vel%L(1)*b%L(1) + vel%L(2)*b%L(2) + vel%L(3)*b%L(3))
571 f_r(2) = u_r(2)*vel%R(1) - b%R(1)*b%R(1) + ptot_r
572 f_r(3:4) = u_r(2)*vel%R(2:3) - b%R(1)*b%R(2:3)
573 f_r(5:6) = vel%R(1)*b%R(2:3) - vel%R(2:3)*b%R(1)
574 f_r(7) = (e%R + ptot_r)*vel%R(1) - b%R(1)*(vel%R(1)*b%R(1) + vel%R(2)*b%R(2) + vel%R(3)*b%R(3))
576 f_starl = f_l + s_l*(u_starl - u_l)
577 f_starr = f_r + s_r*(u_starr - u_r)
579 s_starl = s_m - abs(b%L(1))/sqrt(rhol_star)
580 s_starr = s_m + abs(b%L(1))/sqrt(rhor_star)
582 sqrt_rhol_star = sqrt(rhol_star); sqrt_rhor_star = sqrt(rhor_star)
583 vl_star = vel%L(2); wl_star = vel%L(3)
584 vr_star = vel%R(2); wr_star = vel%R(3)
587 denom_ds = sqrt_rhol_star + sqrt_rhor_star
588 sign_bx = sign(1._wp, b%L(1))
589 v_double = (sqrt_rhol_star*vl_star + sqrt_rhor_star*vr_star + (b%R(2) - b%L(2))*sign_bx)/denom_ds
590 w_double = (sqrt_rhol_star*wl_star + sqrt_rhor_star*wr_star + (b%R(3) - b%L(3))*sign_bx)/denom_ds
591 by_double = (sqrt_rhol_star*b%R(2) + sqrt_rhor_star*b%L(2) + sqrt_rhol_star*sqrt_rhor_star*(vr_star &
592 & - vl_star)*sign_bx)/denom_ds
593 bz_double = (sqrt_rhol_star*b%R(3) + sqrt_rhor_star*b%L(3) + sqrt_rhol_star*sqrt_rhor_star*(wr_star &
594 & - wl_star)*sign_bx)/denom_ds
596 e_doublel = e_starl - sqrt_rhol_star*((vl_star*b%L(2) + wl_star*b%L(3)) - (v_double*by_double &
597 & + w_double*bz_double))*sign_bx
598 e_doubler = e_starr + sqrt_rhor_star*((vr_star*b%R(2) + wr_star*b%R(3)) - (v_double*by_double &
599 & + w_double*bz_double))*sign_bx
600 e_double = 0.5_wp*(e_doublel + e_doubler)
602 u_doublel = [rhol_star, rhol_star*s_m, rhol_star*v_double, rhol_star*w_double, by_double, bz_double, &
604 u_doubler = [rhor_star, rhor_star*s_m, rhor_star*v_double, rhor_star*w_double, by_double, bz_double, &
608 if (0.0_wp <= s_l)
then
610 else if (0.0_wp <= s_starl)
then
611 f_hlld = f_l + s_l*(u_starl - u_l)
612 else if (0.0_wp <= s_m)
then
613 f_hlld = f_starl + s_starl*(u_doublel - u_starl)
614 else if (0.0_wp <= s_starr)
then
615 f_hlld = f_starr + s_starr*(u_doubler - u_starr)
616 else if (0.0_wp <= s_r)
then
617 f_hlld = f_r + s_r*(u_starr - u_r)
624# 228 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
627# 230 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
629# 231 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
631# 232 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
635# 235 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
636 flux_rsx_vf(j, k, l, eqn_idx%B%beg + 1) = f_hlld(6)
637# 236 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
640# 238 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
642# 239 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
644# 240 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
648# 243 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
651# 244 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
652#if defined(MFC_OpenACC)
653# 244 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
655# 244 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
656#elif defined(MFC_OpenMP)
657# 244 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
659# 244 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
661# 245 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
662 do i = eqn_idx%adv%beg, eqn_idx%adv%end
664# 247 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
668# 250 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
673# 253 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
674#if defined(MFC_OpenACC)
675# 253 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
677# 253 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
678#elif defined(MFC_OpenMP)
679# 253 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
681# 253 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
683# 253 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
685# 254 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
687# 73 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
688# 74 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
689# 75 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
690 if (norm_dir == 2)
then
691# 76 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
693# 76 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
695# 76 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
696#if defined(MFC_OpenACC)
697# 76 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
699# 76 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
701# 76 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
703# 76 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
704#elif defined(MFC_OpenMP)
705# 76 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
707# 76 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
709# 76 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
711# 76 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
713# 76 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
715# 76 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
717# 76 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
719# 76 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
721# 82 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
723# 83 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
725# 84 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
727# 85 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
729 do i = 1, eqn_idx%cont%end
730 alpha_rho_l(i) = ql_prim_rsx_vf(j, k, l, i)
731# 88 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
732 alpha_rho_r(i) = qr_prim_rsx_vf(j, k + 1, l, i)
733# 89 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
738 vel%L(i) = ql_prim_rsx_vf(j, k, l, eqn_idx%cont%end +
dir_idx(i))
739# 94 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
740 vel%R(i) = qr_prim_rsx_vf(j, k + 1, l, eqn_idx%cont%end +
dir_idx(i))
741# 95 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
744 vel_rms%L = sum(vel%L**2._wp)
745 vel_rms%R = sum(vel%R**2._wp)
748 alpha_l(i) = ql_prim_rsx_vf(j, k, l, eqn_idx%E + i)
749# 102 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
750 alpha_r(i) = qr_prim_rsx_vf(j, k + 1, l, eqn_idx%E + i)
751# 103 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
754 pres%L = ql_prim_rsx_vf(j, k, l, eqn_idx%E)
755# 106 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
756 pres%R = qr_prim_rsx_vf(j, k + 1, l, eqn_idx%E)
757# 107 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
762 b%L = [bx0, ql_prim_rsx_vf(j, k, l, eqn_idx%B%beg), ql_prim_rsx_vf(j, k, l, &
763# 112 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
764 & eqn_idx%B%beg + 1)]
765 b%R = [bx0, qr_prim_rsx_vf(j, k + 1, l, eqn_idx%B%beg), qr_prim_rsx_vf(j, k + 1, l, &
766# 114 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
767 & eqn_idx%B%beg + 1)]
769 b%L = [ql_prim_rsx_vf(j, k, l, eqn_idx%B%beg +
dir_idx(1) - 1), ql_prim_rsx_vf(j, k, l, &
770# 117 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
771 & eqn_idx%B%beg +
dir_idx(2) - 1), ql_prim_rsx_vf(j, k, l, &
772# 118 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
773 & eqn_idx%B%beg +
dir_idx(3) - 1)]
774 b%R = [qr_prim_rsx_vf(j, k + 1, l, eqn_idx%B%beg +
dir_idx(1) - 1), &
775# 120 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
776 & qr_prim_rsx_vf(j, k + 1, l, eqn_idx%B%beg +
dir_idx(2) - 1), &
777# 121 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
778 & qr_prim_rsx_vf(j, k + 1, l, eqn_idx%B%beg +
dir_idx(3) - 1)]
779# 122 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
783 call s_compute_mixture_coefficients(alpha_rho_l, alpha_l, rho%L, gamma%L, pi_inf%L, qv%L)
784 call s_compute_mixture_coefficients(alpha_rho_r, alpha_r, rho%R, gamma%R, pi_inf%R, qv%R)
786 pres_mag%L = 0.5_wp*sum(b%L**2._wp)
787 pres_mag%R = 0.5_wp*sum(b%R**2._wp)
789 e%L = e%L + pres_mag%L
791 e%R = e%R + pres_mag%R
792 h_no_mag%L = (e%L + pres%L - pres_mag%L)/rho%L
794 h_no_mag%R = (e%R + pres%R - pres_mag%R)/rho%R
797 call s_compute_speed_of_sound(pres%L, rho%L, gamma%L, pi_inf%L, alpha_l, c%L)
798 call s_compute_speed_of_sound(pres%R, rho%R, gamma%R, pi_inf%R, alpha_r, c%R)
803 s_l = min(vel%L(1) - c_fast%L, vel%R(1) - c_fast%R)
804 s_r = max(vel%R(1) + c_fast%R, vel%L(1) + c_fast%L)
806 ptot_l = pres%L + pres_mag%L
807 ptot_r = pres%R + pres_mag%R
809 s_m = (((s_r - vel%R(1))*rho%R*vel%R(1) - (s_l - vel%L(1))*rho%L*vel%L(1) - ptot_r + ptot_l)/((s_r &
810 & - vel%R(1))*rho%R - (s_l - vel%L(1))*rho%L))
813 rhol_star = rho%L*(s_l - vel%L(1))/(s_l - s_m)
814 rhor_star = rho%R*(s_r - vel%R(1))/(s_r - s_m)
815 p_star = ptot_l + rho%L*(s_l - vel%L(1))*(s_m - vel%L(1))/(s_l - s_m)
816 e_starl = ((s_l - vel%L(1))*e%L - ptot_l*vel%L(1) + p_star*s_m)/(s_l - s_m)
817 e_starr = ((s_r - vel%R(1))*e%R - ptot_r*vel%R(1) + p_star*s_m)/(s_r - s_m)
820 u_l = [rho%L, rho%L*vel%L(1:3), b%L(2:3), e%L]
821 u_starl = [rhol_star, rhol_star*s_m, rhol_star*vel%L(2:3), b%L(2:3), e_starl]
822 u_r = [rho%R, rho%R*vel%R(1:3), b%R(2:3), e%R]
823 u_starr = [rhor_star, rhor_star*s_m, rhor_star*vel%R(2:3), b%R(2:3), e_starr]
827 f_l(2) = u_l(2)*vel%L(1) - b%L(1)*b%L(1) + ptot_l
828 f_l(3:4) = u_l(2)*vel%L(2:3) - b%L(1)*b%L(2:3)
829 f_l(5:6) = vel%L(1)*b%L(2:3) - vel%L(2:3)*b%L(1)
830 f_l(7) = (e%L + ptot_l)*vel%L(1) - b%L(1)*(vel%L(1)*b%L(1) + vel%L(2)*b%L(2) + vel%L(3)*b%L(3))
833 f_r(2) = u_r(2)*vel%R(1) - b%R(1)*b%R(1) + ptot_r
834 f_r(3:4) = u_r(2)*vel%R(2:3) - b%R(1)*b%R(2:3)
835 f_r(5:6) = vel%R(1)*b%R(2:3) - vel%R(2:3)*b%R(1)
836 f_r(7) = (e%R + ptot_r)*vel%R(1) - b%R(1)*(vel%R(1)*b%R(1) + vel%R(2)*b%R(2) + vel%R(3)*b%R(3))
838 f_starl = f_l + s_l*(u_starl - u_l)
839 f_starr = f_r + s_r*(u_starr - u_r)
841 s_starl = s_m - abs(b%L(1))/sqrt(rhol_star)
842 s_starr = s_m + abs(b%L(1))/sqrt(rhor_star)
844 sqrt_rhol_star = sqrt(rhol_star); sqrt_rhor_star = sqrt(rhor_star)
845 vl_star = vel%L(2); wl_star = vel%L(3)
846 vr_star = vel%R(2); wr_star = vel%R(3)
849 denom_ds = sqrt_rhol_star + sqrt_rhor_star
850 sign_bx = sign(1._wp, b%L(1))
851 v_double = (sqrt_rhol_star*vl_star + sqrt_rhor_star*vr_star + (b%R(2) - b%L(2))*sign_bx)/denom_ds
852 w_double = (sqrt_rhol_star*wl_star + sqrt_rhor_star*wr_star + (b%R(3) - b%L(3))*sign_bx)/denom_ds
853 by_double = (sqrt_rhol_star*b%R(2) + sqrt_rhor_star*b%L(2) + sqrt_rhol_star*sqrt_rhor_star*(vr_star &
854 & - vl_star)*sign_bx)/denom_ds
855 bz_double = (sqrt_rhol_star*b%R(3) + sqrt_rhor_star*b%L(3) + sqrt_rhol_star*sqrt_rhor_star*(wr_star &
856 & - wl_star)*sign_bx)/denom_ds
858 e_doublel = e_starl - sqrt_rhol_star*((vl_star*b%L(2) + wl_star*b%L(3)) - (v_double*by_double &
859 & + w_double*bz_double))*sign_bx
860 e_doubler = e_starr + sqrt_rhor_star*((vr_star*b%R(2) + wr_star*b%R(3)) - (v_double*by_double &
861 & + w_double*bz_double))*sign_bx
862 e_double = 0.5_wp*(e_doublel + e_doubler)
864 u_doublel = [rhol_star, rhol_star*s_m, rhol_star*v_double, rhol_star*w_double, by_double, bz_double, &
866 u_doubler = [rhor_star, rhor_star*s_m, rhor_star*v_double, rhor_star*w_double, by_double, bz_double, &
870 if (0.0_wp <= s_l)
then
872 else if (0.0_wp <= s_starl)
then
873 f_hlld = f_l + s_l*(u_starl - u_l)
874 else if (0.0_wp <= s_m)
then
875 f_hlld = f_starl + s_starl*(u_doublel - u_starl)
876 else if (0.0_wp <= s_starr)
then
877 f_hlld = f_starr + s_starr*(u_doubler - u_starr)
878 else if (0.0_wp <= s_r)
then
879 f_hlld = f_r + s_r*(u_starr - u_r)
886# 228 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
889# 230 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
891# 231 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
893# 232 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
897# 235 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
898 flux_rsx_vf(j, k, l, eqn_idx%B%beg + 1) = f_hlld(6)
899# 236 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
902# 238 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
904# 239 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
906# 240 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
910# 243 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
913# 244 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
914#if defined(MFC_OpenACC)
915# 244 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
917# 244 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
918#elif defined(MFC_OpenMP)
919# 244 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
921# 244 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
923# 245 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
924 do i = eqn_idx%adv%beg, eqn_idx%adv%end
926# 247 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
930# 250 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
935# 253 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
936#if defined(MFC_OpenACC)
937# 253 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
939# 253 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
940#elif defined(MFC_OpenMP)
941# 253 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
943# 253 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
945# 253 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
947# 254 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
949# 73 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
950# 74 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
951# 75 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
952 if (norm_dir == 3)
then
953# 76 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
955# 76 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
957# 76 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
958#if defined(MFC_OpenACC)
959# 76 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
961# 76 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
963# 76 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
965# 76 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
966#elif defined(MFC_OpenMP)
967# 76 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
969# 76 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
971# 76 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
973# 76 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
975# 76 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
977# 76 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
979# 76 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
981# 76 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
983# 82 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
985# 83 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
987# 84 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
989# 85 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
991 do i = 1, eqn_idx%cont%end
992 alpha_rho_l(i) = ql_prim_rsx_vf(j, k, l, i)
993# 88 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
994 alpha_rho_r(i) = qr_prim_rsx_vf(j, k, l + 1, i)
995# 89 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
1000 vel%L(i) = ql_prim_rsx_vf(j, k, l, eqn_idx%cont%end +
dir_idx(i))
1001# 94 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
1002 vel%R(i) = qr_prim_rsx_vf(j, k, l + 1, eqn_idx%cont%end +
dir_idx(i))
1003# 95 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
1006 vel_rms%L = sum(vel%L**2._wp)
1007 vel_rms%R = sum(vel%R**2._wp)
1009 do i = 1, num_fluids
1010 alpha_l(i) = ql_prim_rsx_vf(j, k, l, eqn_idx%E + i)
1011# 102 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
1012 alpha_r(i) = qr_prim_rsx_vf(j, k, l + 1, eqn_idx%E + i)
1013# 103 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
1016 pres%L = ql_prim_rsx_vf(j, k, l, eqn_idx%E)
1017# 106 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
1018 pres%R = qr_prim_rsx_vf(j, k, l + 1, eqn_idx%E)
1019# 107 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
1024 b%L = [bx0, ql_prim_rsx_vf(j, k, l, eqn_idx%B%beg), ql_prim_rsx_vf(j, k, l, &
1025# 112 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
1026 & eqn_idx%B%beg + 1)]
1027 b%R = [bx0, qr_prim_rsx_vf(j, k, l + 1, eqn_idx%B%beg), qr_prim_rsx_vf(j, k, l + 1, &
1028# 114 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
1029 & eqn_idx%B%beg + 1)]
1031 b%L = [ql_prim_rsx_vf(j, k, l, eqn_idx%B%beg +
dir_idx(1) - 1), ql_prim_rsx_vf(j, k, l, &
1032# 117 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
1033 & eqn_idx%B%beg +
dir_idx(2) - 1), ql_prim_rsx_vf(j, k, l, &
1034# 118 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
1035 & eqn_idx%B%beg +
dir_idx(3) - 1)]
1036 b%R = [qr_prim_rsx_vf(j, k, l + 1, eqn_idx%B%beg +
dir_idx(1) - 1), &
1037# 120 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
1038 & qr_prim_rsx_vf(j, k, l + 1, eqn_idx%B%beg +
dir_idx(2) - 1), &
1039# 121 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
1040 & qr_prim_rsx_vf(j, k, l + 1, eqn_idx%B%beg +
dir_idx(3) - 1)]
1041# 122 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
1045 call s_compute_mixture_coefficients(alpha_rho_l, alpha_l, rho%L, gamma%L, pi_inf%L, qv%L)
1046 call s_compute_mixture_coefficients(alpha_rho_r, alpha_r, rho%R, gamma%R, pi_inf%R, qv%R)
1048 pres_mag%L = 0.5_wp*sum(b%L**2._wp)
1049 pres_mag%R = 0.5_wp*sum(b%R**2._wp)
1051 e%L = e%L + pres_mag%L
1053 e%R = e%R + pres_mag%R
1054 h_no_mag%L = (e%L + pres%L - pres_mag%L)/rho%L
1056 h_no_mag%R = (e%R + pres%R - pres_mag%R)/rho%R
1059 call s_compute_speed_of_sound(pres%L, rho%L, gamma%L, pi_inf%L, alpha_l, c%L)
1060 call s_compute_speed_of_sound(pres%R, rho%R, gamma%R, pi_inf%R, alpha_r, c%R)
1065 s_l = min(vel%L(1) - c_fast%L, vel%R(1) - c_fast%R)
1066 s_r = max(vel%R(1) + c_fast%R, vel%L(1) + c_fast%L)
1068 ptot_l = pres%L + pres_mag%L
1069 ptot_r = pres%R + pres_mag%R
1071 s_m = (((s_r - vel%R(1))*rho%R*vel%R(1) - (s_l - vel%L(1))*rho%L*vel%L(1) - ptot_r + ptot_l)/((s_r &
1072 & - vel%R(1))*rho%R - (s_l - vel%L(1))*rho%L))
1075 rhol_star = rho%L*(s_l - vel%L(1))/(s_l - s_m)
1076 rhor_star = rho%R*(s_r - vel%R(1))/(s_r - s_m)
1077 p_star = ptot_l + rho%L*(s_l - vel%L(1))*(s_m - vel%L(1))/(s_l - s_m)
1078 e_starl = ((s_l - vel%L(1))*e%L - ptot_l*vel%L(1) + p_star*s_m)/(s_l - s_m)
1079 e_starr = ((s_r - vel%R(1))*e%R - ptot_r*vel%R(1) + p_star*s_m)/(s_r - s_m)
1082 u_l = [rho%L, rho%L*vel%L(1:3), b%L(2:3), e%L]
1083 u_starl = [rhol_star, rhol_star*s_m, rhol_star*vel%L(2:3), b%L(2:3), e_starl]
1084 u_r = [rho%R, rho%R*vel%R(1:3), b%R(2:3), e%R]
1085 u_starr = [rhor_star, rhor_star*s_m, rhor_star*vel%R(2:3), b%R(2:3), e_starr]
1089 f_l(2) = u_l(2)*vel%L(1) - b%L(1)*b%L(1) + ptot_l
1090 f_l(3:4) = u_l(2)*vel%L(2:3) - b%L(1)*b%L(2:3)
1091 f_l(5:6) = vel%L(1)*b%L(2:3) - vel%L(2:3)*b%L(1)
1092 f_l(7) = (e%L + ptot_l)*vel%L(1) - b%L(1)*(vel%L(1)*b%L(1) + vel%L(2)*b%L(2) + vel%L(3)*b%L(3))
1095 f_r(2) = u_r(2)*vel%R(1) - b%R(1)*b%R(1) + ptot_r
1096 f_r(3:4) = u_r(2)*vel%R(2:3) - b%R(1)*b%R(2:3)
1097 f_r(5:6) = vel%R(1)*b%R(2:3) - vel%R(2:3)*b%R(1)
1098 f_r(7) = (e%R + ptot_r)*vel%R(1) - b%R(1)*(vel%R(1)*b%R(1) + vel%R(2)*b%R(2) + vel%R(3)*b%R(3))
1100 f_starl = f_l + s_l*(u_starl - u_l)
1101 f_starr = f_r + s_r*(u_starr - u_r)
1103 s_starl = s_m - abs(b%L(1))/sqrt(rhol_star)
1104 s_starr = s_m + abs(b%L(1))/sqrt(rhor_star)
1106 sqrt_rhol_star = sqrt(rhol_star); sqrt_rhor_star = sqrt(rhor_star)
1107 vl_star = vel%L(2); wl_star = vel%L(3)
1108 vr_star = vel%R(2); wr_star = vel%R(3)
1111 denom_ds = sqrt_rhol_star + sqrt_rhor_star
1112 sign_bx = sign(1._wp, b%L(1))
1113 v_double = (sqrt_rhol_star*vl_star + sqrt_rhor_star*vr_star + (b%R(2) - b%L(2))*sign_bx)/denom_ds
1114 w_double = (sqrt_rhol_star*wl_star + sqrt_rhor_star*wr_star + (b%R(3) - b%L(3))*sign_bx)/denom_ds
1115 by_double = (sqrt_rhol_star*b%R(2) + sqrt_rhor_star*b%L(2) + sqrt_rhol_star*sqrt_rhor_star*(vr_star &
1116 & - vl_star)*sign_bx)/denom_ds
1117 bz_double = (sqrt_rhol_star*b%R(3) + sqrt_rhor_star*b%L(3) + sqrt_rhol_star*sqrt_rhor_star*(wr_star &
1118 & - wl_star)*sign_bx)/denom_ds
1120 e_doublel = e_starl - sqrt_rhol_star*((vl_star*b%L(2) + wl_star*b%L(3)) - (v_double*by_double &
1121 & + w_double*bz_double))*sign_bx
1122 e_doubler = e_starr + sqrt_rhor_star*((vr_star*b%R(2) + wr_star*b%R(3)) - (v_double*by_double &
1123 & + w_double*bz_double))*sign_bx
1124 e_double = 0.5_wp*(e_doublel + e_doubler)
1126 u_doublel = [rhol_star, rhol_star*s_m, rhol_star*v_double, rhol_star*w_double, by_double, bz_double, &
1128 u_doubler = [rhor_star, rhor_star*s_m, rhor_star*v_double, rhor_star*w_double, by_double, bz_double, &
1132 if (0.0_wp <= s_l)
then
1134 else if (0.0_wp <= s_starl)
then
1135 f_hlld = f_l + s_l*(u_starl - u_l)
1136 else if (0.0_wp <= s_m)
then
1137 f_hlld = f_starl + s_starl*(u_doublel - u_starl)
1138 else if (0.0_wp <= s_starr)
then
1139 f_hlld = f_starr + s_starr*(u_doubler - u_starr)
1140 else if (0.0_wp <= s_r)
then
1141 f_hlld = f_r + s_r*(u_starr - u_r)
1148# 228 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
1151# 230 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
1153# 231 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
1155# 232 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
1159# 235 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
1160 flux_rsx_vf(j, k, l, eqn_idx%B%beg + 1) = f_hlld(6)
1161# 236 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
1164# 238 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
1166# 239 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
1168# 240 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
1172# 243 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
1175# 244 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
1176#if defined(MFC_OpenACC)
1177# 244 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
1179# 244 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
1180#elif defined(MFC_OpenMP)
1181# 244 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
1183# 244 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
1185# 245 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
1186 do i = eqn_idx%adv%beg, eqn_idx%adv%end
1188# 247 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
1192# 250 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
1197# 253 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
1198#if defined(MFC_OpenACC)
1199# 253 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
1201# 253 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
1202#elif defined(MFC_OpenMP)
1203# 253 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
1205# 253 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
1207# 253 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
1209# 254 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"
1211# 256 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hlld.fpp"