Skip to content
Closed

Y1 #350

Show file tree
Hide file tree
Changes from 250 commits
Commits
Show all changes
657 commits
Select commit Hold shift + click to select a range
635ad49
Merge branch 'y1-update-cfl-dt' into y1-merge-cfl-dt
MTCam Jul 13, 2021
b32d7e6
Bring up-to-date with CFL/DT
MTCam Jul 13, 2021
2fe8e90
Update CFL reporting - report nodal max
MTCam Jul 13, 2021
5f13102
Merge branch 'enable-cfl-and-dt' into y1-merge-cfl-dt
MTCam Jul 13, 2021
8024d2b
Sync with cfl/dt
MTCam Jul 13, 2021
c4f8419
Add gitattributes
MTCam Jul 13, 2021
cf7e5cb
Bring up-to-date with main.
MTCam Jul 13, 2021
901b265
Merge branch 'main' into y1-production
MTCam Jul 14, 2021
8ea0727
Merge branch 'main' into mrg-main-to-y1
MTCam Jul 14, 2021
e4485e6
Merge branch 'navier-stokes' into mrg-ns-to-y1
MTCam Jul 14, 2021
441b24e
Correct whitespace in vortex example?
MTCam Jul 14, 2021
dcb906a
Merge remote-tracking branch 'origin/main' into y1-production
majosm Jul 14, 2021
493767e
fix CURRENT_FORK_OWNER
majosm Jul 14, 2021
fc278bb
Move the CURRENT_FORK_OWNER back to illinois-ceesd
MTCam Jul 14, 2021
257f18d
Update production testing setup to be slightly more robust against wi…
MTCam Jul 14, 2021
d92fc90
update production testing scripts
MTCam Jul 14, 2021
50a6778
Merge branch 'robustify-production-testing' into y1-production
MTCam Jul 14, 2021
5c631f2
Retain my (y1) copy of the production testing script - forever.
MTCam Jul 14, 2021
a4799cc
Merge main into y1
MTCam Jul 15, 2021
cc1d0c0
Merge branch 'main' into memoize-dv-main
MTCam Jul 15, 2021
d61e435
Use y1-production proper
MTCam Jul 15, 2021
ac3b155
Use y1 proper
MTCam Jul 15, 2021
eb15f5d
Update to memoization
MTCam Jul 15, 2021
eb19e95
Use y1-memoize branch for production
MTCam Jul 15, 2021
4f35ed3
Merge branch 'memoize-dv-main' into y1-memoize
MTCam Jul 15, 2021
330da96
Merge branch 'main' into memoize-dv-main
MTCam Jul 15, 2021
4005f6f
Use better names for the getters.
MTCam Jul 15, 2021
7c31144
Merged current memoize
MTCam Jul 15, 2021
daf98f1
Use y1 proper
MTCam Jul 16, 2021
700f3ad
Merge branch 'main' into mrgmn
MTCam Jul 16, 2021
6b62a3c
Merge branch 'main' into y1-production
MTCam Jul 16, 2021
9321865
Merge branch 'main' into y1-production
MTCam Jul 17, 2021
3b5d5f9
Laxify the examples in production (#441)
MTCam Jul 17, 2021
ad0e105
Merge branch 'main' into y1-production
MTCam Jul 17, 2021
0194703
Use array context comparison in init
MTCam Jul 18, 2021
ef9798c
Merge branch 'main' into mrgmn
MTCam Jul 18, 2021
1665ad0
Merge branch 'main' into mrgmn
MTCam Jul 19, 2021
aedbb43
Merge branch 'main' into y1-production
MTCam Jul 19, 2021
6e225de
Merge branch 'main' into y1-production
MTCam Jul 20, 2021
f1cd591
Pick up VTK requirement
MTCam Jul 20, 2021
0b07a5c
Merge branch 'main' into y1-production
MTCam Jul 20, 2021
6544c7d
Merge branch 'main' into y1-production
MTCam Jul 20, 2021
20dd0b7
Bring back time arg to init
MTCam Jul 21, 2021
763d7af
Merge branch 'add-av-to-ns-actx' into av-to-mrgns
MTCam Jul 21, 2021
c23e5ad
Merged up to y1-production
MTCam Jul 21, 2021
3f0ea39
Merged AV, current Euler, NS
MTCam Jul 21, 2021
dfcb4b5
Remove VTK from reqs
MTCam Jul 21, 2021
59e7afb
Remove jump operator, prefer built-in
MTCam Jul 21, 2021
b652906
Merge branch 'main' into mrgmn
MTCam Jul 21, 2021
ba3e59c
recover gmsh
MTCam Jul 21, 2021
ddd960e
Add local maximum species diffusivity calculation (#420)
jlevine18 Jul 22, 2021
927f6b2
Fix up the diffusivity presence check
MTCam Jul 22, 2021
47f70d1
Merge main
MTCam Jul 23, 2021
c13591e
Merge branch 'main' into y1-production
MTCam Jul 23, 2021
3586065
Merge branch 'main' into y1-production
MTCam Jul 23, 2021
0aabcf0
Merge branch 'navier-stokes' into remerge-ns
MTCam Jul 26, 2021
2ac137b
Fixed missing raise.
MTCam Jul 26, 2021
90505b3
Merge branch 'main' into mrgmn
MTCam Jul 26, 2021
71d7d0a
Merge branch 'main' into mrgmn
MTCam Jul 27, 2021
5acba88
Add exact soln to Poiseuille case
MTCam Jul 27, 2021
cfc7149
Correct initialization code in Poiseuille test.
MTCam Jul 27, 2021
4a2d590
Evict gmsh from requirements.txt (#461)
MTCam Jul 28, 2021
5e52d5f
Merge branch 'main' into y1-production
MTCam Jul 28, 2021
d54c7b1
Merge branch 'product-rule-grads' into mrgup
MTCam Jul 29, 2021
92626ab
Merge branch 'main' into y1-production
MTCam Jul 29, 2021
1ddeefe
Add a blurb to limit species mass fraction.
MTCam Jul 29, 2021
40f2f10
Merge branch 'spec-limit' into y1-production
MTCam Jul 29, 2021
6e94b7d
Merge branch 'main' into y1-production
MTCam Jul 30, 2021
32e47fc
Merge branch 'main' into y1-production
MTCam Jul 30, 2021
a25d80a
Merge branch 'main' into y1-production
MTCam Jul 31, 2021
39c5d81
Merge branch 'main' into y1-production
MTCam Aug 3, 2021
77ccb3e
Merge branch 'navier-stokes' into mrgup
MTCam Aug 3, 2021
dc9abbd
Switch temporarily to test
MTCam Aug 3, 2021
0bc1354
Undo production switch
MTCam Aug 3, 2021
70c2ccf
Fix up viscous timestep estimate for non-DOFArray diffusivities
MTCam Aug 3, 2021
57d771c
Fix up initializers with new EOS API
MTCam Aug 3, 2021
ba73afa
Fix up viscous timestep to deal with non DOFArrays
MTCam Aug 3, 2021
cd0f517
Merge branch 'main' into y1-production
MTCam Aug 3, 2021
f1c9938
Fix per new transport API
MTCam Aug 4, 2021
0c0701c
Merge branch 'main' into y1-production
MTCam Aug 4, 2021
f4655b6
Merge branch 'main' into y1-production
MTCam Aug 5, 2021
361cdec
Split inviscid/euler tests.
MTCam Aug 5, 2021
369fa01
Merge branch 'main' into y1-production
MTCam Aug 5, 2021
f2c9780
Fix misplaced rank check
MTCam Aug 13, 2021
993f901
Merge branch 'main' into y1-production
MTCam Aug 16, 2021
ae70244
Merge upstream
MTCam Aug 21, 2021
8830bb1
Update from upstream
MTCam Aug 21, 2021
660de61
Merge branch 'navier-stokes' into add-av-to-ns-actx
MTCam Aug 21, 2021
2cdf5b9
Add back gmsh to requirements
MTCam Aug 21, 2021
bdd9b8c
Merge branch 'add-disc-init-to-ns-actx' into build-y1
MTCam Aug 21, 2021
3ea4cae
Update from upstream
MTCam Aug 21, 2021
9caa2ec
Y1 production update (#487)
MTCam Aug 21, 2021
d10d059
Remove gmsh from requirements
MTCam Aug 21, 2021
bde93b9
Merge branch 'y1-production-update' into y1-production
MTCam Aug 21, 2021
913eea9
Fix up power law transport to be functional.
MTCam Aug 22, 2021
e2a6a55
Merge branch 'navier-stokes' into add-av-to-ns-actx
MTCam Aug 22, 2021
ed57e7b
Merge branch 'navier-stokes' into build-y1
MTCam Aug 22, 2021
ed4b28c
Merge branch 'add-av-to-ns-actx' into build-y1
MTCam Aug 22, 2021
409d31d
Merge branch 'add-disc-init-to-ns-actx' into build-y1
MTCam Aug 22, 2021
4b6ea9f
Merge branch 'build-y1' into y1-production
MTCam Aug 22, 2021
448e72e
Merge branch 'navier-stokes' into add-av-to-ns-actx
MTCam Aug 23, 2021
7d945a5
Merge branch 'navier-stokes' into build-y1
MTCam Aug 23, 2021
fcf6e4d
Merge branch 'add-av-to-ns-actx' into build-y1
MTCam Aug 23, 2021
e5c8db1
Merge branch 'add-disc-init-to-ns-actx' into build-y1
MTCam Aug 23, 2021
422ec67
Merge branch 'build-y1' into y1-production
MTCam Aug 23, 2021
954348d
Update doublemach example with developments from upstream
MTCam Aug 23, 2021
df9cd98
Merge branch 'navier-stokes' into add-av-to-ns-actx
MTCam Aug 23, 2021
d5fd42d
Merge branch 'navier-stokes' into build-y1
MTCam Aug 23, 2021
b32f544
Merge branch 'add-av-to-ns-actx' into build-y1
MTCam Aug 23, 2021
345c4e7
Merge branch 'add-disc-init-to-ns-actx' into build-y1
MTCam Aug 23, 2021
5b15475
Merge branch 'build-y1' into y1-production
MTCam Aug 23, 2021
c65c653
Fix bug in av boundary routine
MTCam Aug 23, 2021
c5e9d1b
Merge branch 'add-av-to-ns-actx' into build-y1
MTCam Aug 23, 2021
f013434
Merge branch 'add-disc-init-to-ns-actx' into build-y1
MTCam Aug 23, 2021
a177e87
Merge branch 'build-y1' into y1-production
MTCam Aug 23, 2021
e999d03
Remove whitespace to match upstream
MTCam Aug 23, 2021
6754804
Merge branch 'navier-stokes' into add-av-to-ns-actx
MTCam Aug 24, 2021
778ff88
Merge branch 'navier-stokes' into build-y1
MTCam Aug 24, 2021
a3405a6
Merge branch 'add-av-to-ns-actx' into build-y1
MTCam Aug 24, 2021
ba19bca
Merge branch 'add-disc-init-to-ns-actx' into build-y1
MTCam Aug 24, 2021
a3b349f
Merge branch 'build-y1' into y1-production
MTCam Aug 24, 2021
7c887e0
Merge branch 'navier-stokes' into add-av-to-ns-actx
MTCam Aug 25, 2021
1ea26ea
Merge branch 'navier-stokes' into build-y1
MTCam Aug 25, 2021
d118b89
Merge branch 'add-av-to-ns-actx' into build-y1
MTCam Aug 25, 2021
4d45181
Merge branch 'add-disc-init-to-ns-actx' into build-y1
MTCam Aug 25, 2021
96f47a2
Merge branch 'build-y1' into y1-production
MTCam Aug 25, 2021
124ac0b
Disable some portions of viscous flux temporarily for performance test.
MTCam Aug 26, 2021
414d24d
Add bozzle case to examples.
MTCam Aug 30, 2021
172f5ef
Add quick temporary util to get boundary info for performance debugging
MTCam Sep 1, 2021
116d768
Placate flake8
MTCam Sep 1, 2021
ebfec7d
Merge branch 'main' into mrgmain
MTCam Sep 12, 2021
b30e383
Delete bozzle from y1-production - causes CI fail.
MTCam Sep 12, 2021
8c953dd
mix-enable adiabaticnoslip
MTCam Sep 17, 2021
99bbe33
Merge branch 'main' into build-y1
MTCam Sep 20, 2021
db57d21
Merge branch 'navier-stokes' into build-y1
MTCam Sep 20, 2021
21df581
Merge branch 'build-y1' into mrgy1
MTCam Sep 20, 2021
2676958
Merge branch 'main' into test-y1
MTCam Sep 20, 2021
fc11f40
Switch-up production testing env temporarily
MTCam Sep 20, 2021
9bb772f
Update production install cause we are testing production branch itself
MTCam Sep 20, 2021
5ad71c2
Update production install cause we are testing production branch itself
MTCam Sep 20, 2021
4c81845
Revert to usual env before merge with y1-production
MTCam Sep 20, 2021
d429ee0
Merge branch 'main' into build-y1
MTCam Sep 20, 2021
85992e0
Merge branch 'navier-stokes' into build-y1
MTCam Sep 20, 2021
a208d96
Merge branch 'build-y1' into y1-production
MTCam Sep 20, 2021
b7ef6d4
Merge branch 'thermochem-override' into build-y1
MTCam Sep 23, 2021
aed7d23
Merge branch 'build-y1' into y1-production
MTCam Sep 23, 2021
815fcfc
Merge branch 'main' into build-y1
MTCam Sep 24, 2021
54017ac
Merge branch 'build-y1' into y1-production
MTCam Sep 24, 2021
6128d44
Correct some mistakes in isothermal noslip imp
MTCam Oct 6, 2021
ed0ae0d
Use correct BC
MTCam Oct 6, 2021
10724ec
Add hotplate example
MTCam Oct 8, 2021
60a7b86
Fix Poiseuille test boundary issue
MTCam Oct 11, 2021
6e4cb1d
Switch doublemach example back to Euler.
MTCam Oct 15, 2021
dbd1040
Merge from upstream
MTCam Oct 18, 2021
ca13674
account for the fact that nodal reductions now return device scalars
majosm Sep 24, 2021
599d7e6
temporarily change grudge branch
majosm Oct 11, 2021
dfb511d
account for h_min/max_from_volume returning device scalars
majosm Oct 20, 2021
47f1447
use arraycontext.outer in flux functions (#517)
majosm Oct 21, 2021
71d844b
Merge branch 'main' into navier-stokes
MTCam Oct 21, 2021
d7c6266
Merge branch 'main' into nodal-reduction-device-scalar
majosm Oct 22, 2021
50cd5dd
Update ci.yaml (#529)
matthiasdiener Oct 24, 2021
22d2516
Merge branch 'main' into nodal-reduction-device-scalar
majosm Oct 25, 2021
03a6ec8
Merge branch 'main' into navier-stokes
MTCam Oct 25, 2021
aa76745
Merge branch 'main' into mrgmain
MTCam Oct 25, 2021
9cc8d60
Use new thermochem wrapper class (#512)
MTCam Oct 25, 2021
2ff77c0
Merge upstream
MTCam Oct 26, 2021
980f6dd
Add backwards-compatible thermochem interface.
MTCam Oct 26, 2021
598519e
Update nsmix for new thermochem interface.
MTCam Oct 26, 2021
43a21e7
Merge branch 'main' into navier-stokes
MTCam Oct 26, 2021
28e67b9
Update from upstream
MTCam Oct 26, 2021
abe99d1
remove explicit actx argument from advance_state
majosm Oct 26, 2021
b7ce3a6
Merge branch 'main' into nodal-reduction-device-scalar
majosm Oct 26, 2021
35191f4
Switch to arraycontext@main
MTCam Oct 26, 2021
11c6422
restore grudge branch
majosm Oct 28, 2021
426e7e2
test production driver changes
majosm Oct 28, 2021
8a9689b
Switch nozzle production driver temporarily.
MTCam Oct 28, 2021
eb19210
Merge device scalars from upstream
MTCam Oct 28, 2021
1ca2978
Update downstream drivers with device scalars
MTCam Oct 28, 2021
32aa4fd
Use *this* branch as production.
MTCam Oct 28, 2021
aaf7734
Source the env file.
MTCam Oct 28, 2021
a97529f
Correct typo
MTCam Oct 28, 2021
c379efa
use to_numpy where approp
MTCam Oct 29, 2021
6464542
Use Y2-production branch for isolator driver
MTCam Oct 29, 2021
563cb0f
Revert the CI settings to new drivers and empty customization
MTCam Oct 29, 2021
6bd03c7
Account for grudge nodal reductions returning device scalars (#518)
majosm Oct 29, 2021
61de24a
Merge upstream
MTCam Oct 29, 2021
dbf1aea
Install mirgecom from existing source, not from scratch.
MTCam Oct 29, 2021
24340fa
Spell conda-env.yml correctly
MTCam Oct 29, 2021
044c852
Set an install prefix
MTCam Oct 29, 2021
12e1360
Find activation script in install location.
MTCam Oct 29, 2021
7881b2a
Merge remote-tracking branch 'origin/MTCam-patch-2' into ci-test-prod…
MTCam Oct 29, 2021
4151991
Configure production testing
MTCam Oct 29, 2021
9d6e82a
Debug ci more
MTCam Oct 29, 2021
ee2d099
full clone
matthiasdiener Oct 29, 2021
7c0fc6f
Clean up production testing scripts
MTCam Oct 29, 2021
65b8da2
Fix script bug
MTCam Oct 29, 2021
54bf4ca
Merge branch 'MTCam-patch-2' into ci-test-production
MTCam Oct 29, 2021
4142d83
Clean up further
MTCam Oct 29, 2021
f4a4af1
Merge branch 'MTCam-patch-2' into ci-test-production
MTCam Oct 29, 2021
8f40e17
Add some production testing docs
MTCam Oct 30, 2021
8a461fa
Sharpen slightly
MTCam Oct 30, 2021
ad8a04b
Sharpen more
MTCam Oct 30, 2021
57adc52
Breakout functionality for hand-running.
MTCam Oct 30, 2021
91650bd
Merge branch 'MTCam-patch-2' into ci-test-production
MTCam Oct 30, 2021
837abd4
Update CI for changes to production test scripts.
MTCam Oct 30, 2021
d4ffa7c
Merge branch 'MTCam-patch-2' into ci-test-production
MTCam Oct 30, 2021
0f3ca63
Rename for consistency
MTCam Oct 30, 2021
b51c5ce
Merge branch 'MTCam-patch-2' into ci-test-production
MTCam Oct 30, 2021
e9fde38
Correct some script names in doc.
MTCam Oct 30, 2021
816418c
Clean up more, remove cruft.
MTCam Oct 30, 2021
492656d
Merge branch 'MTCam-patch-2' into ci-test-production
MTCam Oct 30, 2021
b053d56
Uncustomize production env.
MTCam Oct 30, 2021
8034ba5
Uncustomize production env.
MTCam Oct 30, 2021
314b94e
Merge branch 'MTCam-patch-2' into ci-test-production
MTCam Oct 30, 2021
52e7e14
Merge branch 'ci-test-production' into y1-update-ci
MTCam Oct 30, 2021
0f3a188
Make CI production testing more robust and add documentation (#545)
MTCam Oct 30, 2021
3642ca5
Update integrators to handle reference state
MTCam Nov 1, 2021
c76a91b
update to use reference state for seeding temperature
MTCam Nov 1, 2021
a7b3575
Update to use reference state
MTCam Nov 1, 2021
0d0c040
Publicize temperature update routine for use in health checking.
MTCam Nov 1, 2021
3a6cf36
Merge branch 'main' into remove-advance-state-actx
majosm Nov 2, 2021
0c56fb1
rename _evaluate_state -> _force_evaluation
majosm Nov 2, 2021
c0d0d3e
Merge remote-tracking branch 'origin/main' into y1-production
majosm Nov 3, 2021
23e8100
Merge branch 'remove-advance-state-actx' into y1-production-remove-ad…
majosm Nov 3, 2021
503a940
Remove explicit `actx` argument from `advance_state` (#530)
majosm Nov 3, 2021
6e8bf71
Merge remote-tracking branch 'origin/main' into y1-production
majosm Nov 3, 2021
4e3aaf5
Refactor to incrementally centralize EOS functions
Nov 4, 2021
6cacf6c
Switch eos-side handling reference_state -> temperature_seed
Nov 4, 2021
947a546
Banish reference state from this machinery
Nov 4, 2021
7ac8b17
Use multistate in driver.
Nov 4, 2021
cd175b9
Update isolator production driver to main branch
MTCam Nov 4, 2021
cf17ab4
Update inviscid flux tests to new interface
Nov 4, 2021
6dce7bb
Switch to main branch for isolator production driver.
Nov 4, 2021
9ac881b
Merge branch 'MTCam-patch-1' into y1-production
Nov 4, 2021
ee7ec33
Update isolator production driver to main branch (#548)
MTCam Nov 4, 2021
f48f5d9
Merge branch 'main' into y1-production
Nov 4, 2021
49ecc9d
Update NS to new inviscid flux interface.
Nov 4, 2021
70720de
Merge branch 'y1-production' into seed-boundary-temperature
Nov 4, 2021
18591a1
Update inviscid divergence flux boundary interface.
Nov 5, 2021
97013bb
Sharpen docstrings
Nov 5, 2021
6a2acb0
Merge branch 'inviscid-boundary-interface' into mrgibi
Nov 5, 2021
e06aafb
Correct interface error
Nov 5, 2021
03a5e22
Merge branch 'main' into mrgmn2
Nov 5, 2021
78f215f
Merge from upstream
Nov 5, 2021
f800b4d
Merge upstream
Nov 5, 2021
a2787bc
Remove extraneous indentation in PR dev docs
inducer Nov 5, 2021
5b78cb2
Update from downstream
Nov 5, 2021
102d83e
Merge branch 'main' into inviscid-boundary-interface
Nov 5, 2021
f27c982
Merge branch 'inviscid-boundary-interface' into navier-stokes
Nov 5, 2021
0f6c0ec
Merge branch 'navier-stokes' into y1-production
Nov 5, 2021
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
2 changes: 2 additions & 0 deletions .ci-support/.gitattributes
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
production-setup.sh merge=ours
production-driver-setup.sh merge=ours
19 changes: 19 additions & 0 deletions .ci-support/production-driver-setup.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
#!/bin/bash

set -x

PRODUCTION_DRIVER_NAME="drivers_y1-nozzle"
PRODUCTION_DRIVER_CHANGE_OWNER="illinois-ceesd"
PRODUCTION_DRIVER_CHANGE_BRANCH="update-y1-callbacks"
CURRENT_BRANCH=$(git rev-parse --abbrev-ref HEAD)
git config user.email "stupid@dumb.com"
git config user.name "CI Runner"
if [ -n "${PRODUCTION_DRIVER_CHANGE_BRANCH}" ]; then
git remote add driver_change https://github.com/${PRODUCTION_DRIVER_CHANGE_OWNER}/${PRODUCTION_DRIVER_NAME}
git fetch driver_change
git checkout driver_change/${PRODUCTION_DRIVER_CHANGE_BRANCH}
git checkout ${CURRENT_BRANCH}
git merge driver_change/${PRODUCTION_DRIVER_CHANGE_BRANCH} --no-edit
else
echo "No updates to production driver branch (${CURRENT_BRANCH})"
fi
25 changes: 25 additions & 0 deletions .ci-support/production-setup.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
#!/bin/bash

set -x
PRODUCTION_CHANGE_OWNER=""
PRODUCTION_CHANGE_BRANCH=""
CURRENT_BRANCH=$(git rev-parse --abbrev-ref HEAD)
git config user.email "stupid@dumb.com"
git config user.name "CI Runner"
if [ -n "${PRODUCTION_CHANGE_BRANCH}" ]; then
git remote add production_change https://github.com/${PRODUCTION_CHANGE_OWNER}/mirgecom
git fetch production_change
git checkout production_change/${PRODUCTION_CHANGE_BRANCH}
git checkout ${CURRENT_BRANCH}
git merge production_change/${PRODUCTION_CHANGE_BRANCH} --no-edit
else
echo "No updates to production branch (${CURRENT_BRANCH})"
fi
CURRENT_FORK_OWNER="illinois-ceesd"
Comment thread
MTCam marked this conversation as resolved.
Outdated
if [ -n "${GITHUB_HEAD_REF}" ]; then
git remote add changes https://github.com/${CURRENT_FORK_OWNER}/mirgecom
git fetch changes
git checkout changes/${GITHUB_HEAD_REF}
git checkout ${CURRENT_BRANCH}
git merge changes/${GITHUB_HEAD_REF} --no-edit
fi
30 changes: 30 additions & 0 deletions .github/workflows/ci.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -156,3 +156,33 @@ jobs:
source emirge/config/activate_env.sh
cd mirgecom/examples
python -m mpi4py ./wave-eager-mpi.py

y1:
name: Y1 production testing
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [ubuntu-latest, macos-latest]

steps:
- uses: actions/checkout@v2
- name: Prepare Y1 environment
run: |
[[ $(uname) == Linux ]] && sudo apt-get update && sudo apt-get install -y openmpi-bin libopenmpi-dev
[[ $(uname) == Darwin ]] && brew update && brew install mpich
cd ..
git clone https://github.com/illinois-ceesd/emirge emirge.y1
cd emirge.y1
./install.sh --branch=y1-production
cd mirgecom
. ../../mirgecom/.ci-support/production-setup.sh

- name: Run Y1 production test
run: |
cd ..
source emirge.y1/config/activate_env.sh
git clone https://github.com/illinois-ceesd/drivers_y1-nozzle y1-production-driver
cd y1-production-driver
. ../mirgecom/.ci-support/production-driver-setup.sh
cd smoke_test
python -m mpi4py ./nozzle.py -i run_params.yaml
4 changes: 4 additions & 0 deletions doc/misc.rst
Original file line number Diff line number Diff line change
Expand Up @@ -71,3 +71,7 @@ References
`(DOI) <https://doi.org/10.1007/978-3-642-59721-3_14>`__
.. [Ihme_2014] Yu Lv and Matthias Ihme (2014) Journal of Computationsl Physics 270 105 \
`(DOI) <http://dx.doi.org/10.1016/j.jcp.2014.03.029>`__
.. [Persson_2012] P. Persson and J. Peraire, AIAA 44 \
`(DOI) <https://doi.org/10.2514/6.2006-112>`__
.. [Woodward_1984] Woodward and Colella, Journal of Computational Physics, 54 \
`(DOI) <https://doi.org/10.1006/jcph.1996.5572>`__
4 changes: 4 additions & 0 deletions doc/operators/artificial_viscosity.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
Artificial Viscosity
====================

.. automodule:: mirgecom.artificial_viscosity
1 change: 1 addition & 0 deletions doc/operators/operators.rst
Original file line number Diff line number Diff line change
Expand Up @@ -6,4 +6,5 @@ Operators

wave-eq
diffusion
artificial_viscosity
gas-dynamics
77 changes: 58 additions & 19 deletions examples/autoignition-mpi.py
Original file line number Diff line number Diff line change
Expand Up @@ -43,12 +43,12 @@

from mirgecom.euler import euler_operator
from mirgecom.simutil import (
get_sim_timestep,
generate_and_distribute_mesh,
write_visfile
)
from mirgecom.io import make_init_message
from mirgecom.mpi import mpi_entry_point

from mirgecom.integrators import rk4_step
from mirgecom.steppers import advance_state
from mirgecom.boundary import AdiabaticSlipBoundary
Expand Down Expand Up @@ -144,12 +144,11 @@ def main(ctx_factory=cl.create_some_context, use_logmgr=False,
rst_pattern = (
rst_path + "{cname}-{step:04d}-{rank:04d}.pkl"
)
restarting = rst_filename is not None
if restarting: # read the grid from restart data
rst_fname = f"{rst_filename}-{rank:04d}.pkl"
if rst_filename: # read the grid from restart data
rst_filename = f"{rst_filename}-{rank:04d}.pkl"

from mirgecom.restart import read_restart_data
restart_data = read_restart_data(actx, rst_fname)
restart_data = read_restart_data(actx, rst_filename)
local_mesh = restart_data["local_mesh"]
local_nelements = local_mesh.nelements
global_nelements = restart_data["global_nelements"]
Expand All @@ -172,12 +171,17 @@ def main(ctx_factory=cl.create_some_context, use_logmgr=False,
)
nodes = thaw(actx, discr.nodes())

vis_timer = None

if logmgr:
logmgr_add_device_name(logmgr, queue)
logmgr_add_device_memory_usage(logmgr, queue)
logmgr_add_many_discretization_quantities(logmgr, discr, dim,
extract_vars_for_logging, units_for_logging)

vis_timer = IntervalTimer("t_vis", "Time spent visualizing")
logmgr.add_quantity(vis_timer)

logmgr.add_watches([
("step.max", "step = {value}, "),
("t_sim.max", "sim time: {value:1.6e} s\n"),
Expand All @@ -189,9 +193,6 @@ def main(ctx_factory=cl.create_some_context, use_logmgr=False,
("t_log.max", "log walltime: {value:6g} s")
])

vis_timer = IntervalTimer("t_vis", "Time spent visualizing")
logmgr.add_quantity(vis_timer)

# {{{ Set up initial state using Cantera

# Use Cantera for initialization
Expand Down Expand Up @@ -262,7 +263,7 @@ def main(ctx_factory=cl.create_some_context, use_logmgr=False,
my_boundary = AdiabaticSlipBoundary()
boundaries = {BTAG_ALL: my_boundary}

if restarting:
if rst_filename:
current_step = rst_step
current_t = rst_time
if logmgr:
Expand Down Expand Up @@ -315,16 +316,25 @@ def main(ctx_factory=cl.create_some_context, use_logmgr=False,
f" {eq_pressure=}, {eq_temperature=},"
f" {eq_density=}, {eq_mass_fractions=}")

def my_write_viz(step, t, state, dv=None, production_rates=None):
def my_write_status(dt, cfl):
status_msg = f"------ {dt=}" if constant_cfl else f"----- {cfl=}"
if rank == 0:
logger.info(status_msg)

def my_write_viz(step, t, dt, state, ts_field=None, dv=None,
production_rates=None, cfl=None):
if dv is None:
dv = eos.dependent_vars(state)
if production_rates is None:
production_rates = eos.get_production_rates(state)
if ts_field is None:
ts_field, cfl, dt = my_get_timestep(t=t, dt=dt, state=state)
viz_fields = [("cv", state),
("dv", dv),
("production_rates", production_rates)]
("production_rates", production_rates),
("dt" if constant_cfl else "cfl", ts_field)]
write_visfile(discr, viz_fields, visualizer, vizname=casename,
step=step, t=t, overwrite=True)
step=step, t=t, overwrite=True, vis_timer=vis_timer)

def my_write_restart(step, t, state):
rst_fname = rst_pattern.format(cname=casename, step=step, rank=rank)
Expand Down Expand Up @@ -358,6 +368,23 @@ def my_health_check(dv):

return health_error

def my_get_timestep(t, dt, state):
# richer interface to calculate {dt,cfl} returns node-local estimates
t_remaining = max(0, t_final - t)
if constant_cfl:
from mirgecom.inviscid import get_inviscid_timestep
ts_field = current_cfl * get_inviscid_timestep(discr, eos=eos, cv=state)
from grudge.op import nodal_min
dt = nodal_min(discr, "vol", ts_field)
cfl = current_cfl
else:
from mirgecom.inviscid import get_inviscid_cfl
ts_field = get_inviscid_cfl(discr, eos=eos, dt=dt, cv=state)
from grudge.op import nodal_max
cfl = nodal_max(discr, "vol", ts_field)

return ts_field, cfl, min(t_remaining, dt)

def my_pre_step(step, t, dt, state):
try:
dv = None
Expand All @@ -369,6 +396,7 @@ def my_pre_step(step, t, dt, state):
do_viz = check_step(step=step, interval=nviz)
do_restart = check_step(step=step, interval=nrestart)
do_health = check_step(step=step, interval=nhealth)
do_status = check_step(step=step, interval=nstatus)

if do_health:
dv = eos.dependent_vars(state)
Expand All @@ -379,25 +407,30 @@ def my_pre_step(step, t, dt, state):
logger.info("Fluid solution failed health check.")
raise MyRuntimeError("Failed simulation health check.")

ts_field, cfl, dt = my_get_timestep(t=t, dt=dt, state=state)

if do_status:
my_write_status(dt, cfl)

if do_restart:
my_write_restart(step=step, t=t, state=state)

if do_viz:
production_rates = eos.get_production_rates(state)
if dv is None:
dv = eos.dependent_vars(state)
my_write_viz(step=step, t=t, state=state, dv=dv,
production_rates=production_rates)
my_write_viz(step=step, t=t, dt=dt, state=state, dv=dv,
production_rates=production_rates,
ts_field=ts_field, cfl=cfl)

except MyRuntimeError:
if rank == 0:
logger.info("Errors detected; attempting graceful exit.")
my_write_viz(step=step, t=t, state=state)
my_write_viz(step=step, t=t, dt=dt, state=state)
my_write_restart(step=step, t=t, state=state)
raise

t_remaining = max(0, t_final - t)
return state, min(dt, t_remaining)
return state, dt

def my_post_step(step, t, dt, state):
# Logmgr needs to know about EOS, dt, dim?
Expand All @@ -413,6 +446,9 @@ def my_rhs(t, state):
boundaries=boundaries, eos=eos)
+ eos.get_species_source_terms(state))

current_dt = get_sim_timestep(discr, current_state, current_t, current_dt,
current_cfl, eos, t_final, constant_cfl)

current_step, current_t, current_state = \
advance_state(rhs=my_rhs, timestepper=timestepper,
pre_step_callback=my_pre_step,
Expand All @@ -425,8 +461,11 @@ def my_rhs(t, state):

final_dv = eos.dependent_vars(current_state)
final_dm = eos.get_production_rates(current_state)
my_write_viz(step=current_step, t=current_t, state=current_state, dv=final_dv,
production_rates=final_dm)
ts_field, cfl, dt = my_get_timestep(t=current_t, dt=current_dt,
state=current_state)
my_write_viz(step=current_step, t=current_t, dt=dt, state=current_state,
dv=final_dv, production_rates=final_dm, ts_field=ts_field, cfl=cfl)
my_write_status(dt=dt, cfl=cfl)
my_write_restart(step=current_step, t=current_t, state=current_state)

if logmgr:
Expand Down
Loading