View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0002340 | OpenFOAM | Contribution | public | 2016-11-19 08:28 | 2017-06-30 12:23 |
Reporter | AMRBlack | Assigned To | chris | ||
Priority | normal | Severity | feature | Reproducibility | always |
Status | closed | Resolution | fixed | ||
Platform | GNU/Linux | OS | Ubuntu | OS Version | 14.10 |
Summary | 0002340: provide general interfaces to count stress work and the dissipation of turbulent kinatic in the turbulence library | ||||
Description | The stress work and the dissipation of turbulent kinetic energy are ignored in the current energy equations implemented in OpenFOAM. These two terms are very important in some case. Can we provide general interfaces in the turbulence library to count them in the energy equation? A hard coded implementation may look like this: tmp<volScalarField> tk = turbulence->k(); const volScalarField& k = tk(); // TODO: check the discrete scheme of this term and we may need to move it // into the turbulence library volScalarField ShRhoReff ( "ShRhoReff", fvc::div ( fvc::dotInterpolate(mesh.Sf(), turbulence->devRhoReff()) & fvc::interpolate(U) ) ); fvScalarMatrix EEqn ( fvm::ddt(rho, e) + fvm::div(phi, e) + fvc::ddt(rho, K) + fvc::div(phi, K) + fvc::div(fvc::absolute(phi/fvc::interpolate(rho), U), p, ”div(phiv,p)”) - fvm::laplacian(turbulence->alphaEff(), e) - ShRhoReff // TODO: make DkEff() a public function or move this term into the // turbulence library + ( fvc::ddt(rho, k) + fvc::fiv(phi, k) - fvc::laplacian(turbulence->DkEff(), k) ) == fvOptions(rho, e) ); | ||||
Tags | energy equation, turbulence models | ||||
|
These terms have been included and then subsequently removed because for many cases they introduce serious numerical stability issue without improving accuracy. Re-introduction of these terms will need to be done through a run-time selection mechanism so that they can be added when needed -- this could be achieved via fvOptions. |
|
It would be more convenient if 'k' is included in the definition of 'K' leaving the diffusive transport of 'k' term. The difficulty with this term is that not all turbulence models include it in their formulation, e.g. Spalart-Allmaras and for this and other 'nuTilda' models the modelling of 'k' is questionable. The 'ShRhoReff' term looks OK at you have formulated it; I don't think there is a better numerically conservative formulation, however it may induce unboundedness of 'e' and hence 'T' and avoiding this will be tricky because this and the other additional terms cannot be formulated in a form which would guarantee boundedness of 'T'. Could you provide some example cases for which these addition terms are very important? For these cases to you see unboundedness problems and if so how did you resolve the issue without violating conversation of energy? |
|
Thanks for your time. Our team are working on a high-temperature, high-speed flow with surface reactions. This process requires a detailed calculation of the transport process near the wall, and I am trying to implement a two-layer k-epsilon model just like the "Enhanced Wall Treatment" of FLUENT via fvOptions. In this model, yplus is less than 1. We are sure that the stress work is very important now but not sure on the term of the turbulent kinetic energy. I'd like to do more test on the two-layer implementation and then upload the codes and the case. |
|
No feedback from the reporter and his team. |
Date Modified | Username | Field | Change |
---|---|---|---|
2016-11-19 08:28 | AMRBlack | New Issue | |
2016-11-19 08:28 | AMRBlack | Tag Attached: turbulence models | |
2016-11-19 08:28 | AMRBlack | Tag Attached: energy equation | |
2016-11-19 09:04 | henry | Note Added: 0007245 | |
2016-11-19 09:36 | henry | Note Added: 0007246 | |
2016-11-20 05:48 | AMRBlack | Note Added: 0007250 | |
2017-06-30 12:23 | chris | Assigned To | => chris |
2017-06-30 12:23 | chris | Status | new => closed |
2017-06-30 12:23 | chris | Resolution | open => fixed |
2017-06-30 12:23 | chris | Note Added: 0008303 |