CFD Online Logo CFD Online URL
www.cfd-online.com
[Sponsors]
Home > Forums > OpenFOAM Running, Solving & CFD

Using nutStandardRoughWallFunction

Register Blogs Members List Search Today's Posts Mark Forums Read

Reply
 
LinkBack Thread Tools Display Modes
Old   July 23, 2007, 16:01
Default Hello everyone, A Good day!
  #1
Senior Member
 
Philippose Rajan
Join Date: Mar 2009
Location: Germany
Posts: 530
Rep Power: 16
philippose will become famous soon enough
Hello everyone,

A Good day!

I have a quick question, to which I hope there would be an interesting answer :-)!

I found the "nutWallFunctions" directory in the OpenFOAM 1.4 source files today, and to my surprise, found that there seem to be implementations of wall functions which allow one to put in physical data such as roughness height of the wall, etc... (nutStandardRoughWallFunction)

Can this wall function be used directly as a boundary condition in the boundary field definitions? Or rather... a better question would be.... how can I use these wall functions with, for example... the "kEpsilon" turbulence model?

Have a nice day!

Philippose
philippose is offline   Reply With Quote

Old   August 10, 2007, 03:25
Default Hi Philippose, I do have th
  #2
New Member
 
Lourens Aanen
Join Date: Mar 2009
Posts: 14
Rep Power: 8
lourens is on a distinguished road
Hi Philippose,

I do have the same question as you have and posted a question on the same subject a week ago. Looking at the source code it must be possible to use it with the kEpsilon model.
Going though the UserGuide where an example of an boundary file and a pressure field file are given (6.2.1 in the last UserGuide), I still have a few questions:

1. In the boundary file should the type be "patch" or "wall"? (if I remember well, I read somewhere that only the type "wall" influences also the cell next to the boudary, and should therefore be used for boundary functions)
2. should the physicaltype be "wallFunctions" of "nutStandardWallFunction"?
3. To which variables the patch should be applied: "k" and "epsilon" have to be of type "symmetry" in case of boundary type "wall". If I try to apply it to "U" as
wall.1
{
type nutStandardRoughWallFunction;
roughnessHeight 1.;
roughnessConstant 1.;
roughnessFudgeFactor 1.;
value uniform (0 0 0);
}

I get an error message that I am probably trying to solve for a field with a default boundary condition.
Should we apply it to "p" (which is zeroGradient for normal walls)? Applying it to "nuTilda" and "R" gives no error messages but does not change the results either.
Did I forget to declare something in the "U" boundary?


Regards,

Lourens.
lourens is offline   Reply With Quote

Old   August 31, 2007, 07:51
Default Hi Philippose, Playing arou
  #3
New Member
 
Lourens Aanen
Join Date: Mar 2009
Posts: 14
Rep Power: 8
lourens is on a distinguished road
Hi Philippose,

Playing around with the wallfunction, I have found that I get only reasonable results if I apply the nutStandardRoughWallFunction to both k and epsilon (in case of kEpsilon models...). In the boundary file the wall should have type "patch". This seems logical regarding the fact that nut influences both k and epsilon.

If you think I am wrong, please let me know.

Regards,

Lourens.
lourens is offline   Reply With Quote

Old   August 31, 2007, 14:23
Default Hello Lourens, A Good Frida
  #4
Senior Member
 
Philippose Rajan
Join Date: Mar 2009
Location: Germany
Posts: 530
Rep Power: 16
philippose will become famous soon enough
Hello Lourens,

A Good Friday evening to you :-)!

This is interesting indeed :-)! After that first message that I posted, I did not look deeper into the idea of using the "nutStandardRoughWallFunction" in my simulations.... but on the other hand, it looks like you have been at it :-)!

Did you have to modify the k-Epsilon Turbulence Model, or were you able to use this wall function without any recompiling of the code?

Thing is, within the k-Epsilon source code (in the OpenFOAM source folder... "turbulenceModels/incompressible/kEpsilon"), the wall function seems to be hard-coded via a call to the file "wallViscosityI.H", which is located in the "wallFunctions" folder.

So, I am not sure if you can straightaway use the nutStandardWallFunction, unless....... I was just looking at the code..... it works, because nutStandardWallFunction modifies the "nuw" and "nutw" fields, which are then used by the "wallViscosityI.H" and "kEpsilon.C" parts of the solution.

Hmmm... this sounds plausible.... I hope someone with more expertise / experience with wallFunctions and Turbulence Models comments on / corrects this.

Anyway... apart from that, I would say you are right about the fact that you need to apply the special wall function to both the "k" and the "epsilon" boundary conditions, because as you said, they are both involved in the turbulence model.

I shall try something over this weekend... I happen to have some small meshes ready, which will give me results quickly... maybe I can also go a little deeper into the code to understand things better.

It would be great if we can correspond regarding this, and see if we can get it working :-)!

Have a nice weekend!

Philippose
philippose is offline   Reply With Quote

Old   September 3, 2007, 04:41
Default Hi Philoppose, The hard-cod
  #5
New Member
 
Lourens Aanen
Join Date: Mar 2009
Posts: 14
Rep Power: 8
lourens is on a distinguished road
Hi Philoppose,

The hard-coded call to the normal wall-functions is probably only used in case of patch-type wall, and boundary conditions zeroGradient for both k and epsilon.

I don't think we have to recompile the code, since it is listed as a separate class on SourceForge:

http://foam.sourceforge.net/doc/Doxygen/html/namespaceFoam_1_1turbulenceModels.h tml

