Role of ico2h2o and mass balance

I have run a number of simulations using Toughreact Versions 1.2 and 3OMP and the ECO2N EOS. In trying to understand the mass balance I have tried runs with 0 entered for ico2h20 and 1 or 2 as well. With the value used as 0, the models run very well. With a value of 1 or 2, the models essentially bog down to very low delta T steps after 30 to 40 years simulation. When run with 0 for ico2h2o the amount of dissolved CO2 and gas CO2 equal the total amount of CO2 added but if you look at the smCO2 and include that, there is often nearly double the CO2 compared to injected. In long term simulations the total dissolved and gas exceeds the amount injected even when not including the precipitated CO2 and accounting for carbonates dissolving. When run using ico2h2o the total CO2 (gas, solid, aqueous) is equal to the amount injected (after end of injection).

So the question is, with ico2h2o = 0 is the precipitated CO2 not being accounted for in the flow model? does this not lead to some serious errors in the results?

3replies Oldest first
  • Oldest first
  • Newest first
  • Active threads
  • Popular
  • Hello Dirk,


    unfortunately I cannot answer your questions, but I encountered some mass balance problems with CO2, too. Maybe you can find some hints where to look at your simulation to find the problem.

  • Thanks Lennard, that helps but does not answer the question. I am using the single fluid phase initial condition and with ico2h2o set to 0 the mass balance does not work because if you look at the smco2 as well as dissolved and gas, the total amount of CO2 exceeds the total co2 added (after injection), however, the dissolved and gas do equal the total added if you use the flow.out file for the data. Using the output from Toughreact and using the volumes of the cells and the concentrations you can produce similar results. So it seems to me that if ico2h2o is 0 then precipitation of CO2 does not remove it from the Tough2 (flow and transport) calculations, as might be implied by the statement in the manual:
    ICO2H2O:flag to consider effects of CO2 and/or H2O reaction source/sink terms on fluid flow
    calculations. ICO2H2O can be used for H2O reaction source/sink terms in all EOS modules,
    however, CO2 and H2O are only possible using the EOS2 and ECO2N EOS modules.
    0 Effects ignored
    1 Only effects of CO2 reaction source/sink terms
    2 Effects of both CO2 and H2O reaction source/sink terms
  • With TOUGHREACT-ECO2N, the "flow" module takes care of the flow, transport, and phase partitioning for the CO2-H2O-NaCl system.  This "flow" module (ECO2N) is sequentially coupled to the "reaction" module, which takes care of multicomponent transport, speciation and reaction between minerals, aqueous, and gaseous species.   The aqueous and gaseous concentrations of CO2 computed in the "flow" module are passed on to the "reaction" module. When ICO2H2O=0, any CO2 and/or H2O subsequently consumed or produced by chemical reaction in the "reaction" module are not coupled back to the "flow" module.  Therefore, this has to result in a mass imbalance.  Because the coupling of CO2 (when ICO2H2O = 1) or CO2 with H2O (when ICO2H2O = 2) sink/source terms from the "chemistry" module back to the "flow" module is computationally much more demanding than ignoring this back-coupling, using ICO2H2O=0 can present a significant advantage, as long as the loss of accuracy is tolerable (such as in short-term simulations with amounts of supercritical CO2 largely dominating the amount of CO2 consumed or produced by reactions).  However, for long-term simulations in very reactive systems, setting ICO2H2O to zero may not be advisable (it also depends on the simulation objectives).  Also note that the coupling of H2O in addition to CO2  (ICO2H2O=2) was introduced into toughreact because the dissolution and hydrolysis of large quantities of CO2 in water result in non-negligible amounts of water consumption (i.e., CO2(g) + H2O ==> H2CO3(aq))

    Another thing that could affect the mass balance of CO2 between the "flow" and "reaction" modules is if the thermodynamic data for CO2(g) in the "reaction"module thermodynamic database is inconsistent with the phase partitioning model implemented in the "flow" module.  Users of TOUGHREACT-ECO2N should make sure that the CO2(g) entries in the chosen thermodynamic database match the records marked "# For use with ECO2N" in the databases distributed with the code. Other sources of data will result in effective Henry's law coefficients for CO2 that are not the same in the "flow" and "chemistry" modules.

Like Follow
  • 6 yrs agoLast active
  • 3Replies
  • 1123Views
  • 3 Following