CFD Online Discussion Forums

CFD Online Discussion Forums (http://www.cfd-online.com/Forums/)
-   OpenFOAM Running, Solving & CFD (http://www.cfd-online.com/Forums/openfoam-solving/)
-   -   Convection discretization schemes for LES (http://www.cfd-online.com/Forums/openfoam-solving/59321-convection-discretization-schemes-les.html)

sek October 3, 2007 12:19

Can OpenFOAM LES gurus recomme
 
Can OpenFOAM LES gurus recommend the best convection schemes available in OF? It would be great if anybody can share his/her experience with various schemes in terms of stability and accuracy. I tried "Gauss linear", and it yielded unphysical oscillations in velocity/pressure, which is understandable given the mesh resolution.

eugene October 3, 2007 13:04

try filteredLinear
 
try filteredLinear

braennstroem October 3, 2007 14:30

I read an article from ETMM6 c
 
I read an article from ETMM6 conference about the use of polyhedral meshes for LES with starccm+. It seems to be a nice way to use unstructured grids for LES...

Does anyone know, which of OpenFOAM schemes are for LES 'low' dissipative for polyhedral and tetra meshes? Code Saturne has some adjusted schemes for unstructured grids too. Maybe, someone has experience in unstructured LES!? Would be nice to read some advices, if it is worth running LES without hexa meshes...

Fabian

eugene October 3, 2007 14:46

The best available low dissipa
 
The best available low dissipation second order schemes in OpenFOAM are filteredLinear and filteredLinear2. The filtering removes staggering caused by pressure-velocity decoupling by introducing small amounts of upwind. The type of mesh they are used on is not relevant, although the calculations will obviously be more accurate on hexes and less accurate on the same number of tets.

braennstroem October 3, 2007 15:34

Thanks for the info, is there
 
Thanks for the info, is there any reference to these schemes?

sek October 3, 2007 16:43

Where should I look to find th
 
Where should I look to find the details of the convectiobn schemes. I unsuccessfully tried to browse the code but it was not obvious where all the different schemes are implemented.

eugene October 4, 2007 06:19

Reference? No, Henry invented
 
Reference? No, Henry invented them from scratch to stop the staggering in LES a few months ago. We have performed a lot of tests since then and they are unconditionally better than any of our previous attempts to address the problem and do not adversely affect LES statistics.

The sources can be found in src/finiteVolume/interpolation/surfaceInterpolation/limitedSchemes/

ville October 4, 2007 07:31

This sounds good indeed! Whic
 
This sounds good indeed!
Which sgs-models have you been testing these
schemes on? Have you tried DNS with these schemes?

It would be very interesting to hear about suggestions/experiences for minimum cell Reynolds numbers when implicit LES/DNS limit is being considered. Actually, I think I'll try this
approach on filteredLinear-schemes on my free jet case within some weeks or so.

Regards,
Ville

eugene October 4, 2007 09:25

We have run them with the oneE
 
We have run them with the oneEqEddyVisc and SpalartAllmaras and are now using them for all our LES/DES calculations. So far so good. I know Henry has run them without an SGS model as well, but unfortunately I can't remember what his comments were on the viability of this approach.

I am not 100% certain, but it looks like you can pretty much ignore the cell Reynolds number limit if you have these schemes in place.

A small note: these schemes will not remove staggering entirely, but will generally reduce staggering to levels smaller than "normal" flow oscilations.

gtg627e October 10, 2007 03:13

Hello Forum, I am running a
 
Hello Forum,

I am running a LES case of a flat plate using oodles. I was wondering if anybody could comment on the drastic oscillations of pressure, which are present even in the pitzDaily tutorial in oodles. I undesrand pitzDaily is just an illustration of the use of LES, and z-direction boundaries for a LES simulation should be simmetryPlane, but I get the same wild oscillations. Furthermore, could anyboby give an example of how to use the filteredLinear convection scheme? I tried div(phi,U) filteredLinear, and I got an error saying such scheme requires a word as an input; so I tried U.
Would you use it like this? to what field variables would you seggest applying filteredLinear?

Thank you in advance,

Alessandro Spadoni

gtg627e October 10, 2007 03:31

Dear Forum, I forgot to men
 
Dear Forum,

I forgot to mention that my flat plate is moving, and even though the pressure is oscillating throughout the domain, velocity, k, nuSGS, B ... are looking ok.

Thank you again,

Alessandro

eugene October 11, 2007 07:05

you use filteredLinear as foll
 
you use filteredLinear as follows:

div(pi,U) Gauss filteredLinear;

The oscillations are probably due to poor inlet or outlet boundary specifications.

gtg627e October 15, 2007 06:44

Dear Eugene, My case is as
 
Dear Eugene,

My case is as follows:

I am using oodles.
I have a flat plate 32 cm long. My solution domain is x: general patch (which I called front) from -21 cm to -10.5 cm. type wall from -10.5 cm to 21 cm. The top part of the domain is at 40 cm. The domain extends along z from 0 to 5 cm.

I would like to get a good steady-state solution to then analyze what happens if such flat plate starts vibrating.

Boundary conditions:

top --> type patch;
physicalType slip;
U (file 0/U) slip;
p (file 0/p) slip;
k (file 0/k) slip;
B (file 0/B) slip;
nuSgs (file 0/nuSgs) zeroGradient;
nuTilda (file 0/nuTilda) slip;

front --> type patch;
physicalType slip;
U (file 0/U) slip;
p (file 0/p) slip;
k (file 0/k) slip;
B (file 0/B) slip;
nuSgs (file 0/nuSgs) zeroGradient;
nuTilda (file 0/nuTilda) slip;

flatplate --> type wall;
physicalType wallFunctions;
U (file 0/U) uniform (0 0 0);
p (file 0/p) zeroGradient;
k (file 0/k) uniform 0;
B (file 0/B) zeroGradient;
nuSgs (file 0/nuSgs) zeroGradient;
nuTilda (file 0/nuTilda) uniform 0;

Inlet --> type patch;
physicalType turbulentInlet;
U (file 0/U) fluctuationScale (0.02 0.01 0.01);
referenceField uniform (10 0 0);
value uniform (10 0 0);
p (file 0/p) zeroGradient;
k (file 0/k) uniform 2e-05;
B (file 0/B) uniform (0 0 0 0 0 0 0 0 0);
nuSgs (file 0/nuSgs) zeroGradient;
nuTilda (file 0/nuTilda) uniform 0;

outlet type patch;
physicalType inletOutlet;
U (0/U)
inletValue uniform (0 0 0);
value uniform (0 0 0);
p (0/p) uniform 0;
k (file 0/k)
inletValue uniform 0;
value uniform 0;
B (file 0/B) inletValue uniform (0 0 0 0 0 0 0 0 0);
value uniform (0 0 0 0 0 0 0 0 0);;
nuSgs (file 0/nuSgs) zeroGradient;
nuTilda (file 0/nuTilda)
inletValue uniform 0;
value uniform 0;

Initial Conditions Internal filed:
U uniform (0 0 0);
p internalField uniform 0;
k uniform 0;
B uniform (0 0 0 0 0 0 0 0 0);
nuSgs uniform 0;
nuTilda uniform 0;

frontandBack type symmetryPlane;

LESmodel oneEqEddy;
delta cubeRootVol;

I make sure the Courant number is at or below 0.2.

I understand that the above boundary conditions are not ideal for near-wall-modeling (wall functions) simulations, as usually, the velocity at the wall is expressed in terms of shear stress and mean velocity. However, after I tune the current case, I am looking to simulate a vibrating wing of chord 0.7 m with free-stream |V| ~~ 50-100 m/s at seal level. Given my cluster of 6 computers, near wall resolution may be too expensive.

The above case was adapted from the oodles/pitzDaily case. Would you recommed specifying the total pressure or a reference value for it?

This is the first time I work with LES, so forgive me if some of the above settings are blatantly wrong. I was wondering if you had any suggestions or comments.


Thank you in advance,

Alessandro Spadoni

eugene October 15, 2007 07:24

1. Slip boundaries should be w
 
1. Slip boundaries should be walls, not patches.
i.e.
top --> type wall;
irrelevant: physicalType slip;
U (file 0/U) slip;
p (file 0/p) zeroGradient;
k (file 0/k) zeroGradient;
irrelevant: B (file 0/B) slip;
nuSgs (file 0/nuSgs) nuSgsWallFunctions;
not used for this model: nuTilda (file 0/nuTilda) slip;

For a real wall, all you change is
U (file 0/U) fixedValue; value unfirm (0 0 0);

Basically, your boundary conditions are all wrong. The tutorial isn't much use unfortunately, because it was created with low Re mesh in mind.

2. Initial conditions: k should have a small positive value (1e-10)

3. delta: vanDriest - needed for poorly resolved near-wall meshes to provide the correct length scales.

Anyway, good luck.

maka October 17, 2007 12:53

Hi Eugene, Can you please e
 
Hi Eugene,

Can you please expain why slip should be used with wall and not patches. I use slip on patches for LES and it works fine. Also I got that information from the following thread (read "January 08, 2007" two messages).

The reason the I do not use wall instead of patch with slip b.c is that I use wall functions on some other wall that I have in the domain and there is interaction between specifying a surface as wall and the wall function (for example, distance from the wall is needed if wall function is used and is calculated when you specify the surface as wall. Please correct me if wrong). In brief, I use wall only if simple b.c. is used on a surface or a wall function is applied to it to avoid the interaction that I do not clearly understand.

http://www.cfd-online.com/OpenFOAM_D...es/1/3194.html

Please if this wrong, correct my information since I use such b.c. a lot. Thanks in advance.

Best regards,
Maka.

eugene October 18, 2007 06:10

You hit the nail on the head.
 
You hit the nail on the head.

If you do not specify a slip boundary to be a wall, no wall distance calculation is done. There are many turbulence models and other utilities which use distance from the wall as a length scale. What you are saying by making the slip boundary a patch is that the scale of the turbulence in the vicinity of the boundary has no relation to the proximity of that wall. This is clearly erroneous, as even a slip wall will restrict turbulent scales normal to the surface.

In general using a slip patch will not cause stability problems, but it will produce incorrect behavior for several RAS and LES turbulence models.

gtg627e October 18, 2007 12:19

Hi Eugene and Make, Just to
 
Hi Eugene and Make,

Just to summarize, my case is a flat plate and I have a region 1/2 the length of the plate in front of it. I use such region to avoid problems related to having a boundary layer at the inlet. What I would really like to do is to say that all variables in front of the flat plate are computed from the rest of the domain. Same thing for the top part of my domain. Can this be done, i.e can I use "calculated" boundary conditions in LES?

Furthermore, I have a couple of questions about inlet and outlet specifications:

I specify my inlet to be"turbulentInlet" with field variables:
k fixed value
value uniform 2e-5
nuSgs zeroGradient
B fixed value
uniform (0 0 0 0 0 0)
p zeroGradient
U turbulentInlet
fluctuationScale (0.02 0.01 0.01)
referenceField uniform(10 0 0)
value uniform (10 0 0)

I specify my outlet to be"inletOutlet" with field variables:
k inletOutlet
inletValue uniform 2e-5
value unifrom 0
nuSgs zeroGradient
B inletOutlet
inletValue uniform (0 0 0 0 0 0)
value uniform (0 0 0 0 0 0)
p fixedValue
value uniform 0
U inletOtlet
inletValue (10 0 0)
value (0 0 0)

Can I use extrapolated outlet in LES?
Could you comment on the above boundary conditions? Again, my goal is to simulate a flat plate in an unbounded domain.


Thank you for your help,

Alessandro

gtg627e October 19, 2007 17:02

Sorry Maka, I mespelled you na
 
Sorry Maka, I mespelled you name.....my apologies

gtg627e October 19, 2007 17:03

Sorry Maka, I mispelled your n
 
Sorry Maka, I mispelled your name.....my apologies.
I seem to have serious typing problems...

maka October 19, 2007 17:20

No problem Alessandro. I just
 
No problem Alessandro. I just do not have enough experience to answer you questions, espeially about inlet b.c. Thanks Eugene de Villiers for the explanation.

Best regards,
Maka.


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