-
Notifications
You must be signed in to change notification settings - Fork 121
Add example case for convergence test in 1D #1030
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: master
Are you sure you want to change the base?
Conversation
PR Reviewer Guide 🔍Here are some key observations to aid the review process:
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
This PR removes support for the pi constant in analytical patch expressions and adds a new 1D convergence example that demonstrates spatial accuracy testing. The removal of pi from the rhs_replace dictionary in the case parser is problematic because the new example and existing examples use pi in analytical expressions.
- Removes
piconstant support from the analytical patch expression parser - Adds a 1D two-component advection convergence test example with automation scripts
- Provides plotting utilities for analyzing convergence rates
Reviewed Changes
Copilot reviewed 5 out of 5 changed files in this pull request and generated 4 comments.
Show a summary per file
| File | Description |
|---|---|
| toolchain/mfc/case.py | Removes pi from the rhs_replace dictionary that maps variable names in analytical expressions |
| examples/1D_convergence/submitJobs.sh | Adds shell script to automate running convergence tests across multiple grid resolutions and WENO orders |
| examples/1D_convergence/plot.py | Adds Python script to compute and visualize L1, L2, and Linf error norms |
| examples/1D_convergence/case.py | Adds case file for 1D two-fluid advection test with analytical initial conditions using sinusoidal patterns |
| examples/1D_convergence/README.md | Adds documentation explaining how to run the convergence test |
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## master #1030 +/- ##
=======================================
Coverage 46.02% 46.02%
=======================================
Files 67 67
Lines 13437 13437
Branches 1550 1550
=======================================
Hits 6185 6185
Misses 6362 6362
Partials 890 890 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
User description
Description
This PR adds an example case with automated scripts to create convergence test results for a 1D advection case. It also fixes a toolchain error that resulted in reduced convergence when
piwas used for analaytic patches.Type of change
Scope
How Has This Been Tested?
oldConvergence.pdf
PR Type
Enhancement, Bug fix
Description
Add 1D convergence test example with automated scripts
Fix toolchain error with pi constant in analytic patches
Provide documentation and setup instructions for convergence testing
Diagram Walkthrough
File Walkthrough
case.py
1D convergence test case configuration generatorexamples/1D_convergence/case.py
convergence simulation
Riemann solver, and grid resolution
with sinusoidal density/volume fraction profiles
plot.py
Convergence error analysis and visualization toolexamples/1D_convergence/plot.py
grid resolutions and WENO orders
initial conditions
1, 3, and 5
submitJobs.sh
Automated job submission script for convergence testsexamples/1D_convergence/submitJobs.sh
orders (1, 3, 5)
appropriate parameters
README.md
Convergence test example documentation and setup guideexamples/1D_convergence/README.md
and usage
configuring paths
script
plots
case.py
Fix pi constant handling in analytic patchestoolchain/mfc/case.py
expressions
reduction
case definitions