578 type(scalar_field),
dimension(sys_size),
intent(in) :: q_prim_qp
579 type(scalar_field),
dimension(sys_size),
intent(inout) :: flux_src_vf
580 type(int_bounds_info),
intent(in) :: irx, iry, irz
581 integer,
intent(in) :: idir
582 type(scalar_field),
intent(in) :: q_T_sf
584# 177 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
585 real(wp),
dimension(num_species) :: Xs_L, Xs_R, Xs_cell, Ys_L, Ys_R, Ys_cell
586 real(wp),
dimension(num_species) :: mass_diffusivities_mixavg1, mass_diffusivities_mixavg2
587 real(wp),
dimension(num_species) :: mass_diffusivities_mixavg_Cell, dXk_dxi, h_l, h_r, h_k
588 real(wp),
dimension(num_species) :: Mass_Diffu_Flux, dYk_dxi
589# 182 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
591 real(wp) :: Mass_Diffu_Energy
592 real(wp) :: MW_L, MW_R, MW_cell, T_L, T_R, P_L, P_R, rho_L, rho_R, rho_cell, rho_Vic
593 real(wp) :: lambda_L, lambda_R, lambda_Cell, dT_dxi, grid_spacing
594 real(wp) :: Cp_L, Cp_R
595 real(wp) :: diffusivity_L, diffusivity_R, diffusivity_cell
596 real(wp) :: hmix_L, hmix_R, dh_dxi
597 integer :: x, y, z, i, n, eqn
598 integer,
dimension(3) :: offsets
603# 194 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
604#if defined(MFC_OpenACC)
605# 194 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
607# 194 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
608#elif defined(MFC_OpenMP)
609# 194 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
611# 194 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
622# 203 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
624# 203 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
625#if defined(MFC_OpenACC)
626# 203 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
628# 203 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
629#elif defined(MFC_OpenMP)
630# 203 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
632# 203 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
634# 203 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
636# 203 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
638# 203 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
640# 208 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
647 grid_spacing =
x_cc(x + 1) -
x_cc(x)
649 grid_spacing =
y_cc(y + 1) -
y_cc(y)
651 grid_spacing =
z_cc(z + 1) -
z_cc(z)
656# 222 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
657#if defined(MFC_OpenACC)
658# 222 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
660# 222 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
661#elif defined(MFC_OpenMP)
662# 222 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
664# 222 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
667 ys_l(i -
eqn_idx%species%beg + 1) = q_prim_qp(i)%sf(x, y, z)
668 ys_r(i -
eqn_idx%species%beg + 1) = q_prim_qp(i)%sf(x + offsets(1), y + offsets(2), z + offsets(3))
669 ys_cell(i -
eqn_idx%species%beg + 1) = 0.5_wp*(ys_l(i -
eqn_idx%species%beg + 1) + ys_r(i &
674 call get_mixture_molecular_weight(ys_l, mw_l)
675 call get_mixture_molecular_weight(ys_r, mw_r)
676 mw_cell = 0.5_wp*(mw_l + mw_r)
678 call get_mole_fractions(mw_l, ys_l, xs_l)
679 call get_mole_fractions(mw_r, ys_r, xs_r)
681 p_l = q_prim_qp(
eqn_idx%E)%sf(x, y, z)
682 p_r = q_prim_qp(
eqn_idx%E)%sf(x + offsets(1), y + offsets(2), z + offsets(3))
684 rho_l = q_prim_qp(1)%sf(x, y, z)
685 rho_r = q_prim_qp(1)%sf(x + offsets(1), y + offsets(2), z + offsets(3))
687 t_l = q_t_sf%sf(x, y, z)
688 t_r = q_t_sf%sf(x + offsets(1), y + offsets(2), z + offsets(3))
690 rho_cell = 0.5_wp*(rho_l + rho_r)
691 dt_dxi = (t_r - t_l)/grid_spacing
694 call get_species_mass_diffusivities_mixavg(p_l, t_l, ys_l, mass_diffusivities_mixavg1)
695 call get_species_mass_diffusivities_mixavg(p_r, t_r, ys_r, mass_diffusivities_mixavg2)
697 call get_mixture_thermal_conductivity_mixavg(t_l, ys_l, lambda_l)
698 call get_mixture_thermal_conductivity_mixavg(t_r, ys_r, lambda_r)
700 call get_species_enthalpies_rt(t_l, h_l)
701 call get_species_enthalpies_rt(t_r, h_r)
705# 261 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
706#if defined(MFC_OpenACC)
707# 261 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
709# 261 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
710#elif defined(MFC_OpenMP)
711# 261 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
713# 261 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
716# 269 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
717 h_l(i -
eqn_idx%species%beg + 1) = h_l(i -
eqn_idx%species%beg + 1) &
718 & *gas_constant*t_l/molecular_weights(i -
eqn_idx%species%beg + 1)
719 h_r(i -
eqn_idx%species%beg + 1) = h_r(i -
eqn_idx%species%beg + 1) &
720 & *gas_constant*t_r/molecular_weights(i -
eqn_idx%species%beg + 1)
721# 274 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
722 xs_cell(i -
eqn_idx%species%beg + 1) = 0.5_wp*(xs_l(i -
eqn_idx%species%beg + 1) + xs_r(i &
724 h_k(i -
eqn_idx%species%beg + 1) = 0.5_wp*(h_l(i -
eqn_idx%species%beg + 1) + h_r(i &
726 dxk_dxi(i -
eqn_idx%species%beg + 1) = (xs_r(i -
eqn_idx%species%beg + 1) - xs_l(i &
727 & -
eqn_idx%species%beg + 1))/grid_spacing
732# 283 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
733#if defined(MFC_OpenACC)
734# 283 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
736# 283 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
737#elif defined(MFC_OpenMP)
738# 283 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
740# 283 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
743 mass_diffusivities_mixavg_cell(i -
eqn_idx%species%beg + 1) = (mass_diffusivities_mixavg2(i &
744 & -
eqn_idx%species%beg + 1) + mass_diffusivities_mixavg1(i &
745 & -
eqn_idx%species%beg + 1))/2.0_wp
748 lambda_cell = 0.5_wp*(lambda_r + lambda_l)
752 mass_diffu_energy = 0.0_wp
755# 296 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
756#if defined(MFC_OpenACC)
757# 296 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
759# 296 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
760#elif defined(MFC_OpenMP)
761# 296 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
763# 296 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
766# 303 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
767 mass_diffu_flux(eqn -
eqn_idx%species%beg + 1) = rho_cell*mass_diffusivities_mixavg_cell(eqn &
768 & -
eqn_idx%species%beg + 1)*molecular_weights(eqn -
eqn_idx%species%beg + 1) &
769 & /mw_cell*dxk_dxi(eqn -
eqn_idx%species%beg + 1)
770# 307 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
771 rho_vic = rho_vic + mass_diffu_flux(eqn -
eqn_idx%species%beg + 1)
772 mass_diffu_energy = mass_diffu_energy + h_k(eqn -
eqn_idx%species%beg + 1)*mass_diffu_flux(eqn &
778# 313 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
779#if defined(MFC_OpenACC)
780# 313 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
782# 313 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
783#elif defined(MFC_OpenMP)
784# 313 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
786# 313 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
789 mass_diffu_energy = mass_diffu_energy - h_k(eqn -
eqn_idx%species%beg + 1)*ys_cell(eqn &
790 & -
eqn_idx%species%beg + 1)*rho_vic
791 mass_diffu_flux(eqn -
eqn_idx%species%beg + 1) = mass_diffu_flux(eqn -
eqn_idx%species%beg + 1) &
792 & - rho_vic*ys_cell(eqn -
eqn_idx%species%beg + 1)
796 mass_diffu_energy = lambda_cell*dt_dxi + mass_diffu_energy
799 flux_src_vf(
eqn_idx%E)%sf(x, y, z) = flux_src_vf(
eqn_idx%E)%sf(x, y, z) - mass_diffu_energy
802# 327 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
803#if defined(MFC_OpenACC)
804# 327 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
806# 327 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
807#elif defined(MFC_OpenMP)
808# 327 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
810# 327 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
813 flux_src_vf(eqn)%sf(x, y, z) = flux_src_vf(eqn)%sf(x, y, &
814 & z) - mass_diffu_flux(eqn -
eqn_idx%species%beg + 1)
820# 335 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
821#if defined(MFC_OpenACC)
822# 335 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
824# 335 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
825#elif defined(MFC_OpenMP)
826# 335 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
828# 335 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
830# 335 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
837# 340 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
839# 340 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
840#if defined(MFC_OpenACC)
841# 340 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
843# 340 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
844#elif defined(MFC_OpenMP)
845# 340 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
847# 340 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
849# 340 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
851# 340 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
853# 340 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
855# 344 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
862 grid_spacing =
x_cc(x + 1) -
x_cc(x)
864 grid_spacing =
y_cc(y + 1) -
y_cc(y)
866 grid_spacing =
z_cc(z + 1) -
z_cc(z)
871# 358 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
872#if defined(MFC_OpenACC)
873# 358 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
875# 358 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
876#elif defined(MFC_OpenMP)
877# 358 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
879# 358 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
882 ys_l(i -
eqn_idx%species%beg + 1) = q_prim_qp(i)%sf(x, y, z)
883 ys_r(i -
eqn_idx%species%beg + 1) = q_prim_qp(i)%sf(x + offsets(1), y + offsets(2), z + offsets(3))
884 ys_cell(i -
eqn_idx%species%beg + 1) = 0.5_wp*(ys_l(i -
eqn_idx%species%beg + 1) + ys_r(i &
889 call get_mixture_molecular_weight(ys_l, mw_l)
890 call get_mixture_molecular_weight(ys_r, mw_r)
891 mw_cell = 0.5_wp*(mw_l + mw_r)
893 p_l = q_prim_qp(
eqn_idx%E)%sf(x, y, z)
894 p_r = q_prim_qp(
eqn_idx%E)%sf(x + offsets(1), y + offsets(2), z + offsets(3))
896 rho_l = q_prim_qp(1)%sf(x, y, z)
897 rho_r = q_prim_qp(1)%sf(x + offsets(1), y + offsets(2), z + offsets(3))
899 t_l = q_t_sf%sf(x, y, z)
900 t_r = q_t_sf%sf(x + offsets(1), y + offsets(2), z + offsets(3))
902 rho_cell = 0.5_wp*(rho_l + rho_r)
904 call get_mixture_specific_heat_cp_mass(t_l, ys_l, cp_l)
905 call get_mixture_specific_heat_cp_mass(t_r, ys_r, cp_r)
906 call get_mixture_enthalpy_mass(t_l, ys_l, hmix_l)
907 call get_mixture_enthalpy_mass(t_r, ys_r, hmix_r)
908 dh_dxi = (hmix_r - hmix_l)/grid_spacing
911 call get_mixture_thermal_conductivity_mixavg(t_l, ys_l, lambda_l)
912 call get_mixture_thermal_conductivity_mixavg(t_r, ys_r, lambda_r)
916# 393 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
917#if defined(MFC_OpenACC)
918# 393 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
920# 393 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
921#elif defined(MFC_OpenMP)
922# 393 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
924# 393 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
927 dyk_dxi(i -
eqn_idx%species%beg + 1) = (ys_r(i -
eqn_idx%species%beg + 1) - ys_l(i &
928 & -
eqn_idx%species%beg + 1))/grid_spacing
932 diffusivity_l = lambda_l/rho_l/cp_l
933 diffusivity_r = lambda_r/rho_r/cp_r
935 lambda_cell = 0.5_wp*(lambda_r + lambda_l)
936 diffusivity_cell = 0.5_wp*(diffusivity_r + diffusivity_l)
939 mass_diffu_energy = 0.0_wp
942# 409 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
943#if defined(MFC_OpenACC)
944# 409 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
946# 409 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
947#elif defined(MFC_OpenMP)
948# 409 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
950# 409 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
953 mass_diffu_flux(eqn -
eqn_idx%species%beg + 1) = rho_cell*diffusivity_cell*dyk_dxi(eqn &
956 mass_diffu_energy = rho_cell*diffusivity_cell*dh_dxi
959 flux_src_vf(
eqn_idx%E)%sf(x, y, z) = flux_src_vf(
eqn_idx%E)%sf(x, y, z) - mass_diffu_energy
962# 419 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
963#if defined(MFC_OpenACC)
964# 419 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
966# 419 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
967#elif defined(MFC_OpenMP)
968# 419 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
970# 419 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
973 flux_src_vf(eqn)%sf(x, y, z) = flux_src_vf(eqn)%sf(x, y, &
974 & z) - mass_diffu_flux(eqn -
eqn_idx%species%beg + 1)
980# 427 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
981#if defined(MFC_OpenACC)
982# 427 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
984# 427 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
985#elif defined(MFC_OpenMP)
986# 427 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
988# 427 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"
990# 427 "/home/runner/work/MFC/MFC/src/common/m_chemistry.fpp"