A unified framework for modeling chemically reactive systems.
Reaktoro is a computational framework developed in C++ and Python that implements numerical methods for modeling chemically reactive processes governed by either chemical equilibria, chemical kinetics, or both.

The chemical simulator of Reaktoro is based on the Gibbs energy minimization (GEM) methods as well as a revised law of mass action (rLMA) approach that combines the advantages of both GEM and LMA methods. Recently, on-demand machine learning (ODML) of fast and efficient chemical equilibrium calculations was introduced in Reaktoro.
Chemical equilibrium calculations are essential for many chemical reaction modeling problems. Reaktoro’s computational chemical equilibrium capabilities using Gibbs energy minimization algorithms can be applied to solve a variety of modeling problems. However, sometimes the chemical equilibrium model is not sufficient to understand a chemically reactive process. This happens when we need to understand how the composition of the chemical system changes with time as a result of chemical reactions. For this, chemical kinetics is imperative.
Reaktoro can perform chemical kinetics calculations combined with chemical equilibrium (i.e., part of the chemical system evolves under kinetics, while the other is continuously in equilibrium at all times). This mode of calculation is particularly useful for simulating chemically reactive systems in which some reactions have rates that are many orders of magnitude higher than others (and thus can be assumed in instantaneous equilibrium at any time). Finally, chemical equilibrium and kinetics calculations are both space independent. If you need to model transport processes (e.g., advection, diffusion) combined with chemical reactive processes, then chemical transport (or reactive transport) simulations are what you need.

Figure 1: Acceleration of the chemical equilibration calculation in reactive transport modeling of the dolomitization process.


Figure 2: Simulation of (a) the dolomitization process and (b) the hydrogen sulfide scavenging in the heterogeneous media together with the summary of the ODML method’s performance.
Besides, we are working on an extension of the ODML approach to support kinetically controlled reactions. We also consider further investigations with more complex geochemical and geological conditions. We plan to extend Reaktoro’s functionality to model reservoirs souring as a result of the activities of sulfide-reducing bacteria, mixing of the groundwater and seawater in the oil reservoir as well as scaling effects this process results to, modeling the effects that seawater or sodium chloride have during the cement rock attack, among many more.
Reaktoro v2.0 can be used for various geobiological simulations. One of them is the modeling of carbonate-rich lakes, which were relatively common on the early Earth. The Earth’s CO2-rich atmosphere can be modeled by fixing the fugacity of the simulated chemical states.

Figure 3: Calculation of the phosphate solubility in the early Earth carbonate-rich lake using Reaktoro.
Among many databases, Reaktoro v2.0 allows modeling geochemical applications using ThermoFun, a general-purpose open-source client that provides thermodynamic properties of substances and reactions at the desired temperature and pressure.

Figure 4: Illustration of the different collaborations projects between Reaktoro and ThermoFun.
Barite scaling can be considered as a side effect that occurs during waterflooding of the oil reservoirs the result of the contrasting compositions of the injected seawater (SW) and the formation water (FW) in the reservoir that coexists with oil.

Figure 5: Reactive transport modeling of the barite scaling in the reservoir waterflooding including the ion-exchange processes.