However, if I just apply it to k and epsilon, I still get some strange results: k and epsilon values close to the wall are far too high. Applying it with a roughnessheight of 0 should give similar results as the standard wall functions, which they don't.

I hope you (or some other mart guy) can get us a step further.

Regards,

Lourens.
lourens is offline   Reply With Quote

Old   September 13, 2007, 06:34
Default Hi Philippose, Looking at t
  #6
New Member
 
Lourens Aanen
Join Date: Mar 2009
Posts: 14
Rep Power: 8
lourens is on a distinguished road
Hi Philippose,

Looking at the source code of the rough wall functions, I think it is unlikely we should apply them to k or epsilon or any other variable, exept to nut. The code contains no boundary condition to any variable except for nut. I guess the wall function can be applied using the SpalartAllmaras model since that model uses an explicit boundary conditions for nut. Applying it to k or epsilon means that no boundary condition for k or epsilon is given, causing them to be constant?

Besides it should not be neccesary to apply the rough wall function on more than one place, since it sets the values for nutw, which are stored.
In the KE model, the wallViscosityI.H which sets nutw is included twice. Any idea why? The last field updated is the nut field. If the rough wall functions can be used with the unodified KE model, they should be applied after updating nut (the last step in the KE model) and before updating k and epsilon. The U-boundary condition seems to be the perfect candidate to apply the rough wall function: it is constant (0 0 0) and updated before k and epsilon. I only don't know if the first call to wallViscosityI.H in kEpsilon.C causes problems. But anyhow: applying it to U gives an error message...
I start to think things have to be rewritten and recompiled to get them working for ke-models. But that is not too easy since as there is no logic place to set the boundary conditions fot nut, I don't know if it is easy to apply different roungnesses for different walls.

If you have better ideas please let me know!

Regards,

Lourens.
lourens is offline   Reply With Quote

Old   July 30, 2008, 07:50
Default Hi Foamers, also in OF-1.5
  #7
Member
 
sradl's Avatar
 
Stefan Radl
Join Date: Mar 2009
Location: Graz, Austria
Posts: 82
Rep Power: 9
sradl is on a distinguished road
Hi Foamers,

also in OF-1.5 a mysterious directory names "nutWallFunctions" can be found in "src/turbulenceModels/RAS/incompressible/wallFunctions/". However, it is totally unclear how this code can used (it is compiled into the lib incompressibleRASModels).

Can somebody give me a hint where to find further information?
sradl is offline   Reply With Quote

Old   July 30, 2008, 08:06
Default It is used by the Spalart-Allm
  #8
Senior Member
 
Eugene de Villiers
Join Date: Mar 2009
Posts: 725
Rep Power: 12
eugene is on a distinguished road
It is used by the Spalart-Allmaras model as a wall boundary condition for the nut field.
eugene is offline   Reply With Quote

Old   January 26, 2009, 05:42
Default Hi all, I am wondering if i
  #9
Senior Member
 
maddalena's Avatar
 
maddalena
Join Date: Mar 2009
Posts: 436
Rep Power: 12
maddalena is on a distinguished road
Hi all,

I am wondering if it is possible to apply a rough wall condition using the kEpsilon turbolence model in OF 1.5. Up to now, I have found references only to kOmega or Spalart-Allmaras model in this forum... And if so, how can I specify the dimensioned roughness height and the roughness constant as I would do in Fluent? Any idea? Any hint where to find more info?

Thanks in advance!

Mad
maddalena is offline   Reply With Quote

Old   April 26, 2009, 22:29
Default
  #10
New Member
 
Nestor Rueda
Join Date: Mar 2009
Posts: 9
Rep Power: 8
ruedavallejo is on a distinguished road
Hi Magdalena,
did you find any answer to your question? I'm trying to set a problem with the k-e model and rough walls, but I dont have any concrete answer yet.
regards
ruedavallejo is offline   Reply With Quote

Old   July 30, 2009, 08:51
Thumbs up release 1.6 solved problems!
  #11
New Member
 
Lourens Aanen
Join Date: Mar 2009
Posts: 14
Rep Power: 8
lourens is on a distinguished road
Ha All,

Applying rough wall boundary conditions was not possible whitout some programming. With the new release of OF 1.6 this is not needed anymore: a number of wall functions can be chosen, acting on the turbulent viscosity (which is now an explicit variable for all RAS models) including "nutRoughWallFunction" (I have some problems with this one: it seems to be insensitive for the variables to set, which might be due to some mistake of me...) and "nutSpalartAllmarasStandardRoughWallFunction" which can be applied to e.g. k-epsilon models. Different roughness parameters can be used for different patches. Works great!

Regards,

Lourens
lourens is offline   Reply With Quote

Old   May 21, 2010, 10:14
Default define Ks and Cs
  #12
Senior Member
 
Join Date: Jan 2010
Location: Stuttgart
Posts: 129
Rep Power: 7
Chrisi1984 is on a distinguished road
Can someone tell me where I have to define the variables Ks and Cs when i use a roughWallFunction?

Regards
Chrisi1984 is offline   Reply With Quote

Old   March 9, 2011, 01:49
Default
  #13
New Member
 
Stefan
Join Date: Jan 2011
Location: Bremen
Posts: 20
Rep Power: 6
holodeck10 is on a distinguished road
Yes. Put them into the 0/nut file at the wall boundary where you want to apply the wall function.
holodeck10 is offline   Reply With Quote

Reply

Thread Tools
Display Modes

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 On
Pingbacks are On
Refbacks are On



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