385 subroutine s_hll_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, &
386 & dqR_prim_dx_vf, dqR_prim_dy_vf, dqR_prim_dz_vf, qR_prim_vf, q_prim_vf, flux_vf, &
387 & flux_src_vf, flux_gsrc_vf, norm_dir, ix, iy, iz)
389 real(wp),
dimension(idwbuff(1)%beg:,idwbuff(2)%beg:,idwbuff(3)%beg:,1:),
intent(inout) :: qL_prim_rsx_vf, qR_prim_rsx_vf
390 type(
scalar_field),
dimension(sys_size),
intent(in) :: q_prim_vf
391 type(
scalar_field),
allocatable,
dimension(:),
intent(inout) :: qL_prim_vf, qR_prim_vf
392 type(
scalar_field),
allocatable,
dimension(:),
intent(inout) :: dqL_prim_dx_vf, dqR_prim_dx_vf, dqL_prim_dy_vf, &
393 & dqR_prim_dy_vf, dqL_prim_dz_vf, dqR_prim_dz_vf
396 type(
scalar_field),
dimension(sys_size),
intent(inout) :: flux_vf, flux_src_vf, flux_gsrc_vf
397 real(wp) :: flux_tau_L, flux_tau_R
398 integer,
intent(in) :: norm_dir
401# 48 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
402 real(wp),
dimension(num_fluids) :: alpha_rho_L, alpha_rho_R
403 real(wp),
dimension(num_vels) :: vel_L, vel_R
404 real(wp),
dimension(num_fluids) :: alpha_L, alpha_R
405# 52 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
406 real(wp),
dimension(1) :: Ys_L, Ys_R, R_species, h_iL, h_iR
407# 53 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
408 real(wp),
dimension(1) :: Cp_iL, Cp_iR, Xs_L, Xs_R, Gamma_iL, Gamma_iR
409# 54 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
410 real(wp) :: rho_L, rho_R
411 real(wp) :: pres_L, pres_R
414 real(wp) :: c_sum_Yi_Phi
417 real(wp) :: MW_L, MW_R
418 real(wp) :: R_gas_L, R_gas_R
419 real(wp) :: Cp_L, Cp_R
420 real(wp) :: Cv_L, Cv_R
421 real(wp) :: Gamm_L, Gamm_R
422 real(wp) :: gamma_L, gamma_R
423 real(wp) :: pi_inf_L, pi_inf_R
424 real(wp) :: qv_L, qv_R
426 real(wp),
dimension(6) :: tau_e_L, tau_e_R
428 real(wp) :: damage_L, damage_R
429 real(wp) :: solid_partial_density_L, solid_partial_density_R
430 real(wp),
dimension(2) :: Re_L, Re_R
434 real(wp) :: gamma_avg
436 real(wp) :: s_L, s_R, s_M, s_P, s_S
437 real(wp) :: xi_M, xi_P
438 real(wp) :: ptilde_L, ptilde_R
439 real(wp) :: vel_L_rms, vel_R_rms, vel_avg_rms
440 real(wp) :: Ms_L, Ms_R, pres_SL, pres_SR
441 real(wp) :: alpha_L_sum, alpha_R_sum
449 integer :: i, j, k, l
450 integer :: Re_size_loc1, Re_size_loc2
454 & qr_prim_rsx_vf, dqr_prim_dx_vf, dqr_prim_dy_vf, dqr_prim_dz_vf, norm_dir, ix, iy, iz)
458 re_size_loc1 = re_size(1); re_size_loc2 = re_size(2)
459# 107 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
460# 108 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
461# 109 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
462 if (norm_dir == 1)
then
463# 110 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
465# 110 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
467# 110 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
468#if defined(MFC_OpenACC)
469# 110 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
471# 110 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
473# 110 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
475# 110 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
477# 110 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
479# 110 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
480#elif defined(MFC_OpenMP)
481# 110 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
483# 110 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
485# 110 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
487# 110 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
489# 110 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
491# 110 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
493# 110 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
495# 110 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
497# 110 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
499# 110 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
501# 120 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
503# 121 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
505# 122 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
507# 123 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
509# 123 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
510#if defined(MFC_OpenACC)
511# 123 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
513# 123 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
514#elif defined(MFC_OpenMP)
515# 123 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
517# 123 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
519# 124 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
520 do i = 1, eqn_idx%cont%end
521 alpha_rho_l(i) = ql_prim_rsx_vf(j, k, l, i)
522# 126 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
523 alpha_rho_r(i) = qr_prim_rsx_vf(j + 1, k, l, i)
524# 127 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
527 vel_l_rms = 0._wp; vel_r_rms = 0._wp
530# 131 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
531#if defined(MFC_OpenACC)
532# 131 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
534# 131 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
535#elif defined(MFC_OpenMP)
536# 131 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
538# 131 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
540# 132 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
542 vel_l(i) = ql_prim_rsx_vf(j, k, l, eqn_idx%cont%end + i)
543# 134 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
544 vel_r(i) = qr_prim_rsx_vf(j + 1, k, l, eqn_idx%cont%end + i)
545# 135 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
546 vel_l_rms = vel_l_rms + vel_l(i)**2._wp
547 vel_r_rms = vel_r_rms + vel_r(i)**2._wp
551# 139 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
552#if defined(MFC_OpenACC)
553# 139 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
555# 139 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
556#elif defined(MFC_OpenMP)
557# 139 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
559# 139 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
561# 140 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
563 alpha_l(i) = ql_prim_rsx_vf(j, k, l, eqn_idx%E + i)
564# 142 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
565 alpha_r(i) = qr_prim_rsx_vf(j + 1, k, l, eqn_idx%E + i)
566# 143 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
569 pres_l = ql_prim_rsx_vf(j, k, l, eqn_idx%E)
570# 146 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
571 pres_r = qr_prim_rsx_vf(j + 1, k, l, eqn_idx%E)
572# 147 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
578 b%L(2) = ql_prim_rsx_vf(j, k, l, eqn_idx%B%beg)
579# 153 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
580 b%R(2) = qr_prim_rsx_vf(j + 1, k, l, eqn_idx%B%beg)
581# 154 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
582 b%L(3) = ql_prim_rsx_vf(j, k, l, eqn_idx%B%beg + 1)
583# 155 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
584 b%R(3) = qr_prim_rsx_vf(j + 1, k, l, eqn_idx%B%beg + 1)
585# 156 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
587 b%L(1) = ql_prim_rsx_vf(j, k, l, eqn_idx%B%beg)
588# 158 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
589 b%R(1) = qr_prim_rsx_vf(j + 1, k, l, eqn_idx%B%beg)
590# 159 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
591 b%L(2) = ql_prim_rsx_vf(j, k, l, eqn_idx%B%beg + 1)
592# 160 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
593 b%R(2) = qr_prim_rsx_vf(j + 1, k, l, eqn_idx%B%beg + 1)
594# 161 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
595 b%L(3) = ql_prim_rsx_vf(j, k, l, eqn_idx%B%beg + 2)
596# 162 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
597 b%R(3) = qr_prim_rsx_vf(j + 1, k, l, eqn_idx%B%beg + 2)
598# 163 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
620# 183 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
621#if defined(MFC_OpenACC)
622# 183 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
624# 183 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
625#elif defined(MFC_OpenMP)
626# 183 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
628# 183 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
630# 184 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
632 alpha_rho_l(i) = max(0._wp, alpha_rho_l(i))
633 alpha_l(i) = min(max(0._wp, alpha_l(i)), 1._wp)
634 alpha_l_sum = alpha_l_sum + alpha_l(i)
635 alpha_rho_r(i) = max(0._wp, alpha_rho_r(i))
636 alpha_r(i) = min(max(0._wp, alpha_r(i)), 1._wp)
637 alpha_r_sum = alpha_r_sum + alpha_r(i)
640 alpha_l = alpha_l/max(alpha_l_sum,
sgm_eps)
641 alpha_r = alpha_r/max(alpha_r_sum,
sgm_eps)
656# 208 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
657#if defined(MFC_OpenACC)
658# 208 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
660# 208 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
661#elif defined(MFC_OpenMP)
662# 208 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
664# 208 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
666# 209 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
667 do i = eqn_idx%species%beg, eqn_idx%species%end
668 ys_l(i - eqn_idx%species%beg + 1) = ql_prim_rsx_vf(j, k, l, i)
669# 211 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
670 ys_r(i - eqn_idx%species%beg + 1) = qr_prim_rsx_vf(j + 1, k, l, i)
671# 212 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
674 call get_mixture_molecular_weight(ys_l, mw_l)
675 call get_mixture_molecular_weight(ys_r, mw_r)
676 xs_l(1:num_species) = ys_l(1:num_species)*mw_l/molecular_weights(:)
677 xs_r(1:num_species) = ys_r(1:num_species)*mw_r/molecular_weights(:)
679 r_gas_l = gas_constant/mw_l
680 r_gas_r = gas_constant/mw_r
681 t_l = pres_l/rho_l/r_gas_l
682 t_r = pres_r/rho_r/r_gas_r
684 call get_mixture_caloric_state(t_l, ys_l, cp_il, cp_l, cv_l, e_l)
685 call get_mixture_caloric_state(t_r, ys_r, cp_ir, cp_r, cv_r, e_r)
687 if (chem_params%gamma_method == 1)
then
689 gamma_il(1:num_species) = cp_il(1:num_species)/(cp_il(1:num_species) - 1.0_wp)
690 gamma_ir(1:num_species) = cp_ir(1:num_species)/(cp_ir(1:num_species) - 1.0_wp)
692 gamma_l = sum(xs_l(1:num_species)/(gamma_il(1:num_species) - 1.0_wp))
693 gamma_r = sum(xs_r(1:num_species)/(gamma_ir(1:num_species) - 1.0_wp))
694 else if (chem_params%gamma_method == 2)
then
697 gamma_l = 1.0_wp/(gamm_l - 1.0_wp)
699 gamma_r = 1.0_wp/(gamm_r - 1.0_wp)
702 e_l = rho_l*e_l + 5.e-1*rho_l*vel_l_rms
703 e_r = rho_r*e_r + 5.e-1*rho_r*vel_r_rms
704 h_l = (e_l + pres_l)/rho_l
705 h_r = (e_r + pres_r)/rho_r
706 else if (mhd .and. relativity)
then
707 ga%L = 1._wp/sqrt(1._wp - vel_l_rms)
708 ga%R = 1._wp/sqrt(1._wp - vel_r_rms)
709# 250 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
710 vdotb%L = vel_l(1)*b%L(1) + vel_l(2)*b%L(2) + vel_l(3)*b%L(3)
711 vdotb%R = vel_r(1)*b%R(1) + vel_r(2)*b%R(2) + vel_r(3)*b%R(3)
713 b4%L(1:3) = b%L(1:3)/ga%L + ga%L*vel_l(1:3)*vdotb%L
714 b4%R(1:3) = b%R(1:3)/ga%R + ga%R*vel_r(1:3)*vdotb%R
715 b2%L = b%L(1)**2._wp + b%L(2)**2._wp + b%L(3)**2._wp
716 b2%R = b%R(1)**2._wp + b%R(2)**2._wp + b%R(3)**2._wp
717# 258 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
719 pres_mag%L = 0.5_wp*(b2%L/ga%L**2._wp + vdotb%L**2._wp)
720 pres_mag%R = 0.5_wp*(b2%R/ga%R**2._wp + vdotb%R**2._wp)
724# 265 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
725 cm%L(1:3) = (rho_l*h_l*ga%L**2 + b2%L)*vel_l(1:3) - vdotb%L*b%L(1:3)
726 cm%R(1:3) = (rho_r*h_r*ga%R**2 + b2%R)*vel_r(1:3) - vdotb%R*b%R(1:3)
727# 268 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
729 e_l = rho_l*h_l*ga%L**2 - pres_l + 0.5_wp*(b2%L + vel_l_rms*b2%L - vdotb%L**2._wp) - rho_l*ga%L
730 e_r = rho_r*h_r*ga%R**2 - pres_r + 0.5_wp*(b2%R + vel_r_rms*b2%R - vdotb%R**2._wp) - rho_r*ga%R
731 else if (mhd .and. .not. relativity)
then
732# 273 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
733 pres_mag%L = 0.5_wp*(b%L(1)**2._wp + b%L(2)**2._wp + b%L(3)**2._wp)
734 pres_mag%R = 0.5_wp*(b%R(1)**2._wp + b%R(2)**2._wp + b%R(3)**2._wp)
735# 276 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
737 e_l = e_l + pres_mag%L
740 e_r = e_r + pres_mag%R
741 h_l = (e_l + pres_l - pres_mag%L)/rho_l
743 h_r = (e_r + pres_r - pres_mag%R)/rho_r
747 h_l = (e_l + pres_l)/rho_l
748 h_r = (e_r + pres_r)/rho_r
754 if (hypoelasticity)
then
756# 295 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
757#if defined(MFC_OpenACC)
758# 295 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
760# 295 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
761#elif defined(MFC_OpenMP)
762# 295 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
764# 295 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
766# 296 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
767 do i = 1, eqn_idx%stress%end - eqn_idx%stress%beg + 1
768 tau_e_l(i) = ql_prim_rsx_vf(j, k, l, eqn_idx%stress%beg - 1 + i)
769# 298 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
770 tau_e_r(i) = qr_prim_rsx_vf(j + 1, k, l, eqn_idx%stress%beg - 1 + i)
771# 299 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
774 damage_l = 0._wp; damage_r = 0._wp
775 if (cont_damage)
then
776 damage_l = ql_prim_rsx_vf(j, k, l, eqn_idx%damage)
777# 304 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
778 damage_r = qr_prim_rsx_vf(j + 1, k, l, eqn_idx%damage)
779# 305 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
783 & tau_e_l, tau_e_r, g_l, g_r, e_l, e_r)
789 call s_compute_average_state(rho_l, rho_r, vel_l, vel_r, h_l, h_r, gamma_l, gamma_r, qv_l, qv_r, &
790 & rho_avg, vel_avg_rms, h_avg, gamma_avg, qv_avg)
792 r_species(1:num_species) = gas_constant/molecular_weights
793 call get_species_enthalpies_rt(t_l, h_il)
794 call get_species_enthalpies_rt(t_r, h_ir)
795 h_il(1:num_species) = h_il(1:num_species)*r_species(1:num_species)*t_l
796 h_ir(1:num_species) = h_ir(1:num_species)*r_species(1:num_species)*t_r
798 & h_ir, cp_il, cp_ir, vel_avg_rms, gamma_avg, &
809 & h_avg, c_sum_yi_phi, alpha_r, c_avg, alpha_rho_r)
822# 346 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
823#if defined(MFC_OpenACC)
824# 346 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
826# 346 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
827#elif defined(MFC_OpenMP)
828# 346 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
830# 346 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
832# 347 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
834 re_avg_rsx_vf(j, k, l, i) = 2._wp/(1._wp/re_l(i) + 1._wp/re_r(i))
835# 349 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
843 s_l = min(vel_l(
dir_idx(1)) - c_fast%L, vel_r(
dir_idx(1)) - c_fast%R)
844 s_r = max(vel_r(
dir_idx(1)) + c_fast%R, vel_l(
dir_idx(1)) + c_fast%L)
845 else if (hypoelasticity)
then
858 if (hyper_cleaning)
then
860 s_l = min(s_l, -hyper_cleaning_speed)
861 s_r = max(s_r, hyper_cleaning_speed)
864 s_s = (pres_r - pres_l + rho_l*vel_l(
dir_idx(1))*(s_l - vel_l(
dir_idx(1))) &
866 & - rho_r*(s_r - vel_r(
dir_idx(1))))
868 pres_sl = 5.e-1_wp*(pres_l + pres_r + rho_avg*c_avg*(vel_l(
dir_idx(1)) - vel_r(
dir_idx(1))))
882 s_l = vel_l(
dir_idx(1)) - c_l*ms_l
883 s_r = vel_r(
dir_idx(1)) + c_r*ms_r
885 s_s = 5.e-1_wp*((vel_l(
dir_idx(1)) + vel_r(
dir_idx(1))) + (pres_l - pres_r)/(rho_avg*c_avg))
888 s_m = min(0._wp, s_l); s_p = max(0._wp, s_r)
890 xi_m = (5.e-1_wp + sign(5.e-1_wp, s_l)) + (5.e-1_wp - sign(5.e-1_wp, s_l))*(5.e-1_wp + sign(5.e-1_wp, &
892 xi_p = (5.e-1_wp - sign(5.e-1_wp, s_r)) + (5.e-1_wp - sign(5.e-1_wp, s_l))*(5.e-1_wp + sign(5.e-1_wp, &
899 if (.not. relativity)
then
901# 413 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
902#if defined(MFC_OpenACC)
903# 413 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
905# 413 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
906#elif defined(MFC_OpenMP)
907# 413 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
909# 413 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
911# 414 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
912 do i = 1, eqn_idx%cont%end
914# 416 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
915 & i) = (s_m*alpha_rho_r(i)*vel_r(norm_dir) - s_p*alpha_rho_l(i)*vel_l(norm_dir) &
916 & + s_m*s_p*(alpha_rho_l(i) - alpha_rho_r(i)))/(s_m - s_p)
918 else if (relativity)
then
920# 420 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
921#if defined(MFC_OpenACC)
922# 420 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
924# 420 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
925#elif defined(MFC_OpenMP)
926# 420 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
928# 420 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
930# 421 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
931 do i = 1, eqn_idx%cont%end
933# 423 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
934 & i) = (s_m*ga%R*alpha_rho_r(i)*vel_r(norm_dir) - s_p*ga%L*alpha_rho_l(i) &
935 & *vel_l(norm_dir) + s_m*s_p*(ga%L*alpha_rho_l(i) - ga%R*alpha_rho_r(i)))/(s_m &
941 if (mhd .and. (.not. relativity))
then
943# 431 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
944#if defined(MFC_OpenACC)
945# 431 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
947# 431 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
948#elif defined(MFC_OpenMP)
949# 431 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
951# 431 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
953# 432 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
956# 434 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
958# 435 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
960# 436 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
961 & eqn_idx%cont%end + i) = (s_m*(rho_r*vel_r(i)*vel_r(norm_dir) - b%R(i) &
962 & *b%R(norm_dir) +
dir_flg(i)*(pres_r + pres_mag%R)) - s_p*(rho_l*vel_l(i) &
963 & *vel_l(norm_dir) - b%L(i)*b%L(norm_dir) +
dir_flg(i)*(pres_l + pres_mag%L)) &
964 & + s_m*s_p*(rho_l*vel_l(i) - rho_r*vel_r(i)))/(s_m - s_p)
966 else if (mhd .and. relativity)
then
968# 442 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
969#if defined(MFC_OpenACC)
970# 442 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
972# 442 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
973#elif defined(MFC_OpenMP)
974# 442 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
976# 442 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
978# 443 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
981# 445 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
983# 446 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
985# 447 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
986 & eqn_idx%cont%end + i) = (s_m*(cm%R(i)*vel_r(norm_dir) - b4%R(i) &
987 & /ga%R*b%R(norm_dir) +
dir_flg(i)*(pres_r + pres_mag%R)) - s_p*(cm%L(i) &
988 & *vel_l(norm_dir) - b4%L(i)/ga%L*b%L(norm_dir) +
dir_flg(i)*(pres_l + pres_mag%L) &
989 & ) + s_m*s_p*(cm%L(i) - cm%R(i)))/(s_m - s_p)
991 else if (bubbles_euler)
then
993# 453 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
994#if defined(MFC_OpenACC)
995# 453 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
997# 453 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
998#elif defined(MFC_OpenMP)
999# 453 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1001# 453 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1003# 454 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1006# 456 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1010 & + s_m*s_p*(rho_l*vel_l(
dir_idx(i)) - rho_r*vel_r(
dir_idx(i))))/(s_m - s_p) &
1011 & + (s_m/s_l)*(s_p/s_r)*pcorr*(vel_r(
dir_idx(i)) - vel_l(
dir_idx(i)))
1013 else if (hypoelasticity)
then
1015# 463 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1016#if defined(MFC_OpenACC)
1017# 463 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1019# 463 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1020#elif defined(MFC_OpenMP)
1021# 463 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1023# 463 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1025# 464 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1028# 466 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1033 & - rho_r*vel_r(
dir_idx(i))))/(s_m - s_p)
1037# 473 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1038#if defined(MFC_OpenACC)
1039# 473 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1041# 473 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1042#elif defined(MFC_OpenMP)
1043# 473 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1045# 473 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1047# 474 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1050# 476 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1054 & - rho_r*vel_r(
dir_idx(i))))/(s_m - s_p) + (s_m/s_l)*(s_p/s_r) &
1060 if (mhd .and. (.not. relativity))
then
1062# 487 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1063# 488 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1065# 489 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1066 & eqn_idx%E) = (s_m*(vel_r(norm_dir)*(e_r + pres_r + pres_mag%R) - b%R(norm_dir) &
1067 & *(vel_r(1)*b%R(1) + vel_r(2)*b%R(2) + vel_r(3)*b%R(3))) - s_p*(vel_l(norm_dir) &
1068 & *(e_l + pres_l + pres_mag%L) - b%L(norm_dir)*(vel_l(1)*b%L(1) + vel_l(2)*b%L(2) &
1069 & + vel_l(3)*b%L(3))) + s_m*s_p*(e_l - e_r))/(s_m - s_p)
1070# 494 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1071 else if (mhd .and. relativity)
then
1073# 496 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1075# 497 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1076 & eqn_idx%E) = (s_m*(cm%R(norm_dir) - ga%R*alpha_rho_r(1)*vel_r(norm_dir)) &
1077 & - s_p*(cm%L(norm_dir) - ga%L*alpha_rho_l(1)*vel_l(norm_dir)) + s_m*s_p*(e_l - e_r)) &
1079 else if (bubbles_euler)
then
1081# 502 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1082 & eqn_idx%E) = (s_m*vel_r(
dir_idx(1))*(e_r + pres_r - ptilde_r) - s_p*vel_l(
dir_idx(1) &
1083 & )*(e_l + pres_l - ptilde_l) + s_m*s_p*(e_l - e_r))/(s_m - s_p) + (s_m/s_l)*(s_p/s_r) &
1084 & *pcorr*(vel_r_rms - vel_l_rms)/2._wp
1085 else if (hypoelasticity)
then
1086 flux_tau_l = 0._wp; flux_tau_r = 0._wp
1088# 507 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1089#if defined(MFC_OpenACC)
1090# 507 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1092# 507 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1093#elif defined(MFC_OpenMP)
1094# 507 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1096# 507 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1098# 508 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1104# 513 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1105 & eqn_idx%E) = (s_m*(vel_r(
dir_idx(1))*(e_r + pres_r) - flux_tau_r) &
1106 & - s_p*(vel_l(
dir_idx(1))*(e_l + pres_l) - flux_tau_l) + s_m*s_p*(e_l - e_r))/(s_m &
1110# 518 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1111 & eqn_idx%E) = (s_m*vel_r(
dir_idx(1))*(e_r + pres_r) - s_p*vel_l(
dir_idx(1))*(e_l &
1112 & + pres_l) + s_m*s_p*(e_l - e_r))/(s_m - s_p) + (s_m/s_l)*(s_p/s_r)*pcorr*(vel_r_rms &
1113 & - vel_l_rms)/2._wp
1117 if (hypoelasticity)
then
1118 do i = 1, eqn_idx%stress%end - eqn_idx%stress%beg + 1
1120# 527 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1121 & eqn_idx%stress%beg - 1 + i) = (s_m*(rho_r*vel_r(
dir_idx(1))*tau_e_r(i)) &
1122 & - s_p*(rho_l*vel_l(
dir_idx(1))*tau_e_l(i)) + s_m*s_p*(rho_l*tau_e_l(i) &
1123 & - rho_r*tau_e_r(i)))/(s_m - s_p)
1128 if (cont_damage)
then
1129 solid_partial_density_l = 0._wp; solid_partial_density_r = 0._wp
1131# 536 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1132#if defined(MFC_OpenACC)
1133# 536 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1135# 536 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1136#elif defined(MFC_OpenMP)
1137# 536 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1139# 536 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1141# 537 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1142 do i = 1, num_fluids
1144 solid_partial_density_l = solid_partial_density_l + alpha_rho_l(i)
1145 solid_partial_density_r = solid_partial_density_r + alpha_rho_r(i)
1149# 544 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1150 & eqn_idx%damage) = (s_m*(solid_partial_density_r*vel_r(
dir_idx(1))*damage_r) &
1151 & - s_p*(solid_partial_density_l*vel_l(
dir_idx(1))*damage_l) &
1152 & + s_m*s_p*(solid_partial_density_l*damage_l - solid_partial_density_r*damage_r)) &
1159# 552 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1160#if defined(MFC_OpenACC)
1161# 552 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1163# 552 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1164#elif defined(MFC_OpenMP)
1165# 552 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1167# 552 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1169# 553 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1171 if (0._wp <= s_l)
then
1173# 556 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1174 else if (s_r <= 0._wp)
then
1176# 558 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1179# 560 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1186 if (.not. hll_u_interface)
then
1190# 569 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1191#if defined(MFC_OpenACC)
1192# 569 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1194# 569 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1195#elif defined(MFC_OpenMP)
1196# 569 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1198# 569 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1200# 570 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1201 do i = eqn_idx%adv%beg, eqn_idx%adv%end
1202 flux_rsx_vf(j, k, l, i) = (ql_prim_rsx_vf(j, k, l, i) - qr_prim_rsx_vf(j + 1, k, l, &
1203# 572 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1204 & i))*s_m*s_p/(s_m - s_p)
1206# 574 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1207 & i) - s_p*ql_prim_rsx_vf(j, k, l, i))/(s_m - s_p)
1208# 575 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1212# 577 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1213#if defined(MFC_OpenACC)
1214# 577 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1216# 577 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1217#elif defined(MFC_OpenMP)
1218# 577 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1220# 577 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1222# 578 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1223 do i = eqn_idx%adv%beg, eqn_idx%adv%end
1224 if (0._wp <= s_l)
then
1226# 581 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1227 else if (s_r <= 0._wp)
then
1229# 583 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1231 flux_rsx_vf(j, k, l, i) = (s_r*ql_prim_rsx_vf(j, k, l, &
1232# 585 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1233 & i)*vel_l(
dir_idx(1)) - s_l*qr_prim_rsx_vf(j + 1, k, l, &
1234# 586 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1235 & i)*vel_r(
dir_idx(1)) + s_l*s_r*(qr_prim_rsx_vf(j + 1, k, l, &
1236# 587 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1237 & i) - ql_prim_rsx_vf(j, k, l, i)))/(s_r - s_l)
1238# 588 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1241 if (0._wp <= s_l)
then
1243# 592 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1244 else if (s_r <= 0._wp)
then
1246# 594 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1249# 596 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1250 & eqn_idx%adv%beg) = (s_r*vel_l(
dir_idx(1)) - s_l*vel_r(
dir_idx(1)))/(s_r - s_l)
1254 if (bubbles_euler)
then
1256 if (num_fluids > 1)
then
1258# 604 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1264# 608 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1265#if defined(MFC_OpenACC)
1266# 608 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1268# 608 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1269#elif defined(MFC_OpenMP)
1270# 608 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1272# 608 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1274# 609 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1275 do i = eqn_idx%species%beg, eqn_idx%species%end
1276 y_l = ql_prim_rsx_vf(j, k, l, i)
1277# 611 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1278 y_r = qr_prim_rsx_vf(j + 1, k, l, i)
1279# 612 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1282# 614 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1283 & i) = (s_m*y_r*rho_r*vel_r(
dir_idx(1)) - s_p*y_l*rho_l*vel_l(
dir_idx(1)) &
1284 & + s_m*s_p*(y_l*rho_l - y_r*rho_r))/(s_m - s_p)
1286# 617 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1295# 624 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1296#if defined(MFC_OpenACC)
1297# 624 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1299# 624 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1300#elif defined(MFC_OpenMP)
1301# 624 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1303# 624 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1305# 625 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1308 & eqn_idx%B%beg + i) = (s_m*(vel_r(1)*b%R(2 + i) - vel_r(2 + i)*bx0) &
1309 & - s_p*(vel_l(1)*b%L(2 + i) - vel_l(2 + i)*bx0) + s_m*s_p*(b%L(2 + i) &
1310 & - b%R(2 + i)))/(s_m - s_p)
1314# 633 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1316# 634 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1318# 635 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1320# 635 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1321#if defined(MFC_OpenACC)
1322# 635 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1324# 635 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1325#elif defined(MFC_OpenMP)
1326# 635 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1328# 635 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1330# 636 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1333# 638 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1334 & eqn_idx%B%beg + i) = (s_m*(vel_r(
dir_idx(1))*b%R(i + 1) - vel_r(i + 1) &
1335 & *b%R(norm_dir)) - s_p*(vel_l(
dir_idx(1))*b%L(i + 1) - vel_l(i + 1) &
1336 & *b%L(norm_dir)) + s_m*s_p*(b%L(i + 1) - b%R(i + 1)))/(s_m - s_p)
1339 if (hyper_cleaning)
then
1342# 646 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1343 & eqn_idx%B%beg + norm_dir - 1) + (s_m*qr_prim_rsx_vf(j + 1, k, l, &
1344# 647 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1345 & eqn_idx%psi) - s_p*ql_prim_rsx_vf(j, k, l, eqn_idx%psi))/(s_m - s_p)
1346# 648 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1349# 650 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1350 & eqn_idx%psi) = (hyper_cleaning_speed**2*(s_m*b%R(norm_dir) &
1351 & - s_p*b%L(norm_dir)) + s_m*s_p*(ql_prim_rsx_vf(j, k, l, &
1352# 652 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1353 & eqn_idx%psi) - qr_prim_rsx_vf(j + 1, k, l, eqn_idx%psi)))/(s_m - s_p)
1354# 653 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1357 flux_rsx_vf(j, k, l, eqn_idx%B%beg + norm_dir - 1) = 0._wp
1358# 656 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1362# 659 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1365# 698 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1370# 701 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1371#if defined(MFC_OpenACC)
1372# 701 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1374# 701 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1375#elif defined(MFC_OpenMP)
1376# 701 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1378# 701 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1380# 701 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1382# 702 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1384# 107 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1385# 108 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1386# 109 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1387 if (norm_dir == 2)
then
1388# 110 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1390# 110 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1392# 110 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1393#if defined(MFC_OpenACC)
1394# 110 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1396# 110 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1398# 110 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1400# 110 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1402# 110 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1404# 110 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1405#elif defined(MFC_OpenMP)
1406# 110 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1408# 110 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1410# 110 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1412# 110 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1414# 110 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1416# 110 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1418# 110 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1420# 110 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1422# 110 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1424# 110 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1426# 120 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1428# 121 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1430# 122 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1432# 123 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1434# 123 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1435#if defined(MFC_OpenACC)
1436# 123 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1438# 123 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1439#elif defined(MFC_OpenMP)
1440# 123 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1442# 123 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1444# 124 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1445 do i = 1, eqn_idx%cont%end
1446 alpha_rho_l(i) = ql_prim_rsx_vf(j, k, l, i)
1447# 126 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1448 alpha_rho_r(i) = qr_prim_rsx_vf(j, k + 1, l, i)
1449# 127 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1452 vel_l_rms = 0._wp; vel_r_rms = 0._wp
1455# 131 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1456#if defined(MFC_OpenACC)
1457# 131 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1459# 131 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1460#elif defined(MFC_OpenMP)
1461# 131 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1463# 131 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1465# 132 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1467 vel_l(i) = ql_prim_rsx_vf(j, k, l, eqn_idx%cont%end + i)
1468# 134 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1469 vel_r(i) = qr_prim_rsx_vf(j, k + 1, l, eqn_idx%cont%end + i)
1470# 135 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1471 vel_l_rms = vel_l_rms + vel_l(i)**2._wp
1472 vel_r_rms = vel_r_rms + vel_r(i)**2._wp
1476# 139 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1477#if defined(MFC_OpenACC)
1478# 139 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1480# 139 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1481#elif defined(MFC_OpenMP)
1482# 139 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1484# 139 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1486# 140 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1487 do i = 1, num_fluids
1488 alpha_l(i) = ql_prim_rsx_vf(j, k, l, eqn_idx%E + i)
1489# 142 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1490 alpha_r(i) = qr_prim_rsx_vf(j, k + 1, l, eqn_idx%E + i)
1491# 143 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1494 pres_l = ql_prim_rsx_vf(j, k, l, eqn_idx%E)
1495# 146 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1496 pres_r = qr_prim_rsx_vf(j, k + 1, l, eqn_idx%E)
1497# 147 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1503 b%L(2) = ql_prim_rsx_vf(j, k, l, eqn_idx%B%beg)
1504# 153 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1505 b%R(2) = qr_prim_rsx_vf(j, k + 1, l, eqn_idx%B%beg)
1506# 154 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1507 b%L(3) = ql_prim_rsx_vf(j, k, l, eqn_idx%B%beg + 1)
1508# 155 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1509 b%R(3) = qr_prim_rsx_vf(j, k + 1, l, eqn_idx%B%beg + 1)
1510# 156 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1512 b%L(1) = ql_prim_rsx_vf(j, k, l, eqn_idx%B%beg)
1513# 158 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1514 b%R(1) = qr_prim_rsx_vf(j, k + 1, l, eqn_idx%B%beg)
1515# 159 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1516 b%L(2) = ql_prim_rsx_vf(j, k, l, eqn_idx%B%beg + 1)
1517# 160 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1518 b%R(2) = qr_prim_rsx_vf(j, k + 1, l, eqn_idx%B%beg + 1)
1519# 161 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1520 b%L(3) = ql_prim_rsx_vf(j, k, l, eqn_idx%B%beg + 2)
1521# 162 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1522 b%R(3) = qr_prim_rsx_vf(j, k + 1, l, eqn_idx%B%beg + 2)
1523# 163 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1545# 183 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1546#if defined(MFC_OpenACC)
1547# 183 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1549# 183 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1550#elif defined(MFC_OpenMP)
1551# 183 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1553# 183 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1555# 184 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1556 do i = 1, num_fluids
1557 alpha_rho_l(i) = max(0._wp, alpha_rho_l(i))
1558 alpha_l(i) = min(max(0._wp, alpha_l(i)), 1._wp)
1559 alpha_l_sum = alpha_l_sum + alpha_l(i)
1560 alpha_rho_r(i) = max(0._wp, alpha_rho_r(i))
1561 alpha_r(i) = min(max(0._wp, alpha_r(i)), 1._wp)
1562 alpha_r_sum = alpha_r_sum + alpha_r(i)
1565 alpha_l = alpha_l/max(alpha_l_sum,
sgm_eps)
1566 alpha_r = alpha_r/max(alpha_r_sum,
sgm_eps)
1579 c_sum_yi_phi = 0._wp
1581# 208 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1582#if defined(MFC_OpenACC)
1583# 208 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1585# 208 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1586#elif defined(MFC_OpenMP)
1587# 208 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1589# 208 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1591# 209 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1592 do i = eqn_idx%species%beg, eqn_idx%species%end
1593 ys_l(i - eqn_idx%species%beg + 1) = ql_prim_rsx_vf(j, k, l, i)
1594# 211 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1595 ys_r(i - eqn_idx%species%beg + 1) = qr_prim_rsx_vf(j, k + 1, l, i)
1596# 212 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1599 call get_mixture_molecular_weight(ys_l, mw_l)
1600 call get_mixture_molecular_weight(ys_r, mw_r)
1601 xs_l(1:num_species) = ys_l(1:num_species)*mw_l/molecular_weights(:)
1602 xs_r(1:num_species) = ys_r(1:num_species)*mw_r/molecular_weights(:)
1604 r_gas_l = gas_constant/mw_l
1605 r_gas_r = gas_constant/mw_r
1606 t_l = pres_l/rho_l/r_gas_l
1607 t_r = pres_r/rho_r/r_gas_r
1609 call get_mixture_caloric_state(t_l, ys_l, cp_il, cp_l, cv_l, e_l)
1610 call get_mixture_caloric_state(t_r, ys_r, cp_ir, cp_r, cv_r, e_r)
1612 if (chem_params%gamma_method == 1)
then
1614 gamma_il(1:num_species) = cp_il(1:num_species)/(cp_il(1:num_species) - 1.0_wp)
1615 gamma_ir(1:num_species) = cp_ir(1:num_species)/(cp_ir(1:num_species) - 1.0_wp)
1617 gamma_l = sum(xs_l(1:num_species)/(gamma_il(1:num_species) - 1.0_wp))
1618 gamma_r = sum(xs_r(1:num_species)/(gamma_ir(1:num_species) - 1.0_wp))
1619 else if (chem_params%gamma_method == 2)
then
1622 gamma_l = 1.0_wp/(gamm_l - 1.0_wp)
1624 gamma_r = 1.0_wp/(gamm_r - 1.0_wp)
1627 e_l = rho_l*e_l + 5.e-1*rho_l*vel_l_rms
1628 e_r = rho_r*e_r + 5.e-1*rho_r*vel_r_rms
1629 h_l = (e_l + pres_l)/rho_l
1630 h_r = (e_r + pres_r)/rho_r
1631 else if (mhd .and. relativity)
then
1632 ga%L = 1._wp/sqrt(1._wp - vel_l_rms)
1633 ga%R = 1._wp/sqrt(1._wp - vel_r_rms)
1634# 250 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1635 vdotb%L = vel_l(1)*b%L(1) + vel_l(2)*b%L(2) + vel_l(3)*b%L(3)
1636 vdotb%R = vel_r(1)*b%R(1) + vel_r(2)*b%R(2) + vel_r(3)*b%R(3)
1638 b4%L(1:3) = b%L(1:3)/ga%L + ga%L*vel_l(1:3)*vdotb%L
1639 b4%R(1:3) = b%R(1:3)/ga%R + ga%R*vel_r(1:3)*vdotb%R
1640 b2%L = b%L(1)**2._wp + b%L(2)**2._wp + b%L(3)**2._wp
1641 b2%R = b%R(1)**2._wp + b%R(2)**2._wp + b%R(3)**2._wp
1642# 258 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1644 pres_mag%L = 0.5_wp*(b2%L/ga%L**2._wp + vdotb%L**2._wp)
1645 pres_mag%R = 0.5_wp*(b2%R/ga%R**2._wp + vdotb%R**2._wp)
1649# 265 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1650 cm%L(1:3) = (rho_l*h_l*ga%L**2 + b2%L)*vel_l(1:3) - vdotb%L*b%L(1:3)
1651 cm%R(1:3) = (rho_r*h_r*ga%R**2 + b2%R)*vel_r(1:3) - vdotb%R*b%R(1:3)
1652# 268 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1654 e_l = rho_l*h_l*ga%L**2 - pres_l + 0.5_wp*(b2%L + vel_l_rms*b2%L - vdotb%L**2._wp) - rho_l*ga%L
1655 e_r = rho_r*h_r*ga%R**2 - pres_r + 0.5_wp*(b2%R + vel_r_rms*b2%R - vdotb%R**2._wp) - rho_r*ga%R
1656 else if (mhd .and. .not. relativity)
then
1657# 273 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1658 pres_mag%L = 0.5_wp*(b%L(1)**2._wp + b%L(2)**2._wp + b%L(3)**2._wp)
1659 pres_mag%R = 0.5_wp*(b%R(1)**2._wp + b%R(2)**2._wp + b%R(3)**2._wp)
1660# 276 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1662 e_l = e_l + pres_mag%L
1665 e_r = e_r + pres_mag%R
1666 h_l = (e_l + pres_l - pres_mag%L)/rho_l
1668 h_r = (e_r + pres_r - pres_mag%R)/rho_r
1672 h_l = (e_l + pres_l)/rho_l
1673 h_r = (e_r + pres_r)/rho_r
1679 if (hypoelasticity)
then
1681# 295 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1682#if defined(MFC_OpenACC)
1683# 295 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1685# 295 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1686#elif defined(MFC_OpenMP)
1687# 295 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1689# 295 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1691# 296 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1692 do i = 1, eqn_idx%stress%end - eqn_idx%stress%beg + 1
1693 tau_e_l(i) = ql_prim_rsx_vf(j, k, l, eqn_idx%stress%beg - 1 + i)
1694# 298 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1695 tau_e_r(i) = qr_prim_rsx_vf(j, k + 1, l, eqn_idx%stress%beg - 1 + i)
1696# 299 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1699 damage_l = 0._wp; damage_r = 0._wp
1700 if (cont_damage)
then
1701 damage_l = ql_prim_rsx_vf(j, k, l, eqn_idx%damage)
1702# 304 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1703 damage_r = qr_prim_rsx_vf(j, k + 1, l, eqn_idx%damage)
1704# 305 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1708 & tau_e_l, tau_e_r, g_l, g_r, e_l, e_r)
1714 call s_compute_average_state(rho_l, rho_r, vel_l, vel_r, h_l, h_r, gamma_l, gamma_r, qv_l, qv_r, &
1715 & rho_avg, vel_avg_rms, h_avg, gamma_avg, qv_avg)
1717 r_species(1:num_species) = gas_constant/molecular_weights
1718 call get_species_enthalpies_rt(t_l, h_il)
1719 call get_species_enthalpies_rt(t_r, h_ir)
1720 h_il(1:num_species) = h_il(1:num_species)*r_species(1:num_species)*t_l
1721 h_ir(1:num_species) = h_ir(1:num_species)*r_species(1:num_species)*t_r
1723 & h_ir, cp_il, cp_ir, vel_avg_rms, gamma_avg, &
1734 & h_avg, c_sum_yi_phi, alpha_r, c_avg, alpha_rho_r)
1747# 346 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1748#if defined(MFC_OpenACC)
1749# 346 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1751# 346 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1752#elif defined(MFC_OpenMP)
1753# 346 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1755# 346 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1757# 347 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1759 re_avg_rsx_vf(j, k, l, i) = 2._wp/(1._wp/re_l(i) + 1._wp/re_r(i))
1760# 349 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1768 s_l = min(vel_l(
dir_idx(1)) - c_fast%L, vel_r(
dir_idx(1)) - c_fast%R)
1769 s_r = max(vel_r(
dir_idx(1)) + c_fast%R, vel_l(
dir_idx(1)) + c_fast%L)
1770 else if (hypoelasticity)
then
1783 if (hyper_cleaning)
then
1785 s_l = min(s_l, -hyper_cleaning_speed)
1786 s_r = max(s_r, hyper_cleaning_speed)
1789 s_s = (pres_r - pres_l + rho_l*vel_l(
dir_idx(1))*(s_l - vel_l(
dir_idx(1))) &
1791 & - rho_r*(s_r - vel_r(
dir_idx(1))))
1793 pres_sl = 5.e-1_wp*(pres_l + pres_r + rho_avg*c_avg*(vel_l(
dir_idx(1)) - vel_r(
dir_idx(1))))
1807 s_l = vel_l(
dir_idx(1)) - c_l*ms_l
1808 s_r = vel_r(
dir_idx(1)) + c_r*ms_r
1810 s_s = 5.e-1_wp*((vel_l(
dir_idx(1)) + vel_r(
dir_idx(1))) + (pres_l - pres_r)/(rho_avg*c_avg))
1813 s_m = min(0._wp, s_l); s_p = max(0._wp, s_r)
1815 xi_m = (5.e-1_wp + sign(5.e-1_wp, s_l)) + (5.e-1_wp - sign(5.e-1_wp, s_l))*(5.e-1_wp + sign(5.e-1_wp, &
1817 xi_p = (5.e-1_wp - sign(5.e-1_wp, s_r)) + (5.e-1_wp - sign(5.e-1_wp, s_l))*(5.e-1_wp + sign(5.e-1_wp, &
1824 if (.not. relativity)
then
1826# 413 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1827#if defined(MFC_OpenACC)
1828# 413 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1830# 413 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1831#elif defined(MFC_OpenMP)
1832# 413 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1834# 413 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1836# 414 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1837 do i = 1, eqn_idx%cont%end
1839# 416 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1840 & i) = (s_m*alpha_rho_r(i)*vel_r(norm_dir) - s_p*alpha_rho_l(i)*vel_l(norm_dir) &
1841 & + s_m*s_p*(alpha_rho_l(i) - alpha_rho_r(i)))/(s_m - s_p)
1843 else if (relativity)
then
1845# 420 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1846#if defined(MFC_OpenACC)
1847# 420 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1849# 420 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1850#elif defined(MFC_OpenMP)
1851# 420 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1853# 420 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1855# 421 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1856 do i = 1, eqn_idx%cont%end
1858# 423 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1859 & i) = (s_m*ga%R*alpha_rho_r(i)*vel_r(norm_dir) - s_p*ga%L*alpha_rho_l(i) &
1860 & *vel_l(norm_dir) + s_m*s_p*(ga%L*alpha_rho_l(i) - ga%R*alpha_rho_r(i)))/(s_m &
1866 if (mhd .and. (.not. relativity))
then
1868# 431 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1869#if defined(MFC_OpenACC)
1870# 431 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1872# 431 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1873#elif defined(MFC_OpenMP)
1874# 431 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1876# 431 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1878# 432 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1881# 434 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1883# 435 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1885# 436 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1886 & eqn_idx%cont%end + i) = (s_m*(rho_r*vel_r(i)*vel_r(norm_dir) - b%R(i) &
1887 & *b%R(norm_dir) +
dir_flg(i)*(pres_r + pres_mag%R)) - s_p*(rho_l*vel_l(i) &
1888 & *vel_l(norm_dir) - b%L(i)*b%L(norm_dir) +
dir_flg(i)*(pres_l + pres_mag%L)) &
1889 & + s_m*s_p*(rho_l*vel_l(i) - rho_r*vel_r(i)))/(s_m - s_p)
1891 else if (mhd .and. relativity)
then
1893# 442 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1894#if defined(MFC_OpenACC)
1895# 442 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1897# 442 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1898#elif defined(MFC_OpenMP)
1899# 442 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1901# 442 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1903# 443 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1906# 445 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1908# 446 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1910# 447 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1911 & eqn_idx%cont%end + i) = (s_m*(cm%R(i)*vel_r(norm_dir) - b4%R(i) &
1912 & /ga%R*b%R(norm_dir) +
dir_flg(i)*(pres_r + pres_mag%R)) - s_p*(cm%L(i) &
1913 & *vel_l(norm_dir) - b4%L(i)/ga%L*b%L(norm_dir) +
dir_flg(i)*(pres_l + pres_mag%L) &
1914 & ) + s_m*s_p*(cm%L(i) - cm%R(i)))/(s_m - s_p)
1916 else if (bubbles_euler)
then
1918# 453 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1919#if defined(MFC_OpenACC)
1920# 453 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1922# 453 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1923#elif defined(MFC_OpenMP)
1924# 453 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1926# 453 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1928# 454 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1931# 456 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1935 & + s_m*s_p*(rho_l*vel_l(
dir_idx(i)) - rho_r*vel_r(
dir_idx(i))))/(s_m - s_p) &
1936 & + (s_m/s_l)*(s_p/s_r)*pcorr*(vel_r(
dir_idx(i)) - vel_l(
dir_idx(i)))
1938 else if (hypoelasticity)
then
1940# 463 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1941#if defined(MFC_OpenACC)
1942# 463 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1944# 463 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1945#elif defined(MFC_OpenMP)
1946# 463 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1948# 463 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1950# 464 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1953# 466 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1958 & - rho_r*vel_r(
dir_idx(i))))/(s_m - s_p)
1962# 473 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1963#if defined(MFC_OpenACC)
1964# 473 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1966# 473 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1967#elif defined(MFC_OpenMP)
1968# 473 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1970# 473 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1972# 474 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1975# 476 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1979 & - rho_r*vel_r(
dir_idx(i))))/(s_m - s_p) + (s_m/s_l)*(s_p/s_r) &
1985 if (mhd .and. (.not. relativity))
then
1987# 487 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1988# 488 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1990# 489 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1991 & eqn_idx%E) = (s_m*(vel_r(norm_dir)*(e_r + pres_r + pres_mag%R) - b%R(norm_dir) &
1992 & *(vel_r(1)*b%R(1) + vel_r(2)*b%R(2) + vel_r(3)*b%R(3))) - s_p*(vel_l(norm_dir) &
1993 & *(e_l + pres_l + pres_mag%L) - b%L(norm_dir)*(vel_l(1)*b%L(1) + vel_l(2)*b%L(2) &
1994 & + vel_l(3)*b%L(3))) + s_m*s_p*(e_l - e_r))/(s_m - s_p)
1995# 494 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1996 else if (mhd .and. relativity)
then
1998# 496 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2000# 497 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2001 & eqn_idx%E) = (s_m*(cm%R(norm_dir) - ga%R*alpha_rho_r(1)*vel_r(norm_dir)) &
2002 & - s_p*(cm%L(norm_dir) - ga%L*alpha_rho_l(1)*vel_l(norm_dir)) + s_m*s_p*(e_l - e_r)) &
2004 else if (bubbles_euler)
then
2006# 502 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2007 & eqn_idx%E) = (s_m*vel_r(
dir_idx(1))*(e_r + pres_r - ptilde_r) - s_p*vel_l(
dir_idx(1) &
2008 & )*(e_l + pres_l - ptilde_l) + s_m*s_p*(e_l - e_r))/(s_m - s_p) + (s_m/s_l)*(s_p/s_r) &
2009 & *pcorr*(vel_r_rms - vel_l_rms)/2._wp
2010 else if (hypoelasticity)
then
2011 flux_tau_l = 0._wp; flux_tau_r = 0._wp
2013# 507 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2014#if defined(MFC_OpenACC)
2015# 507 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2017# 507 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2018#elif defined(MFC_OpenMP)
2019# 507 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2021# 507 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2023# 508 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2029# 513 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2030 & eqn_idx%E) = (s_m*(vel_r(
dir_idx(1))*(e_r + pres_r) - flux_tau_r) &
2031 & - s_p*(vel_l(
dir_idx(1))*(e_l + pres_l) - flux_tau_l) + s_m*s_p*(e_l - e_r))/(s_m &
2035# 518 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2036 & eqn_idx%E) = (s_m*vel_r(
dir_idx(1))*(e_r + pres_r) - s_p*vel_l(
dir_idx(1))*(e_l &
2037 & + pres_l) + s_m*s_p*(e_l - e_r))/(s_m - s_p) + (s_m/s_l)*(s_p/s_r)*pcorr*(vel_r_rms &
2038 & - vel_l_rms)/2._wp
2042 if (hypoelasticity)
then
2043 do i = 1, eqn_idx%stress%end - eqn_idx%stress%beg + 1
2045# 527 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2046 & eqn_idx%stress%beg - 1 + i) = (s_m*(rho_r*vel_r(
dir_idx(1))*tau_e_r(i)) &
2047 & - s_p*(rho_l*vel_l(
dir_idx(1))*tau_e_l(i)) + s_m*s_p*(rho_l*tau_e_l(i) &
2048 & - rho_r*tau_e_r(i)))/(s_m - s_p)
2053 if (cont_damage)
then
2054 solid_partial_density_l = 0._wp; solid_partial_density_r = 0._wp
2056# 536 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2057#if defined(MFC_OpenACC)
2058# 536 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2060# 536 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2061#elif defined(MFC_OpenMP)
2062# 536 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2064# 536 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2066# 537 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2067 do i = 1, num_fluids
2069 solid_partial_density_l = solid_partial_density_l + alpha_rho_l(i)
2070 solid_partial_density_r = solid_partial_density_r + alpha_rho_r(i)
2074# 544 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2075 & eqn_idx%damage) = (s_m*(solid_partial_density_r*vel_r(
dir_idx(1))*damage_r) &
2076 & - s_p*(solid_partial_density_l*vel_l(
dir_idx(1))*damage_l) &
2077 & + s_m*s_p*(solid_partial_density_l*damage_l - solid_partial_density_r*damage_r)) &
2084# 552 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2085#if defined(MFC_OpenACC)
2086# 552 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2088# 552 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2089#elif defined(MFC_OpenMP)
2090# 552 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2092# 552 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2094# 553 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2096 if (0._wp <= s_l)
then
2098# 556 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2099 else if (s_r <= 0._wp)
then
2101# 558 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2104# 560 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2111 if (.not. hll_u_interface)
then
2115# 569 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2116#if defined(MFC_OpenACC)
2117# 569 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2119# 569 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2120#elif defined(MFC_OpenMP)
2121# 569 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2123# 569 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2125# 570 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2126 do i = eqn_idx%adv%beg, eqn_idx%adv%end
2127 flux_rsx_vf(j, k, l, i) = (ql_prim_rsx_vf(j, k, l, i) - qr_prim_rsx_vf(j, k + 1, l, &
2128# 572 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2129 & i))*s_m*s_p/(s_m - s_p)
2131# 574 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2132 & i) - s_p*ql_prim_rsx_vf(j, k, l, i))/(s_m - s_p)
2133# 575 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2137# 577 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2138#if defined(MFC_OpenACC)
2139# 577 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2141# 577 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2142#elif defined(MFC_OpenMP)
2143# 577 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2145# 577 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2147# 578 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2148 do i = eqn_idx%adv%beg, eqn_idx%adv%end
2149 if (0._wp <= s_l)
then
2151# 581 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2152 else if (s_r <= 0._wp)
then
2154# 583 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2156 flux_rsx_vf(j, k, l, i) = (s_r*ql_prim_rsx_vf(j, k, l, &
2157# 585 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2158 & i)*vel_l(
dir_idx(1)) - s_l*qr_prim_rsx_vf(j, k + 1, l, &
2159# 586 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2160 & i)*vel_r(
dir_idx(1)) + s_l*s_r*(qr_prim_rsx_vf(j, k + 1, l, &
2161# 587 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2162 & i) - ql_prim_rsx_vf(j, k, l, i)))/(s_r - s_l)
2163# 588 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2166 if (0._wp <= s_l)
then
2168# 592 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2169 else if (s_r <= 0._wp)
then
2171# 594 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2174# 596 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2175 & eqn_idx%adv%beg) = (s_r*vel_l(
dir_idx(1)) - s_l*vel_r(
dir_idx(1)))/(s_r - s_l)
2179 if (bubbles_euler)
then
2181 if (num_fluids > 1)
then
2183# 604 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2189# 608 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2190#if defined(MFC_OpenACC)
2191# 608 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2193# 608 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2194#elif defined(MFC_OpenMP)
2195# 608 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2197# 608 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2199# 609 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2200 do i = eqn_idx%species%beg, eqn_idx%species%end
2201 y_l = ql_prim_rsx_vf(j, k, l, i)
2202# 611 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2203 y_r = qr_prim_rsx_vf(j, k + 1, l, i)
2204# 612 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2207# 614 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2208 & i) = (s_m*y_r*rho_r*vel_r(
dir_idx(1)) - s_p*y_l*rho_l*vel_l(
dir_idx(1)) &
2209 & + s_m*s_p*(y_l*rho_l - y_r*rho_r))/(s_m - s_p)
2211# 617 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2220# 624 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2221#if defined(MFC_OpenACC)
2222# 624 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2224# 624 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2225#elif defined(MFC_OpenMP)
2226# 624 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2228# 624 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2230# 625 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2233 & eqn_idx%B%beg + i) = (s_m*(vel_r(1)*b%R(2 + i) - vel_r(2 + i)*bx0) &
2234 & - s_p*(vel_l(1)*b%L(2 + i) - vel_l(2 + i)*bx0) + s_m*s_p*(b%L(2 + i) &
2235 & - b%R(2 + i)))/(s_m - s_p)
2239# 633 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2241# 634 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2243# 635 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2245# 635 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2246#if defined(MFC_OpenACC)
2247# 635 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2249# 635 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2250#elif defined(MFC_OpenMP)
2251# 635 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2253# 635 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2255# 636 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2258# 638 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2259 & eqn_idx%B%beg + i) = (s_m*(vel_r(
dir_idx(1))*b%R(i + 1) - vel_r(i + 1) &
2260 & *b%R(norm_dir)) - s_p*(vel_l(
dir_idx(1))*b%L(i + 1) - vel_l(i + 1) &
2261 & *b%L(norm_dir)) + s_m*s_p*(b%L(i + 1) - b%R(i + 1)))/(s_m - s_p)
2264 if (hyper_cleaning)
then
2267# 646 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2268 & eqn_idx%B%beg + norm_dir - 1) + (s_m*qr_prim_rsx_vf(j, k + 1, l, &
2269# 647 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2270 & eqn_idx%psi) - s_p*ql_prim_rsx_vf(j, k, l, eqn_idx%psi))/(s_m - s_p)
2271# 648 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2274# 650 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2275 & eqn_idx%psi) = (hyper_cleaning_speed**2*(s_m*b%R(norm_dir) &
2276 & - s_p*b%L(norm_dir)) + s_m*s_p*(ql_prim_rsx_vf(j, k, l, &
2277# 652 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2278 & eqn_idx%psi) - qr_prim_rsx_vf(j, k + 1, l, eqn_idx%psi)))/(s_m - s_p)
2279# 653 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2282 flux_rsx_vf(j, k, l, eqn_idx%B%beg + norm_dir - 1) = 0._wp
2283# 656 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2287# 659 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2290# 662 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2294# 664 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2295#if defined(MFC_OpenACC)
2296# 664 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2298# 664 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2299#elif defined(MFC_OpenMP)
2300# 664 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2302# 664 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2304# 665 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2307# 667 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2311# 670 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2312 & eqn_idx%cont%end + 2) - (s_m*pres_r - s_p*pres_l)/(s_m - s_p)
2315# 672 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2316#if defined(MFC_OpenACC)
2317# 672 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2319# 672 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2320#elif defined(MFC_OpenMP)
2321# 672 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2323# 672 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2325# 673 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2326 do i = eqn_idx%adv%beg, eqn_idx%adv%end
2327 if (.not. hll_u_interface)
then
2329# 676 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2332# 678 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2337 if (cyl_coord .and. hypoelasticity)
then
2340# 685 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2341 & eqn_idx%cont%end + 2) + (s_m*tau_e_r(4) - s_p*tau_e_l(4))/(s_m - s_p)
2344# 687 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2345#if defined(MFC_OpenACC)
2346# 687 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2348# 687 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2349#elif defined(MFC_OpenMP)
2350# 687 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2352# 687 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2354# 688 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2355 do i = eqn_idx%stress%beg, eqn_idx%stress%end
2357# 690 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2361 if (cont_damage)
then
2363# 695 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2366# 698 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2371# 701 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2372#if defined(MFC_OpenACC)
2373# 701 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2375# 701 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2376#elif defined(MFC_OpenMP)
2377# 701 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2379# 701 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2381# 701 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2383# 702 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2385# 107 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2386# 108 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2387# 109 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2388 if (norm_dir == 3)
then
2389# 110 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2391# 110 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2393# 110 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2394#if defined(MFC_OpenACC)
2395# 110 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2397# 110 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2399# 110 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2401# 110 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2403# 110 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2405# 110 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2406#elif defined(MFC_OpenMP)
2407# 110 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2409# 110 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2411# 110 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2413# 110 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2415# 110 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2417# 110 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2419# 110 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2421# 110 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2423# 110 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2425# 110 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2427# 120 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2429# 121 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2431# 122 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2433# 123 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2435# 123 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2436#if defined(MFC_OpenACC)
2437# 123 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2439# 123 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2440#elif defined(MFC_OpenMP)
2441# 123 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2443# 123 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2445# 124 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2446 do i = 1, eqn_idx%cont%end
2447 alpha_rho_l(i) = ql_prim_rsx_vf(j, k, l, i)
2448# 126 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2449 alpha_rho_r(i) = qr_prim_rsx_vf(j, k, l + 1, i)
2450# 127 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2453 vel_l_rms = 0._wp; vel_r_rms = 0._wp
2456# 131 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2457#if defined(MFC_OpenACC)
2458# 131 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2460# 131 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2461#elif defined(MFC_OpenMP)
2462# 131 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2464# 131 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2466# 132 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2468 vel_l(i) = ql_prim_rsx_vf(j, k, l, eqn_idx%cont%end + i)
2469# 134 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2470 vel_r(i) = qr_prim_rsx_vf(j, k, l + 1, eqn_idx%cont%end + i)
2471# 135 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2472 vel_l_rms = vel_l_rms + vel_l(i)**2._wp
2473 vel_r_rms = vel_r_rms + vel_r(i)**2._wp
2477# 139 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2478#if defined(MFC_OpenACC)
2479# 139 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2481# 139 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2482#elif defined(MFC_OpenMP)
2483# 139 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2485# 139 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2487# 140 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2488 do i = 1, num_fluids
2489 alpha_l(i) = ql_prim_rsx_vf(j, k, l, eqn_idx%E + i)
2490# 142 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2491 alpha_r(i) = qr_prim_rsx_vf(j, k, l + 1, eqn_idx%E + i)
2492# 143 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2495 pres_l = ql_prim_rsx_vf(j, k, l, eqn_idx%E)
2496# 146 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2497 pres_r = qr_prim_rsx_vf(j, k, l + 1, eqn_idx%E)
2498# 147 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2504 b%L(2) = ql_prim_rsx_vf(j, k, l, eqn_idx%B%beg)
2505# 153 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2506 b%R(2) = qr_prim_rsx_vf(j, k, l + 1, eqn_idx%B%beg)
2507# 154 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2508 b%L(3) = ql_prim_rsx_vf(j, k, l, eqn_idx%B%beg + 1)
2509# 155 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2510 b%R(3) = qr_prim_rsx_vf(j, k, l + 1, eqn_idx%B%beg + 1)
2511# 156 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2513 b%L(1) = ql_prim_rsx_vf(j, k, l, eqn_idx%B%beg)
2514# 158 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2515 b%R(1) = qr_prim_rsx_vf(j, k, l + 1, eqn_idx%B%beg)
2516# 159 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2517 b%L(2) = ql_prim_rsx_vf(j, k, l, eqn_idx%B%beg + 1)
2518# 160 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2519 b%R(2) = qr_prim_rsx_vf(j, k, l + 1, eqn_idx%B%beg + 1)
2520# 161 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2521 b%L(3) = ql_prim_rsx_vf(j, k, l, eqn_idx%B%beg + 2)
2522# 162 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2523 b%R(3) = qr_prim_rsx_vf(j, k, l + 1, eqn_idx%B%beg + 2)
2524# 163 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2546# 183 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2547#if defined(MFC_OpenACC)
2548# 183 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2550# 183 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2551#elif defined(MFC_OpenMP)
2552# 183 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2554# 183 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2556# 184 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2557 do i = 1, num_fluids
2558 alpha_rho_l(i) = max(0._wp, alpha_rho_l(i))
2559 alpha_l(i) = min(max(0._wp, alpha_l(i)), 1._wp)
2560 alpha_l_sum = alpha_l_sum + alpha_l(i)
2561 alpha_rho_r(i) = max(0._wp, alpha_rho_r(i))
2562 alpha_r(i) = min(max(0._wp, alpha_r(i)), 1._wp)
2563 alpha_r_sum = alpha_r_sum + alpha_r(i)
2566 alpha_l = alpha_l/max(alpha_l_sum,
sgm_eps)
2567 alpha_r = alpha_r/max(alpha_r_sum,
sgm_eps)
2580 c_sum_yi_phi = 0._wp
2582# 208 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2583#if defined(MFC_OpenACC)
2584# 208 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2586# 208 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2587#elif defined(MFC_OpenMP)
2588# 208 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2590# 208 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2592# 209 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2593 do i = eqn_idx%species%beg, eqn_idx%species%end
2594 ys_l(i - eqn_idx%species%beg + 1) = ql_prim_rsx_vf(j, k, l, i)
2595# 211 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2596 ys_r(i - eqn_idx%species%beg + 1) = qr_prim_rsx_vf(j, k, l + 1, i)
2597# 212 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2600 call get_mixture_molecular_weight(ys_l, mw_l)
2601 call get_mixture_molecular_weight(ys_r, mw_r)
2602 xs_l(1:num_species) = ys_l(1:num_species)*mw_l/molecular_weights(:)
2603 xs_r(1:num_species) = ys_r(1:num_species)*mw_r/molecular_weights(:)
2605 r_gas_l = gas_constant/mw_l
2606 r_gas_r = gas_constant/mw_r
2607 t_l = pres_l/rho_l/r_gas_l
2608 t_r = pres_r/rho_r/r_gas_r
2610 call get_mixture_caloric_state(t_l, ys_l, cp_il, cp_l, cv_l, e_l)
2611 call get_mixture_caloric_state(t_r, ys_r, cp_ir, cp_r, cv_r, e_r)
2613 if (chem_params%gamma_method == 1)
then
2615 gamma_il(1:num_species) = cp_il(1:num_species)/(cp_il(1:num_species) - 1.0_wp)
2616 gamma_ir(1:num_species) = cp_ir(1:num_species)/(cp_ir(1:num_species) - 1.0_wp)
2618 gamma_l = sum(xs_l(1:num_species)/(gamma_il(1:num_species) - 1.0_wp))
2619 gamma_r = sum(xs_r(1:num_species)/(gamma_ir(1:num_species) - 1.0_wp))
2620 else if (chem_params%gamma_method == 2)
then
2623 gamma_l = 1.0_wp/(gamm_l - 1.0_wp)
2625 gamma_r = 1.0_wp/(gamm_r - 1.0_wp)
2628 e_l = rho_l*e_l + 5.e-1*rho_l*vel_l_rms
2629 e_r = rho_r*e_r + 5.e-1*rho_r*vel_r_rms
2630 h_l = (e_l + pres_l)/rho_l
2631 h_r = (e_r + pres_r)/rho_r
2632 else if (mhd .and. relativity)
then
2633 ga%L = 1._wp/sqrt(1._wp - vel_l_rms)
2634 ga%R = 1._wp/sqrt(1._wp - vel_r_rms)
2635# 250 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2636 vdotb%L = vel_l(1)*b%L(1) + vel_l(2)*b%L(2) + vel_l(3)*b%L(3)
2637 vdotb%R = vel_r(1)*b%R(1) + vel_r(2)*b%R(2) + vel_r(3)*b%R(3)
2639 b4%L(1:3) = b%L(1:3)/ga%L + ga%L*vel_l(1:3)*vdotb%L
2640 b4%R(1:3) = b%R(1:3)/ga%R + ga%R*vel_r(1:3)*vdotb%R
2641 b2%L = b%L(1)**2._wp + b%L(2)**2._wp + b%L(3)**2._wp
2642 b2%R = b%R(1)**2._wp + b%R(2)**2._wp + b%R(3)**2._wp
2643# 258 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2645 pres_mag%L = 0.5_wp*(b2%L/ga%L**2._wp + vdotb%L**2._wp)
2646 pres_mag%R = 0.5_wp*(b2%R/ga%R**2._wp + vdotb%R**2._wp)
2650# 265 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2651 cm%L(1:3) = (rho_l*h_l*ga%L**2 + b2%L)*vel_l(1:3) - vdotb%L*b%L(1:3)
2652 cm%R(1:3) = (rho_r*h_r*ga%R**2 + b2%R)*vel_r(1:3) - vdotb%R*b%R(1:3)
2653# 268 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2655 e_l = rho_l*h_l*ga%L**2 - pres_l + 0.5_wp*(b2%L + vel_l_rms*b2%L - vdotb%L**2._wp) - rho_l*ga%L
2656 e_r = rho_r*h_r*ga%R**2 - pres_r + 0.5_wp*(b2%R + vel_r_rms*b2%R - vdotb%R**2._wp) - rho_r*ga%R
2657 else if (mhd .and. .not. relativity)
then
2658# 273 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2659 pres_mag%L = 0.5_wp*(b%L(1)**2._wp + b%L(2)**2._wp + b%L(3)**2._wp)
2660 pres_mag%R = 0.5_wp*(b%R(1)**2._wp + b%R(2)**2._wp + b%R(3)**2._wp)
2661# 276 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2663 e_l = e_l + pres_mag%L
2666 e_r = e_r + pres_mag%R
2667 h_l = (e_l + pres_l - pres_mag%L)/rho_l
2669 h_r = (e_r + pres_r - pres_mag%R)/rho_r
2673 h_l = (e_l + pres_l)/rho_l
2674 h_r = (e_r + pres_r)/rho_r
2680 if (hypoelasticity)
then
2682# 295 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2683#if defined(MFC_OpenACC)
2684# 295 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2686# 295 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2687#elif defined(MFC_OpenMP)
2688# 295 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2690# 295 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2692# 296 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2693 do i = 1, eqn_idx%stress%end - eqn_idx%stress%beg + 1
2694 tau_e_l(i) = ql_prim_rsx_vf(j, k, l, eqn_idx%stress%beg - 1 + i)
2695# 298 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2696 tau_e_r(i) = qr_prim_rsx_vf(j, k, l + 1, eqn_idx%stress%beg - 1 + i)
2697# 299 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2700 damage_l = 0._wp; damage_r = 0._wp
2701 if (cont_damage)
then
2702 damage_l = ql_prim_rsx_vf(j, k, l, eqn_idx%damage)
2703# 304 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2704 damage_r = qr_prim_rsx_vf(j, k, l + 1, eqn_idx%damage)
2705# 305 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2709 & tau_e_l, tau_e_r, g_l, g_r, e_l, e_r)
2715 call s_compute_average_state(rho_l, rho_r, vel_l, vel_r, h_l, h_r, gamma_l, gamma_r, qv_l, qv_r, &
2716 & rho_avg, vel_avg_rms, h_avg, gamma_avg, qv_avg)
2718 r_species(1:num_species) = gas_constant/molecular_weights
2719 call get_species_enthalpies_rt(t_l, h_il)
2720 call get_species_enthalpies_rt(t_r, h_ir)
2721 h_il(1:num_species) = h_il(1:num_species)*r_species(1:num_species)*t_l
2722 h_ir(1:num_species) = h_ir(1:num_species)*r_species(1:num_species)*t_r
2724 & h_ir, cp_il, cp_ir, vel_avg_rms, gamma_avg, &
2735 & h_avg, c_sum_yi_phi, alpha_r, c_avg, alpha_rho_r)
2748# 346 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2749#if defined(MFC_OpenACC)
2750# 346 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2752# 346 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2753#elif defined(MFC_OpenMP)
2754# 346 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2756# 346 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2758# 347 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2760 re_avg_rsx_vf(j, k, l, i) = 2._wp/(1._wp/re_l(i) + 1._wp/re_r(i))
2761# 349 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2769 s_l = min(vel_l(
dir_idx(1)) - c_fast%L, vel_r(
dir_idx(1)) - c_fast%R)
2770 s_r = max(vel_r(
dir_idx(1)) + c_fast%R, vel_l(
dir_idx(1)) + c_fast%L)
2771 else if (hypoelasticity)
then
2784 if (hyper_cleaning)
then
2786 s_l = min(s_l, -hyper_cleaning_speed)
2787 s_r = max(s_r, hyper_cleaning_speed)
2790 s_s = (pres_r - pres_l + rho_l*vel_l(
dir_idx(1))*(s_l - vel_l(
dir_idx(1))) &
2792 & - rho_r*(s_r - vel_r(
dir_idx(1))))
2794 pres_sl = 5.e-1_wp*(pres_l + pres_r + rho_avg*c_avg*(vel_l(
dir_idx(1)) - vel_r(
dir_idx(1))))
2808 s_l = vel_l(
dir_idx(1)) - c_l*ms_l
2809 s_r = vel_r(
dir_idx(1)) + c_r*ms_r
2811 s_s = 5.e-1_wp*((vel_l(
dir_idx(1)) + vel_r(
dir_idx(1))) + (pres_l - pres_r)/(rho_avg*c_avg))
2814 s_m = min(0._wp, s_l); s_p = max(0._wp, s_r)
2816 xi_m = (5.e-1_wp + sign(5.e-1_wp, s_l)) + (5.e-1_wp - sign(5.e-1_wp, s_l))*(5.e-1_wp + sign(5.e-1_wp, &
2818 xi_p = (5.e-1_wp - sign(5.e-1_wp, s_r)) + (5.e-1_wp - sign(5.e-1_wp, s_l))*(5.e-1_wp + sign(5.e-1_wp, &
2825 if (.not. relativity)
then
2827# 413 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2828#if defined(MFC_OpenACC)
2829# 413 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2831# 413 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2832#elif defined(MFC_OpenMP)
2833# 413 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2835# 413 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2837# 414 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2838 do i = 1, eqn_idx%cont%end
2840# 416 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2841 & i) = (s_m*alpha_rho_r(i)*vel_r(norm_dir) - s_p*alpha_rho_l(i)*vel_l(norm_dir) &
2842 & + s_m*s_p*(alpha_rho_l(i) - alpha_rho_r(i)))/(s_m - s_p)
2844 else if (relativity)
then
2846# 420 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2847#if defined(MFC_OpenACC)
2848# 420 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2850# 420 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2851#elif defined(MFC_OpenMP)
2852# 420 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2854# 420 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2856# 421 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2857 do i = 1, eqn_idx%cont%end
2859# 423 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2860 & i) = (s_m*ga%R*alpha_rho_r(i)*vel_r(norm_dir) - s_p*ga%L*alpha_rho_l(i) &
2861 & *vel_l(norm_dir) + s_m*s_p*(ga%L*alpha_rho_l(i) - ga%R*alpha_rho_r(i)))/(s_m &
2867 if (mhd .and. (.not. relativity))
then
2869# 431 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2870#if defined(MFC_OpenACC)
2871# 431 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2873# 431 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2874#elif defined(MFC_OpenMP)
2875# 431 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2877# 431 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2879# 432 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2882# 434 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2884# 435 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2886# 436 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2887 & eqn_idx%cont%end + i) = (s_m*(rho_r*vel_r(i)*vel_r(norm_dir) - b%R(i) &
2888 & *b%R(norm_dir) +
dir_flg(i)*(pres_r + pres_mag%R)) - s_p*(rho_l*vel_l(i) &
2889 & *vel_l(norm_dir) - b%L(i)*b%L(norm_dir) +
dir_flg(i)*(pres_l + pres_mag%L)) &
2890 & + s_m*s_p*(rho_l*vel_l(i) - rho_r*vel_r(i)))/(s_m - s_p)
2892 else if (mhd .and. relativity)
then
2894# 442 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2895#if defined(MFC_OpenACC)
2896# 442 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2898# 442 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2899#elif defined(MFC_OpenMP)
2900# 442 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2902# 442 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2904# 443 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2907# 445 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2909# 446 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2911# 447 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2912 & eqn_idx%cont%end + i) = (s_m*(cm%R(i)*vel_r(norm_dir) - b4%R(i) &
2913 & /ga%R*b%R(norm_dir) +
dir_flg(i)*(pres_r + pres_mag%R)) - s_p*(cm%L(i) &
2914 & *vel_l(norm_dir) - b4%L(i)/ga%L*b%L(norm_dir) +
dir_flg(i)*(pres_l + pres_mag%L) &
2915 & ) + s_m*s_p*(cm%L(i) - cm%R(i)))/(s_m - s_p)
2917 else if (bubbles_euler)
then
2919# 453 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2920#if defined(MFC_OpenACC)
2921# 453 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2923# 453 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2924#elif defined(MFC_OpenMP)
2925# 453 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2927# 453 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2929# 454 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2932# 456 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2936 & + s_m*s_p*(rho_l*vel_l(
dir_idx(i)) - rho_r*vel_r(
dir_idx(i))))/(s_m - s_p) &
2937 & + (s_m/s_l)*(s_p/s_r)*pcorr*(vel_r(
dir_idx(i)) - vel_l(
dir_idx(i)))
2939 else if (hypoelasticity)
then
2941# 463 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2942#if defined(MFC_OpenACC)
2943# 463 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2945# 463 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2946#elif defined(MFC_OpenMP)
2947# 463 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2949# 463 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2951# 464 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2954# 466 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2959 & - rho_r*vel_r(
dir_idx(i))))/(s_m - s_p)
2963# 473 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2964#if defined(MFC_OpenACC)
2965# 473 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2967# 473 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2968#elif defined(MFC_OpenMP)
2969# 473 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2971# 473 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2973# 474 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2976# 476 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2980 & - rho_r*vel_r(
dir_idx(i))))/(s_m - s_p) + (s_m/s_l)*(s_p/s_r) &
2986 if (mhd .and. (.not. relativity))
then
2988# 487 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2989# 488 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2991# 489 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2992 & eqn_idx%E) = (s_m*(vel_r(norm_dir)*(e_r + pres_r + pres_mag%R) - b%R(norm_dir) &
2993 & *(vel_r(1)*b%R(1) + vel_r(2)*b%R(2) + vel_r(3)*b%R(3))) - s_p*(vel_l(norm_dir) &
2994 & *(e_l + pres_l + pres_mag%L) - b%L(norm_dir)*(vel_l(1)*b%L(1) + vel_l(2)*b%L(2) &
2995 & + vel_l(3)*b%L(3))) + s_m*s_p*(e_l - e_r))/(s_m - s_p)
2996# 494 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2997 else if (mhd .and. relativity)
then
2999# 496 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3001# 497 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3002 & eqn_idx%E) = (s_m*(cm%R(norm_dir) - ga%R*alpha_rho_r(1)*vel_r(norm_dir)) &
3003 & - s_p*(cm%L(norm_dir) - ga%L*alpha_rho_l(1)*vel_l(norm_dir)) + s_m*s_p*(e_l - e_r)) &
3005 else if (bubbles_euler)
then
3007# 502 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3008 & eqn_idx%E) = (s_m*vel_r(
dir_idx(1))*(e_r + pres_r - ptilde_r) - s_p*vel_l(
dir_idx(1) &
3009 & )*(e_l + pres_l - ptilde_l) + s_m*s_p*(e_l - e_r))/(s_m - s_p) + (s_m/s_l)*(s_p/s_r) &
3010 & *pcorr*(vel_r_rms - vel_l_rms)/2._wp
3011 else if (hypoelasticity)
then
3012 flux_tau_l = 0._wp; flux_tau_r = 0._wp
3014# 507 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3015#if defined(MFC_OpenACC)
3016# 507 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3018# 507 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3019#elif defined(MFC_OpenMP)
3020# 507 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3022# 507 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3024# 508 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3030# 513 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3031 & eqn_idx%E) = (s_m*(vel_r(
dir_idx(1))*(e_r + pres_r) - flux_tau_r) &
3032 & - s_p*(vel_l(
dir_idx(1))*(e_l + pres_l) - flux_tau_l) + s_m*s_p*(e_l - e_r))/(s_m &
3036# 518 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3037 & eqn_idx%E) = (s_m*vel_r(
dir_idx(1))*(e_r + pres_r) - s_p*vel_l(
dir_idx(1))*(e_l &
3038 & + pres_l) + s_m*s_p*(e_l - e_r))/(s_m - s_p) + (s_m/s_l)*(s_p/s_r)*pcorr*(vel_r_rms &
3039 & - vel_l_rms)/2._wp
3043 if (hypoelasticity)
then
3044 do i = 1, eqn_idx%stress%end - eqn_idx%stress%beg + 1
3046# 527 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3047 & eqn_idx%stress%beg - 1 + i) = (s_m*(rho_r*vel_r(
dir_idx(1))*tau_e_r(i)) &
3048 & - s_p*(rho_l*vel_l(
dir_idx(1))*tau_e_l(i)) + s_m*s_p*(rho_l*tau_e_l(i) &
3049 & - rho_r*tau_e_r(i)))/(s_m - s_p)
3054 if (cont_damage)
then
3055 solid_partial_density_l = 0._wp; solid_partial_density_r = 0._wp
3057# 536 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3058#if defined(MFC_OpenACC)
3059# 536 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3061# 536 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3062#elif defined(MFC_OpenMP)
3063# 536 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3065# 536 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3067# 537 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3068 do i = 1, num_fluids
3070 solid_partial_density_l = solid_partial_density_l + alpha_rho_l(i)
3071 solid_partial_density_r = solid_partial_density_r + alpha_rho_r(i)
3075# 544 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3076 & eqn_idx%damage) = (s_m*(solid_partial_density_r*vel_r(
dir_idx(1))*damage_r) &
3077 & - s_p*(solid_partial_density_l*vel_l(
dir_idx(1))*damage_l) &
3078 & + s_m*s_p*(solid_partial_density_l*damage_l - solid_partial_density_r*damage_r)) &
3085# 552 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3086#if defined(MFC_OpenACC)
3087# 552 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3089# 552 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3090#elif defined(MFC_OpenMP)
3091# 552 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3093# 552 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3095# 553 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3097 if (0._wp <= s_l)
then
3099# 556 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3100 else if (s_r <= 0._wp)
then
3102# 558 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3105# 560 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3112 if (.not. hll_u_interface)
then
3116# 569 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3117#if defined(MFC_OpenACC)
3118# 569 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3120# 569 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3121#elif defined(MFC_OpenMP)
3122# 569 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3124# 569 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3126# 570 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3127 do i = eqn_idx%adv%beg, eqn_idx%adv%end
3128 flux_rsx_vf(j, k, l, i) = (ql_prim_rsx_vf(j, k, l, i) - qr_prim_rsx_vf(j, k, l + 1, &
3129# 572 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3130 & i))*s_m*s_p/(s_m - s_p)
3132# 574 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3133 & i) - s_p*ql_prim_rsx_vf(j, k, l, i))/(s_m - s_p)
3134# 575 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3138# 577 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3139#if defined(MFC_OpenACC)
3140# 577 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3142# 577 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3143#elif defined(MFC_OpenMP)
3144# 577 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3146# 577 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3148# 578 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3149 do i = eqn_idx%adv%beg, eqn_idx%adv%end
3150 if (0._wp <= s_l)
then
3152# 581 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3153 else if (s_r <= 0._wp)
then
3155# 583 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3157 flux_rsx_vf(j, k, l, i) = (s_r*ql_prim_rsx_vf(j, k, l, &
3158# 585 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3159 & i)*vel_l(
dir_idx(1)) - s_l*qr_prim_rsx_vf(j, k, l + 1, &
3160# 586 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3161 & i)*vel_r(
dir_idx(1)) + s_l*s_r*(qr_prim_rsx_vf(j, k, l + 1, &
3162# 587 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3163 & i) - ql_prim_rsx_vf(j, k, l, i)))/(s_r - s_l)
3164# 588 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3167 if (0._wp <= s_l)
then
3169# 592 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3170 else if (s_r <= 0._wp)
then
3172# 594 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3175# 596 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3176 & eqn_idx%adv%beg) = (s_r*vel_l(
dir_idx(1)) - s_l*vel_r(
dir_idx(1)))/(s_r - s_l)
3180 if (bubbles_euler)
then
3182 if (num_fluids > 1)
then
3184# 604 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3190# 608 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3191#if defined(MFC_OpenACC)
3192# 608 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3194# 608 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3195#elif defined(MFC_OpenMP)
3196# 608 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3198# 608 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3200# 609 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3201 do i = eqn_idx%species%beg, eqn_idx%species%end
3202 y_l = ql_prim_rsx_vf(j, k, l, i)
3203# 611 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3204 y_r = qr_prim_rsx_vf(j, k, l + 1, i)
3205# 612 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3208# 614 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3209 & i) = (s_m*y_r*rho_r*vel_r(
dir_idx(1)) - s_p*y_l*rho_l*vel_l(
dir_idx(1)) &
3210 & + s_m*s_p*(y_l*rho_l - y_r*rho_r))/(s_m - s_p)
3212# 617 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3221# 624 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3222#if defined(MFC_OpenACC)
3223# 624 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3225# 624 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3226#elif defined(MFC_OpenMP)
3227# 624 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3229# 624 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3231# 625 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3234 & eqn_idx%B%beg + i) = (s_m*(vel_r(1)*b%R(2 + i) - vel_r(2 + i)*bx0) &
3235 & - s_p*(vel_l(1)*b%L(2 + i) - vel_l(2 + i)*bx0) + s_m*s_p*(b%L(2 + i) &
3236 & - b%R(2 + i)))/(s_m - s_p)
3240# 633 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3242# 634 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3244# 635 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3246# 635 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3247#if defined(MFC_OpenACC)
3248# 635 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3250# 635 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3251#elif defined(MFC_OpenMP)
3252# 635 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3254# 635 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3256# 636 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3259# 638 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3260 & eqn_idx%B%beg + i) = (s_m*(vel_r(
dir_idx(1))*b%R(i + 1) - vel_r(i + 1) &
3261 & *b%R(norm_dir)) - s_p*(vel_l(
dir_idx(1))*b%L(i + 1) - vel_l(i + 1) &
3262 & *b%L(norm_dir)) + s_m*s_p*(b%L(i + 1) - b%R(i + 1)))/(s_m - s_p)
3265 if (hyper_cleaning)
then
3268# 646 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3269 & eqn_idx%B%beg + norm_dir - 1) + (s_m*qr_prim_rsx_vf(j, k, l + 1, &
3270# 647 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3271 & eqn_idx%psi) - s_p*ql_prim_rsx_vf(j, k, l, eqn_idx%psi))/(s_m - s_p)
3272# 648 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3275# 650 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3276 & eqn_idx%psi) = (hyper_cleaning_speed**2*(s_m*b%R(norm_dir) &
3277 & - s_p*b%L(norm_dir)) + s_m*s_p*(ql_prim_rsx_vf(j, k, l, &
3278# 652 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3279 & eqn_idx%psi) - qr_prim_rsx_vf(j, k, l + 1, eqn_idx%psi)))/(s_m - s_p)
3280# 653 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3283 flux_rsx_vf(j, k, l, eqn_idx%B%beg + norm_dir - 1) = 0._wp
3284# 656 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3288# 659 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3291# 698 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3296# 701 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3297#if defined(MFC_OpenACC)
3298# 701 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3300# 701 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3301#elif defined(MFC_OpenMP)
3302# 701 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3304# 701 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3306# 701 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3308# 702 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3310# 704 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3313 if (weno_re_flux)
then
3315 & dql_prim_dx_vf(eqn_idx%mom%beg:eqn_idx%mom%end), &
3316 & dql_prim_dy_vf(eqn_idx%mom%beg:eqn_idx%mom%end), &
3317 & dql_prim_dz_vf(eqn_idx%mom%beg:eqn_idx%mom%end), &
3318 & qr_prim_vf(eqn_idx%mom%beg:eqn_idx%mom%end), &
3319 & dqr_prim_dx_vf(eqn_idx%mom%beg:eqn_idx%mom%end), &
3320 & dqr_prim_dy_vf(eqn_idx%mom%beg:eqn_idx%mom%end), &
3321 & dqr_prim_dz_vf(eqn_idx%mom%beg:eqn_idx%mom%end), flux_src_vf, q_prim_vf, &
3322 & norm_dir, ix, iy, iz)
3325 & dql_prim_dx_vf(eqn_idx%mom%beg:eqn_idx%mom%end), &
3326 & dql_prim_dy_vf(eqn_idx%mom%beg:eqn_idx%mom%end), &
3327 & dql_prim_dz_vf(eqn_idx%mom%beg:eqn_idx%mom%end), &
3328 & q_prim_vf(eqn_idx%mom%beg:eqn_idx%mom%end), &
3329 & dqr_prim_dx_vf(eqn_idx%mom%beg:eqn_idx%mom%end), &
3330 & dqr_prim_dy_vf(eqn_idx%mom%beg:eqn_idx%mom%end), &
3331 & dqr_prim_dz_vf(eqn_idx%mom%beg:eqn_idx%mom%end), flux_src_vf, q_prim_vf, &
3332 & norm_dir, ix, iy, iz)