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

LES

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

Like Tree20Likes

Reply
 
LinkBack Thread Tools Display Modes
Old   June 20, 2012, 12:49
Default
  #201
Member
 
achinta
Join Date: May 2010
Location: Zurich
Posts: 66
Rep Power: 6
achinta is on a distinguished road
Hello everyone,
Trying to improve my case I implemented the following changes in fvSchemes:
------
ddtSchemes
{
default backward;
}

gradSchemes
{
default Gauss linear;
grad(p) Gauss linear;
grad(U) Gauss linear;
}

divSchemes
{
default none;
div(phi,U) Gauss linearUpwindV grad(U);
div(phi,k) Gauss upwind;
div(phi,B) Gauss limitedLinear 1;
div(phi,nuTilda) Gauss limitedLinear 1;
div(B) Gauss linear;
div((nuEff*dev(T(grad(U))))) Gauss linear;
}

laplacianSchemes
{
default none;
laplacian(nuEff,U) Gauss linear limited 0.333;
laplacian((1|A(U)),p) Gauss linear limited 0.333;
laplacian(DkEff,k) Gauss linear limited 0.333;
laplacian(DBEff,B) Gauss linear limited 0.333;
laplacian(DnuTildaEff,nuTilda) Gauss linear limited 0.333;
}

interpolationSchemes
{
default linear;
interpolate(U) linear;
}

snGradSchemes
{
default limited 0.333;
}

fluxRequired
{
default no;
p ;
}
-----------------------
I tried all variants of OneEqEddy LES model (cubeRootVol, vanDriest, smooth) with the above corrections. The solution diverges after 100 time steps.

Then i made some change:
-----
gradSchemes
{
default cellLimited Gauss linear 1;
grad(p) cellLimited Gauss linear 1;
grad(U) cellLimited Gauss linear 1;
}

divSchemes
{
default none;
div(phi,U) Gauss filteredLinear2V 0.5 0;
div(phi,k) Gauss linearUpwind grad(k);
div(phi,B) Gauss limitedLinear 1;
div(phi,nuTilda) Gauss limitedLinear 1;
div(B) Gauss linear;
div((nuEff*dev(T(grad(U))))) Gauss linear;
}
------
Other schemes remain the same. The solution blows up even faster (arond 30 time steps).

Could anybody tell what the problem is?


Kind regards,
Achinta

Last edited by achinta; June 20, 2012 at 12:49. Reason: improvement
achinta is offline   Reply With Quote

Old   June 20, 2012, 12:52
Default
  #202
Member
 
achinta
Join Date: May 2010
Location: Zurich
Posts: 66
Rep Power: 6
achinta is on a distinguished road
Hi Rob,
Please let me know what specific information you need (except for the mesh, which is confidential ).

Kind regards,
Achinta
achinta is offline   Reply With Quote

Old   October 5, 2012, 08:16
Default
  #203
New Member
 
Paula
Join Date: Aug 2012
Posts: 20
Rep Power: 4
curiosity is on a distinguished road
Hi,

I´m also interested on this topic?

Did anyone got the answer to Roland´s question?
curiosity is offline   Reply With Quote

Old   October 5, 2012, 08:35
Default
  #204
Senior Member
 
Bernhard
Join Date: Sep 2009
Location: Delft
Posts: 790
Rep Power: 12
Bernhard is on a distinguished road
The logfile can give some information. Can you show part of the logfile, where the divergence occurs?
Bernhard is offline   Reply With Quote

Old   October 5, 2012, 10:46
Default
  #205
New Member
 
Paula
Join Date: Aug 2012
Posts: 20
Rep Power: 4
curiosity is on a distinguished road
Quote:
Originally Posted by Bernhard View Post
The logfile can give some information. Can you show part of the logfile, where the divergence occurs?
Sorry Bernhard, I wrote at the wrong thread :S
curiosity is offline   Reply With Quote

Old   October 21, 2012, 05:12
Default
  #206
New Member
 
Ken Tay
Join Date: Oct 2012
Location: Singapore
Posts: 5
Rep Power: 4
kentriarch is on a distinguished road
Hi all,

Am new here. I am looking to implement a 2-part eddy viscosity model as outlined by Sullivan et al (1994) www.mmm.ucar.edu/people/sullivan/talks/papers/sgs.pdf

