The geochemistry module

Overview

The geochemistry module is designed to solve geochemical models. The capabilities include:

  • equilibrium aqueous systems

  • redox disequilibrium

  • sorption and surface complexation

  • kinetics

  • all these combined with fluid and heat transport

The geochemistry module is designed to interface easily with the porous-flow module so that complicated reactive transport scenarios can be studied.

Figure 1: Temperature, porosity, pH and free volume of Quartz after 90 days of injection in a 3D reactive-transport model.

Details

Installation and usage

After installing MOOSE using the "Getting Started" instructions (above), only the "framework" will have been compiled. To compile any of the physics modules, including the geochemistry module, use the following instructions run from the command line:


cd ~/projects/moose/modules
make
cd ~/projects/moose/modules/geochemistry
make
cd ~/projects/moose/modules/geochemistry/unit
make

(If your computer has cores, the make process may be sped up by using the command make -j instead of simply make.)

Check that the geochemistry module is correctly compiled using the following instructions:


cd ~/projects/moose/modules/geochemistry/unit
./run_tests
cd ~/projects/moose/modules/geochemistry
./run_tests

Virtually all the tests should run and pass. Some may be "skipped" due to a particular computer setup (for instance, not enough threads). (If your computer has cores, the run_tests command may be sped up by using the command ./run_tests -j instead of simply ./run_tests.)

The geochemistry executable is called geochemistry-opt and is found at ~/projects/moose/modules/geochemistry. This may be used to run pure geochemistry simulations. For example, to run the cooling a solution in contact with feldspars example:


cd ~/projects/moose/modules/geochemistry/test/tests/time_dependent_reactions
../../../geochemistry-opt -i cooling.i

For coupled reactive-transport simulations using the PorousFlow module, the combined-opt executable must be used. For example, to run the Weber-Tensleep GeoTES example from the command line:


cd ~/projects/moose/modules/combined/examples/geochem-porous_flow/geotes_weber_tensleep
../../../combined-opt -i exchanger.i