Skip to content

84 equilibrium normal shock - #92

Merged
jmag722 merged 11 commits into
masterfrom
84-equilibrium-normal-shock
Oct 10, 2026
Merged

jmag722 merged 11 commits into
masterfrom
84-equilibrium-normal-shock

Conversation

@jmag722

@jmag722 jmag722 commented Oct 10, 2026

Copy link
Copy Markdown
Owner

closes #84

- add methods for computing equilibrium normal shock properties
- create equilibrium gas thermo module for computing eq. speed of sound
  and specific heat ratio
- cantera Solution | SolutionArray typealias with docs
- good tests (normal shock incomplete though)
- add cantera as dependency, matplotlib as optional dependency
---
Signed-off-by: Jared Magnusson <jmag722@gmail.com>
- finished unit test from Huber paper, passed
- corrected thermodynamic variable name (isentropic exponent better)
---
Signed-off-by: Jared Magnusson <jmag722@gmail.com>
- moved Huber test info to CSV files
- Huber and ShockCal tests passing within 1% for most all of them
---
Signed-off-by: Jared Magnusson <jmag722@gmail.com>
- add markdown for zensical
- update docstrings
- add comments about why the mole fraction debacle is the way it is.
  wait for Scipy 1.19 when find_root gets preserve_shape to simplify this
---
Signed-off-by: Jared Magnusson <jmag722@gmail.com>
@jmag722 jmag722 self-assigned this Oct 10, 2026
@jmag722 jmag722 added the enhancement New feature or request label Oct 10, 2026
@jmag722 jmag722 linked an issue Oct 10, 2026 that may be closed by this pull request
@codecov

codecov Bot commented Oct 10, 2026 •

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 97.62846% with 6 lines in your changes missing coverage. Please review.
✅ Project coverage is 96.21%. Comparing base (67e2123) to head (a749045).

Files with missing lines Patch % Lines
src/minuteman/eq/normal_shock.py 97.27% 2 Missing and 2 partials ⚠️
src/minuteman/eq/cli_normal_shock.py 96.29% 1 Missing and 1 partial ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##           master      #92      +/-   ##
==========================================
+ Coverage   96.00%   96.21%   +0.20%     
==========================================
  Files          21       24       +3     
  Lines        1704     1957     +253     
  Branches       75       86      +11     
==========================================
+ Hits         1636     1883     +247     
- Misses         39       42       +3     
- Partials       29       32       +3     

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

- it's causing problems with find_root, it's EOL anyways
---
Signed-off-by: Jared Magnusson <jmag722@gmail.com>
---
Signed-off-by: Jared Magnusson <jmag722@gmail.com>
- increase coverage (mass frac, speed of sound frozen)
- add tests for out of bounds issues
---
Signed-off-by: Jared Magnusson <jmag722@gmail.com>
- fix equation
- add references
---
Signed-off-by: Jared Magnusson <jmag722@gmail.com>

@jmag722 jmag722 left a comment

Copy link
Copy Markdown
Owner Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

looks good

- speed_of_sound and lookup_table_by_pressure_temperature now call equilibrate() to ensure states are in equilibrium
- lookup_table_by_states does not call equilibrate because it's unknown
  which properties the user wants to hold constant
---
Signed-off-by: Jared Magnusson <jmag722@gmail.com>
- add CLI support for p-T and rho-T inputs
- add function for calculating via rho-T directly
- add necessary bounds checking and regular tests
- update docs
---
Signed-off-by: Jared Magnusson <jmag722@gmail.com>
---
Signed-off-by: Jared Magnusson <jmag722@gmail.com>
@jmag722
jmag722 merged commit 74d3cb8 into master Oct 10, 2026
6 checks passed
@jmag722
jmag722 deleted the 84-equilibrium-normal-shock branch October 10, 2026 17:04
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Equilibrium normal shock

1 participant