19 std::string
const& file_extension)
25 return project_file_name +
"_phreeqc_pid_" + std::to_string(mpi_rank) +
29 return project_file_name +
"_phreeqc" + file_extension;
33 bool const use_high_precision_)
42 os <<
"SELECTED_OUTPUT"
44 os <<
"-file " << basic_output_setups.
output_file <<
"\n";
45 os <<
"-high_precision " << std::boolalpha
47 os <<
"-simulation " << std::boolalpha
65 auto const component_items =
68 for (
auto const& component_item : component_items)
70 os <<
" " << component_item.name;
74 auto const equilibrium_phase_items =
76 if (!equilibrium_phase_items.empty())
78 os <<
"-equilibrium_phases";
79 for (
auto const& equilibrium_phase_item : equilibrium_phase_items)
81 os <<
" " << equilibrium_phase_item.name;
86 auto const kinetic_reactant_items =
88 if (!kinetic_reactant_items.empty())
90 os <<
"-kinetic_reactants";
91 for (
auto const& kinetic_reactant_item : kinetic_reactant_items)
93 os <<
" " << kinetic_reactant_item.name;
std::string const output_file
static const bool display_time_step
bool const use_high_precision
static const bool display_distance
static const bool display_state
static const bool display_simulation_id
static const bool display_current_time
BasicOutputSetups(std::string const &project_file_name, bool const use_high_precision_)
std::ostream & operator<<(std::ostream &os, PhreeqcIO const &phreeqc_io)
std::string specifyFileName(std::string const &project_file_name, std::string const &file_extension)
BasicOutputSetups const basic_output_setups
Output(BasicOutputSetups &&basic_output_setups_, std::vector< OutputItem > &&accepted_items_, std::vector< int > &&dropped_item_ids_)
std::vector< OutputItem > getOutputItemsByItemType(ItemType item_type) const