From 070a32c42aaacd878a6c8d775fd5ef6d671572e1 Mon Sep 17 00:00:00 2001 From: renchao_lu <renchao.lu@gmail.com> Date: Tue, 9 Jun 2020 21:03:51 +0200 Subject: [PATCH] [CL] Store initial amount of reactants. --- ChemistryLib/PhreeqcIOData/CreateEquilibriumReactants.cpp | 2 +- ChemistryLib/PhreeqcIOData/CreateKineticReactant.cpp | 1 + ChemistryLib/PhreeqcIOData/EquilibriumReactant.h | 3 +++ ChemistryLib/PhreeqcIOData/KineticReactant.h | 3 +++ 4 files changed, 8 insertions(+), 1 deletion(-) diff --git a/ChemistryLib/PhreeqcIOData/CreateEquilibriumReactants.cpp b/ChemistryLib/PhreeqcIOData/CreateEquilibriumReactants.cpp index 01084a919f1..ab6bc617fbf 100644 --- a/ChemistryLib/PhreeqcIOData/CreateEquilibriumReactants.cpp +++ b/ChemistryLib/PhreeqcIOData/CreateEquilibriumReactants.cpp @@ -55,7 +55,7 @@ std::vector<EquilibriumReactant> createEquilibriumReactants( 1); equilibrium_reactants.emplace_back( - std::move(name), amount, saturation_index); + std::move(name), amount, initial_amount, saturation_index); } return equilibrium_reactants; diff --git a/ChemistryLib/PhreeqcIOData/CreateKineticReactant.cpp b/ChemistryLib/PhreeqcIOData/CreateKineticReactant.cpp index 1d3af1d9068..7a7ad888628 100644 --- a/ChemistryLib/PhreeqcIOData/CreateKineticReactant.cpp +++ b/ChemistryLib/PhreeqcIOData/CreateKineticReactant.cpp @@ -71,6 +71,7 @@ std::vector<KineticReactant> createKineticReactants( kinetic_reactants.emplace_back(std::move(name), std::move(chemical_formula), amount, + initial_amount, std::move(parameters), fix_amount); } diff --git a/ChemistryLib/PhreeqcIOData/EquilibriumReactant.h b/ChemistryLib/PhreeqcIOData/EquilibriumReactant.h index 2926f0319fb..d15aa0605fe 100644 --- a/ChemistryLib/PhreeqcIOData/EquilibriumReactant.h +++ b/ChemistryLib/PhreeqcIOData/EquilibriumReactant.h @@ -30,9 +30,11 @@ struct EquilibriumReactant { EquilibriumReactant(std::string name_, MeshLib::PropertyVector<double>* amount_, + double const initial_amount_, double saturation_index_) : name(std::move(name_)), amount(amount_), + initial_amount(initial_amount_), saturation_index(saturation_index_) { } @@ -41,6 +43,7 @@ struct EquilibriumReactant std::string const name; MeshLib::PropertyVector<double>* amount; + double const initial_amount; double const saturation_index; static const ItemType item_type = ItemType::EquilibriumReactant; }; diff --git a/ChemistryLib/PhreeqcIOData/KineticReactant.h b/ChemistryLib/PhreeqcIOData/KineticReactant.h index 4b659dc8bd5..1141683e84d 100644 --- a/ChemistryLib/PhreeqcIOData/KineticReactant.h +++ b/ChemistryLib/PhreeqcIOData/KineticReactant.h @@ -27,11 +27,13 @@ struct KineticReactant KineticReactant(std::string name_, std::string chemical_formula_, MeshLib::PropertyVector<double>* amount_, + double const initial_amount_, std::vector<double>&& parameters_, bool const fix_amount_) : name(std::move(name_)), chemical_formula(std::move(chemical_formula_)), amount(amount_), + initial_amount(initial_amount_), parameters(std::move(parameters_)), fix_amount(fix_amount_) { @@ -42,6 +44,7 @@ struct KineticReactant std::string const name; std::string const chemical_formula; MeshLib::PropertyVector<double>* amount; + double const initial_amount; std::vector<double> const parameters; bool const fix_amount; static const ItemType item_type = ItemType::KineticReactant; -- GitLab