Computing equilibrium temperature or activity

This page follows Chapter 11 of Bethke (2007).

The geochemistry module can be used to provide equilibrium temperature or activity. For instance, using the standard GWB database and anhydrite instead of Ca as a component (using a swap), the reaction has the equilibrium equation Then:

  • If water activity is 1, the equilibrium temperature (where ) is found to be 43.7C.

  • If water activity is 0.7, the equilibrium temperature (where ) is found to be 11.7C.

  • If the temperature is 25C, the equilibrium is attained when water activity is 0.815.

To perform this calculation using the geochemistry module, a GeochemicalModelDefinition object must be created with the desired mineral species:

[UserObjects]
  [definition]
    type = GeochemicalModelDefinition
    database_file = "../../../database/moose_geochemdb.json"
    basis_species = "H2O Ca++ SO4--"
    equilibrium_minerals = "Gypsum Anhydrite"
  []
[]
(modules/geochemistry/test/tests/interrogate_reactions/gypsum.i)

Then a GeochemicalModelInterrogator must be created which specifies the desired swaps and the interrogation = eqm_temperature instruction:

[GeochemicalModelInterrogator]
  model_definition = definition
  swap_out_of_basis = "Ca++"
  swap_into_basis = "  Anhydrite"
  activity_species = "H2O"
  activity_values = "1.0"
  temperature = 25
  equilibrium_species = Gypsum
  interrogation = eqm_temperature
[]
(modules/geochemistry/test/tests/interrogate_reactions/gypsum.i)

The output yields the desired information:


Not enough activities known to compute equilibrium temperature for reaction
  Gypsum = 2\*H2O \+ 1\*Ca\+\+ \+ 1\*SO4--  .  log10\(K\) = -4.451
Gypsum.  T = 43.6625degC

The first lines state that equilibrium temperature for the reaction cannot be found because the activities of Ca and SO are unknown. However, when Anhydrite is put into the basis in place of Ca, the equilibrium temperature can be found, and the result is found on the final line.

Altering the activity value for HO using the activity_values input enables finding the equilibrium temperature for different .

To find the activity of water given C, simply use:

  • interrogation = activity

  • remove the activity_species and activity_values lines

as in the page on equilibrium activity ratios. This produces


(A_H2O)^2 (A_Ca++)^1 (A_SO4--)^1 = 10^-4.451
(A_H2O)^2 = 10^-0.1775

where the last line is the desired result: .

References

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