558 type(scalar_field),
dimension(sys_size),
intent(in) :: q_prim_qp
559 type(scalar_field),
dimension(sys_size),
intent(inout) :: flux_src_vf
560 type(int_bounds_info),
intent(in) :: irx, iry, irz
562 integer,
intent(in) :: idir
563# 189 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
564 real(wp),
dimension(num_species) :: Xs_L, Xs_R, Xs_cell, Ys_L, Ys_R, Ys_cell
565 real(wp),
dimension(num_species) :: mass_diffusivities_mixavg1, mass_diffusivities_mixavg2
566 real(wp),
dimension(num_species) :: mass_diffusivities_mixavg_Cell, dXk_dxi, h_l, h_r, h_k
567 real(wp),
dimension(num_species) :: Mass_Diffu_Flux, dYk_dxi
568# 194 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
570 real(wp) :: Mass_Diffu_Energy
571 real(wp) :: MW_L, MW_R, MW_cell, Rgas_L, Rgas_R, T_L, T_R, P_L, P_R, rho_L, rho_R, rho_cell, rho_Vic
572 real(wp) :: lambda_L, lambda_R, lambda_Cell, dT_dxi, grid_spacing
573 real(wp) :: Cp_L, Cp_R
574 real(wp) :: diffusivity_L, diffusivity_R, diffusivity_cell
575 real(wp) :: hmix_L, hmix_R, dh_dxi
577 integer :: x, y, z, i, n, eqn
578 integer,
dimension(3) :: offsets
583# 207 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
584#if defined(MFC_OpenACC)
585# 207 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
587# 207 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
588#elif defined(MFC_OpenMP)
589# 207 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
591# 207 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
603# 217 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
605# 217 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
606#if defined(MFC_OpenACC)
607# 217 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
609# 217 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
610#elif defined(MFC_OpenMP)
611# 217 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
613# 217 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
615# 217 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
617# 217 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
619# 217 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
621# 217 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
629 grid_spacing =
x_cc(x + 1) -
x_cc(x)
631 grid_spacing =
y_cc(y + 1) -
y_cc(y)
633 grid_spacing =
z_cc(z + 1) -
z_cc(z)
638# 232 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
639#if defined(MFC_OpenACC)
640# 232 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
642# 232 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
643#elif defined(MFC_OpenMP)
644# 232 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
646# 232 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
649 ys_l(i -
chemxb + 1) = q_prim_qp(i)%sf(x, y, z)
650 ys_r(i -
chemxb + 1) = q_prim_qp(i)%sf(x + offsets(1), y + offsets(2), z + offsets(3))
655 call get_mixture_molecular_weight(ys_l, mw_l)
656 call get_mixture_molecular_weight(ys_r, mw_r)
657 mw_cell = 0.5_wp*(mw_l + mw_r)
659 call get_mole_fractions(mw_l, ys_l, xs_l)
660 call get_mole_fractions(mw_r, ys_r, xs_r)
663 rgas_l = gas_constant/mw_l
664 rgas_r = gas_constant/mw_r
666 p_l = q_prim_qp(
e_idx)%sf(x, y, z)
667 p_r = q_prim_qp(
e_idx)%sf(x + offsets(1), y + offsets(2), z + offsets(3))
669 rho_l = q_prim_qp(1)%sf(x, y, z)
670 rho_r = q_prim_qp(1)%sf(x + offsets(1), y + offsets(2), z + offsets(3))
672 t_l = p_l/rho_l/rgas_l
673 t_r = p_r/rho_r/rgas_r
675 rho_cell = 0.5_wp*(rho_l + rho_r)
676 dt_dxi = (t_r - t_l)/grid_spacing
679 call get_species_mass_diffusivities_mixavg(p_l, t_l, ys_l, mass_diffusivities_mixavg1)
680 call get_species_mass_diffusivities_mixavg(p_r, t_r, ys_r, mass_diffusivities_mixavg2)
682 call get_mixture_thermal_conductivity_mixavg(t_l, ys_l, lambda_l)
683 call get_mixture_thermal_conductivity_mixavg(t_r, ys_r, lambda_r)
685 call get_species_enthalpies_rt(t_l, h_l)
686 call get_species_enthalpies_rt(t_r, h_r)
690# 274 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
691#if defined(MFC_OpenACC)
692# 274 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
694# 274 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
695#elif defined(MFC_OpenMP)
696# 274 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
698# 274 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
701# 280 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
702 h_l(i -
chemxb + 1) = h_l(i -
chemxb + 1)*gas_constant*t_l/molecular_weights(i -
chemxb + 1)
703 h_r(i -
chemxb + 1) = h_r(i -
chemxb + 1)*gas_constant*t_r/molecular_weights(i -
chemxb + 1)
704# 283 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
712# 289 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
713#if defined(MFC_OpenACC)
714# 289 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
716# 289 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
717#elif defined(MFC_OpenMP)
718# 289 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
720# 289 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
723 mass_diffusivities_mixavg_cell(i -
chemxb + 1) = &
724 (mass_diffusivities_mixavg2(i -
chemxb + 1) + mass_diffusivities_mixavg1(i -
chemxb + 1))/2.0_wp
727 lambda_cell = 0.5_wp*(lambda_r + lambda_l)
731 mass_diffu_energy = 0.0_wp
734# 301 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
735#if defined(MFC_OpenACC)
736# 301 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
738# 301 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
739#elif defined(MFC_OpenMP)
740# 301 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
742# 301 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
745# 307 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
746 mass_diffu_flux(eqn -
chemxb + 1) = rho_cell*mass_diffusivities_mixavg_cell(eqn -
chemxb + 1)* &
747 molecular_weights(eqn -
chemxb + 1)/mw_cell*dxk_dxi(eqn -
chemxb + 1)
748# 310 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
749 rho_vic = rho_vic + mass_diffu_flux(eqn -
chemxb + 1)
750 mass_diffu_energy = mass_diffu_energy + h_k(eqn -
chemxb + 1)*mass_diffu_flux(eqn -
chemxb + 1)
755# 315 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
756#if defined(MFC_OpenACC)
757# 315 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
759# 315 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
760#elif defined(MFC_OpenMP)
761# 315 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
763# 315 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
766 mass_diffu_energy = mass_diffu_energy - h_k(eqn -
chemxb + 1)*ys_cell(eqn -
chemxb + 1)*rho_vic
767 mass_diffu_flux(eqn -
chemxb + 1) = mass_diffu_flux(eqn -
chemxb + 1) - rho_vic*ys_cell(eqn -
chemxb + 1)
771 mass_diffu_energy = lambda_cell*dt_dxi + mass_diffu_energy
774 flux_src_vf(
e_idx)%sf(x, y, z) = flux_src_vf(
e_idx)%sf(x, y, z) - mass_diffu_energy
777# 327 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
778#if defined(MFC_OpenACC)
779# 327 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
781# 327 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
782#elif defined(MFC_OpenMP)
783# 327 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
785# 327 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
788 flux_src_vf(eqn)%sf(x, y, z) = flux_src_vf(eqn)%sf(x, y, z) - mass_diffu_flux(eqn -
chemxb + 1)
794# 334 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
796# 334 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
797#if defined(MFC_OpenACC)
798# 334 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
800# 334 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
801#elif defined(MFC_OpenMP)
802# 334 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
804# 334 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
806# 334 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
808# 334 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
810# 334 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
817# 339 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
819# 339 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
820#if defined(MFC_OpenACC)
821# 339 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
823# 339 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
824#elif defined(MFC_OpenMP)
825# 339 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
827# 339 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
829# 339 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
831# 339 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
833# 339 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
835# 339 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
843 grid_spacing =
x_cc(x + 1) -
x_cc(x)
845 grid_spacing =
y_cc(y + 1) -
y_cc(y)
847 grid_spacing =
z_cc(z + 1) -
z_cc(z)
852# 354 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
853#if defined(MFC_OpenACC)
854# 354 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
856# 354 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
857#elif defined(MFC_OpenMP)
858# 354 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
860# 354 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
863 ys_l(i -
chemxb + 1) = q_prim_qp(i)%sf(x, y, z)
864 ys_r(i -
chemxb + 1) = q_prim_qp(i)%sf(x + offsets(1), y + offsets(2), z + offsets(3))
869 call get_mixture_molecular_weight(ys_l, mw_l)
870 call get_mixture_molecular_weight(ys_r, mw_r)
871 mw_cell = 0.5_wp*(mw_l + mw_r)
874 rgas_l = gas_constant/mw_l
875 rgas_r = gas_constant/mw_r
877 p_l = q_prim_qp(
e_idx)%sf(x, y, z)
878 p_r = q_prim_qp(
e_idx)%sf(x + offsets(1), y + offsets(2), z + offsets(3))
880 rho_l = q_prim_qp(1)%sf(x, y, z)
881 rho_r = q_prim_qp(1)%sf(x + offsets(1), y + offsets(2), z + offsets(3))
883 t_l = p_l/rho_l/rgas_l
884 t_r = p_r/rho_r/rgas_r
886 rho_cell = 0.5_wp*(rho_l + rho_r)
888 call get_mixture_specific_heat_cp_mass(t_l, ys_l, cp_l)
889 call get_mixture_specific_heat_cp_mass(t_r, ys_r, cp_r)
890 call get_mixture_enthalpy_mass(t_l, ys_l, hmix_l)
891 call get_mixture_enthalpy_mass(t_r, ys_r, hmix_r)
892 dh_dxi = (hmix_r - hmix_l)/grid_spacing
895 call get_mixture_thermal_conductivity_mixavg(t_l, ys_l, lambda_l)
896 call get_mixture_thermal_conductivity_mixavg(t_r, ys_r, lambda_r)
900# 392 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
901#if defined(MFC_OpenACC)
902# 392 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
904# 392 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
905#elif defined(MFC_OpenMP)
906# 392 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
908# 392 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
912 ys_l(i -
chemxb + 1))/grid_spacing
916 diffusivity_l = lambda_l/rho_l/cp_l
917 diffusivity_r = lambda_r/rho_r/cp_r
919 lambda_cell = 0.5_wp*(lambda_r + lambda_l)
920 diffusivity_cell = 0.5_wp*(diffusivity_r + diffusivity_l)
923 mass_diffu_energy = 0.0_wp
926# 408 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
927#if defined(MFC_OpenACC)
928# 408 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
930# 408 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
931#elif defined(MFC_OpenMP)
932# 408 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
934# 408 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
937 mass_diffu_flux(eqn -
chemxb + 1) = rho_cell* &
941 mass_diffu_energy = rho_cell*diffusivity_cell*dh_dxi
944 flux_src_vf(
e_idx)%sf(x, y, z) = flux_src_vf(
e_idx)%sf(x, y, z) - mass_diffu_energy
947# 419 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
948#if defined(MFC_OpenACC)
949# 419 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
951# 419 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
952#elif defined(MFC_OpenMP)
953# 419 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
955# 419 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
958 flux_src_vf(eqn)%sf(x, y, z) = flux_src_vf(eqn)%sf(x, y, z) - mass_diffu_flux(eqn -
chemxb + 1)
964# 426 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
966# 426 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
967#if defined(MFC_OpenACC)
968# 426 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
970# 426 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
971#elif defined(MFC_OpenMP)
972# 426 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
974# 426 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
976# 426 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
978# 426 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
980# 426 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"