-
Notifications
You must be signed in to change notification settings - Fork 109
Multicomponent diffusion fluxes, thermal conduction, and mixture viscosity #934
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 🔍(Review updated until commit 42e8f58)Here are some key observations to aid the review process:
|
PR Code Suggestions ✨Latest suggestions up to 42e8f58
Previous suggestionsSuggestions up to commit 61b88ee
|
Codecov ReportAttention: Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## master #934 +/- ##
==========================================
+ Coverage 43.71% 43.74% +0.02%
==========================================
Files 68 68
Lines 18360 18470 +110
Branches 2292 2310 +18
==========================================
+ Hits 8026 8079 +53
- Misses 8945 8992 +47
- Partials 1389 1399 +10 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
User description
Description
Please include a summary of the changes and the related issue(s) if they exist.
This update implements the diffusive fluxes for chemical species, includes thermal conduction in the energy equation, and computes the mixture’s viscosity.
Please also include relevant motivation and context.
Fixes #(issue) [optional]
Type of change
Please delete options that are not relevant.
Scope
If you cannot check the above box, please split your PR into multiple PRs that each have a common goal.
How Has This Been Tested?
Please describe the tests that you ran to verify your changes.
Provide instructions so we can reproduce.
Please also list any relevant details for your test configuration
Test Configuration:
My Laptop, Delta (A100) and Delta AI (GH)
Checklist
docs/
)examples/
that demonstrate my new feature performing as expected.They run to completion and demonstrate "interesting physics"
./mfc.sh format
before committing my codeIf your code changes any code source files (anything in
src/simulation
)To make sure the code is performing as expected on GPU devices, I have:
nvtx
ranges so that they can be identified in profiles./mfc.sh run XXXX --gpu -t simulation --nsys
, and have attached the output file (.nsys-rep
) and plain text results to this PR./mfc.sh run XXXX --gpu -t simulation --rsys --hip-trace
, and have attached the output file and plain text results to this PR.PR Type
Enhancement, Tests, Bug fix
Description
• Implemented comprehensive multicomponent diffusion fluxes for chemical species transport
• Added thermal conduction capabilities to the energy equation
• Integrated mixture viscosity calculations based on chemistry
• Added new subroutines
compute_viscosity_and_inversion
ands_compute_chemistry_diffusion_flux
for transport property calculations• Integrated chemistry diffusion flux computation into RHS calculation pipeline
• Added mass conservation corrections and thermal conduction contributions
• Fixed undefined variable bug in chemistry sound speed calculation (replaced
Tolerance
withverysmall
)• Added comprehensive test cases for multicomponent diffusion and 1D premixed flame simulations
• Added golden reference data and metadata for validation of new chemistry features
• Created new example case for 1D premixed flame simulation with chemistry
Changes walkthrough 📝
4 files
m_rhs.fpp
Integrate chemistry diffusion flux computation into RHS
src/simulation/m_rhs.fpp
• Added allocation for energy flux source when chemistry diffusion is
enabled without viscous effects
• Integrated chemistry diffusion flux
computation into the RHS calculation pipeline
• Separated flux
application logic for viscous/surface tension vs chemistry diffusion
cases
• Added conditional energy flux handling for non-viscous
chemistry diffusion scenarios
m_chemistry.fpp
Implement multicomponent diffusion and mixture viscosity calculations
src/common/m_chemistry.fpp
• Added new subroutine
compute_viscosity_and_inversion
for mixtureviscosity calculation
• Implemented comprehensive
s_compute_chemistry_diffusion_flux
subroutine for multicomponentdiffusion
• Added transport property calculations including mass
diffusivities and thermal conductivity
• Implemented mass conservation
corrections and thermal conduction contributions
m_riemann_solvers.fpp
Integrate chemistry viscosity and diffusion flux initialization
src/simulation/m_riemann_solvers.fpp
• Added chemistry-based viscosity computation calls in Riemann solver
routines
• Integrated
compute_viscosity_and_inversion
function callsfor chemistry cases
• Added flux source initialization for chemistry
diffusion in all spatial directions
case.py
Add 1D premixed flame chemistry example case
examples/1D_Premixed_Flame/case.py
• Added new example case for 1D premixed flame simulation with
chemistry
• Configured multicomponent diffusion and reaction
parameters
• Set up initial conditions with species mass fractions and
temperature profiles
1 files
m_variables_conversion.fpp
Fix undefined variable in chemistry sound speed calculation
src/common/m_variables_conversion.fpp
• Replaced undefined
Tolerance
variable withverysmall
in chemistrysound speed calculation
12 files
cases.py
Add chemistry diffusion and premixed flame test cases
toolchain/mfc/test/cases.py
• Added new test case for 1D multicomponent diffusion validation
•
Added test case for 1D premixed flame simulation
• Updated existing
chemistry test tolerances and WENO parameters
golden.txt
Add golden reference data for multicomponent diffusion test
tests/D54F258B/golden.txt
• Added golden reference data for multicomponent diffusion test case
•
Contains conservative and primitive variable outputs at different time
steps
golden-metadata.txt
Update test metadata for chemistry test configuration
tests/4D7D85B4/golden-metadata.txt
• Updated test metadata with new invocation parameters and system
information
• Modified test configuration details and CPU
specifications
golden.txt
Add golden reference data for multicomponent diffusion test
tests/A745163D/golden.txt
• Added comprehensive golden reference data for multicomponent
diffusion test case
• Contains numerical values for conservative and
primitive variables across multiple time steps
• Data includes 8
different variables (cons.1-8 and prim.1-8) at two time points (000000
and 000050)
• Each line contains 101 data points representing spatial
distribution of variables
golden-metadata.txt
Update test metadata for 1D Chemistry configuration
tests/6B3AE48F/golden-metadata.txt
• Updated test metadata with new invocation command for 1D Chemistry
tests
• Changed Git commit hash and branch from
qtsf-merge
toDiffusion
• Removed detailed CMake configuration sections for
simulation, pre_process, and syscheck
• Updated CPU information with
different model and virtualization details
golden-metadata.txt
Update test metadata for 1D Chemistry configuration
tests/2BDE2018/golden-metadata.txt
• Updated test metadata with new invocation command for 1D Chemistry
tests
• Changed Git commit hash and branch from
qtsf-merge
toDiffusion
• Removed detailed CMake configuration sections for
simulation, pre_process, and syscheck
• Updated CPU information with
different model and virtualization details
golden-metadata.txt
Add metadata for MultiComponent_Diffusion test case
tests/D54F258B/golden-metadata.txt
• Added new test metadata file for MultiComponent_Diffusion test case
• Contains complete CMake configuration details for simulation,
syscheck, and pre_process
• Includes CPU information and system
specifications
• Uses Debug build type with MPI enabled
golden-metadata.txt
Test metadata update for 1D Chemistry configuration
tests/5DCF300C/golden-metadata.txt
• Updated test invocation from Chemistry to 1D Chemistry with generate
flag
• Changed MPI configuration from disabled to enabled
• Updated
Git commit hash and branch from qtsf-merge to Diffusion
• Removed
detailed CMake configuration sections for simulation, pre_process, and
syscheck
• Updated CPU model from i9-12900HK to i7-12700H with
corresponding hardware changes
golden-metadata.txt
Test metadata update for 1D Chemistry configuration
tests/F8ADA51B/golden-metadata.txt
• Updated test invocation from Chemistry to 1D Chemistry with generate
flag
• Changed MPI configuration from disabled to enabled
• Updated
Git commit hash and branch from qtsf-merge to Diffusion
• Removed
detailed CMake configuration sections for simulation, pre_process, and
syscheck
• Updated CPU model from i9-12900HK to i7-12700H with
corresponding hardware changes
golden-metadata.txt
New test metadata for MultiComponent_Diffusion
tests/A745163D/golden-metadata.txt
• Created new test metadata file for MultiComponent_Diffusion test
•
Configured with MPI enabled and clean Git state on Diffusion branch
•
Recorded CPU information for i7-12700H processor
• Includes complete
system vulnerability and cache information
golden-metadata.txt
New test metadata for 1D Chemistry
tests/54BEE3ED/golden-metadata.txt
• Created new test metadata file for 1D Chemistry test
• Configured
with MPI enabled and dirty Git state on Diffusion branch
• Recorded
CPU information for i7-12700H processor
• Includes complete system
vulnerability and cache information
golden-metadata.txt
New test metadata for 1D Chemistry
tests/140C353C/golden-metadata.txt
• Created new test metadata file for 1D Chemistry test
• Configured
with MPI enabled and dirty Git state on Diffusion branch
• Recorded
CPU information for i7-12700H processor
• Includes complete system
vulnerability and cache information
6 files