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) :: vel_interface
438 logical :: need_nc_vel
439 real(wp) :: xi_M, xi_P
440 real(wp) :: ptilde_L, ptilde_R
441 real(wp) :: vel_L_rms, vel_R_rms, vel_avg_rms
442 real(wp) :: Ms_L, Ms_R, pres_SL, pres_SR
443 real(wp) :: alpha_L_sum, alpha_R_sum
451 integer :: i, j, k, l
452 integer :: Re_size_loc1, Re_size_loc2
456 & qr_prim_rsx_vf, dqr_prim_dx_vf, dqr_prim_dy_vf, dqr_prim_dz_vf, norm_dir, ix, iy, iz)
460 re_size_loc1 = re_size(1); re_size_loc2 = re_size(2)
462# 110 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
463# 111 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
464# 112 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
465 if (norm_dir == 1)
then
466# 113 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
468# 113 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
470# 113 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
471#if defined(MFC_OpenACC)
472# 113 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
474# 113 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
476# 113 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
478# 113 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
480# 113 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
482# 113 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
483#elif defined(MFC_OpenMP)
484# 113 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
486# 113 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
488# 113 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
490# 113 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
492# 113 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
494# 113 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
496# 113 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
498# 113 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
500# 113 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
502# 113 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
504# 123 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
506# 124 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
508# 125 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
510# 126 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
512# 126 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
513#if defined(MFC_OpenACC)
514# 126 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
516# 126 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
517#elif defined(MFC_OpenMP)
518# 126 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
520# 126 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
522# 127 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
523 do i = 1, eqn_idx%cont%end
524 alpha_rho_l(i) = ql_prim_rsx_vf(j, k, l, i)
525# 129 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
526 alpha_rho_r(i) = qr_prim_rsx_vf(j + 1, k, l, i)
527# 130 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
530 vel_l_rms = 0._wp; vel_r_rms = 0._wp
533# 134 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
534#if defined(MFC_OpenACC)
535# 134 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
537# 134 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
538#elif defined(MFC_OpenMP)
539# 134 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
541# 134 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
543# 135 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
545 vel_l(i) = ql_prim_rsx_vf(j, k, l, eqn_idx%cont%end + i)
546# 137 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
547 vel_r(i) = qr_prim_rsx_vf(j + 1, k, l, eqn_idx%cont%end + i)
548# 138 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
549 vel_l_rms = vel_l_rms + vel_l(i)**2._wp
550 vel_r_rms = vel_r_rms + vel_r(i)**2._wp
554# 142 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
555#if defined(MFC_OpenACC)
556# 142 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
558# 142 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
559#elif defined(MFC_OpenMP)
560# 142 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
562# 142 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
564# 143 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
566 alpha_l(i) = ql_prim_rsx_vf(j, k, l, eqn_idx%E + i)
567# 145 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
568 alpha_r(i) = qr_prim_rsx_vf(j + 1, k, l, eqn_idx%E + i)
569# 146 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
572 pres_l = ql_prim_rsx_vf(j, k, l, eqn_idx%E)
573# 149 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
574 pres_r = qr_prim_rsx_vf(j + 1, k, l, eqn_idx%E)
575# 150 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
581 b%L(2) = ql_prim_rsx_vf(j, k, l, eqn_idx%B%beg)
582# 156 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
583 b%R(2) = qr_prim_rsx_vf(j + 1, k, l, eqn_idx%B%beg)
584# 157 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
585 b%L(3) = ql_prim_rsx_vf(j, k, l, eqn_idx%B%beg + 1)
586# 158 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
587 b%R(3) = qr_prim_rsx_vf(j + 1, k, l, eqn_idx%B%beg + 1)
588# 159 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
590 b%L(1) = ql_prim_rsx_vf(j, k, l, eqn_idx%B%beg)
591# 161 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
592 b%R(1) = qr_prim_rsx_vf(j + 1, k, l, eqn_idx%B%beg)
593# 162 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
594 b%L(2) = ql_prim_rsx_vf(j, k, l, eqn_idx%B%beg + 1)
595# 163 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
596 b%R(2) = qr_prim_rsx_vf(j + 1, k, l, eqn_idx%B%beg + 1)
597# 164 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
598 b%L(3) = ql_prim_rsx_vf(j, k, l, eqn_idx%B%beg + 2)
599# 165 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
600 b%R(3) = qr_prim_rsx_vf(j + 1, k, l, eqn_idx%B%beg + 2)
601# 166 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
623# 186 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
624#if defined(MFC_OpenACC)
625# 186 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
627# 186 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
628#elif defined(MFC_OpenMP)
629# 186 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
631# 186 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
633# 187 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
635 alpha_rho_l(i) = max(0._wp, alpha_rho_l(i))
636 alpha_l(i) = min(max(0._wp, alpha_l(i)), 1._wp)
637 alpha_l_sum = alpha_l_sum + alpha_l(i)
638 alpha_rho_r(i) = max(0._wp, alpha_rho_r(i))
639 alpha_r(i) = min(max(0._wp, alpha_r(i)), 1._wp)
640 alpha_r_sum = alpha_r_sum + alpha_r(i)
643 alpha_l = alpha_l/max(alpha_l_sum,
sgm_eps)
644 alpha_r = alpha_r/max(alpha_r_sum,
sgm_eps)
659# 211 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
660#if defined(MFC_OpenACC)
661# 211 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
663# 211 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
664#elif defined(MFC_OpenMP)
665# 211 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
667# 211 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
669# 212 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
670 do i = eqn_idx%species%beg, eqn_idx%species%end
671 ys_l(i - eqn_idx%species%beg + 1) = ql_prim_rsx_vf(j, k, l, i)
672# 214 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
673 ys_r(i - eqn_idx%species%beg + 1) = qr_prim_rsx_vf(j + 1, k, l, i)
674# 215 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
677 call get_mixture_molecular_weight(ys_l, mw_l)
678 call get_mixture_molecular_weight(ys_r, mw_r)
679 xs_l(1:num_species) = ys_l(1:num_species)*mw_l/molecular_weights(:)
680 xs_r(1:num_species) = ys_r(1:num_species)*mw_r/molecular_weights(:)
682 r_gas_l = gas_constant/mw_l
683 r_gas_r = gas_constant/mw_r
684 t_l = pres_l/rho_l/r_gas_l
685 t_r = pres_r/rho_r/r_gas_r
687 call get_mixture_caloric_state(t_l, ys_l, cp_il, cp_l, cv_l, e_l)
688 call get_mixture_caloric_state(t_r, ys_r, cp_ir, cp_r, cv_r, e_r)
690 if (chem_params%gamma_method == 1)
then
692 gamma_il(1:num_species) = cp_il(1:num_species)/(cp_il(1:num_species) - 1.0_wp)
693 gamma_ir(1:num_species) = cp_ir(1:num_species)/(cp_ir(1:num_species) - 1.0_wp)
695 gamma_l = sum(xs_l(1:num_species)/(gamma_il(1:num_species) - 1.0_wp))
696 gamma_r = sum(xs_r(1:num_species)/(gamma_ir(1:num_species) - 1.0_wp))
697 else if (chem_params%gamma_method == 2)
then
700 gamma_l = 1.0_wp/(gamm_l - 1.0_wp)
702 gamma_r = 1.0_wp/(gamm_r - 1.0_wp)
705 e_l = rho_l*e_l + 5.e-1*rho_l*vel_l_rms
706 e_r = rho_r*e_r + 5.e-1*rho_r*vel_r_rms
707 h_l = (e_l + pres_l)/rho_l
708 h_r = (e_r + pres_r)/rho_r
709 else if (mhd .and. relativity)
then
710 ga%L = 1._wp/sqrt(1._wp - vel_l_rms)
711 ga%R = 1._wp/sqrt(1._wp - vel_r_rms)
712# 253 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
713 vdotb%L = vel_l(1)*b%L(1) + vel_l(2)*b%L(2) + vel_l(3)*b%L(3)
714 vdotb%R = vel_r(1)*b%R(1) + vel_r(2)*b%R(2) + vel_r(3)*b%R(3)
716 b4%L(1:3) = b%L(1:3)/ga%L + ga%L*vel_l(1:3)*vdotb%L
717 b4%R(1:3) = b%R(1:3)/ga%R + ga%R*vel_r(1:3)*vdotb%R
718 b2%L = b%L(1)**2._wp + b%L(2)**2._wp + b%L(3)**2._wp
719 b2%R = b%R(1)**2._wp + b%R(2)**2._wp + b%R(3)**2._wp
720# 261 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
722 pres_mag%L = 0.5_wp*(b2%L/ga%L**2._wp + vdotb%L**2._wp)
723 pres_mag%R = 0.5_wp*(b2%R/ga%R**2._wp + vdotb%R**2._wp)
727# 268 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
728 cm%L(1:3) = (rho_l*h_l*ga%L**2 + b2%L)*vel_l(1:3) - vdotb%L*b%L(1:3)
729 cm%R(1:3) = (rho_r*h_r*ga%R**2 + b2%R)*vel_r(1:3) - vdotb%R*b%R(1:3)
730# 271 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
732 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
733 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
734 else if (mhd .and. .not. relativity)
then
735# 276 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
736 pres_mag%L = 0.5_wp*(b%L(1)**2._wp + b%L(2)**2._wp + b%L(3)**2._wp)
737 pres_mag%R = 0.5_wp*(b%R(1)**2._wp + b%R(2)**2._wp + b%R(3)**2._wp)
738# 279 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
740 e_l = e_l + pres_mag%L
743 e_r = e_r + pres_mag%R
744 h_l = (e_l + pres_l - pres_mag%L)/rho_l
746 h_r = (e_r + pres_r - pres_mag%R)/rho_r
750 h_l = (e_l + pres_l)/rho_l
751 h_r = (e_r + pres_r)/rho_r
757 if (hypoelasticity)
then
759# 298 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
760#if defined(MFC_OpenACC)
761# 298 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
763# 298 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
764#elif defined(MFC_OpenMP)
765# 298 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
767# 298 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
769# 299 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
770 do i = 1, eqn_idx%stress%end - eqn_idx%stress%beg + 1
771 tau_e_l(i) = ql_prim_rsx_vf(j, k, l, eqn_idx%stress%beg - 1 + i)
772# 301 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
773 tau_e_r(i) = qr_prim_rsx_vf(j + 1, k, l, eqn_idx%stress%beg - 1 + i)
774# 302 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
777 damage_l = 0._wp; damage_r = 0._wp
778 if (cont_damage)
then
779 damage_l = ql_prim_rsx_vf(j, k, l, eqn_idx%damage)
780# 307 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
781 damage_r = qr_prim_rsx_vf(j + 1, k, l, eqn_idx%damage)
782# 308 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
786 & tau_e_l, tau_e_r, g_l, g_r, e_l, e_r)
792 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, &
793 & rho_avg, vel_avg_rms, h_avg, gamma_avg, qv_avg)
795 r_species(1:num_species) = gas_constant/molecular_weights
796 call get_species_enthalpies_rt(t_l, h_il)
797 call get_species_enthalpies_rt(t_r, h_ir)
798 h_il(1:num_species) = h_il(1:num_species)*r_species(1:num_species)*t_l
799 h_ir(1:num_species) = h_ir(1:num_species)*r_species(1:num_species)*t_r
801 & h_ir, cp_il, cp_ir, vel_avg_rms, gamma_avg, &
812 & h_avg, c_sum_yi_phi, alpha_r, c_avg, alpha_rho_r)
825# 349 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
826#if defined(MFC_OpenACC)
827# 349 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
829# 349 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
830#elif defined(MFC_OpenMP)
831# 349 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
833# 349 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
835# 350 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
837 re_avg_rsx_vf(j, k, l, i) = 2._wp/(1._wp/re_l(i) + 1._wp/re_r(i))
838# 352 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
846 s_l = min(vel_l(
dir_idx(1)) - c_fast%L, vel_r(
dir_idx(1)) - c_fast%R)
847 s_r = max(vel_r(
dir_idx(1)) + c_fast%R, vel_l(
dir_idx(1)) + c_fast%L)
848 else if (hypoelasticity)
then
861 if (hyper_cleaning)
then
863 s_l = min(s_l, -hyper_cleaning_speed)
864 s_r = max(s_r, hyper_cleaning_speed)
867 s_s = (pres_r - pres_l + rho_l*vel_l(
dir_idx(1))*(s_l - vel_l(
dir_idx(1))) &
869 & - rho_r*(s_r - vel_r(
dir_idx(1))))
871 pres_sl = 5.e-1_wp*(pres_l + pres_r + rho_avg*c_avg*(vel_l(
dir_idx(1)) - vel_r(
dir_idx(1))))
885 s_l = vel_l(
dir_idx(1)) - c_l*ms_l
886 s_r = vel_r(
dir_idx(1)) + c_r*ms_r
888 s_s = 5.e-1_wp*((vel_l(
dir_idx(1)) + vel_r(
dir_idx(1))) + (pres_l - pres_r)/(rho_avg*c_avg))
891 s_m = min(0._wp, s_l); s_p = max(0._wp, s_r)
893 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, &
895 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, &
902 if (.not. relativity)
then
904# 416 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
905#if defined(MFC_OpenACC)
906# 416 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
908# 416 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
909#elif defined(MFC_OpenMP)
910# 416 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
912# 416 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
914# 417 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
915 do i = 1, eqn_idx%cont%end
917# 419 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
918 & i) = (s_m*alpha_rho_r(i)*vel_r(norm_dir) - s_p*alpha_rho_l(i)*vel_l(norm_dir) &
919 & + s_m*s_p*(alpha_rho_l(i) - alpha_rho_r(i)))/(s_m - s_p)
921 else if (relativity)
then
923# 423 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
924#if defined(MFC_OpenACC)
925# 423 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
927# 423 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
928#elif defined(MFC_OpenMP)
929# 423 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
931# 423 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
933# 424 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
934 do i = 1, eqn_idx%cont%end
936# 426 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
937 & i) = (s_m*ga%R*alpha_rho_r(i)*vel_r(norm_dir) - s_p*ga%L*alpha_rho_l(i) &
938 & *vel_l(norm_dir) + s_m*s_p*(ga%L*alpha_rho_l(i) - ga%R*alpha_rho_r(i)))/(s_m &
944 if (mhd .and. (.not. relativity))
then
946# 434 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
947#if defined(MFC_OpenACC)
948# 434 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
950# 434 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
951#elif defined(MFC_OpenMP)
952# 434 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
954# 434 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
956# 435 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
959# 437 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
961# 438 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
963# 439 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
964 & eqn_idx%cont%end + i) = (s_m*(rho_r*vel_r(i)*vel_r(norm_dir) - b%R(i) &
965 & *b%R(norm_dir) +
dir_flg(i)*(pres_r + pres_mag%R)) - s_p*(rho_l*vel_l(i) &
966 & *vel_l(norm_dir) - b%L(i)*b%L(norm_dir) +
dir_flg(i)*(pres_l + pres_mag%L)) &
967 & + s_m*s_p*(rho_l*vel_l(i) - rho_r*vel_r(i)))/(s_m - s_p)
969 else if (mhd .and. relativity)
then
971# 445 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
972#if defined(MFC_OpenACC)
973# 445 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
975# 445 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
976#elif defined(MFC_OpenMP)
977# 445 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
979# 445 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
981# 446 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
984# 448 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
986# 449 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
988# 450 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
989 & eqn_idx%cont%end + i) = (s_m*(cm%R(i)*vel_r(norm_dir) - b4%R(i) &
990 & /ga%R*b%R(norm_dir) +
dir_flg(i)*(pres_r + pres_mag%R)) - s_p*(cm%L(i) &
991 & *vel_l(norm_dir) - b4%L(i)/ga%L*b%L(norm_dir) +
dir_flg(i)*(pres_l + pres_mag%L) &
992 & ) + s_m*s_p*(cm%L(i) - cm%R(i)))/(s_m - s_p)
994 else if (bubbles_euler)
then
996# 456 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
997#if defined(MFC_OpenACC)
998# 456 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1000# 456 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1001#elif defined(MFC_OpenMP)
1002# 456 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1004# 456 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1006# 457 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1009# 459 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1013 & + s_m*s_p*(rho_l*vel_l(
dir_idx(i)) - rho_r*vel_r(
dir_idx(i))))/(s_m - s_p) &
1014 & + (s_m/s_l)*(s_p/s_r)*pcorr*(vel_r(
dir_idx(i)) - vel_l(
dir_idx(i)))
1016 else if (hypoelasticity)
then
1018# 466 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1019#if defined(MFC_OpenACC)
1020# 466 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1022# 466 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1023#elif defined(MFC_OpenMP)
1024# 466 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1026# 466 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1028# 467 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1031# 469 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1036 & - rho_r*vel_r(
dir_idx(i))))/(s_m - s_p)
1040# 476 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1041#if defined(MFC_OpenACC)
1042# 476 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1044# 476 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1045#elif defined(MFC_OpenMP)
1046# 476 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1048# 476 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1050# 477 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1053# 479 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1057 & - rho_r*vel_r(
dir_idx(i))))/(s_m - s_p) + (s_m/s_l)*(s_p/s_r) &
1063 if (mhd .and. (.not. relativity))
then
1065# 490 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1066# 491 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1068# 492 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1069 & eqn_idx%E) = (s_m*(vel_r(norm_dir)*(e_r + pres_r + pres_mag%R) - b%R(norm_dir) &
1070 & *(vel_r(1)*b%R(1) + vel_r(2)*b%R(2) + vel_r(3)*b%R(3))) - s_p*(vel_l(norm_dir) &
1071 & *(e_l + pres_l + pres_mag%L) - b%L(norm_dir)*(vel_l(1)*b%L(1) + vel_l(2)*b%L(2) &
1072 & + vel_l(3)*b%L(3))) + s_m*s_p*(e_l - e_r))/(s_m - s_p)
1073# 497 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1074 else if (mhd .and. relativity)
then
1076# 499 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1078# 500 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1079 & eqn_idx%E) = (s_m*(cm%R(norm_dir) - ga%R*alpha_rho_r(1)*vel_r(norm_dir)) &
1080 & - s_p*(cm%L(norm_dir) - ga%L*alpha_rho_l(1)*vel_l(norm_dir)) + s_m*s_p*(e_l - e_r)) &
1082 else if (bubbles_euler)
then
1084# 505 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1085 & eqn_idx%E) = (s_m*vel_r(
dir_idx(1))*(e_r + pres_r - ptilde_r) - s_p*vel_l(
dir_idx(1) &
1086 & )*(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) &
1087 & *pcorr*(vel_r_rms - vel_l_rms)/2._wp
1088 else if (hypoelasticity)
then
1089 flux_tau_l = 0._wp; flux_tau_r = 0._wp
1091# 510 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1092#if defined(MFC_OpenACC)
1093# 510 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1095# 510 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1096#elif defined(MFC_OpenMP)
1097# 510 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1099# 510 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1101# 511 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1107# 516 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1108 & eqn_idx%E) = (s_m*(vel_r(
dir_idx(1))*(e_r + pres_r) - flux_tau_r) &
1109 & - s_p*(vel_l(
dir_idx(1))*(e_l + pres_l) - flux_tau_l) + s_m*s_p*(e_l - e_r))/(s_m &
1113# 521 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1114 & eqn_idx%E) = (s_m*vel_r(
dir_idx(1))*(e_r + pres_r) - s_p*vel_l(
dir_idx(1))*(e_l &
1115 & + 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 &
1116 & - vel_l_rms)/2._wp
1120 if (hypoelasticity)
then
1121 do i = 1, eqn_idx%stress%end - eqn_idx%stress%beg + 1
1123# 530 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1124 & eqn_idx%stress%beg - 1 + i) = (s_m*(rho_r*vel_r(
dir_idx(1))*tau_e_r(i)) &
1125 & - s_p*(rho_l*vel_l(
dir_idx(1))*tau_e_l(i)) + s_m*s_p*(rho_l*tau_e_l(i) &
1126 & - rho_r*tau_e_r(i)))/(s_m - s_p)
1131 if (cont_damage)
then
1132 solid_partial_density_l = 0._wp; solid_partial_density_r = 0._wp
1134# 539 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1135#if defined(MFC_OpenACC)
1136# 539 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1138# 539 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1139#elif defined(MFC_OpenMP)
1140# 539 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1142# 539 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1144# 540 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1145 do i = 1, num_fluids
1147 solid_partial_density_l = solid_partial_density_l + alpha_rho_l(i)
1148 solid_partial_density_r = solid_partial_density_r + alpha_rho_r(i)
1152# 547 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1153 & eqn_idx%damage) = (s_m*(solid_partial_density_r*vel_r(
dir_idx(1))*damage_r) &
1154 & - s_p*(solid_partial_density_l*vel_l(
dir_idx(1))*damage_l) &
1155 & + s_m*s_p*(solid_partial_density_l*damage_l - solid_partial_density_r*damage_r)) &
1160 if (need_nc_vel .or. viscous)
then
1162# 555 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1163#if defined(MFC_OpenACC)
1164# 555 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1166# 555 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1167#elif defined(MFC_OpenMP)
1168# 555 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1170# 555 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1172# 556 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1174 if (0._wp <= s_l)
then
1175 vel_interface = vel_l(
dir_idx(i))
1176 else if (s_r <= 0._wp)
then
1177 vel_interface = vel_r(
dir_idx(i))
1179 vel_interface = (s_r*vel_l(
dir_idx(i)) - s_l*vel_r(
dir_idx(i)))/(s_r - s_l)
1182# 565 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1184# 566 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1188 if (.not. hll_u_interface)
then
1192# 572 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1193#if defined(MFC_OpenACC)
1194# 572 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1196# 572 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1197#elif defined(MFC_OpenMP)
1198# 572 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1200# 572 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1202# 573 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1203 do i = eqn_idx%adv%beg, eqn_idx%adv%end
1204 flux_rsx_vf(j, k, l, i) = (ql_prim_rsx_vf(j, k, l, i) - qr_prim_rsx_vf(j + 1, k, l, &
1205# 575 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1206 & i))*s_m*s_p/(s_m - s_p)
1208# 577 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1209 & i) - s_p*ql_prim_rsx_vf(j, k, l, i))/(s_m - s_p)
1210# 578 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1214# 580 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1215#if defined(MFC_OpenACC)
1216# 580 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1218# 580 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1219#elif defined(MFC_OpenMP)
1220# 580 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1222# 580 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1224# 581 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1225 do i = eqn_idx%adv%beg, eqn_idx%adv%end
1226 if (0._wp <= s_l)
then
1228# 584 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1229 else if (s_r <= 0._wp)
then
1231# 586 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1233 flux_rsx_vf(j, k, l, i) = (s_r*ql_prim_rsx_vf(j, k, l, &
1234# 588 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1235 & i)*vel_l(
dir_idx(1)) - s_l*qr_prim_rsx_vf(j + 1, k, l, &
1236# 589 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1237 & i)*vel_r(
dir_idx(1)) + s_l*s_r*(qr_prim_rsx_vf(j + 1, k, l, &
1238# 590 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1239 & i) - ql_prim_rsx_vf(j, k, l, i)))/(s_r - s_l)
1240# 591 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1243 if (0._wp <= s_l)
then
1245# 595 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1246 else if (s_r <= 0._wp)
then
1248# 597 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1251# 599 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1252 & eqn_idx%adv%beg) = (s_r*vel_l(
dir_idx(1)) - s_l*vel_r(
dir_idx(1)))/(s_r - s_l)
1256 if (bubbles_euler)
then
1258 if (num_fluids > 1)
then
1260# 607 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1266# 611 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1267#if defined(MFC_OpenACC)
1268# 611 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1270# 611 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1271#elif defined(MFC_OpenMP)
1272# 611 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1274# 611 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1276# 612 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1277 do i = eqn_idx%species%beg, eqn_idx%species%end
1278 y_l = ql_prim_rsx_vf(j, k, l, i)
1279# 614 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1280 y_r = qr_prim_rsx_vf(j + 1, k, l, i)
1281# 615 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1284# 617 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1285 & i) = (s_m*y_r*rho_r*vel_r(
dir_idx(1)) - s_p*y_l*rho_l*vel_l(
dir_idx(1)) &
1286 & + s_m*s_p*(y_l*rho_l - y_r*rho_r))/(s_m - s_p)
1288# 620 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1297# 627 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1298#if defined(MFC_OpenACC)
1299# 627 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1301# 627 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1302#elif defined(MFC_OpenMP)
1303# 627 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1305# 627 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1307# 628 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1310 & eqn_idx%B%beg + i) = (s_m*(vel_r(1)*b%R(2 + i) - vel_r(2 + i)*bx0) &
1311 & - s_p*(vel_l(1)*b%L(2 + i) - vel_l(2 + i)*bx0) + s_m*s_p*(b%L(2 + i) &
1312 & - b%R(2 + i)))/(s_m - s_p)
1316# 636 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1318# 637 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1320# 638 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1322# 638 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1323#if defined(MFC_OpenACC)
1324# 638 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1326# 638 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1327#elif defined(MFC_OpenMP)
1328# 638 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1330# 638 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1332# 639 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1335# 641 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1336 & eqn_idx%B%beg + i) = (s_m*(vel_r(
dir_idx(1))*b%R(i + 1) - vel_r(i + 1) &
1337 & *b%R(norm_dir)) - s_p*(vel_l(
dir_idx(1))*b%L(i + 1) - vel_l(i + 1) &
1338 & *b%L(norm_dir)) + s_m*s_p*(b%L(i + 1) - b%R(i + 1)))/(s_m - s_p)
1341 if (hyper_cleaning)
then
1344# 649 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1345 & eqn_idx%B%beg + norm_dir - 1) + (s_m*qr_prim_rsx_vf(j + 1, k, l, &
1346# 650 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1347 & eqn_idx%psi) - s_p*ql_prim_rsx_vf(j, k, l, eqn_idx%psi))/(s_m - s_p)
1348# 651 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1351# 653 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1352 & eqn_idx%psi) = (hyper_cleaning_speed**2*(s_m*b%R(norm_dir) &
1353 & - s_p*b%L(norm_dir)) + s_m*s_p*(ql_prim_rsx_vf(j, k, l, &
1354# 655 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1355 & eqn_idx%psi) - qr_prim_rsx_vf(j + 1, k, l, eqn_idx%psi)))/(s_m - s_p)
1356# 656 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1359 flux_rsx_vf(j, k, l, eqn_idx%B%beg + norm_dir - 1) = 0._wp
1360# 659 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1364# 662 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1367# 701 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1368# 712 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1373# 715 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1374#if defined(MFC_OpenACC)
1375# 715 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1377# 715 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1378#elif defined(MFC_OpenMP)
1379# 715 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1381# 715 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1383# 715 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1385# 716 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1387# 110 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1388# 111 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1389# 112 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1390 if (norm_dir == 2)
then
1391# 113 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1393# 113 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1395# 113 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1396#if defined(MFC_OpenACC)
1397# 113 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1399# 113 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1401# 113 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1403# 113 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1405# 113 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1407# 113 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1408#elif defined(MFC_OpenMP)
1409# 113 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1411# 113 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1413# 113 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1415# 113 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1417# 113 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1419# 113 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1421# 113 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1423# 113 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1425# 113 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1427# 113 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1429# 123 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1431# 124 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1433# 125 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1435# 126 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1437# 126 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1438#if defined(MFC_OpenACC)
1439# 126 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1441# 126 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1442#elif defined(MFC_OpenMP)
1443# 126 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1445# 126 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1447# 127 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1448 do i = 1, eqn_idx%cont%end
1449 alpha_rho_l(i) = ql_prim_rsx_vf(j, k, l, i)
1450# 129 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1451 alpha_rho_r(i) = qr_prim_rsx_vf(j, k + 1, l, i)
1452# 130 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1455 vel_l_rms = 0._wp; vel_r_rms = 0._wp
1458# 134 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1459#if defined(MFC_OpenACC)
1460# 134 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1462# 134 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1463#elif defined(MFC_OpenMP)
1464# 134 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1466# 134 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1468# 135 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1470 vel_l(i) = ql_prim_rsx_vf(j, k, l, eqn_idx%cont%end + i)
1471# 137 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1472 vel_r(i) = qr_prim_rsx_vf(j, k + 1, l, eqn_idx%cont%end + i)
1473# 138 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1474 vel_l_rms = vel_l_rms + vel_l(i)**2._wp
1475 vel_r_rms = vel_r_rms + vel_r(i)**2._wp
1479# 142 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1480#if defined(MFC_OpenACC)
1481# 142 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1483# 142 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1484#elif defined(MFC_OpenMP)
1485# 142 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1487# 142 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1489# 143 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1490 do i = 1, num_fluids
1491 alpha_l(i) = ql_prim_rsx_vf(j, k, l, eqn_idx%E + i)
1492# 145 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1493 alpha_r(i) = qr_prim_rsx_vf(j, k + 1, l, eqn_idx%E + i)
1494# 146 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1497 pres_l = ql_prim_rsx_vf(j, k, l, eqn_idx%E)
1498# 149 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1499 pres_r = qr_prim_rsx_vf(j, k + 1, l, eqn_idx%E)
1500# 150 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1506 b%L(2) = ql_prim_rsx_vf(j, k, l, eqn_idx%B%beg)
1507# 156 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1508 b%R(2) = qr_prim_rsx_vf(j, k + 1, l, eqn_idx%B%beg)
1509# 157 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1510 b%L(3) = ql_prim_rsx_vf(j, k, l, eqn_idx%B%beg + 1)
1511# 158 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1512 b%R(3) = qr_prim_rsx_vf(j, k + 1, l, eqn_idx%B%beg + 1)
1513# 159 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1515 b%L(1) = ql_prim_rsx_vf(j, k, l, eqn_idx%B%beg)
1516# 161 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1517 b%R(1) = qr_prim_rsx_vf(j, k + 1, l, eqn_idx%B%beg)
1518# 162 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1519 b%L(2) = ql_prim_rsx_vf(j, k, l, eqn_idx%B%beg + 1)
1520# 163 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1521 b%R(2) = qr_prim_rsx_vf(j, k + 1, l, eqn_idx%B%beg + 1)
1522# 164 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1523 b%L(3) = ql_prim_rsx_vf(j, k, l, eqn_idx%B%beg + 2)
1524# 165 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1525 b%R(3) = qr_prim_rsx_vf(j, k + 1, l, eqn_idx%B%beg + 2)
1526# 166 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1548# 186 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1549#if defined(MFC_OpenACC)
1550# 186 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1552# 186 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1553#elif defined(MFC_OpenMP)
1554# 186 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1556# 186 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1558# 187 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1559 do i = 1, num_fluids
1560 alpha_rho_l(i) = max(0._wp, alpha_rho_l(i))
1561 alpha_l(i) = min(max(0._wp, alpha_l(i)), 1._wp)
1562 alpha_l_sum = alpha_l_sum + alpha_l(i)
1563 alpha_rho_r(i) = max(0._wp, alpha_rho_r(i))
1564 alpha_r(i) = min(max(0._wp, alpha_r(i)), 1._wp)
1565 alpha_r_sum = alpha_r_sum + alpha_r(i)
1568 alpha_l = alpha_l/max(alpha_l_sum,
sgm_eps)
1569 alpha_r = alpha_r/max(alpha_r_sum,
sgm_eps)
1582 c_sum_yi_phi = 0._wp
1584# 211 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1585#if defined(MFC_OpenACC)
1586# 211 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1588# 211 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1589#elif defined(MFC_OpenMP)
1590# 211 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1592# 211 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1594# 212 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1595 do i = eqn_idx%species%beg, eqn_idx%species%end
1596 ys_l(i - eqn_idx%species%beg + 1) = ql_prim_rsx_vf(j, k, l, i)
1597# 214 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1598 ys_r(i - eqn_idx%species%beg + 1) = qr_prim_rsx_vf(j, k + 1, l, i)
1599# 215 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1602 call get_mixture_molecular_weight(ys_l, mw_l)
1603 call get_mixture_molecular_weight(ys_r, mw_r)
1604 xs_l(1:num_species) = ys_l(1:num_species)*mw_l/molecular_weights(:)
1605 xs_r(1:num_species) = ys_r(1:num_species)*mw_r/molecular_weights(:)
1607 r_gas_l = gas_constant/mw_l
1608 r_gas_r = gas_constant/mw_r
1609 t_l = pres_l/rho_l/r_gas_l
1610 t_r = pres_r/rho_r/r_gas_r
1612 call get_mixture_caloric_state(t_l, ys_l, cp_il, cp_l, cv_l, e_l)
1613 call get_mixture_caloric_state(t_r, ys_r, cp_ir, cp_r, cv_r, e_r)
1615 if (chem_params%gamma_method == 1)
then
1617 gamma_il(1:num_species) = cp_il(1:num_species)/(cp_il(1:num_species) - 1.0_wp)
1618 gamma_ir(1:num_species) = cp_ir(1:num_species)/(cp_ir(1:num_species) - 1.0_wp)
1620 gamma_l = sum(xs_l(1:num_species)/(gamma_il(1:num_species) - 1.0_wp))
1621 gamma_r = sum(xs_r(1:num_species)/(gamma_ir(1:num_species) - 1.0_wp))
1622 else if (chem_params%gamma_method == 2)
then
1625 gamma_l = 1.0_wp/(gamm_l - 1.0_wp)
1627 gamma_r = 1.0_wp/(gamm_r - 1.0_wp)
1630 e_l = rho_l*e_l + 5.e-1*rho_l*vel_l_rms
1631 e_r = rho_r*e_r + 5.e-1*rho_r*vel_r_rms
1632 h_l = (e_l + pres_l)/rho_l
1633 h_r = (e_r + pres_r)/rho_r
1634 else if (mhd .and. relativity)
then
1635 ga%L = 1._wp/sqrt(1._wp - vel_l_rms)
1636 ga%R = 1._wp/sqrt(1._wp - vel_r_rms)
1637# 253 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1638 vdotb%L = vel_l(1)*b%L(1) + vel_l(2)*b%L(2) + vel_l(3)*b%L(3)
1639 vdotb%R = vel_r(1)*b%R(1) + vel_r(2)*b%R(2) + vel_r(3)*b%R(3)
1641 b4%L(1:3) = b%L(1:3)/ga%L + ga%L*vel_l(1:3)*vdotb%L
1642 b4%R(1:3) = b%R(1:3)/ga%R + ga%R*vel_r(1:3)*vdotb%R
1643 b2%L = b%L(1)**2._wp + b%L(2)**2._wp + b%L(3)**2._wp
1644 b2%R = b%R(1)**2._wp + b%R(2)**2._wp + b%R(3)**2._wp
1645# 261 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1647 pres_mag%L = 0.5_wp*(b2%L/ga%L**2._wp + vdotb%L**2._wp)
1648 pres_mag%R = 0.5_wp*(b2%R/ga%R**2._wp + vdotb%R**2._wp)
1652# 268 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1653 cm%L(1:3) = (rho_l*h_l*ga%L**2 + b2%L)*vel_l(1:3) - vdotb%L*b%L(1:3)
1654 cm%R(1:3) = (rho_r*h_r*ga%R**2 + b2%R)*vel_r(1:3) - vdotb%R*b%R(1:3)
1655# 271 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1657 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
1658 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
1659 else if (mhd .and. .not. relativity)
then
1660# 276 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1661 pres_mag%L = 0.5_wp*(b%L(1)**2._wp + b%L(2)**2._wp + b%L(3)**2._wp)
1662 pres_mag%R = 0.5_wp*(b%R(1)**2._wp + b%R(2)**2._wp + b%R(3)**2._wp)
1663# 279 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1665 e_l = e_l + pres_mag%L
1668 e_r = e_r + pres_mag%R
1669 h_l = (e_l + pres_l - pres_mag%L)/rho_l
1671 h_r = (e_r + pres_r - pres_mag%R)/rho_r
1675 h_l = (e_l + pres_l)/rho_l
1676 h_r = (e_r + pres_r)/rho_r
1682 if (hypoelasticity)
then
1684# 298 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1685#if defined(MFC_OpenACC)
1686# 298 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1688# 298 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1689#elif defined(MFC_OpenMP)
1690# 298 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1692# 298 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1694# 299 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1695 do i = 1, eqn_idx%stress%end - eqn_idx%stress%beg + 1
1696 tau_e_l(i) = ql_prim_rsx_vf(j, k, l, eqn_idx%stress%beg - 1 + i)
1697# 301 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1698 tau_e_r(i) = qr_prim_rsx_vf(j, k + 1, l, eqn_idx%stress%beg - 1 + i)
1699# 302 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1702 damage_l = 0._wp; damage_r = 0._wp
1703 if (cont_damage)
then
1704 damage_l = ql_prim_rsx_vf(j, k, l, eqn_idx%damage)
1705# 307 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1706 damage_r = qr_prim_rsx_vf(j, k + 1, l, eqn_idx%damage)
1707# 308 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1711 & tau_e_l, tau_e_r, g_l, g_r, e_l, e_r)
1717 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, &
1718 & rho_avg, vel_avg_rms, h_avg, gamma_avg, qv_avg)
1720 r_species(1:num_species) = gas_constant/molecular_weights
1721 call get_species_enthalpies_rt(t_l, h_il)
1722 call get_species_enthalpies_rt(t_r, h_ir)
1723 h_il(1:num_species) = h_il(1:num_species)*r_species(1:num_species)*t_l
1724 h_ir(1:num_species) = h_ir(1:num_species)*r_species(1:num_species)*t_r
1726 & h_ir, cp_il, cp_ir, vel_avg_rms, gamma_avg, &
1737 & h_avg, c_sum_yi_phi, alpha_r, c_avg, alpha_rho_r)
1750# 349 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1751#if defined(MFC_OpenACC)
1752# 349 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1754# 349 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1755#elif defined(MFC_OpenMP)
1756# 349 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1758# 349 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1760# 350 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1762 re_avg_rsx_vf(j, k, l, i) = 2._wp/(1._wp/re_l(i) + 1._wp/re_r(i))
1763# 352 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1771 s_l = min(vel_l(
dir_idx(1)) - c_fast%L, vel_r(
dir_idx(1)) - c_fast%R)
1772 s_r = max(vel_r(
dir_idx(1)) + c_fast%R, vel_l(
dir_idx(1)) + c_fast%L)
1773 else if (hypoelasticity)
then
1786 if (hyper_cleaning)
then
1788 s_l = min(s_l, -hyper_cleaning_speed)
1789 s_r = max(s_r, hyper_cleaning_speed)
1792 s_s = (pres_r - pres_l + rho_l*vel_l(
dir_idx(1))*(s_l - vel_l(
dir_idx(1))) &
1794 & - rho_r*(s_r - vel_r(
dir_idx(1))))
1796 pres_sl = 5.e-1_wp*(pres_l + pres_r + rho_avg*c_avg*(vel_l(
dir_idx(1)) - vel_r(
dir_idx(1))))
1810 s_l = vel_l(
dir_idx(1)) - c_l*ms_l
1811 s_r = vel_r(
dir_idx(1)) + c_r*ms_r
1813 s_s = 5.e-1_wp*((vel_l(
dir_idx(1)) + vel_r(
dir_idx(1))) + (pres_l - pres_r)/(rho_avg*c_avg))
1816 s_m = min(0._wp, s_l); s_p = max(0._wp, s_r)
1818 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, &
1820 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, &
1827 if (.not. relativity)
then
1829# 416 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1830#if defined(MFC_OpenACC)
1831# 416 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1833# 416 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1834#elif defined(MFC_OpenMP)
1835# 416 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1837# 416 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1839# 417 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1840 do i = 1, eqn_idx%cont%end
1842# 419 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1843 & i) = (s_m*alpha_rho_r(i)*vel_r(norm_dir) - s_p*alpha_rho_l(i)*vel_l(norm_dir) &
1844 & + s_m*s_p*(alpha_rho_l(i) - alpha_rho_r(i)))/(s_m - s_p)
1846 else if (relativity)
then
1848# 423 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1849#if defined(MFC_OpenACC)
1850# 423 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1852# 423 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1853#elif defined(MFC_OpenMP)
1854# 423 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1856# 423 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1858# 424 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1859 do i = 1, eqn_idx%cont%end
1861# 426 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1862 & i) = (s_m*ga%R*alpha_rho_r(i)*vel_r(norm_dir) - s_p*ga%L*alpha_rho_l(i) &
1863 & *vel_l(norm_dir) + s_m*s_p*(ga%L*alpha_rho_l(i) - ga%R*alpha_rho_r(i)))/(s_m &
1869 if (mhd .and. (.not. relativity))
then
1871# 434 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1872#if defined(MFC_OpenACC)
1873# 434 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1875# 434 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1876#elif defined(MFC_OpenMP)
1877# 434 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1879# 434 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1881# 435 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1884# 437 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1886# 438 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1888# 439 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1889 & eqn_idx%cont%end + i) = (s_m*(rho_r*vel_r(i)*vel_r(norm_dir) - b%R(i) &
1890 & *b%R(norm_dir) +
dir_flg(i)*(pres_r + pres_mag%R)) - s_p*(rho_l*vel_l(i) &
1891 & *vel_l(norm_dir) - b%L(i)*b%L(norm_dir) +
dir_flg(i)*(pres_l + pres_mag%L)) &
1892 & + s_m*s_p*(rho_l*vel_l(i) - rho_r*vel_r(i)))/(s_m - s_p)
1894 else if (mhd .and. relativity)
then
1896# 445 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1897#if defined(MFC_OpenACC)
1898# 445 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1900# 445 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1901#elif defined(MFC_OpenMP)
1902# 445 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1904# 445 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1906# 446 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1909# 448 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1911# 449 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1913# 450 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1914 & eqn_idx%cont%end + i) = (s_m*(cm%R(i)*vel_r(norm_dir) - b4%R(i) &
1915 & /ga%R*b%R(norm_dir) +
dir_flg(i)*(pres_r + pres_mag%R)) - s_p*(cm%L(i) &
1916 & *vel_l(norm_dir) - b4%L(i)/ga%L*b%L(norm_dir) +
dir_flg(i)*(pres_l + pres_mag%L) &
1917 & ) + s_m*s_p*(cm%L(i) - cm%R(i)))/(s_m - s_p)
1919 else if (bubbles_euler)
then
1921# 456 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1922#if defined(MFC_OpenACC)
1923# 456 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1925# 456 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1926#elif defined(MFC_OpenMP)
1927# 456 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1929# 456 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1931# 457 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1934# 459 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1938 & + s_m*s_p*(rho_l*vel_l(
dir_idx(i)) - rho_r*vel_r(
dir_idx(i))))/(s_m - s_p) &
1939 & + (s_m/s_l)*(s_p/s_r)*pcorr*(vel_r(
dir_idx(i)) - vel_l(
dir_idx(i)))
1941 else if (hypoelasticity)
then
1943# 466 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1944#if defined(MFC_OpenACC)
1945# 466 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1947# 466 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1948#elif defined(MFC_OpenMP)
1949# 466 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1951# 466 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1953# 467 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1956# 469 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1961 & - rho_r*vel_r(
dir_idx(i))))/(s_m - s_p)
1965# 476 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1966#if defined(MFC_OpenACC)
1967# 476 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1969# 476 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1970#elif defined(MFC_OpenMP)
1971# 476 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1973# 476 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1975# 477 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1978# 479 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1982 & - rho_r*vel_r(
dir_idx(i))))/(s_m - s_p) + (s_m/s_l)*(s_p/s_r) &
1988 if (mhd .and. (.not. relativity))
then
1990# 490 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1991# 491 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1993# 492 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1994 & eqn_idx%E) = (s_m*(vel_r(norm_dir)*(e_r + pres_r + pres_mag%R) - b%R(norm_dir) &
1995 & *(vel_r(1)*b%R(1) + vel_r(2)*b%R(2) + vel_r(3)*b%R(3))) - s_p*(vel_l(norm_dir) &
1996 & *(e_l + pres_l + pres_mag%L) - b%L(norm_dir)*(vel_l(1)*b%L(1) + vel_l(2)*b%L(2) &
1997 & + vel_l(3)*b%L(3))) + s_m*s_p*(e_l - e_r))/(s_m - s_p)
1998# 497 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
1999 else if (mhd .and. relativity)
then
2001# 499 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2003# 500 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2004 & eqn_idx%E) = (s_m*(cm%R(norm_dir) - ga%R*alpha_rho_r(1)*vel_r(norm_dir)) &
2005 & - s_p*(cm%L(norm_dir) - ga%L*alpha_rho_l(1)*vel_l(norm_dir)) + s_m*s_p*(e_l - e_r)) &
2007 else if (bubbles_euler)
then
2009# 505 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2010 & eqn_idx%E) = (s_m*vel_r(
dir_idx(1))*(e_r + pres_r - ptilde_r) - s_p*vel_l(
dir_idx(1) &
2011 & )*(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) &
2012 & *pcorr*(vel_r_rms - vel_l_rms)/2._wp
2013 else if (hypoelasticity)
then
2014 flux_tau_l = 0._wp; flux_tau_r = 0._wp
2016# 510 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2017#if defined(MFC_OpenACC)
2018# 510 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2020# 510 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2021#elif defined(MFC_OpenMP)
2022# 510 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2024# 510 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2026# 511 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2032# 516 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2033 & eqn_idx%E) = (s_m*(vel_r(
dir_idx(1))*(e_r + pres_r) - flux_tau_r) &
2034 & - s_p*(vel_l(
dir_idx(1))*(e_l + pres_l) - flux_tau_l) + s_m*s_p*(e_l - e_r))/(s_m &
2038# 521 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2039 & eqn_idx%E) = (s_m*vel_r(
dir_idx(1))*(e_r + pres_r) - s_p*vel_l(
dir_idx(1))*(e_l &
2040 & + 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 &
2041 & - vel_l_rms)/2._wp
2045 if (hypoelasticity)
then
2046 do i = 1, eqn_idx%stress%end - eqn_idx%stress%beg + 1
2048# 530 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2049 & eqn_idx%stress%beg - 1 + i) = (s_m*(rho_r*vel_r(
dir_idx(1))*tau_e_r(i)) &
2050 & - s_p*(rho_l*vel_l(
dir_idx(1))*tau_e_l(i)) + s_m*s_p*(rho_l*tau_e_l(i) &
2051 & - rho_r*tau_e_r(i)))/(s_m - s_p)
2056 if (cont_damage)
then
2057 solid_partial_density_l = 0._wp; solid_partial_density_r = 0._wp
2059# 539 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2060#if defined(MFC_OpenACC)
2061# 539 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2063# 539 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2064#elif defined(MFC_OpenMP)
2065# 539 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2067# 539 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2069# 540 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2070 do i = 1, num_fluids
2072 solid_partial_density_l = solid_partial_density_l + alpha_rho_l(i)
2073 solid_partial_density_r = solid_partial_density_r + alpha_rho_r(i)
2077# 547 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2078 & eqn_idx%damage) = (s_m*(solid_partial_density_r*vel_r(
dir_idx(1))*damage_r) &
2079 & - s_p*(solid_partial_density_l*vel_l(
dir_idx(1))*damage_l) &
2080 & + s_m*s_p*(solid_partial_density_l*damage_l - solid_partial_density_r*damage_r)) &
2085 if (need_nc_vel .or. viscous)
then
2087# 555 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2088#if defined(MFC_OpenACC)
2089# 555 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2091# 555 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2092#elif defined(MFC_OpenMP)
2093# 555 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2095# 555 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2097# 556 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2099 if (0._wp <= s_l)
then
2100 vel_interface = vel_l(
dir_idx(i))
2101 else if (s_r <= 0._wp)
then
2102 vel_interface = vel_r(
dir_idx(i))
2104 vel_interface = (s_r*vel_l(
dir_idx(i)) - s_l*vel_r(
dir_idx(i)))/(s_r - s_l)
2107# 565 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2109# 566 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2113 if (.not. hll_u_interface)
then
2117# 572 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2118#if defined(MFC_OpenACC)
2119# 572 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2121# 572 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2122#elif defined(MFC_OpenMP)
2123# 572 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2125# 572 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2127# 573 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2128 do i = eqn_idx%adv%beg, eqn_idx%adv%end
2129 flux_rsx_vf(j, k, l, i) = (ql_prim_rsx_vf(j, k, l, i) - qr_prim_rsx_vf(j, k + 1, l, &
2130# 575 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2131 & i))*s_m*s_p/(s_m - s_p)
2133# 577 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2134 & i) - s_p*ql_prim_rsx_vf(j, k, l, i))/(s_m - s_p)
2135# 578 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2139# 580 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2140#if defined(MFC_OpenACC)
2141# 580 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2143# 580 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2144#elif defined(MFC_OpenMP)
2145# 580 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2147# 580 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2149# 581 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2150 do i = eqn_idx%adv%beg, eqn_idx%adv%end
2151 if (0._wp <= s_l)
then
2153# 584 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2154 else if (s_r <= 0._wp)
then
2156# 586 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2158 flux_rsx_vf(j, k, l, i) = (s_r*ql_prim_rsx_vf(j, k, l, &
2159# 588 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2160 & i)*vel_l(
dir_idx(1)) - s_l*qr_prim_rsx_vf(j, k + 1, l, &
2161# 589 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2162 & i)*vel_r(
dir_idx(1)) + s_l*s_r*(qr_prim_rsx_vf(j, k + 1, l, &
2163# 590 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2164 & i) - ql_prim_rsx_vf(j, k, l, i)))/(s_r - s_l)
2165# 591 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2168 if (0._wp <= s_l)
then
2170# 595 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2171 else if (s_r <= 0._wp)
then
2173# 597 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2176# 599 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2177 & eqn_idx%adv%beg) = (s_r*vel_l(
dir_idx(1)) - s_l*vel_r(
dir_idx(1)))/(s_r - s_l)
2181 if (bubbles_euler)
then
2183 if (num_fluids > 1)
then
2185# 607 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2191# 611 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2192#if defined(MFC_OpenACC)
2193# 611 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2195# 611 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2196#elif defined(MFC_OpenMP)
2197# 611 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2199# 611 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2201# 612 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2202 do i = eqn_idx%species%beg, eqn_idx%species%end
2203 y_l = ql_prim_rsx_vf(j, k, l, i)
2204# 614 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2205 y_r = qr_prim_rsx_vf(j, k + 1, l, i)
2206# 615 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2209# 617 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2210 & i) = (s_m*y_r*rho_r*vel_r(
dir_idx(1)) - s_p*y_l*rho_l*vel_l(
dir_idx(1)) &
2211 & + s_m*s_p*(y_l*rho_l - y_r*rho_r))/(s_m - s_p)
2213# 620 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2222# 627 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2223#if defined(MFC_OpenACC)
2224# 627 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2226# 627 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2227#elif defined(MFC_OpenMP)
2228# 627 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2230# 627 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2232# 628 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2235 & eqn_idx%B%beg + i) = (s_m*(vel_r(1)*b%R(2 + i) - vel_r(2 + i)*bx0) &
2236 & - s_p*(vel_l(1)*b%L(2 + i) - vel_l(2 + i)*bx0) + s_m*s_p*(b%L(2 + i) &
2237 & - b%R(2 + i)))/(s_m - s_p)
2241# 636 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2243# 637 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2245# 638 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2247# 638 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2248#if defined(MFC_OpenACC)
2249# 638 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2251# 638 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2252#elif defined(MFC_OpenMP)
2253# 638 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2255# 638 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2257# 639 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2260# 641 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2261 & eqn_idx%B%beg + i) = (s_m*(vel_r(
dir_idx(1))*b%R(i + 1) - vel_r(i + 1) &
2262 & *b%R(norm_dir)) - s_p*(vel_l(
dir_idx(1))*b%L(i + 1) - vel_l(i + 1) &
2263 & *b%L(norm_dir)) + s_m*s_p*(b%L(i + 1) - b%R(i + 1)))/(s_m - s_p)
2266 if (hyper_cleaning)
then
2269# 649 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2270 & eqn_idx%B%beg + norm_dir - 1) + (s_m*qr_prim_rsx_vf(j, k + 1, l, &
2271# 650 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2272 & eqn_idx%psi) - s_p*ql_prim_rsx_vf(j, k, l, eqn_idx%psi))/(s_m - s_p)
2273# 651 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2276# 653 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2277 & eqn_idx%psi) = (hyper_cleaning_speed**2*(s_m*b%R(norm_dir) &
2278 & - s_p*b%L(norm_dir)) + s_m*s_p*(ql_prim_rsx_vf(j, k, l, &
2279# 655 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2280 & eqn_idx%psi) - qr_prim_rsx_vf(j, k + 1, l, eqn_idx%psi)))/(s_m - s_p)
2281# 656 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2284 flux_rsx_vf(j, k, l, eqn_idx%B%beg + norm_dir - 1) = 0._wp
2285# 659 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2289# 662 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2292# 665 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2296# 667 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2297#if defined(MFC_OpenACC)
2298# 667 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2300# 667 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2301#elif defined(MFC_OpenMP)
2302# 667 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2304# 667 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2306# 668 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2309# 670 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2313# 673 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2314 & eqn_idx%cont%end + 2) - (s_m*pres_r - s_p*pres_l)/(s_m - s_p)
2317# 675 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2318#if defined(MFC_OpenACC)
2319# 675 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2321# 675 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2322#elif defined(MFC_OpenMP)
2323# 675 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2325# 675 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2327# 676 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2328 do i = eqn_idx%adv%beg, eqn_idx%adv%end
2329 if (.not. hll_u_interface)
then
2331# 679 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2334# 681 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2339 if (cyl_coord .and. hypoelasticity)
then
2342# 688 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2343 & eqn_idx%cont%end + 2) + (s_m*tau_e_r(4) - s_p*tau_e_l(4))/(s_m - s_p)
2346# 690 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2347#if defined(MFC_OpenACC)
2348# 690 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2350# 690 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2351#elif defined(MFC_OpenMP)
2352# 690 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2354# 690 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2356# 691 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2357 do i = eqn_idx%stress%beg, eqn_idx%stress%end
2359# 693 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2363 if (cont_damage)
then
2365# 698 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2368# 701 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2369# 712 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2374# 715 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2375#if defined(MFC_OpenACC)
2376# 715 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2378# 715 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2379#elif defined(MFC_OpenMP)
2380# 715 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2382# 715 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2384# 715 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2386# 716 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2388# 110 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2389# 111 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2390# 112 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2391 if (norm_dir == 3)
then
2392# 113 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2394# 113 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2396# 113 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2397#if defined(MFC_OpenACC)
2398# 113 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2400# 113 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2402# 113 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2404# 113 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2406# 113 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2408# 113 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2409#elif defined(MFC_OpenMP)
2410# 113 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2412# 113 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2414# 113 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2416# 113 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2418# 113 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2420# 113 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2422# 113 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2424# 113 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2426# 113 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2428# 113 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2430# 123 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2432# 124 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2434# 125 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2436# 126 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2438# 126 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2439#if defined(MFC_OpenACC)
2440# 126 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2442# 126 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2443#elif defined(MFC_OpenMP)
2444# 126 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2446# 126 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2448# 127 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2449 do i = 1, eqn_idx%cont%end
2450 alpha_rho_l(i) = ql_prim_rsx_vf(j, k, l, i)
2451# 129 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2452 alpha_rho_r(i) = qr_prim_rsx_vf(j, k, l + 1, i)
2453# 130 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2456 vel_l_rms = 0._wp; vel_r_rms = 0._wp
2459# 134 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2460#if defined(MFC_OpenACC)
2461# 134 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2463# 134 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2464#elif defined(MFC_OpenMP)
2465# 134 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2467# 134 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2469# 135 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2471 vel_l(i) = ql_prim_rsx_vf(j, k, l, eqn_idx%cont%end + i)
2472# 137 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2473 vel_r(i) = qr_prim_rsx_vf(j, k, l + 1, eqn_idx%cont%end + i)
2474# 138 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2475 vel_l_rms = vel_l_rms + vel_l(i)**2._wp
2476 vel_r_rms = vel_r_rms + vel_r(i)**2._wp
2480# 142 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2481#if defined(MFC_OpenACC)
2482# 142 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2484# 142 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2485#elif defined(MFC_OpenMP)
2486# 142 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2488# 142 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2490# 143 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2491 do i = 1, num_fluids
2492 alpha_l(i) = ql_prim_rsx_vf(j, k, l, eqn_idx%E + i)
2493# 145 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2494 alpha_r(i) = qr_prim_rsx_vf(j, k, l + 1, eqn_idx%E + i)
2495# 146 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2498 pres_l = ql_prim_rsx_vf(j, k, l, eqn_idx%E)
2499# 149 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2500 pres_r = qr_prim_rsx_vf(j, k, l + 1, eqn_idx%E)
2501# 150 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2507 b%L(2) = ql_prim_rsx_vf(j, k, l, eqn_idx%B%beg)
2508# 156 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2509 b%R(2) = qr_prim_rsx_vf(j, k, l + 1, eqn_idx%B%beg)
2510# 157 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2511 b%L(3) = ql_prim_rsx_vf(j, k, l, eqn_idx%B%beg + 1)
2512# 158 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2513 b%R(3) = qr_prim_rsx_vf(j, k, l + 1, eqn_idx%B%beg + 1)
2514# 159 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2516 b%L(1) = ql_prim_rsx_vf(j, k, l, eqn_idx%B%beg)
2517# 161 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2518 b%R(1) = qr_prim_rsx_vf(j, k, l + 1, eqn_idx%B%beg)
2519# 162 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2520 b%L(2) = ql_prim_rsx_vf(j, k, l, eqn_idx%B%beg + 1)
2521# 163 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2522 b%R(2) = qr_prim_rsx_vf(j, k, l + 1, eqn_idx%B%beg + 1)
2523# 164 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2524 b%L(3) = ql_prim_rsx_vf(j, k, l, eqn_idx%B%beg + 2)
2525# 165 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2526 b%R(3) = qr_prim_rsx_vf(j, k, l + 1, eqn_idx%B%beg + 2)
2527# 166 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2549# 186 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2550#if defined(MFC_OpenACC)
2551# 186 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2553# 186 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2554#elif defined(MFC_OpenMP)
2555# 186 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2557# 186 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2559# 187 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2560 do i = 1, num_fluids
2561 alpha_rho_l(i) = max(0._wp, alpha_rho_l(i))
2562 alpha_l(i) = min(max(0._wp, alpha_l(i)), 1._wp)
2563 alpha_l_sum = alpha_l_sum + alpha_l(i)
2564 alpha_rho_r(i) = max(0._wp, alpha_rho_r(i))
2565 alpha_r(i) = min(max(0._wp, alpha_r(i)), 1._wp)
2566 alpha_r_sum = alpha_r_sum + alpha_r(i)
2569 alpha_l = alpha_l/max(alpha_l_sum,
sgm_eps)
2570 alpha_r = alpha_r/max(alpha_r_sum,
sgm_eps)
2583 c_sum_yi_phi = 0._wp
2585# 211 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2586#if defined(MFC_OpenACC)
2587# 211 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2589# 211 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2590#elif defined(MFC_OpenMP)
2591# 211 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2593# 211 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2595# 212 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2596 do i = eqn_idx%species%beg, eqn_idx%species%end
2597 ys_l(i - eqn_idx%species%beg + 1) = ql_prim_rsx_vf(j, k, l, i)
2598# 214 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2599 ys_r(i - eqn_idx%species%beg + 1) = qr_prim_rsx_vf(j, k, l + 1, i)
2600# 215 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2603 call get_mixture_molecular_weight(ys_l, mw_l)
2604 call get_mixture_molecular_weight(ys_r, mw_r)
2605 xs_l(1:num_species) = ys_l(1:num_species)*mw_l/molecular_weights(:)
2606 xs_r(1:num_species) = ys_r(1:num_species)*mw_r/molecular_weights(:)
2608 r_gas_l = gas_constant/mw_l
2609 r_gas_r = gas_constant/mw_r
2610 t_l = pres_l/rho_l/r_gas_l
2611 t_r = pres_r/rho_r/r_gas_r
2613 call get_mixture_caloric_state(t_l, ys_l, cp_il, cp_l, cv_l, e_l)
2614 call get_mixture_caloric_state(t_r, ys_r, cp_ir, cp_r, cv_r, e_r)
2616 if (chem_params%gamma_method == 1)
then
2618 gamma_il(1:num_species) = cp_il(1:num_species)/(cp_il(1:num_species) - 1.0_wp)
2619 gamma_ir(1:num_species) = cp_ir(1:num_species)/(cp_ir(1:num_species) - 1.0_wp)
2621 gamma_l = sum(xs_l(1:num_species)/(gamma_il(1:num_species) - 1.0_wp))
2622 gamma_r = sum(xs_r(1:num_species)/(gamma_ir(1:num_species) - 1.0_wp))
2623 else if (chem_params%gamma_method == 2)
then
2626 gamma_l = 1.0_wp/(gamm_l - 1.0_wp)
2628 gamma_r = 1.0_wp/(gamm_r - 1.0_wp)
2631 e_l = rho_l*e_l + 5.e-1*rho_l*vel_l_rms
2632 e_r = rho_r*e_r + 5.e-1*rho_r*vel_r_rms
2633 h_l = (e_l + pres_l)/rho_l
2634 h_r = (e_r + pres_r)/rho_r
2635 else if (mhd .and. relativity)
then
2636 ga%L = 1._wp/sqrt(1._wp - vel_l_rms)
2637 ga%R = 1._wp/sqrt(1._wp - vel_r_rms)
2638# 253 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2639 vdotb%L = vel_l(1)*b%L(1) + vel_l(2)*b%L(2) + vel_l(3)*b%L(3)
2640 vdotb%R = vel_r(1)*b%R(1) + vel_r(2)*b%R(2) + vel_r(3)*b%R(3)
2642 b4%L(1:3) = b%L(1:3)/ga%L + ga%L*vel_l(1:3)*vdotb%L
2643 b4%R(1:3) = b%R(1:3)/ga%R + ga%R*vel_r(1:3)*vdotb%R
2644 b2%L = b%L(1)**2._wp + b%L(2)**2._wp + b%L(3)**2._wp
2645 b2%R = b%R(1)**2._wp + b%R(2)**2._wp + b%R(3)**2._wp
2646# 261 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2648 pres_mag%L = 0.5_wp*(b2%L/ga%L**2._wp + vdotb%L**2._wp)
2649 pres_mag%R = 0.5_wp*(b2%R/ga%R**2._wp + vdotb%R**2._wp)
2653# 268 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2654 cm%L(1:3) = (rho_l*h_l*ga%L**2 + b2%L)*vel_l(1:3) - vdotb%L*b%L(1:3)
2655 cm%R(1:3) = (rho_r*h_r*ga%R**2 + b2%R)*vel_r(1:3) - vdotb%R*b%R(1:3)
2656# 271 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2658 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
2659 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
2660 else if (mhd .and. .not. relativity)
then
2661# 276 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2662 pres_mag%L = 0.5_wp*(b%L(1)**2._wp + b%L(2)**2._wp + b%L(3)**2._wp)
2663 pres_mag%R = 0.5_wp*(b%R(1)**2._wp + b%R(2)**2._wp + b%R(3)**2._wp)
2664# 279 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2666 e_l = e_l + pres_mag%L
2669 e_r = e_r + pres_mag%R
2670 h_l = (e_l + pres_l - pres_mag%L)/rho_l
2672 h_r = (e_r + pres_r - pres_mag%R)/rho_r
2676 h_l = (e_l + pres_l)/rho_l
2677 h_r = (e_r + pres_r)/rho_r
2683 if (hypoelasticity)
then
2685# 298 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2686#if defined(MFC_OpenACC)
2687# 298 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2689# 298 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2690#elif defined(MFC_OpenMP)
2691# 298 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2693# 298 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2695# 299 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2696 do i = 1, eqn_idx%stress%end - eqn_idx%stress%beg + 1
2697 tau_e_l(i) = ql_prim_rsx_vf(j, k, l, eqn_idx%stress%beg - 1 + i)
2698# 301 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2699 tau_e_r(i) = qr_prim_rsx_vf(j, k, l + 1, eqn_idx%stress%beg - 1 + i)
2700# 302 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2703 damage_l = 0._wp; damage_r = 0._wp
2704 if (cont_damage)
then
2705 damage_l = ql_prim_rsx_vf(j, k, l, eqn_idx%damage)
2706# 307 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2707 damage_r = qr_prim_rsx_vf(j, k, l + 1, eqn_idx%damage)
2708# 308 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2712 & tau_e_l, tau_e_r, g_l, g_r, e_l, e_r)
2718 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, &
2719 & rho_avg, vel_avg_rms, h_avg, gamma_avg, qv_avg)
2721 r_species(1:num_species) = gas_constant/molecular_weights
2722 call get_species_enthalpies_rt(t_l, h_il)
2723 call get_species_enthalpies_rt(t_r, h_ir)
2724 h_il(1:num_species) = h_il(1:num_species)*r_species(1:num_species)*t_l
2725 h_ir(1:num_species) = h_ir(1:num_species)*r_species(1:num_species)*t_r
2727 & h_ir, cp_il, cp_ir, vel_avg_rms, gamma_avg, &
2738 & h_avg, c_sum_yi_phi, alpha_r, c_avg, alpha_rho_r)
2751# 349 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2752#if defined(MFC_OpenACC)
2753# 349 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2755# 349 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2756#elif defined(MFC_OpenMP)
2757# 349 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2759# 349 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2761# 350 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2763 re_avg_rsx_vf(j, k, l, i) = 2._wp/(1._wp/re_l(i) + 1._wp/re_r(i))
2764# 352 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2772 s_l = min(vel_l(
dir_idx(1)) - c_fast%L, vel_r(
dir_idx(1)) - c_fast%R)
2773 s_r = max(vel_r(
dir_idx(1)) + c_fast%R, vel_l(
dir_idx(1)) + c_fast%L)
2774 else if (hypoelasticity)
then
2787 if (hyper_cleaning)
then
2789 s_l = min(s_l, -hyper_cleaning_speed)
2790 s_r = max(s_r, hyper_cleaning_speed)
2793 s_s = (pres_r - pres_l + rho_l*vel_l(
dir_idx(1))*(s_l - vel_l(
dir_idx(1))) &
2795 & - rho_r*(s_r - vel_r(
dir_idx(1))))
2797 pres_sl = 5.e-1_wp*(pres_l + pres_r + rho_avg*c_avg*(vel_l(
dir_idx(1)) - vel_r(
dir_idx(1))))
2811 s_l = vel_l(
dir_idx(1)) - c_l*ms_l
2812 s_r = vel_r(
dir_idx(1)) + c_r*ms_r
2814 s_s = 5.e-1_wp*((vel_l(
dir_idx(1)) + vel_r(
dir_idx(1))) + (pres_l - pres_r)/(rho_avg*c_avg))
2817 s_m = min(0._wp, s_l); s_p = max(0._wp, s_r)
2819 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, &
2821 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, &
2828 if (.not. relativity)
then
2830# 416 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2831#if defined(MFC_OpenACC)
2832# 416 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2834# 416 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2835#elif defined(MFC_OpenMP)
2836# 416 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2838# 416 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2840# 417 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2841 do i = 1, eqn_idx%cont%end
2843# 419 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2844 & i) = (s_m*alpha_rho_r(i)*vel_r(norm_dir) - s_p*alpha_rho_l(i)*vel_l(norm_dir) &
2845 & + s_m*s_p*(alpha_rho_l(i) - alpha_rho_r(i)))/(s_m - s_p)
2847 else if (relativity)
then
2849# 423 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2850#if defined(MFC_OpenACC)
2851# 423 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2853# 423 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2854#elif defined(MFC_OpenMP)
2855# 423 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2857# 423 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2859# 424 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2860 do i = 1, eqn_idx%cont%end
2862# 426 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2863 & i) = (s_m*ga%R*alpha_rho_r(i)*vel_r(norm_dir) - s_p*ga%L*alpha_rho_l(i) &
2864 & *vel_l(norm_dir) + s_m*s_p*(ga%L*alpha_rho_l(i) - ga%R*alpha_rho_r(i)))/(s_m &
2870 if (mhd .and. (.not. relativity))
then
2872# 434 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2873#if defined(MFC_OpenACC)
2874# 434 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2876# 434 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2877#elif defined(MFC_OpenMP)
2878# 434 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2880# 434 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2882# 435 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2885# 437 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2887# 438 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2889# 439 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2890 & eqn_idx%cont%end + i) = (s_m*(rho_r*vel_r(i)*vel_r(norm_dir) - b%R(i) &
2891 & *b%R(norm_dir) +
dir_flg(i)*(pres_r + pres_mag%R)) - s_p*(rho_l*vel_l(i) &
2892 & *vel_l(norm_dir) - b%L(i)*b%L(norm_dir) +
dir_flg(i)*(pres_l + pres_mag%L)) &
2893 & + s_m*s_p*(rho_l*vel_l(i) - rho_r*vel_r(i)))/(s_m - s_p)
2895 else if (mhd .and. relativity)
then
2897# 445 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2898#if defined(MFC_OpenACC)
2899# 445 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2901# 445 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2902#elif defined(MFC_OpenMP)
2903# 445 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2905# 445 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2907# 446 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2910# 448 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2912# 449 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2914# 450 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2915 & eqn_idx%cont%end + i) = (s_m*(cm%R(i)*vel_r(norm_dir) - b4%R(i) &
2916 & /ga%R*b%R(norm_dir) +
dir_flg(i)*(pres_r + pres_mag%R)) - s_p*(cm%L(i) &
2917 & *vel_l(norm_dir) - b4%L(i)/ga%L*b%L(norm_dir) +
dir_flg(i)*(pres_l + pres_mag%L) &
2918 & ) + s_m*s_p*(cm%L(i) - cm%R(i)))/(s_m - s_p)
2920 else if (bubbles_euler)
then
2922# 456 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2923#if defined(MFC_OpenACC)
2924# 456 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2926# 456 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2927#elif defined(MFC_OpenMP)
2928# 456 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2930# 456 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2932# 457 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2935# 459 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2939 & + s_m*s_p*(rho_l*vel_l(
dir_idx(i)) - rho_r*vel_r(
dir_idx(i))))/(s_m - s_p) &
2940 & + (s_m/s_l)*(s_p/s_r)*pcorr*(vel_r(
dir_idx(i)) - vel_l(
dir_idx(i)))
2942 else if (hypoelasticity)
then
2944# 466 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2945#if defined(MFC_OpenACC)
2946# 466 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2948# 466 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2949#elif defined(MFC_OpenMP)
2950# 466 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2952# 466 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2954# 467 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2957# 469 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2962 & - rho_r*vel_r(
dir_idx(i))))/(s_m - s_p)
2966# 476 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2967#if defined(MFC_OpenACC)
2968# 476 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2970# 476 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2971#elif defined(MFC_OpenMP)
2972# 476 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2974# 476 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2976# 477 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2979# 479 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2983 & - rho_r*vel_r(
dir_idx(i))))/(s_m - s_p) + (s_m/s_l)*(s_p/s_r) &
2989 if (mhd .and. (.not. relativity))
then
2991# 490 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2992# 491 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2994# 492 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
2995 & eqn_idx%E) = (s_m*(vel_r(norm_dir)*(e_r + pres_r + pres_mag%R) - b%R(norm_dir) &
2996 & *(vel_r(1)*b%R(1) + vel_r(2)*b%R(2) + vel_r(3)*b%R(3))) - s_p*(vel_l(norm_dir) &
2997 & *(e_l + pres_l + pres_mag%L) - b%L(norm_dir)*(vel_l(1)*b%L(1) + vel_l(2)*b%L(2) &
2998 & + vel_l(3)*b%L(3))) + s_m*s_p*(e_l - e_r))/(s_m - s_p)
2999# 497 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3000 else if (mhd .and. relativity)
then
3002# 499 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3004# 500 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3005 & eqn_idx%E) = (s_m*(cm%R(norm_dir) - ga%R*alpha_rho_r(1)*vel_r(norm_dir)) &
3006 & - s_p*(cm%L(norm_dir) - ga%L*alpha_rho_l(1)*vel_l(norm_dir)) + s_m*s_p*(e_l - e_r)) &
3008 else if (bubbles_euler)
then
3010# 505 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3011 & eqn_idx%E) = (s_m*vel_r(
dir_idx(1))*(e_r + pres_r - ptilde_r) - s_p*vel_l(
dir_idx(1) &
3012 & )*(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) &
3013 & *pcorr*(vel_r_rms - vel_l_rms)/2._wp
3014 else if (hypoelasticity)
then
3015 flux_tau_l = 0._wp; flux_tau_r = 0._wp
3017# 510 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3018#if defined(MFC_OpenACC)
3019# 510 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3021# 510 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3022#elif defined(MFC_OpenMP)
3023# 510 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3025# 510 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3027# 511 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3033# 516 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3034 & eqn_idx%E) = (s_m*(vel_r(
dir_idx(1))*(e_r + pres_r) - flux_tau_r) &
3035 & - s_p*(vel_l(
dir_idx(1))*(e_l + pres_l) - flux_tau_l) + s_m*s_p*(e_l - e_r))/(s_m &
3039# 521 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3040 & eqn_idx%E) = (s_m*vel_r(
dir_idx(1))*(e_r + pres_r) - s_p*vel_l(
dir_idx(1))*(e_l &
3041 & + 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 &
3042 & - vel_l_rms)/2._wp
3046 if (hypoelasticity)
then
3047 do i = 1, eqn_idx%stress%end - eqn_idx%stress%beg + 1
3049# 530 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3050 & eqn_idx%stress%beg - 1 + i) = (s_m*(rho_r*vel_r(
dir_idx(1))*tau_e_r(i)) &
3051 & - s_p*(rho_l*vel_l(
dir_idx(1))*tau_e_l(i)) + s_m*s_p*(rho_l*tau_e_l(i) &
3052 & - rho_r*tau_e_r(i)))/(s_m - s_p)
3057 if (cont_damage)
then
3058 solid_partial_density_l = 0._wp; solid_partial_density_r = 0._wp
3060# 539 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3061#if defined(MFC_OpenACC)
3062# 539 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3064# 539 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3065#elif defined(MFC_OpenMP)
3066# 539 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3068# 539 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3070# 540 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3071 do i = 1, num_fluids
3073 solid_partial_density_l = solid_partial_density_l + alpha_rho_l(i)
3074 solid_partial_density_r = solid_partial_density_r + alpha_rho_r(i)
3078# 547 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3079 & eqn_idx%damage) = (s_m*(solid_partial_density_r*vel_r(
dir_idx(1))*damage_r) &
3080 & - s_p*(solid_partial_density_l*vel_l(
dir_idx(1))*damage_l) &
3081 & + s_m*s_p*(solid_partial_density_l*damage_l - solid_partial_density_r*damage_r)) &
3086 if (need_nc_vel .or. viscous)
then
3088# 555 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3089#if defined(MFC_OpenACC)
3090# 555 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3092# 555 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3093#elif defined(MFC_OpenMP)
3094# 555 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3096# 555 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3098# 556 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3100 if (0._wp <= s_l)
then
3101 vel_interface = vel_l(
dir_idx(i))
3102 else if (s_r <= 0._wp)
then
3103 vel_interface = vel_r(
dir_idx(i))
3105 vel_interface = (s_r*vel_l(
dir_idx(i)) - s_l*vel_r(
dir_idx(i)))/(s_r - s_l)
3108# 565 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3110# 566 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3114 if (.not. hll_u_interface)
then
3118# 572 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3119#if defined(MFC_OpenACC)
3120# 572 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3122# 572 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3123#elif defined(MFC_OpenMP)
3124# 572 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3126# 572 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3128# 573 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3129 do i = eqn_idx%adv%beg, eqn_idx%adv%end
3130 flux_rsx_vf(j, k, l, i) = (ql_prim_rsx_vf(j, k, l, i) - qr_prim_rsx_vf(j, k, l + 1, &
3131# 575 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3132 & i))*s_m*s_p/(s_m - s_p)
3134# 577 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3135 & i) - s_p*ql_prim_rsx_vf(j, k, l, i))/(s_m - s_p)
3136# 578 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3140# 580 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3141#if defined(MFC_OpenACC)
3142# 580 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3144# 580 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3145#elif defined(MFC_OpenMP)
3146# 580 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3148# 580 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3150# 581 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3151 do i = eqn_idx%adv%beg, eqn_idx%adv%end
3152 if (0._wp <= s_l)
then
3154# 584 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3155 else if (s_r <= 0._wp)
then
3157# 586 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3159 flux_rsx_vf(j, k, l, i) = (s_r*ql_prim_rsx_vf(j, k, l, &
3160# 588 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3161 & i)*vel_l(
dir_idx(1)) - s_l*qr_prim_rsx_vf(j, k, l + 1, &
3162# 589 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3163 & i)*vel_r(
dir_idx(1)) + s_l*s_r*(qr_prim_rsx_vf(j, k, l + 1, &
3164# 590 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3165 & i) - ql_prim_rsx_vf(j, k, l, i)))/(s_r - s_l)
3166# 591 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3169 if (0._wp <= s_l)
then
3171# 595 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3172 else if (s_r <= 0._wp)
then
3174# 597 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3177# 599 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3178 & eqn_idx%adv%beg) = (s_r*vel_l(
dir_idx(1)) - s_l*vel_r(
dir_idx(1)))/(s_r - s_l)
3182 if (bubbles_euler)
then
3184 if (num_fluids > 1)
then
3186# 607 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3192# 611 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3193#if defined(MFC_OpenACC)
3194# 611 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3196# 611 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3197#elif defined(MFC_OpenMP)
3198# 611 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3200# 611 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3202# 612 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3203 do i = eqn_idx%species%beg, eqn_idx%species%end
3204 y_l = ql_prim_rsx_vf(j, k, l, i)
3205# 614 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3206 y_r = qr_prim_rsx_vf(j, k, l + 1, i)
3207# 615 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3210# 617 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3211 & i) = (s_m*y_r*rho_r*vel_r(
dir_idx(1)) - s_p*y_l*rho_l*vel_l(
dir_idx(1)) &
3212 & + s_m*s_p*(y_l*rho_l - y_r*rho_r))/(s_m - s_p)
3214# 620 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3223# 627 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3224#if defined(MFC_OpenACC)
3225# 627 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3227# 627 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3228#elif defined(MFC_OpenMP)
3229# 627 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3231# 627 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3233# 628 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3236 & eqn_idx%B%beg + i) = (s_m*(vel_r(1)*b%R(2 + i) - vel_r(2 + i)*bx0) &
3237 & - s_p*(vel_l(1)*b%L(2 + i) - vel_l(2 + i)*bx0) + s_m*s_p*(b%L(2 + i) &
3238 & - b%R(2 + i)))/(s_m - s_p)
3242# 636 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3244# 637 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3246# 638 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3248# 638 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3249#if defined(MFC_OpenACC)
3250# 638 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3252# 638 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3253#elif defined(MFC_OpenMP)
3254# 638 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3256# 638 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3258# 639 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3261# 641 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3262 & eqn_idx%B%beg + i) = (s_m*(vel_r(
dir_idx(1))*b%R(i + 1) - vel_r(i + 1) &
3263 & *b%R(norm_dir)) - s_p*(vel_l(
dir_idx(1))*b%L(i + 1) - vel_l(i + 1) &
3264 & *b%L(norm_dir)) + s_m*s_p*(b%L(i + 1) - b%R(i + 1)))/(s_m - s_p)
3267 if (hyper_cleaning)
then
3270# 649 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3271 & eqn_idx%B%beg + norm_dir - 1) + (s_m*qr_prim_rsx_vf(j, k, l + 1, &
3272# 650 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3273 & eqn_idx%psi) - s_p*ql_prim_rsx_vf(j, k, l, eqn_idx%psi))/(s_m - s_p)
3274# 651 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3277# 653 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3278 & eqn_idx%psi) = (hyper_cleaning_speed**2*(s_m*b%R(norm_dir) &
3279 & - s_p*b%L(norm_dir)) + s_m*s_p*(ql_prim_rsx_vf(j, k, l, &
3280# 655 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3281 & eqn_idx%psi) - qr_prim_rsx_vf(j, k, l + 1, eqn_idx%psi)))/(s_m - s_p)
3282# 656 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3285 flux_rsx_vf(j, k, l, eqn_idx%B%beg + norm_dir - 1) = 0._wp
3286# 659 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3290# 662 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3293# 701 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3294# 702 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3297# 703 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3298#if defined(MFC_OpenACC)
3299# 703 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3301# 703 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3302#elif defined(MFC_OpenMP)
3303# 703 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3305# 703 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3307# 704 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3310# 706 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3313# 708 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3314 & eqn_idx%mom%end) + (s_m*pres_r - s_p*pres_l)/(s_m - s_p)
3316# 710 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3318# 712 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3323# 715 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3324#if defined(MFC_OpenACC)
3325# 715 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3327# 715 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3328#elif defined(MFC_OpenMP)
3329# 715 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3331# 715 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3333# 715 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3335# 716 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3337# 718 "/home/runner/work/MFC/MFC/src/simulation/m_riemann_solver_hll.fpp"
3340 if (weno_re_flux)
then
3342 & dql_prim_dx_vf(eqn_idx%mom%beg:eqn_idx%mom%end), &
3343 & dql_prim_dy_vf(eqn_idx%mom%beg:eqn_idx%mom%end), &
3344 & dql_prim_dz_vf(eqn_idx%mom%beg:eqn_idx%mom%end), &
3345 & qr_prim_vf(eqn_idx%mom%beg:eqn_idx%mom%end), &
3346 & dqr_prim_dx_vf(eqn_idx%mom%beg:eqn_idx%mom%end), &
3347 & dqr_prim_dy_vf(eqn_idx%mom%beg:eqn_idx%mom%end), &
3348 & dqr_prim_dz_vf(eqn_idx%mom%beg:eqn_idx%mom%end), flux_src_vf, q_prim_vf, &
3349 & norm_dir, ix, iy, iz)
3352 & dql_prim_dx_vf(eqn_idx%mom%beg:eqn_idx%mom%end), &
3353 & dql_prim_dy_vf(eqn_idx%mom%beg:eqn_idx%mom%end), &
3354 & dql_prim_dz_vf(eqn_idx%mom%beg:eqn_idx%mom%end), &
3355 & q_prim_vf(eqn_idx%mom%beg:eqn_idx%mom%end), &
3356 & dqr_prim_dx_vf(eqn_idx%mom%beg:eqn_idx%mom%end), &
3357 & dqr_prim_dy_vf(eqn_idx%mom%beg:eqn_idx%mom%end), &
3358 & dqr_prim_dz_vf(eqn_idx%mom%beg:eqn_idx%mom%end), flux_src_vf, q_prim_vf, &
3359 & norm_dir, ix, iy, iz)