CFD Online Logo CFD Online URL
www.cfd-online.com
[Sponsors]
Home > Forums > Software User Forums > OpenFOAM

Extra terms in turbulence model transport equations

Register Blogs Community New Posts Updated Threads Search

Like Tree3Likes
  • 1 Post By Jonathan
  • 2 Post By chegdan

Reply
 
LinkBack Thread Tools Search this Thread Display Modes
Old   July 23, 2013, 20:12
Default Extra terms in turbulence model transport equations
  #1
Senior Member
 
Join Date: Mar 2010
Posts: 181
Rep Power: 17
Jonathan is on a distinguished road
Hi,

I have been working on re-writing some parts of the kOmegaSST turbulence model, and recently realised there are some 'extra' terms in the transport equations for k and omega, notably -

for omega:

Code:
    tmp<fvScalarMatrix> omegaEqn
    (
        fvm::ddt(omega_)
      + fvm::div(phi_, omega_)
      - fvm::Sp(fvc::div(phi_), omega_)
      - fvm::laplacian(DomegaEff(F1), omega_)
     ==
        gamma(F1)/nut_*min(G, c1_*betaStar()*k_*omega_)
      - fvm::Sp(beta(F1)*omega_, omega_)
      - fvm::SuSp
        (
            (F1 - scalar(1))*CDkOmega/omega_,
            omega_
        )
    );
and for k:

Code:
    tmp<fvScalarMatrix> kEqn
    (
        fvm::ddt(k_)
      + fvm::div(phi_, k_)
      - fvm::Sp(fvc::div(phi_), k_)
      - fvm::laplacian(DkEff(F1), k_)
     ==
        min(G, c1_*betaStar()*k_*omega_)
      - fvm::Sp(betaStar()*omega_, k_)
    );
(relevant lines in the code: kOmegaSST.C lines 408 - 441.)

I have been using a combination of references, but these do not appear in any of them, so they must be an openFoam programming peculiarity.

Does anyone know / could anyone explain where these terms come from / why we have them in the eqns?

thanks very much in advance
much appreciated
jonathan
HPE likes this.
Jonathan is offline   Reply With Quote

Old   July 23, 2013, 21:59
Default
  #2
Senior Member
 
Daniel P. Combest
Join Date: Mar 2009
Location: St. Louis, USA
Posts: 621
Rep Power: 0
chegdan will become famous soon enoughchegdan will become famous soon enough
This has been discussed in several places

But it is one of my favorite things in fluid mechanics for some reason . The definition of the advection operator is

\nabla\cdot(\vec{U}k)=\vec{U}\cdot\nabla k + k(\nabla\cdot\vec{U})

where the left side is the conservative form and the right side is the primitive form ( according to anishtain4 from gas dynamics lingo). The use if this term

Code:
- fvm::Sp(fvc::div(phi_), k_)
in the turbulence model is to subtract off errors associated with incomplete convergence of momentum (last term in right of first equation), since ideally for incompressible flow the velocity field should be solenoidal. So, its an error correction for reducing errors from incompletely converged velocity fields. One more thing, is that I have used other forms of this, mainly
Code:
fvm::SuSp(-fvc::div(phi_),k_)
that will switch between an implicit and explicit source term depending on the sign of
Code:
-fvc::div(phi_)
. Hope this helps!

EDIT: There is actually a little bit of a discussion in "Computational Methods for Fluid Dynamics" by Ferziger and Peric' (3rd edition) on page 162 referring to the conservation of the kinetic energy equation.
Bernhard and cfdonline2mohsen like this.

Last edited by chegdan; August 22, 2013 at 17:37. Reason: Added more information and a literature source and forgot a dot product
chegdan is offline   Reply With Quote

Old   August 14, 2013, 10:24
Default
  #3
Senior Member
 
Join Date: Mar 2010
Posts: 181
Rep Power: 17
Jonathan is on a distinguished road
Hi Daniel,

apologies for the slow reply here - i saw your post and it helped a lot, however, things have been quite hectic this side, hence the late thanks.

again, thanks for your help - much appreciated
jonathan

Quote:
Originally Posted by chegdan View Post
This has been discussed in several places

But it is one of my favorite things in fluid mechanics for some reason . The definition of the advection operator is

\nabla\cdot(\vec{U}k)=\vec{U}\cdot\nabla k + k(\nabla\vec{U})

where the left side is the conservative form and the right side is the primitive form ( according to anishtain4 from gas dynamics lingo). The use if this term

Code:
- fvm::Sp(fvc::div(phi_), k_)
in the turbulence model is to subtract off errors associated with incomplete convergence of momentum (last term in right of first equation), since ideally for incompressible flow the velocity field should be solenoidal. So, its an error correction for reducing errors from incompletely converged velocity fields. One more thing, is that I have used other forms of this, mainly
Code:
fvm::SuSp(-fvc::div(phi_),k_)
that will switch between an implicit and explicit source term depending on the sign of
Code:
-fvc::div(phi_)
. Hope this helps!

EDIT: There is actually a little bit of a discussion in "Computational Methods for Fluid Dynamics" by Ferziger and Peric' (3rd edition) on page 162 referring to the conservation of the kinetic energy equation.
Jonathan is offline   Reply With Quote

Old   August 19, 2013, 12:01
Default
  #4
Senior Member
 
Daniel P. Combest
Join Date: Mar 2009
Location: St. Louis, USA
Posts: 621
Rep Power: 0
chegdan will become famous soon enoughchegdan will become famous soon enough
No worries, I enjoy discussing this topic. If anyone else has some thoughts that could expand this information I would love to hear about it. I can always learn more on the topic!
chegdan is offline   Reply With Quote

Reply


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are Off
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
Define new turbulence model in Fluent micro11sl Fluent UDF and Scheme Programming 55 October 27, 2016 18:25
Wrong calculation of nut in the kOmegaSST turbulence model FelixL OpenFOAM Bugs 27 March 27, 2012 10:02
Editing Turbulence Model Terms Josh CFX 0 January 18, 2011 19:04
PRoduction terms of a turbulence modeL nada FLUENT 1 December 30, 2008 23:40
Advanced Turbulence Modeling in Fluent, Realizable k-epsilon Model Jonas Larsson FLUENT 5 March 13, 2000 04:27


All times are GMT -4. The time now is 20:25.