OGS
PhreeqcKernelData/KineticReactant.cpp
Go to the documentation of this file.
1// SPDX-FileCopyrightText: Copyright (c) OpenGeoSys Community (opengeosys.org)
2// SPDX-License-Identifier: BSD-3-Clause
3
4#include "KineticReactant.h"
5
6#include <algorithm>
7
8namespace ChemistryLib
9{
10namespace PhreeqcKernelData
11{
12KineticReactant::KineticReactant(std::string name, double const initial_amount)
13{
14 rate_name = std::move(name);
15 namecoef.add(rate_name.c_str(), 1.0);
16 m = initial_amount;
17 m0 = initial_amount;
18}
19
20Kinetics::Kinetics(std::vector<KineticReactant> const& kinetic_reactants)
21{
22 std::transform(kinetic_reactants.begin(),
23 kinetic_reactants.end(),
24 std::back_inserter(kinetics_comps),
25 [](KineticReactant const& kinetic_reactant)
26 { return *kinetic_reactant.castToBaseClass(); });
27}
28} // namespace PhreeqcKernelData
29} // namespace ChemistryLib
KineticReactant(std::string name, double const initial_amount)
Kinetics(std::vector< KineticReactant > const &kinetic_reactants)