Saturation indices of halite and anhydrite at Sebkhat El Melah

This example closely follows Section 8.4 of Bethke (2007).

The saturation indices of halite (NaCl) and anhydrite (CaSO) are computed for brine samples from Sebkhat El Melah. The composition of the brine is shown in Table 1. In addition:

  • the pH is 7.15;

  • charge balance is performed on Cl.

Table 1: Major element composition of brine in the RZ-2 well at Sebkhat El Melah

SpeciesConcentration (g.l)
Cl195
Mg52.1
Na43.1
SO27.4
K6.90
Br2.25
Ca0.20
HCO0.14

MOOSE input file

The MOOSE input file contains the usual GeochemicalModelDefinition that specifies the database file to use, the basis species and the minerals of interest. The flag piecewise_linear_interpolation = true in order to compare with the Geochemists Workbench result

[UserObjects]
  [definition]
    type = GeochemicalModelDefinition
    database_file = "../../../database/moose_geochemdb.json"
    basis_species = "H2O H+ Cl- Mg++ Na+ SO4-- K+ Br- Ca++ HCO3-"
    equilibrium_minerals = "Halite Anhydrite"
    piecewise_linear_interpolation = true # for comparison with GWB
  []
[]
(modules/geochemistry/test/tests/solubilities_and_activities/sebkhat_el_melah.i)

To instruct MOOSE to find the equilibrium configuration, a TimeIndependentReactionSolver is used:

  • The bulk mole number of the aqueous species is also appropriately. The numbers are different than the concentration in g.l given in the above table, and may be worked out using the TDS.

  • The pH is set by providing the relevant activity for H.

  • The prevent_precipitation input prevents any minerals from precipitating when finding the equilibrium configuration, even if their saturation indices are positive.

  • The max_ionic_strength is set large in this case in order to match that specified by Bethke (2007) for this example. Bethke (2007) notes that the Debye-Huckel theory is not valid above ionic strengths of about 3molal, and uses this example to demonstrate the resulting large errors when compared with experiment. In this page, the comparison with experiment is not performed: we are just using this example to demonstrate agreement with the Geochemists Workbench software.

  • The other flags enable an accurate comparison with the Geochemists Workbench software.

[TimeIndependentReactionSolver]
  model_definition = definition
  charge_balance_species = "Cl-"
  constraint_species = "H2O              H+           Cl-              Mg++             Na+              SO4--            K+                Br-              Ca++             HCO3-"
  # assume that g/l means g/kg(solvent water)
  constraint_value = "  1.0              -7.15         5.500            2.1436           1.8747           0.2852           0.17648          0.02816          0.00499          0.00229"
  constraint_meaning = "kg_solvent_water log10activity bulk_composition bulk_composition bulk_composition bulk_composition bulk_composition bulk_composition bulk_composition bulk_composition"
  constraint_unit = "   kg               dimensionless moles            moles            moles            moles            moles            moles            moles            moles"
  prevent_precipitation = "Halite Anhydrite"
  max_ionic_strength = 10.0
  ramp_max_ionic_strength_initial = 0 # not needed in this simple example
  stoichiometric_ionic_str_using_Cl_only = true # for comparison with GWB
  abs_tol = 1E-12
[]
(modules/geochemistry/test/tests/solubilities_and_activities/sebkhat_el_melah.i)

Geochemists Workbench input file

The Geochemists Workbench input file for the precipitation case is:

# React script that is equivalent to sebkhat_el_melah.i
data = thermo.tdat verify
conductivity = conductivity-USGS.dat
temperature = 25 C
H2O          = 1 free kg
Cl-          = 5.5 mol
balance on Cl-
H+           = 7.15
Mg++         = 2.1436 mol
Na+          = 1.8747 mol
SO4--        = 0.2852 mol
K+           = 0.17648 mol
Br-          = 0.02816 mol
Ca++         = 0.00499 mol
HCO3-        = 0.00229 mol
suppress ALL
epsilon = 1E-12
simax = 10
timax = 10
go

(modules/geochemistry/test/tests/solubilities_and_activities/sebkhat_el_melah.rea)

Results

The geochemistry module and the Geochemists Workbench both predict identical results, in agreement with Bethke (2007):

  • the saturation index of halite is approximately -0.94

  • the saturation index of anhydrite is approximately -1.7.

References

  1. Craig M. Bethke. Geochemical and Biogeochemical Reaction Modeling. Cambridge University Press, 2 edition, 2007. doi:10.1017/CBO9780511619670.[BibTeX]