Update: refactor JumpConditionsSolver and shockturbulence subpackage to stabilize RH-slope calculations and enable upstream parametric sweeps#1108
Merged
AlbertoCuadra merged 19 commits intomasterfrom Jan 14, 2026
Conversation
…ize`solve` method within `ShockTurbulenceSolver` class
…Gammas1`, `Gammas2`, `Gammas3`) significantly improved robustness, performance, and simplicity
…` from `ChemicalSystem` to avoid stale values
JumpConditionsSolver and shockturbulence subpackage to stabilize Gammas and enable upstream parametric sweepsJumpConditionsSolver and shockturbulence subpackage to stabilize RH-slope calculations and enable upstream parametric sweeps
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Update
JumpConditionsSolverThis PR fixes inconsistent inconsistent values of Gammas1 and Gammas3 in
JumpConditionsSolverwhen using scalar Mach inputs (e.g.,M1 = 5). The previous implementation relied on interpolation along the Hugoniot curve, which is not well-defined for a single point and can change when extra points are added.Gammas1 and Gammas3 now enforce the constant post-shock density constraint using the chain-rule, leveraging derivatives with respect to Mach computed during Gammas2:
Results are now stable and consistent for both scalar and array Mach inputs.
Update
ShockTurbulenceSolverReorganize and generalize the
shockturbulencesubpackage to improve maintainability and enable parametric sweeps on upstream parameters beyond the pre-shock Mach number.solve()now returnsmixArray1andmixArray2, with LIA outputs stored in mixArray2(i).lia as a structure.Bugs
clean()/cleanMoles()when updatingChemicalSystem.propertiesMatrixto avoid stale valuesMinor changes
eta,chi,etaVorticity, andliaas properties ofMixtureclassMixtureclass forSHOCKTURBULENCE_*problemsinterpreterLabelutility function