Currently, I am thinking of using pimpleFoam solver and have been looking at modifying the oneEqEddy LES model, changing the divDevbeff in GenEddyVisc.C to the appropriate formulation of tau_ij. However, I am running into several issues:

1. How to get the homogeneous averages for <S_ij>, <u>, <v> during runTime as I need these values for each time-step

2. I am still unsure if using pimpleFoam is ideal, even if I want to neglect the effects of temperature and hence the buoyancy effect

Anyway, I would appreciate any pointers from you guys if any of you have attempted to do this implementation. Thanks a lot.
kentriarch is offline   Reply With Quote

Old   October 23, 2012, 05:17
Default
  #207
Senior Member
 
Albrecht vBoetticher
Join Date: Aug 2010
Location: Zürich, Swizerland
Posts: 177
Rep Power: 6
vonboett is on a distinguished road
Quote:
Originally Posted by kentriarch View Post
Hi all,

Am new here. I am looking to implement a 2-part eddy viscosity model as outlined by Sullivan et al (1994) www.mmm.ucar.edu/people/sullivan/talks/papers/sgs.pdf

Currently, I am thinking of using pimpleFoam solver and have been looking at modifying the oneEqEddy LES model, changing the divDevbeff in GenEddyVisc.C to the appropriate formulation of tau_ij. However, I am running into several issues:

1. How to get the homogeneous averages for <S_ij>, <u>, <v> during runTime as I need these values for each time-step

2. I am still unsure if using pimpleFoam is ideal, even if I want to neglect the effects of temperature and hence the buoyancy effect

Anyway, I would appreciate any pointers from you guys if any of you have attempted to do this implementation. Thanks a lot.
Have you taken a look at the LTT-Rostock OpenFOAM extensions? Matthias Walter has developed several dynamic subgridscale models for OpenFOAM and you can find the source code on their repository, there it should be possible to find code snippets you could use. (By the way, I strongly recommend the DMM SGS model)
vonboett is offline   Reply With Quote

Old   October 23, 2012, 06:15
Default
  #208
New Member
 
Ken Tay
Join Date: Oct 2012
Location: Singapore
Posts: 5
Rep Power: 4
kentriarch is on a distinguished road
Quote:
Originally Posted by vonboett View Post
Have you taken a look at the LTT-Rostock OpenFOAM extensions? Matthias Walter has developed several dynamic subgridscale models for OpenFOAM and you can find the source code on their repository, there it should be possible to find code snippets you could use. (By the way, I strongly recommend the DMM SGS model)
Nope, I have not, but thanks for the recommendations and I will look in them!
kentriarch is offline   Reply With Quote

Old   January 13, 2013, 20:13
Default
  #209
New Member
 
Ali Lohrasbi Nichkoohi
Join Date: Oct 2011
Posts: 15
Rep Power: 5
nichkoohi is on a distinguished road
Quote:
Originally Posted by grandgo View Post
hi gregor,

yes, it was my worry, that it has something do to with my domain not being cube-shaped. thanks anyway.

best regards
grandgo
HI GREGOR and grando
i copied and do wmake your code above. my case is rectangular(3d). i want to :
1: write the E-K in one dimentional in space
2: write the E-K in one dimentional in time
3: write the E-K in 3 dimentional in space
4: write the E-K in 3 dimentional in time
how can i do it?
thank u in advance sir
lohrasbi2013@gmail.com
nichkoohi is offline   Reply With Quote

Old   January 17, 2013, 08:11
Default
  #210
Member
 
Gregor Olenik
Join Date: Jun 2009
Location: http://greole.github.io/
Posts: 78
Rep Power: 7
gregor is on a distinguished road
Hi Lohrasbi,

for the E-K in space you can have a look at how it is done in the dnsFoam solver. In principle you could use:

Code:
#include "Kmesh.H"
#include "calcEk.H"

Kmesh K(mesh);
calcEk(U, K).write(runTime.timePath()/"UEk", runTime.graphFormat());
this will give you the E-K of the whole domain (for the three components of U). If you want E-K of a single velocity component you could just create a vector with three identical components (e.g Ux[0]=U[0], Ux[1]=U[0],Ux[2]=U[0]) and then use calcEk(Ux,K) and divide the result by three (hope thats correct). For E-K over time you mean E-K at a specific point of the domain, right ?
gregor is offline   Reply With Quote

Old   December 19, 2013, 16:46
Default
  #211
Senior Member
 
Alhasan's Avatar
 
