LowMachReact-Hex Documentation

LowMachReact-Hex Documentation

Welcome to the technical documentation for LowMachReact-Hex, a Fortran 2008 MPI finite-volume solver for constant-density low-Mach / incompressible flow on hexahedral meshes.

The current staged solver supports incompressible projection, passive species transport, passive sensible-enthalpy transport, Cantera thermodynamic/property evaluation, VTU/PVTU output, and MPI-aware profiling. Variable-density low-Mach coupling, reactions, reaction heat release, and external radiation physics remain future work.

Documentation Sections

Current Solver Stage

The current solver should be interpreted as a constant-density projection code with optional passive scalar physics:

rho_flow = params%rho
p0       = params%background_press
h        = transported sensible enthalpy
T        = T(h, Y, p0)

Cantera thermodynamic density is available as rho_thermo, but it is diagnostic/future-use only and is not used by the pressure projection.

Project Goal

The primary objective is to provide a scalable, research-oriented framework for validating finite-volume flow, species, enthalpy, thermodynamic-property, and future radiation/chemistry coupling on hexahedral meshes.

Key Features

  • Fractional-Step Projection: Pressure-velocity coupling for constant-density incompressible flow.
  • Scale-on-Demand Species: Dynamic handling of passive species mass fractions.
  • Passive Sensible-Enthalpy Transport: Transported h with temperature recovered from h, Y, and p0.
  • Cantera Integration: Transport properties and thermodynamics through Cantera, including h <-> T, cp, lambda, and diagnostic rho_thermo.
  • Replicated Mesh MPI: Full mesh visibility on each rank with owned-cell decomposition for current flow/species/energy work.
  • MPI-Aware Profiling: Inclusive flat and nested timing reports for projection, species, energy, Cantera sync, output, and MPI communication.
  • VTU/PVTU Output: ParaView-ready visualization output and CSV diagnostics.

Generated using FORD (Fortran Documenter).