[WIP] Adding strong BC formulation for isothermal walls in the incompressible solver by Cristopher-Morales · Pull Request #2703 · su2code/SU2
Proposed Changes
This pull request aims to set wall temperature as a strong boundary condition for isothermal walls when the wall is marked as MARKER_SPECIES_STRONG_BC.
This aims to be consistent with the isothermal wall treatment in the SpeciesSolver and in the SpeciesFlameletSolver.
Related Work
PR Checklist
Put an X by all that apply. You can fill this out after submitting the PR. If you have any questions, don't hesitate to ask! We want to help. These are a guide for you to know what the reviewers will be looking for in your contribution.
- I am submitting my contribution to the develop branch.
- My contribution generates no new compiler warnings (try with --warnlevel=3 when using meson).
- My contribution is commented and consistent with SU2 style (https://su2code.github.io/docs_v7/Style-Guide/).
- I used the pre-commit hook to prevent dirty commits and used
pre-commit run --allto format old commits. - I have added a test case that demonstrates my contribution, if necessary.
- I have updated appropriate documentation (Tutorials, Docs Page, config_template.cpp), if necessary.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
this type of treatment is not conservative. we need to stop treating vetex centered finite volume as finite element, it's not the same.
The two options for conservation are:
1 - Use the isothermal gradient to compute gradients, then use those gradients to impose the boundary heat flux on the isothermal boundary, the temperature at the node is not guaranteed to be the imposed one, but it would not be wrong to set that temperature as post-processing before output.
2 - Force the temperature as you are proposing, but evaluate heat fluxes in a conservative way (using the gradient is not correct), by definition, the boundary heat flux is such that the energy residual on the boundary control volume is 0.
The two options for conservation are: 1 - Use the isothermal gradient to compute gradients, then use those gradients to impose the boundary heat flux on the isothermal boundary, the temperature at the node is not guaranteed to be the imposed one, but it would not be wrong to set that temperature as post-processing before output. 2 - Force the temperature as you are proposing, but evaluate heat fluxes in a conservative way (using the gradient is not correct), by definition, the boundary heat flux is such that the energy residual on the boundary control volume is 0.
Hi!!
Thank you so much for your suggestions,
I am going to study them to I understand them correctly.
I will ask again if I am stuck implementing them.
Thank you so much again!!
The two options for conservation are: 1 - Use the isothermal gradient to compute gradients, then use those gradients to impose the boundary heat flux on the isothermal boundary, the temperature at the node is not guaranteed to be the imposed one, but it would not be wrong to set that temperature as post-processing before output. 2 - Force the temperature as you are proposing, but evaluate heat fluxes in a conservative way (using the gradient is not correct), by definition, the boundary heat flux is such that the energy residual on the boundary control volume is 0.
1: you can set the correct boundary condition in a postprocessing step, but the temperature field in neighboring cells will not be correct. I am in favor of implementing option 2.
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