Reaktoro  v2.11.0
A unified framework for modeling chemically reactive systems
ReactionRateModelPalandriKharaka.hpp
1 // Reaktoro is a unified framework for modeling chemically reactive systems.
2 //
3 // Copyright © 2014-2024 Allan Leal
4 //
5 // This library is free software; you can redistribute it and/or
6 // modify it under the terms of the GNU Lesser General Public
7 // License as published by the Free Software Foundation; either
8 // version 2.1 of the License, or (at your option) any later version.
9 //
10 // This library is distributed in the hope that it will be useful,
11 // but WITHOUT ANY WARRANTY; without even the implied warranty of
12 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 // Lesser General Public License for more details.
14 //
15 // You should have received a copy of the GNU Lesser General Public License
16 // along with this library. If not, see <http://www.gnu.org/licenses/>.
17 
18 #pragma once
19 
20 // Reaktoro includes
21 #include <Reaktoro/Common/Types.hpp>
22 #include <Reaktoro/Core/Params.hpp>
23 #include <Reaktoro/Core/ReactionRateModel.hpp>
24 
25 namespace Reaktoro {
26 
29 {
31  struct Catalyst
32  {
35 
40  String property = "a";
41 
43  real power = 0.0;
44  };
45 
47  struct Mechanism
48  {
51 
54 
57 
59  real p = 1.0;
60 
62  real q = 1.0;
63 
66  };
67 
70 
73 
76 };
77 
81 
87 
90 
93 
94 } // namespace Reaktoro
Used to store and retrieve model parameters.
Definition: Params.hpp:29
The namespace containing all components of the Reaktoro library.
Definition: Algorithms.hpp:29
Fn< ReactionRateModel(ReactionRateModelGeneratorArgs args)> ReactionRateModelGenerator
The function signature for functions that generates a ReactionRateModel for a reaction.
Definition: ReactionRateModel.hpp:67
std::vector< T > Vec
Convenient alias for std::vector<T>.
Definition: Types.hpp:66
std::string String
Convenient alias for std::string.
Definition: Types.hpp:52
autodiff::real real
The number type used throughout the library.
Definition: Real.hpp:26
std::vector< std::string > Strings
Convenient alias for std::vector<String>.
Definition: Types.hpp:55
auto ReactionRateModelPalandriKharaka() -> ReactionRateModelGenerator
Return the reaction rate model of dissolution/precipitation kinetics of minerals.
The parameters for a catalyser property in a mineral reaction rate mechanism of
Definition: ReactionRateModelPalandriKharaka.hpp:32
real power
The power of the property that affects the rate of mineral reaction.
Definition: ReactionRateModelPalandriKharaka.hpp:43
String formula
The chemical formula of the species that participates as a catalyst.
Definition: ReactionRateModelPalandriKharaka.hpp:34
The parameters for a mineral reaction rate mechanism of
Definition: ReactionRateModelPalandriKharaka.hpp:48
Vec< Catalyst > catalysts
The catalysts of the mineral reaction.
Definition: ReactionRateModelPalandriKharaka.hpp:65
real p
The empirical and dimensionless power parameter p.
Definition: ReactionRateModelPalandriKharaka.hpp:59
String name
The classifying name of the mineral reaction mechanism (e.g., Acid, Neutral, Base,...
Definition: ReactionRateModelPalandriKharaka.hpp:50
real q
The empirical and dimensionless power parameter q.
Definition: ReactionRateModelPalandriKharaka.hpp:62
real lgk
The kinetic rate constant of the mineral reaction at 298.15 K (in lg mol/(m2*s)).
Definition: ReactionRateModelPalandriKharaka.hpp:53
real E
The Arrhenius activation energy of the mineral reaction (in kJ/mol).
Definition: ReactionRateModelPalandriKharaka.hpp:56
The parameters in the reaction rate model of dissolution/precipitation kinetics of minerals.
Definition: ReactionRateModelPalandriKharaka.hpp:29
Vec< Mechanism > mechanisms
The reaction mechanisms considered in the mineral dissolution/precipitation rate model.
Definition: ReactionRateModelPalandriKharaka.hpp:75
String mineral
The name of the mineral (e.g., Dolomite).
Definition: ReactionRateModelPalandriKharaka.hpp:69
Strings othernames
The alternative names of the mineral (e.g., Dolomite,ord, Dolomite,ordered).
Definition: ReactionRateModelPalandriKharaka.hpp:72