Skip to content

comp-physics/dg-igr-mfem

Repository files navigation

MFEM IGR-DG Paper Code

This repository contains the MFEM implementation used for the multidimensional results in Information geometric regularized Discontinuous Galerkin Semidiscretization of the Euler Equations. The paper-reproduction-v1.0.0 tag identifies the frozen paper snapshot.

Build

The supported configuration is CPU-only and requires Spack.

git clone --recurse-submodules git@github.com:comp-physics/dg-igr-mfem.git
cd dg-igr-mfem
source /path/to/spack/share/spack/setup-env.sh
./build.sh --cpu-only -j 8 --clean

The build script creates the Spack environment, builds the pinned MFEM submodule, builds the examples, and runs CTest serially.

Paper Cases

Run the commands from the repository root. Sedov and Inoue use the retained runner arguments with the paper figure refinement. Their retained metadata covers -rp 0 and -rp 1; the figure paths establish -rp 2. The cylinder command and 64-rank count come from its successful run_metadata.json record.

Sedov-Taylor Blast Wave

mpirun -np 6 \
  ./build-cpu/examples/sedov_taylor_blast/sedov_taylor_blast \
  -no-glvis -is L2 -ig L2 \
  -ca 5.0 -o 3 -rs 0 -rp 2 -tf 1.0 -dt_save 0.01 -c 0.25

Inoue-Hattori Shock-Vortex Interaction

mpirun -np 6 \
  ./build-cpu/examples/inoue_hattori_large_domain/inoue_hattori_large_domain_slip_tb \
  -no-glvis -is L2 -ig L2 \
  -ca 5.0 -o 3 -rs 0 -rp 2 -tf 10.0 -dt_save 0.1 -c 0.25

Supersonic Flow Past a Cylinder

mpirun -np 64 \
  ./build-cpu/examples/supersonic_example_w_igr/supersonic_cylinder_w_igr \
  -rs 0 -rp 3 -o 2 -c 0.95 -vs 10 -ca 1.0 \
  -is L2 -ig L2 -vx 3.0 -vy 0.0 \
  --igr-linear-solver gmres -dt_save 0.01

VTK output is written below out/. The same commands are stored in paper/cases.json and can be inspected with:

python3 scripts/run_paper_cases.py --profile full

Releases

Contributors

Languages