
[Sponsors] 
June 15, 2010, 07:16 
Missing Term in RASModels

#1 
Senior Member
Niels Gjoel Jacobsen
Join Date: Mar 2009
Location: Deltares, Delft, The Netherlands
Posts: 1,608
Rep Power: 25 
Hi all
There is a missing term in the RASmodel implementation in OpenFOAM 1.5.x, 1.5dev and 1.6.x. This term is at least missing in the kOmega (only present in 1.6.x) kOmegaSST kEpsilon models. The problem is with the function Code:
tmp<fvVectorMatrix> kOmega::divDevReff(volVectorField& U) const { return (  fvm::laplacian(nuEff(), U)  fvc::div(nuEff()*dev(fvc::grad(U)().T())) ); } Code:
tmp<fvVectorMatrix> kOmega::divDevReff(volVectorField& U) const { return (  fvm::laplacian(nuEff(), U)  fvc::div(nuEff()*dev(fvc::grad(U)().T())) + 2.0 / 3.0 * fvc::grad(k_) ); } The other turbulence models might be affected as well, however as I am unfamiliar with those, I have not looked into the implementation. Best regards, Niels P.S. My colleagues has done some preliminary tests and it seems that having this contribution coaligned with the pressure gradients does not affect the results, however if they are perpendicular, the gradient in the normal Reynold's stresses is the only driving force. 

July 7, 2010, 08:13 

#2 
Senior Member
Niels Gjoel Jacobsen
Join Date: Mar 2009
Location: Deltares, Delft, The Netherlands
Posts: 1,608
Rep Power: 25 
Bump.
I can see that this term has not been included in the new 1.7.0 release. Any comments on post #1? Cheers, Niels 

July 9, 2010, 14:55 
intersting but simple answer

#3 
New Member
parham momeni
Join Date: Mar 2009
Location: glasgow, uk
Posts: 25
Rep Power: 7 
It is correct since the pressure in the simple scheme is relative so it has no affect on the integration on both side of the control volume this source term will disapear, It is correct


July 15, 2010, 04:56 

#4 
Senior Member
Niels Gjoel Jacobsen
Join Date: Mar 2009
Location: Deltares, Delft, The Netherlands
Posts: 1,608
Rep Power: 25 
Hi Parham
I do not quite follow you. If there is a gradient in the turbulence, then there must be a driving force and this force is not included into the present releases of OpenFOAM, hence the term is important for specific purposes and needs to be included. It has nothing to do with the simplealgorithm, as it is a more general bug inside the turbulence models. Best regards, Niels 

July 15, 2010, 05:17 

#5 
New Member
parham momeni
Join Date: Mar 2009
Location: glasgow, uk
Posts: 25
Rep Power: 7 
Hi, the pressure in the code is relative isnt it? so if you add or remove 2/3k from or to it, it realy doesnt matter. I have seen this in other codes. since in the simple algorhm the pressure is relative pressure so p or + any thing lets say 2/3 k should not matter.


July 15, 2010, 05:57 

#6 
Senior Member
Niels Gjoel Jacobsen
Join Date: Mar 2009
Location: Deltares, Delft, The Netherlands
Posts: 1,608
Rep Power: 25 
Hi
You assume that k is constant, however as it is not, fvc::grad(k) results in a driving force. We have verified that without this term experimental data cannot be reproduced under certain conditions, however including it yield good correlation between data and model. The term comes from the Boussinesq approximation of the Reynolds stress tensor, hence the RANS formulation is incomplete due to its omission. Best regards, Niels 

July 16, 2010, 08:14 

#8 
Senior Member
Niels Gjoel Jacobsen
Join Date: Mar 2009
Location: Deltares, Delft, The Netherlands
Posts: 1,608
Rep Power: 25 
Hi Laurence
I see, I had not thought of looking into the individual solvers. However both simpleFoam and turbFoam uses divDevReff, however those could off course be changed instead. Have a nice weekend, Niels 

July 16, 2010, 09:09 

#9 
Senior Member
Laurence R. McGlashan
Join Date: Mar 2009
Posts: 370
Rep Power: 14 
Also, shouldn't 'dev' actually be 'dev2' in divDevReff.
This is confusing me a lot now. . I will try deriving the implementation from the theory over the weekend if I have time.
__________________
Laurence R. McGlashan :: Website 

August 5, 2010, 05:05 

