P213 Di050016013 Marquee

Finite Element Heat and Mass Transfer Code (FEHM)

A Versatile Tool for Simulating Groundwater and Contaminant Flow in Diverse Environments

FEHM supports a range of projects including CO2 sequestration, environmental remediation, and nuclear waste isolation.

FEHM models groundwater and contaminant flow in both deep and shallow, fractured and unfractured porous media. Created in the 1970s for geothermal and hot dry rock reservoir simulations, it has expanded to study flow and mass transport in saturated and unsaturated zones, including the Yucca Mountain nuclear waste repository. Today, FEHM supports U.S. Department of Energy projects such as environmental remediation at the Nevada Test Site, groundwater protection, CO2 sequestration, Enhanced Geothermal Systems, oil and gas production, nuclear waste isolation, and Arctic permafrost studies.

FEHM can model a wide range of subsurface physics, from single-phase fluid flow for large-scale groundwater aquifers to complex multi-phase fluid dynamics with phase changes like boiling and condensing. This versatility enables FEHM to simulate the unsaturated zones around nuclear waste storage or the leakage of CO2 or brine through faults and wellbores. The primary numerical approach used in FEHM is the control volume (CV) method, which ensures exact conservation of mass and energy in fluid flow and heat transfer equations. For more precise stress calculations, the finite element (FE) method is an option, particularly for displacement equations. FEHM also offers flexibility in choosing methods, with options for finite element and a simple finite difference scheme to meet the demands of specific simulation scenarios.

Capabilities

  • 3-dimensional complex geometries with unstructured grids
  • Saturated and unsaturated media
  • Simulation of production from gas hydrate reservoirs
  • Simulation of geothermal reservoirs
  • Non-isothermal, multi-phase flow of gas, water, oil
  • Non-isothermal, multi-phase flow of air, water
  • Non-isothermal, multi-phase flow of CO2, water
  • Multiple chemically reactive and sorbing tracers
  • Preconditioned conjugate gradient solution of coupled linear equations
  • Fully implicit, fully coupled Newton Raphson solution of nonlinear equations
  • Double porosity and double porosity/double permeability capabilities
  • Control volume (CV) and finite element method (FE) methods
  • Coupled geomechanics (THM) problems (fluid flow and heat transfer coupled with stress/deformation) including non-linear elastic and plastic deformation, nonlinear functional dependence of rock properties (e.g. permeability, porosity, Young's modulus) on pressure, temperature and damage/stress

FEHM on GitHub

FEHM is open source and available for download.

Visit GitHub

Auxiliary FEHM Programs

FehmPyTests is a new test suite for FEHM developers to easily test new code and add new tests for existing or future functionality. FehmPyTests uses the Python unit test module and a general test method that can be called for each new test case. Future plans are to integrate FehmPyTests into the FEHM build and version control process. 

PyFEHM is an open-source (LGPL 2.1) Python library that provides classes and methods to support a scripting environment for the subsurface heat and mass transfer, and geomechanics code FEHM. It is inspired by a similar library, PyTOUGH, available for use with the TOUGH2 family of codes. 

FEHM.jl is a Julia interface for FEHM and is part of ZEM, an integrated open-source high-performance computational (HPC) framework for environmental management in Julia. 

WALKABOUT performs random walk particle tracking simulations of solute transport based on groundwater flow solutions from FEHM. A typical workflow for Walkabout within the FEHM system would use LaGriT to generate unstructured grids. FEHM then provides a discretized representation of the steady-state flow field to Walkabout. Given this discrete solution, Walkabout then reconstructs a groundwater flow field, and performs the random walk particle tracking calculation. 

PlumeCalc implements the Convolution-Based Particle Tracking (CBPT) method and requires auxiliary input information related to the flow and transport model as provided by FEHM. 

Mesh Generation Software for writing FEHM files include: 

  • LaGriT   (LANL Grid Generation ToolBox) for creating and writing FEHM mesh and model setup files. 
  • GRIDDER rectangular grid generator for creating and writing FEHM mesh files. 


Software used with FEHM input and output files include: 

FEHM Applications

SOILVISION SVOFFICE 5/WR integrates user friendly front-end numerical analysis and visualization software with the FEHM Control Volume Finite Element solution engine. Hydrogeologists can perform groundwater flow analysis of large-scale, thin layer regional models and leverage capabilities such as double porosity / double permeability and non-isothermal multiphase modeling of water / vapor. 

FEHM Copyright

Code: LA-CC-2012-083, No. C13022
Documentation: LA-UR-12-24493
Copyright © 2018. Triad National Security, LLC. All rights reserved.