Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
22 commits
Select commit Hold shift + click to select a range
9ce86a8
ci: redirect uv cache to node-local TMPDIR self-hosted runners (#1385)
sbryngelson Apr 30, 2026
6787ae4
fix(ibm): fix IB restart and state output for adaptive-dt (cfl_dt) ru…
mrvandenboom Apr 30, 2026
bb10bcd
Support module unload in modules file; unload xalt on Phoenix GPU (#1…
sbryngelson Apr 30, 2026
ef86023
Fix Silo build with MPI-enabled HDF5 (#1386)
ChrisZYJ Apr 30, 2026
a314b0b
Fix post_process silo coord corruption from assumed-shape re-mapping …
drcole17 Apr 30, 2026
92e3124
Add two new simulation visualizations to homepage (#1392)
sbryngelson May 1, 2026
02eb4ec
muscl_eps (#1383)
ChrisZYJ May 1, 2026
1033ff6
Add WENO/MUSCL parameter guards with corresponding recon_type (#1391)
Cowsreal May 2, 2026
36fc04c
Improve registry type mismatch error (#1390)
ansonnazeba May 2, 2026
d513442
Fix bug with num_fluids = 3 and AMD (#1394)
anandrdbz May 4, 2026
585eed5
Add 2D isentropic vortex convergence test and hcid=283 GL IC
sbryngelson May 6, 2026
aa557b2
Add convergence CI workflow for 2D isentropic vortex
sbryngelson May 6, 2026
403470b
Use weak vortex (eps=0.01) to reveal WENO5 rate-5 convergence
sbryngelson May 6, 2026
a4dd621
Add 1D advection convergence test; split CI into 1D and 2D jobs
sbryngelson May 6, 2026
7558af4
Extend CI resolutions: 1D to N=256, 2D to N=128
sbryngelson May 6, 2026
b96d303
Switch 1D convergence to single-fluid Euler; add muscl_lim=0 unlimited
sbryngelson May 6, 2026
da94a26
Fix 2D convergence CI: start at N=32, lower WENO3 threshold to 1.8
sbryngelson May 6, 2026
22822a0
1D convergence: raise resolutions to 128-1024, tighten WENO1 threshol…
sbryngelson May 6, 2026
ff0cfa3
Add per-scheme min_N/max_N bounds and tighten convergence thresholds
sbryngelson May 6, 2026
af94035
Restrict convergence CI to workflow_dispatch only
sbryngelson May 6, 2026
12c8ac0
Trigger convergence CI on push to master and workflow_dispatch
sbryngelson May 6, 2026
3a069d2
Trigger convergence CI on push to any branch
sbryngelson May 6, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
60 changes: 60 additions & 0 deletions .github/workflows/convergence.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,60 @@
name: Convergence

on:
push:
workflow_dispatch:

jobs:
convergence-1d:
name: "1D Advection Convergence"
runs-on: ubuntu-latest
timeout-minutes: 60

steps:
- uses: actions/checkout@v4

- name: Setup Ubuntu
run: |
sudo apt update -y
sudo apt install -y cmake gcc g++ python3 python3-dev \
openmpi-bin libopenmpi-dev

- name: Setup Python
uses: actions/setup-python@v5
with:
python-version: "3.12"

- name: Initialize MFC
run: ./mfc.sh init

- name: Run 1D convergence tests
run: |
python toolchain/mfc/test/run_convergence_1d.py \
--resolutions 128 256 512 1024

convergence-2d:
name: "2D Isentropic Vortex Convergence"
runs-on: ubuntu-latest
timeout-minutes: 60

steps:
- uses: actions/checkout@v4

- name: Setup Ubuntu
run: |
sudo apt update -y
sudo apt install -y cmake gcc g++ python3 python3-dev \
openmpi-bin libopenmpi-dev

- name: Setup Python
uses: actions/setup-python@v5
with:
python-version: "3.12"

- name: Initialize MFC
run: ./mfc.sh init

- name: Run 2D convergence tests
run: |
python toolchain/mfc/test/run_convergence.py \
--resolutions 32 64 128
5 changes: 5 additions & 0 deletions docs/documentation/case.md
Original file line number Diff line number Diff line change
Expand Up @@ -445,6 +445,7 @@ See @ref equations "Equations" for the mathematical models these parameters cont
| `mp_weno` | Logical | Monotonicity preserving WENO |
| `muscl_order` | Integer | MUSCL order [1,2] |
| `muscl_lim` | Integer | MUSCL Slope Limiter: [1] minmod; [2] monotonized central; [3] Van Albada; [4] Van Leer; [5] SUPERBEE |
| `muscl_eps` | Real | MUSCL limiter slope-product threshold (default: hard-coded thresholds; set to 0 for textbook behavior) |
| `flux_lim` | Integer | Flux limiter for post-process: [1] minmod; [2] MUSCL; [3] OSPRE; [4] SUPERBEE |
| `int_comp` | Logical | THINC Interface Compression |
| `ic_eps` | Real | Interface compression threshold (default: 1e-4) |
Expand Down Expand Up @@ -542,6 +543,10 @@ It is recommended to set `weno_eps` to $10^{-6}$ for WENO-JS, and to $10^{-40}$
- `muscl_lim` specifies the slope limiter that is used in 2nd order MUSCL Reconstruction by an integer from 1 through 5.
`muscl_lim = 1`, `2`, `3`, `4`, and `5` correspond to minmod, monotonized central, Van Albada, Van Leer, and SUPERBEE, respectively.

- `muscl_eps` controls the slope-product activation threshold for all MUSCL limiters.
When not set (default), the threshold is 1e-9 for minmod/MC, and 1e-6 for others.
Setting `muscl_eps = 0` gives textbook limiter behavior where limiters activate whenever both slopes have the same sign.

- `int_comp` activates interface compression using THINC used in MUSCL Reconstruction, with control parameters (`ic_eps`, and `ic_beta`).

- `riemann_solver` specifies the choice of the Riemann solver that is used in simulation by an integer from 1 through 4.
Expand Down
2 changes: 2 additions & 0 deletions docs/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -58,6 +58,7 @@
{ name: "Mach 0.3 flow over a corgi (2M STL)", image: "res/simulations/u.png", computer: "HiPerGator", computerUrl: "https://www.rc.ufl.edu/about/hipergator/", accelerators: "2 GPUs", walltime: "80s", source: "https://www.youtube.com/watch?v=O8dSRqHLp_o" },
// Shock-droplet
{ name: "Shedding water droplet", image: "res/simulations/a.png", computer: "Summit", computerUrl: "https://www.olcf.ornl.gov/summit/", accelerators: "960 V100s", walltime: "4h", source: "https://www.youtube.com/watch?v=Gjj-qZkXcrg" },
{ name: "1K resolved particles", image: "res/simulations/x.jpg", computer: "Phoenix", computerUrl: "https://www.pace.gatech.edu/", accelerators: "4 A100s", walltime: "~1.5h", source: "https://www.youtube.com/watch?v=ufisHG0KkOU" },
// Biomedical & acoustics
{ name: "Burstwave lithotripsy", image: "res/simulations/k.png", computer: "Delta", computerUrl: "https://www.ncsa.illinois.edu/research/project-highlights/delta/", accelerators: "128 A100s", walltime: "30m", source: "https://www.youtube.com/watch?v=XWsUTaJXGF8" },
{ name: "Cavitation fragments kidney stone", image: "res/simulations/d.png", computer: "Summit", computerUrl: "https://www.olcf.ornl.gov/summit/", accelerators: "576 V100s", walltime: "30m", source: "https://doi.org/10.48550/arXiv.2305.09163" },
Expand All @@ -74,6 +75,7 @@
{ name: "Breakup of vibrated interface", image: "res/simulations/f.png", computer: "Summit", computerUrl: "https://www.olcf.ornl.gov/summit/", accelerators: "128 V100s", walltime: "4h", source: "https://www.youtube.com/watch?v=XQ3g1oSg8mc" },
{ name: "Viscous Taylor-Green vortex", image: "res/simulations/h.png", computer: "Delta", computerUrl: "https://www.ncsa.illinois.edu/research/project-highlights/delta/", accelerators: "128 A100s", walltime: "17h", source: "https://www.youtube.com/watch?v=7i2h08dlDQw" },
{ name: "Mach 1.5 shock-helium bubble", image: "res/simulations/t.png", computer: "Phoenix", computerUrl: "https://www.pace.gatech.edu/", accelerators: "1 A100", walltime: "1h", source: "https://www.youtube.com/watch?v=zDJoe0NYZsQ" },
{ name: "Sphere collision and wall rebound", image: "res/simulations/w.jpg", computer: "Phoenix", computerUrl: "https://www.pace.gatech.edu/", accelerators: "4 A100s", walltime: "~2h", source: "https://www.youtube.com/watch?v=5ugLuDtV0C0" },
];

const scalings = [
Expand Down
Binary file added docs/res/simulations/w.jpg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/res/simulations/x.jpg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Loading