Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
32 commits
Select commit Hold shift + click to select a range
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
3592620
Add TENO5, WENO7, TENO7 to convergence runners
sbryngelson May 6, 2026
b43873d
Fix convergence CI: activate MFC venv before running runners
sbryngelson May 6, 2026
98623f1
Fix convergence runners: let MFC build case-specific binaries
sbryngelson May 6, 2026
09266d1
Use per-scheme CFL for WENO7/TENO7 to expose 7th-order spatial rate
sbryngelson May 6, 2026
c7d3ff4
Fix WENO7/TENO7 convergence test resolution windows
sbryngelson May 6, 2026
76e1d26
Add --num-ranks to convergence runners; use 4 MPI ranks in CI
sbryngelson May 7, 2026
4ea3182
Fix readers to collect data from all MPI ranks
sbryngelson May 7, 2026
5336315
Add RK3 temporal order verification runner and CI job
sbryngelson May 7, 2026
14e4076
Add RK1/RK2/RK3 temporal order verification; add --time-stepper to 1D…
sbryngelson May 7, 2026
1d8a888
Add conservation checks (density, momentum, energy) to all convergenc…
sbryngelson May 7, 2026
c188577
Fix CI: set OMPI_MCA_rmaps_base_oversubscribe=1 to allow 4 ranks on 2…
sbryngelson May 7, 2026
76e7e0c
Add Sod shock tube L1 self-convergence runner across all MFC schemes
sbryngelson May 7, 2026
728e1d7
Fix 2D convergence: set min_N=64 for WENO5/TENO5 and exclude momentum…
sbryngelson May 7, 2026
93380a5
Fix Sod runner: add min_N per scheme, set min_N=128 for MUSCL-SUPERBEE
sbryngelson May 7, 2026
781912b
Fix convergence CI: only run on push to master and PRs
sbryngelson May 7, 2026
5d2e710
Skip convergence example dirs in main regression test suite
sbryngelson May 7, 2026
4346aa5
Improve error handling in convergence runners: print stderr on failur…
sbryngelson May 7, 2026
1856ee5
Merge branch 'master' into feat/convergence-ci
sbryngelson May 7, 2026
2055a04
Merge branch 'master' into feat/convergence-ci
sbryngelson May 8, 2026
1ff9e8c
Merge branch 'master' into feat/convergence-ci
sbryngelson May 9, 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
126 changes: 126 additions & 0 deletions .github/workflows/convergence.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,126 @@
name: Convergence

on:
push:
branches: [master]
pull_request:
workflow_dispatch:

env:
OMPI_MCA_rmaps_base_oversubscribe: 1

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: |
source build/venv/bin/activate
python toolchain/mfc/test/run_convergence_1d.py \
--resolutions 64 128 256 512 1024 \
--num-ranks 4

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: |
source build/venv/bin/activate
python toolchain/mfc/test/run_convergence.py \
--resolutions 32 64 128 \
--num-ranks 4

convergence-sod:
name: "1D Sod Shock Tube L1 Convergence"
runs-on: ubuntu-latest
timeout-minutes: 90

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 Sod shock tube L1 convergence tests
run: |
source build/venv/bin/activate
python toolchain/mfc/test/run_sod.py \
--resolutions 64 128 256 512 \
--num-ranks 4

convergence-temporal:
name: "RK3 Temporal Order"
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 temporal order tests
run: |
source build/venv/bin/activate
python toolchain/mfc/test/run_temporal_order.py \
--num-ranks 4
Loading
Loading