From 25cac0520deb40da122ad9d3022bcca8103c0e3c Mon Sep 17 00:00:00 2001 From: renchao_lu <renchao.lu@gmail.com> Date: Sat, 13 Jul 2019 16:31:44 +0200 Subject: [PATCH] [CL] Update EquilibriumPhase output. --- ChemistryLib/PhreeqcIO.cpp | 8 +++++--- ChemistryLib/PhreeqcIOData/EquilibriumPhase.cpp | 13 ++++--------- ChemistryLib/PhreeqcIOData/EquilibriumPhase.h | 3 +-- 3 files changed, 10 insertions(+), 14 deletions(-) diff --git a/ChemistryLib/PhreeqcIO.cpp b/ChemistryLib/PhreeqcIO.cpp index 14d99194946..cde24306b38 100644 --- a/ChemistryLib/PhreeqcIO.cpp +++ b/ChemistryLib/PhreeqcIO.cpp @@ -212,12 +212,14 @@ std::ostream& operator<<(std::ostream& os, PhreeqcIO const& phreeqc_io) os << "SOLUTION " << chemical_system_id + 1 << "\n"; os << aqueous_solution << "\n"; - auto const& equilibrium_phases = - phreeqc_io._equilibrium_phases[chemical_system_id]; + auto const& equilibrium_phases = phreeqc_io._equilibrium_phases; if (!equilibrium_phases.empty()) { os << "EQUILIBRIUM_PHASES " << chemical_system_id + 1 << "\n"; - os << equilibrium_phases << "\n"; + for (auto const& equilibrium_phase : equilibrium_phases) + { + equilibrium_phase.print(os, chemical_system_id); + } } auto const& kinetic_reactants = phreeqc_io._kinetic_reactants; diff --git a/ChemistryLib/PhreeqcIOData/EquilibriumPhase.cpp b/ChemistryLib/PhreeqcIOData/EquilibriumPhase.cpp index 378eb2a4cdb..52253ab3c5c 100644 --- a/ChemistryLib/PhreeqcIOData/EquilibriumPhase.cpp +++ b/ChemistryLib/PhreeqcIOData/EquilibriumPhase.cpp @@ -13,15 +13,10 @@ namespace ChemistryLib { -std::ostream& operator<<(std::ostream& os, - EquilibriumPhase const& equilibrium_phase) +void EquilibriumPhase::print(std::ostream& os, + std::size_t const chemical_system_id) const { - os << equilibrium_phase.name; - - os << " " << equilibrium_phase.saturation_index; - - os << " " << equilibrium_phase.amount << "\n"; - - return os; + os << name << " " << saturation_index << " " + << (*amount)[chemical_system_id] << "\n"; } } // namespace ChemistryLib diff --git a/ChemistryLib/PhreeqcIOData/EquilibriumPhase.h b/ChemistryLib/PhreeqcIOData/EquilibriumPhase.h index 51e2eec934e..19fe180834b 100644 --- a/ChemistryLib/PhreeqcIOData/EquilibriumPhase.h +++ b/ChemistryLib/PhreeqcIOData/EquilibriumPhase.h @@ -34,8 +34,7 @@ struct EquilibriumPhase { } - friend std::ostream& operator<<(std::ostream& os, - EquilibriumPhase const& equilibrium_phase); + void print(std::ostream& os, std::size_t const chemical_system_id) const; std::string const name; MeshLib::PropertyVector<double>* amount; -- GitLab