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

C5 term in SSG Reynolds Stress Model

Register Blogs Community New Posts Updated Threads Search

Like Tree1Likes
  • 1 Post By agustinvo

Reply
 
LinkBack Thread Tools Search this Thread Display Modes
Old   April 22, 2022, 08:00
Default C5 term in SSG Reynolds Stress Model
  #1
Senior Member
 
Agustín Villa
Join Date: Apr 2013
Location: Alcorcón
Posts: 314
Rep Power: 15
agustinvo is on a distinguished road
Hi everyone,


I am checking the SSG implementation, concretely the C5 term. In the reference, the skwe of the velocity gradient is defined as:


W_{ij} = \frac{1}{2}\left(\frac{\partial U_i}{\partial x_j} - \frac{\partial U_j}{\partial x_i}\right)


When checking how this is implemented in OpenFOAM:
Code:
Omega(skew(gradU))
but, if the Programmer's Guide is right, the velocity gradient is defined as \frac{\partial U_j}{\partial x_i}. When using the skew function W =\frac{1}{2} \left(T - T^T\right) what whe should get is:
W_{ij} = \frac{1}{2}\left(\frac{\partial U_j}{\partial x_i} - \frac{\partial U_i}{\partial x_j}\right)
which is just the transpose of the expected skew tensor in the model.


Am I missing something? Is therefore properly implemented this term or am I right and it should be modified?
agustinvo is offline   Reply With Quote

Old   April 22, 2022, 10:39
Default
  #2
Senior Member
 
Join Date: Apr 2020
Location: UK
Posts: 736
Rep Power: 14
Tobermory will become famous soon enough
Can you be more explicit please - I assume you are talking about the SSG Reynolds stress closure? If so, which term are you talking about and which reference?

Edit: ok, I see now. You are talking about the SSG model, and the term C_5 K \left(b_{ik}W_{jk} + b_{jk}W_{ik} \right) from the Speziale paper which is coded in SSG.C (https://cpp.openfoam.org/v8/SSG_8C_source.html) as:

Code:
     volTensorField Omega(skew(gradU));
...
   + C5_*twoSymm(b&Omega)
Let me have a think on this.
Tobermory is offline   Reply With Quote

Old   April 22, 2022, 11:15
Default
  #3
Senior Member
 
Join Date: Apr 2020
Location: UK
Posts: 736
Rep Power: 14
Tobermory will become famous soon enough
I think it comes down to semantics and the definition of the gradient in tensor notation (see an earlier thread, for example: discrepancy in fvc::grad(U)). In their JFM paper, eqn 23, Speziale etc write the ij term of the velocity gradient as:

\frac{\partial U_i}{\partial x_j} = S_{ij} + \omega_{ij}

which is the inverse of the way that the OpenFOAM tensors are defined (again refer to the above thread ... if you have the patience!). To be clear, in OF, the ij term of the velocity gradient is: \frac{\partial U_j}{\partial x_i}. This means that the definition of W in the Speziale paper has inverted indices as well ... and so I think that the implemented model is probably correct. Hope that helps.
Tobermory is offline   Reply With Quote

Old   April 22, 2022, 15:29
Default
  #4
Senior Member
 
Agustín Villa
Join Date: Apr 2013
Location: Alcorcón
Posts: 314
Rep Power: 15
agustinvo is on a distinguished road
Thanks Tobermory! It was impossible that after more than 9 OF versions nobody noticed it before.


As all of you discuss in that thread, it seems that OF knows already how we expect to operate with gradU. However, the programmer's guide equation (2.3) is confusing (that guide is quite old). Mathematically it is ok, but there is no link with the actual implementation of the gradient of a vector.


I used the OF programmer's guide to define some terms in custom turbulence models, whose results are ok. I have to review what the heck want on there.



After a test using Omega(skew(gradU)) and Omega(skew(gradU.T)) the original implmentation was the good one. As you say, maybe the transposed of Speciale et al and the transposed of OF cancel this effect.
Tobermory likes this.
agustinvo 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
Spatial gradients Reynolds stress term p.1 FLUENT 0 October 21, 2020 12:49
Parameters of R variable in LRR model (Reynolds Stress Model)? ebtedaei OpenFOAM Running, Solving & CFD 0 December 15, 2016 03:35
Wrong flow in ratating domain problem Sanyo CFX 17 August 15, 2015 07:20
New implemented algebraic Reynolds stress model volker OpenFOAM 13 October 21, 2013 01:01
Reynolds Stress Model HC Lin FLUENT 0 October 7, 2002 19:45


All times are GMT -4. The time now is 09:49.