Hasan KJ
Join Date: Dec 2011
Location: Bristol, United Kingdom
Posts: 173
Rep Power: 5
Alhasan is on a distinguished road
Hi all,

I am using this mapped value of fields from a setup to simulate flow around an airfoil,

now for this particular case, when i use RANS i map the Nut field because it is non-uniform on the top and bottom of the airfoil, so to get accurate results i have to map it.

now when i want to perform LES ? what do i do, do i map the nuSgs field ? if so how because I am mapping from a RANS simulation and it does not have nuSgs field

or do i just map the Nut and change its name to nuSgs and the dimensions !!! ? does it work like that ? do they have any similar relation

Thanks for your time,
Regards,
Hasan K.J
Alhasan is online now   Reply With Quote

Old   December 26, 2013, 16:23
Default
  #212
Super Moderator
 
Bruno Santos
Join Date: Mar 2009
Location: Lisbon, Portugal
Posts: 8,078
Blog Entries: 34
Rep Power: 82
wyldckat is just really nicewyldckat is just really nicewyldckat is just really nicewyldckat is just really nice
Greetings to all!

@Hasan: AFAIK, when LES is involved, what usually is done is to first run the simulation with a steady-state solver with LES; then run a transient solver with LES as well. One such tutorial in OpenFOAM that demonstrates this, is this one: "incompressible/pisoFoam/les/motorBike"

If you need to pass RAS fields to LES ... either you'll need an utility that calculates an estimate from the RAS fields to LES fields, or you'll have to create one yourself.
Have a look into this utility "applications/utilities/postProcessing/turbulence/createTurbulenceFields" - it's meant for creating RAS turbulence fields, but perhaps you can create a similar utility for LES... because I'm not aware of any existing already...
Wait, apparently someone already created the utility "createTurbulenceFieldsLES": Utilities: post average turbulence fields and create turbulence fields for LES


Beyond this, the turbulence fields are usually calculated from the pressure and velocity fields, using the initial turbulence fields only as a reference. Therefore, you don't need to specifically map the LES related turbulence fields... you just need to give non-ridiculous initial values for the turbulence fields and after some iterations it should be able to sort things out on its own.

Best regards,
Bruno


edit: conversation on the related topic to Hasan's case is here: Boundary Condition For Mapped Fields in OpenFOAM
Alhasan and adambarfi like this.

Last edited by wyldckat; December 28, 2013 at 16:52. Reason: see "edit:"
wyldckat is offline   Reply With Quote

Old   February 26, 2014, 21:35
Default
  #213
Member
 
Peter
Join Date: Nov 2011
Posts: 45
Rep Power: 5
palmerlee is on a distinguished road
Quote:
Originally Posted by eugene View Post
np.

p=0 and small k is fine.
nuSgs doesn't matter because it is calculated from k and delta.
Hi, Eugene!

The y+ is smaller than 2 in my case which is a LES simulation. I set k a small value (1e-5) at the inlet boundary. How should I set k at the wall boundary?

Best regards,
Peter
palmerlee is offline   Reply With Quote

Old   May 22, 2014, 07:13
Default
  #214
Senior Member
 
ArathoN
Join Date: Jul 2011
Posts: 137
Rep Power: 6
ArathoN is on a distinguished road
Quote:
Originally Posted by palmerlee View Post
Hi, Eugene!

The y+ is smaller than 2 in my case which is a LES simulation. I set k a small value (1e-5) at the inlet boundary. How should I set k at the wall boundary?

Best regards,
Peter
The turbulent kinetic energy is null at the walls. And for the value at the inlet you can define it after considering a turbulence intensity of 5÷7% then knowing U it's easy to calculate it.
ArathoN is offline   Reply With Quote

Old   May 22, 2014, 07:44
Default
  #215
Senior Member
 
RodriguezFatz's Avatar
 
Philipp
Join Date: Jun 2011
Location: Germany
Posts: 1,087
Rep Power: 15
RodriguezFatz will become famous soon enough
Quote:
Originally Posted by ArathoN View Post
The turbulent kinetic energy is null at the walls.
Right, but set it to some really low number (such as 1e-12) at the wall in OpenFoam. At some places OpenFoam divides by "k", so setting it to "0.0" will result in an error. Now, a really low value will give a correct division, but is pratically zero for all multiplications.
__________________
The skeleton ran out of shampoo in the shower.
RodriguezFatz 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 08:14.