Skip to content
Snippets Groups Projects
Commit 6e8c7701 authored by Yolan Uyttenhove's avatar Yolan Uyttenhove
Browse files

Fix bug: move total metal mass flux out of for loop

parent d80df591
No related branches found
No related tags found
2 merge requests!1825Chemistry API changes for metal fluxes,!1749Draft: Merge the moving mesh hydro scheme in master
......@@ -46,17 +46,17 @@ __attribute__((always_inline)) INLINE static void runner_iact_chemistry_fluxes(
* is gaining it. */
if (mass_flux > 0.f) {
/* pi is loosing mass */
pi->chemistry_data.metal_mass_flux_total -=
mass_flux_integrated * pi->chemistry_data.metal_mass_fraction_total;
for (int i = 0; i < chemistry_element_count; i++) {
pi->chemistry_data.metal_mass_flux_total -=
mass_flux_integrated * pi->chemistry_data.metal_mass_fraction_total;
pi->chemistry_data.metal_mass_fluxes[i] -=
mass_flux_integrated * pi->chemistry_data.metal_mass_fraction[i];
}
} else {
/* pi is gaining mass: */
pi->chemistry_data.metal_mass_flux_total -=
mass_flux_integrated * pj->chemistry_data.metal_mass_fraction_total;
for (int i = 0; i < chemistry_element_count; i++) {
pi->chemistry_data.metal_mass_flux_total -=
mass_flux_integrated * pj->chemistry_data.metal_mass_fraction_total;
pi->chemistry_data.metal_mass_fluxes[i] -=
mass_flux_integrated * pj->chemistry_data.metal_mass_fraction[i];
}
......@@ -66,17 +66,17 @@ __attribute__((always_inline)) INLINE static void runner_iact_chemistry_fluxes(
if (mode == 1 || pj->flux.dt < 0.f) {
if (mass_flux > 0.f) {
/* pj is gaining mass */
pj->chemistry_data.metal_mass_flux_total +=
mass_flux_integrated * pi->chemistry_data.metal_mass_fraction_total;
for (int i = 0; i < chemistry_element_count; i++) {
pj->chemistry_data.metal_mass_flux_total +=
mass_flux_integrated * pi->chemistry_data.metal_mass_fraction_total;
pj->chemistry_data.metal_mass_fluxes[i] +=
mass_flux_integrated * pi->chemistry_data.metal_mass_fraction[i];
}
} else {
/* pj is losing mass */
pj->chemistry_data.metal_mass_flux_total +=
mass_flux_integrated * pj->chemistry_data.metal_mass_fraction_total;
for (int i = 0; i < chemistry_element_count; i++) {
pj->chemistry_data.metal_mass_flux_total +=
mass_flux_integrated * pj->chemistry_data.metal_mass_fraction_total;
pj->chemistry_data.metal_mass_fluxes[i] +=
mass_flux_integrated * pj->chemistry_data.metal_mass_fraction[i];
}
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment