# A PHREEQC-Based Tool for Planning and Control of In Situ Chemical Oxidation Treatment
## 2 Model Concept  
As ISCO is a dynamic and invasive process, it should be preceded by careful preparation, including a computational analysis that provides immediate feedback on the extent of contamination and the required dose of the oxidising agent. It should be borne in mind that the use of oxidising agents is expensive and can be dangerous. Optimising the planning of field campaigns and avoiding errors will therefore significantly reduce costs and risks. To overcome these challenges, a new tool was developed based on the open-source code PHREEQC. The geochemical/transport code was used to simulate oxidation reactions and advective-dispersive transport in groundwater. The modelling of ISCO was divided into two parts, with the first part representing the injection phase (until the predicted radius of influence, ROI, is reached) and the second part representing the post-injection phase (where the duration is user-defined). The radius of influence is most commonly used in theoretical and engineering practise, and it is generally translated as the distance within the area of influence of the pumping or the injection well in the horizontal direction [70]. In both phases, the oxidation reactions of pollutants and organic substances are simulated. The latter is expressed as natural oxygen demand (NOD), and it is usually expressed as the mass of permanganate consumed per unit mass of solids in the aquifer. The oxidation reactions for each pollutant are modelled as a second-order rate (Equation (1)). \[-\tau_{\text{COEC}}=\text{k}_{2}\ [\text{COEC}][\text{MnO}_{4}], \tag{1}\]  
where \(\text{k}_{2}\) stands for a second-order rate constant, \(\tau_{\text{COEC}}\) is the rate of the oxidation, and [MnO\({}_{4}\)] and [COEC] are the molar concentrations of permanganate and COEC, respectively. The rates are originally from the ISCOKIN database (Table 1, [71]), but the kinetic data can be modified within the code to account for site-specific conditions, which were conducted during calibration when the tool was tested. These modifications are justified as the reactions can be inhibited or catalysed by local factors. The oxidation of NOD follows a two-part pathway, with one part of the organic matter being oxidised rapidly and the second part more slowly. This approach is based on the work of [PERSON] [72], [PERSON] et al. [73], and [PERSON] et al. [66]. The fast fraction of NOD accounts for about 15% of the total mass. Modelling the post-injection phase requires a definition of the background/pristine water that enters and flows through the system once the injection is complete. Optionally, the user can simulate the exchange between mobile and immobile water. In this case, the chemical composition of the stagnant water must be specified. Both the oxidation transport and the flushing of the system by the surrounding water are simulated as 1D advective-reactive transport with the PHREEQC code. The tool takes the form of a Microsoft Excel spreadsheet and uses both monitoring data and real-time data for basic parameters and regular chemical analyses (Figure 1). The tool consists of two main parts. The first part is based on the Excel calculations and is used to list all the available information and estimate the initial physical and chemical conditions. These conditions are calculated for each user-defined monitoring point and are averaged over the distance to the injection point. This first part can be used to estimate the oxidant dose or to evaluate the distance at which the injection would be most effective (ROI), or as the input to the hydrogeochemical model, which is the second part of the tool. The hydrogeochemical model calculates the future state of the groundwater along the flow path between the injection point and each monitoring point. The input data for the model can be divided into the following:  
* Values representing the uncontaminated background groundwater are used in the PHREEQC model to simulate the effect of mixing with background water;