#11 
Senior Member
Niels Gjoel Jacobsen
Join Date: Mar 2009
Location: Deltares, Delft, The Netherlands
Posts: 1,608
Rep Power: 25 
Hi Laurence
Unfortunately not, however would it be possible for you to email me the relevant page? Best regards, Niels 

March 16, 2011, 01:23 

#12 
Senior Member
Alberto Passalacqua
Join Date: Mar 2009
Location: Ames, Iowa, United States
Posts: 1,894
Rep Power: 26 
Hi,
you can simply rewrite grad(p + 2/3k) = grad(p*). This will lead to a solution algorithm which is identical to what is implemented in OpenFOAM incompressible solvers. @Laurence: in bubbleFoam/twoPhaseEulerFoam k is included in the fluid phase independently in each phase because its effect is different on each phase. In phase a there is the Ct coefficient. Notice also that you find the pressure gradient from the total continuity, and each phase has it scaled only by the corresponding phase fraction. Best, 

March 16, 2011, 05:14 

#13 
Senior Member
Laurence R. McGlashan
Join Date: Mar 2009
Posts: 370
Rep Power: 14 
Thanks Alberto, we continued by email, apologies for leaving the thread dangling!
When would you (or anyone) alter the C_t coefficient, and do you know of any published material that has ever done that? I vaguely recall reading a paper where they did but I can't find it (if I could give 2 pieces of advice to anyone starting a cfd project, it would be BACKUP and organise your literature!).
__________________
Laurence R. McGlashan :: Website 

March 16, 2011, 19:28 

#14 
Senior Member
Alberto Passalacqua
Join Date: Mar 2009
Location: Ames, Iowa, United States
Posts: 1,894
Rep Power: 26 
Hi Laurence,
Ct should be related to the time scale of turbulence interaction between particles/bubbles and fluid turbulent structure. I do not remember where I saw this model tested changing Ct. First thing that comes to my mind is H. Rusche thesis however. Alberto 

April 14, 2011, 08:04 

#15  
New Member
Andreas Herwig
Join Date: Jan 2011
Posts: 6
Rep Power: 6 
Quote:
I'm already searching a long time where this modified pressure is calculated grad(p + 2/3k) = grad(p*) in pisoFoam or the kEpsilon Code but can't find it. So if anyone knows ... Thanks a lot. Andreas 

April 14, 2011, 17:19 

#16 
Senior Member
Alberto Passalacqua
Join Date: Mar 2009
Location: Ames, Iowa, United States
Posts: 1,894
Rep Power: 26 
If you write your momentum equation as a function of p*, and derive the pressure equation directly, you will find out that you do not have to do that calculation in the case of incompressible flows ;)


February 27, 2012, 12:26 

#17 
Member
Alessandro
Join Date: May 2009
Location: Genova
Posts: 43
Rep Power: 8 
Dear Foamers,
Sorry for reopening this thread, but I still can't understand the point... Ok for rewriting grad(p/rho + 2/3*k) as grad(p_*) in the momentum equation, but what about boundary conditions? As a consequence of the pseudopressure formulation in /0 it will be specified one b.c. for p_* (not p) and one for k (which is part of p_*). Is this generally acceptable? Moreover from what I see at first sight in /compressible/RAS/kEpsilon this formulation still holds for the term divDevRhoReff... will this mean that p used in perfectGas is p*=p + 2/3*k ? I am really confused about the matter... Thanks for any help! .A. 

February 29, 2012, 08:05 

#18 
Member
Alessandro
Join Date: May 2009
Location: Genova
Posts: 43
Rep Power: 8 
Hints? Suggestions? References?
...or maybe it's a silly question? .A. 

Thread Tools  
Display Modes  


Similar Threads  
Thread  Thread Starter  Forum  Replies  Last Post 
Turbulence dampening due to magnetic field in LES and RAS  eelcovv  OpenFOAM  0  June 8, 2010 11:35 
RAS Turbulence Models  Convective Term  john_w  OpenFOAM  3  May 29, 2010 21:31 
ATTENTION! Reliability problems in CFX 5.7  Joseph  CFX  14  April 20, 2010 15:45 
wall functions for RAS models  Epf  OpenFOAM PreProcessing  3  April 8, 2010 11:14 
Numerical Problems with NonLinear RAS models  cfdmarkus  OpenFOAM Running, Solving & CFD  0  February 9, 2010 06:15 