Introducing GeoChemFoam on ARCHER2 for pore-scale modelling

8 October 2024

Embedded CSE (eCSE) support provides funding to the ARCHER2 user community to develop software in a sustainable manner to run on this UK national supercomputing service and to prepare for future Exascale platforms. Here EPCC's Gavin Pringle describes an eCSE project he is currently working on.

Image shows low-salinity injection in Bentheimer sandstone. See: https://link.springer.com/article/10.1007/s11242-021-01661-8

Above: image shows low-salinity injection in Bentheimer sandstone. See: https://link.springer.com/article/10.1007/s11242-021-01661-8

Thanks to ARCHER2’s eCSE programme, the GeoChemFoam team and I are pleased to announce that GeoChemFoam v5.1 is now available on ARCHER2.

Created by the Institute of GeoEnergy Engineering at Heriot-Watt University, the GeoChemFoam project is the world's most advanced open source pore-scale numerical simulator based on OpenFOAM.

GeoChemFoam has been designed specifically for researching pore-scale processes related to the energy sector's transition from fossil fuels and to our Net Zero future. The application can be used to simulate flow, reactions, and transport in 3D images obtained from X-ray micro-computed tomography, and has diverse applications in clean energy research, including:

  • Hydrogen storage
  • CO$_2$ capture and storage
  • Fuel cells and geothermal energy
  • Upscaling permeability in reservoirs
  • Contaminant transport and building materials.

GeoChemFoam provides state-of-the-art solvers for heat transfer, transport, multiphase flow, and chemical reactions in porous media, and has direct applications in various fields, including energy storage, environmental remediation, and materials science.

Currently, OpenFOAM’s pre- and post-processing tools are serial and, as such, our meshes are limited by the memory of one node. However, now that GeoChemFoam is on ARCHER2 users can exploit the full 256GB of ARCHER2’s regular nodes or even the 512GB of the larger nodes.

The associated eCSE programme is looking to parallelise two previously ‘inherently serial’ routines in OpenFOAM: the meshing tool blockMesh, and the partitioning tool decomposePar. If successful, this will enable vastly larger meshes as the memory of multiple nodes will become instantly available, enabling simulations on larger datasets, leading to more sophisticated research not just for GeoChemFoam users but for all the OpenFOAM community, especially those on the road to Exascale.

Further information

For more details on GeoChemFoam, including how to run it on ARCHER2, please see the wiki at github.com/GeoChemFoam

ARCHER2 instructions are included in the user wiki section: github.com/GeoChemFoam/GeoChemFoam/wiki/GeoChemFoam-on-ARCHER2.

ARCHER2, operated by EPCC, is the UK’s National High Performance Computing service and facilitates world-class science for UK researchers: https://www.epcc.ed.ac.uk/hpc-services/archer2

Author

Dr Gavin J Pringle
Dr Gavin Pringle