Updating the cross-diffusion discretisation in SST#2522
Updating the cross-diffusion discretisation in SST#2522Bot-Enigma-0 merged 185 commits intosu2code:feature_SST_CD_discretisationfrom
Conversation
…l write restart files during runtime (there is a bug, potentially when clearing the tape).
…zation.hpp (to cover RealReverseTag).
…his is a temporary change to avoid false positives when a tag tape is used. They might be unnecessary anyway though.
…te adjoint solver.
…_tape_debug_mode
…_tape_debug_mode
…_tape_debug_mode
…l write restart files during runtime (there is a bug, potentially when clearing the tape).
|
Hi, Thank you very much for sharing. |
|
I don't mind sharing my idea with you. Please send me your private email address |
Tape recording debug mode
Updating SA-Diffusion term Discretisation
Improving the discretisation of the SA non-linear (cross) diffusion term $(\tilde{\nu})^2$
Common/include/CConfig.hpp
Outdated
| su2double Relaxation_Factor_Adjoint; /*!< \brief Relaxation coefficient for variable updates of adjoint solvers. */ | ||
| su2double Relaxation_Factor_CHT; /*!< \brief Relaxation coefficient for the update of conjugate heat variables. */ | ||
| su2double EntropyFix_Coeff; /*!< \brief Entropy fix coefficient. */ | ||
| su2double SST_UnderRelaxation_Factor; /*!< \brief UnderRelaxation Factor for SST Turbulent Variables*/ | ||
| su2double SA_UnderRelaxation_Factor; /*!< \brief UnderRelaxation Factor for SST Turbulent Variables*/ | ||
| su2double Flow_UnderRelaxation_Factor; /*!< \brief UnderRelaxation Factor for SST Turbulent Variables*/ |
There was a problem hiding this comment.
Please try to be consistent with naming, as you see we already have other relaxation factors.
| system for this nonlinear iteration. */ | ||
|
|
||
| const su2double allowableRatio = 0.2; | ||
| const su2double allowableRatio = config->GetUnderRelax_Flow(); |
There was a problem hiding this comment.
Allowable ratio and under relaxation are different things.
| if (implicit) { | ||
| auto* Block_ij = Jacobian.GetBlock(iPoint, jPoint); | ||
| auto* Block_ji = Jacobian.GetBlock(jPoint, iPoint); |
There was a problem hiding this comment.
Apply the same changes I put your SA PR please.
| const su2double diff_i_omega = Laminar_Viscosity_i + sigma_omega_i*Eddy_Viscosity_i + lambda_i * ScalarVar_i[0]; | ||
| const su2double diff_j_omega = Laminar_Viscosity_j + sigma_omega_j*Eddy_Viscosity_j + lambda_j * ScalarVar_j[0]; |
There was a problem hiding this comment.
Add some comments about the manipulation of the CD term that goes into this.
…increase cpp version increase for CoDiPack
|
Really nice contributions @Bot-Enigma-0! Have you compared the results with these approaches on some TMR cases with different grids? I can help with that if needed once the implementation part is over. |
|
Thanks @rois1995, I have mainly been working with the ONERAM6 testcase so far and a small test with the Incompressible Species Transport tutorial. Given the influence on the accuracy in this case, I am planning a grid convergence study, probably on a small case. |
922d55d
into
su2code:feature_SST_CD_discretisation
|
continued in #2533 |
Proposed Changes
Give a brief overview of your contribution here in a few sentences.$\omega$ equation, the evaluation of the blending function F1 will remain unchanged. An under-relaxation factor is also introduced, this helped stabilise the convergence in some testcases.
The results of #2508, showed good improvement in the convergence when discretising using the product rule and treating the cross-diffusion solely as a diffusion term instead of a source. Attempting a similar discretisation for the SST model's cross-diffusion term in
Related Work
Resolve any issues (bug fix or feature request), note any related PRs, or mention interactions with the work of others, if any.
#2508
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.
pre-commit run --allto format old commits.