Implement 2D Pfrommer shock finder with thermal-energy dissipation#4
Open
markorn-01 wants to merge 37 commits into
Open
Implement 2D Pfrommer shock finder with thermal-energy dissipation#4markorn-01 wants to merge 37 commits into
markorn-01 wants to merge 37 commits into
Conversation
remove 1d version
…e identification code
…improve rolling logic
- Documented pressure and velocity regions in two panels - Included descriptions for shock front and rarefaction fan
- Remove deprecated 2D_pfrommer_diverse_x_y.py and replace with 2D_pfrommer_rotated_sod.py for improved clarity and structure. - Introduce 2D_pfrommer_standard_sod.py to implement standard Sod tube conditions in 2D, ensuring consistency with expected shock behavior. - Enhance diagnostics and plotting for better visualization of shock surfaces and Mach numbers across different scenarios.
…e variable names and enhance documentation.
…able naming and streamline diagnostics
- Remove 2D_pfrommer_2_dif_angle_dif_pos_shock.py and 2D_pfrommer_2_dif_angle_same_pos.py. - Add new test 2D_pfrommer_x_shock_interation.py for intersecting shocks forming an X shape. - Update 2D_pfrommer_parallel_shock.py and 2D_pfrommer_rotated_sod.py to use consistent naming for shock angles.
…platform to CPU, and add device printout
… angle error metrics
- Implemented a new test for the 2D rotated Sod tube, validating shock detection and energy dissipation. - Added a point explosion test (Sedov-like) to assess shock propagation and directionality. - Created a standard 2D Sod tube test to verify shock surface detection and thermal energy flux. - Enhanced diagnostics and visualization for shock properties across different test scenarios.
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.
Description
Summary
This PR implements a 2D shock-finding pipeline based on the Pfrommer methodology and adds thermal-energy dissipation calculations at detected shock surfaces.
Main changes
Added
ShockFinderResultdata structures for storing:Implemented the main 2D shock-finder components:
Added thermal-energy dissipation:
Validation cases
Added 2D validation and visualization cases for:
The cases validate shock position, shock direction, Mach number, shock zones, shock surfaces, and thermal-energy flux.
Validation figures
Generated validation plots for the implemented 2D test cases include:
Code locations
astronomix/_physics_modules/_shock_finder/docs/source/notebooks/shock_finder/images/Current scope