IGR integration#1615
Conversation
Codecov Report❌ Patch coverage is Additional details and impacted files@@ Coverage Diff @@
## master #1615 +/- ##
==========================================
- Coverage 60.43% 57.89% -2.55%
==========================================
Files 83 83
Lines 19871 20570 +699
Branches 2956 3009 +53
==========================================
- Hits 12010 11908 -102
- Misses 5860 6681 +821
+ Partials 2001 1981 -20 ☔ View full report in Codecov by Harness. 🚀 New features to boost your workflow:
|
# Conflicts: # src/simulation/m_rhs.fpp
|
I ran some local performance comparisons against the legacy IGR path. Representative CPU results: 18A71AB2, 50 steps, 100 runs:
18A71AB2, 500 steps, 10 runs:
18A71AB2, larger grid, ~100^3, 20 steps, 3 runs:
RSS stands for Maximum resident set size, which is measured by the command: |
|
Claude Code Review Head SHA: 267de82 Files changed:
Findings:
|
|
Regarding the Claude code review comment, it was correct that the new subroutine This is the same convention used by in |
# Conflicts: # src/simulation/m_riemann_solver_lf.fpp
Description
This PR integrates IGR with more of the shared RHS/Riemann infrastructure while preserving the existing IGR numerical behavior. This is an intermediate integration milestone, not the final IGR architecture. It intentionally preserves the current IGR reconstruction/Sigma/viscous-source behavior while moving RHS accumulation, RK update behavior, state layout, and LF Riemann dispatch toward shared MFC infrastructure.
Main changes:
s_riemann_solverpath using the LF Riemann solver.s_compute_advection_source_terms_compute_additional_physics_rhss_igr_riemann_solverbehavior into smaller IGR-specific routines called from the shared RHS path:s_igr_compute_jac_rhss_igr_reconstruct_cell_boundary_valuess_igr_get_viscouss_igr_correct_lf_fluxess_igr_sigmarhs_vfallocation previously needed by IGR-specific direct RHS updates.IGR-specific reconstruction, Sigma correction, and viscous source-flux construction are still present in
m_igr.fpp. Subroutines_igr_riemann_solveris also still present inm_igr.fpp, which explains the increased line count.Deferred follow-up work:
Type of change
Testing
Local testing:
Additional local comparison/debug checks used during development:
The IGR golden files were updated with
--add-new-variablesto include the newly stored final volume fraction. Existing golden entries were preserved, and the added final-alpha fields satisfy the expected volume-fraction sum checks, which is verified by the local Python scripts. The updated IGR tests match the previous conserved-variable outputs to machine-level roundoff, aside from the newly added final volume-fraction fields.Checklist
Check these like this
[x]to indicate which of the below applies.See the developer guide for full coding standards.
GPU changes (expand if you modified
src/simulation/)AI code reviews
Reviews are not retriggered automatically. To request a review, comment on the PR:
@claude full review— Claude full review (also triggers on PR open/reopen/ready)claude-full-review— Claude full review via label