CFD Online Discussion Forums

CFD Online Discussion Forums (https://www.cfd-online.com/Forums/)
-   OpenFOAM Running, Solving & CFD (https://www.cfd-online.com/Forums/openfoam-solving/)
-   -   LES channel flow (https://www.cfd-online.com/Forums/openfoam-solving/72440-les-channel-flow.html)

ilia February 5, 2010 10:52

LES channel flow
 
Helllo all!

I am trying to simulate channel turbulent flow with LES.

I am using a box of size 6x2x4 ( x is flowwise, z is spanwise, y is normal to walls).

Boundary conditions are cyclic in x and z directions. Noslip conditions at walls.

I set mu = 1/180, pressure gradient gradP = 1, and delta t = 1e-3. (This gives Re_tau = 180).

The mesh size is 32*32*32

I am using channelFoam solver modified to keep gradP constant.

As initial conditions I use boxTurb utility.

LES model i use is Smagorinsky with vanDriest damping.

The question is: What discretisation schemes shall I use?

I tried to use MUSCL scheme and CrankNicholson time scheme but there was some standing waves in flowwise with wavelength of 4 cells.

Then I tried to use some simplier schemes, like Euler and linear, the solution becomes laminar.

Could you suggest what schemes shall i use to both avoid standing waves and resolve turbulence?

eugene February 9, 2010 04:10

For a channel flow, I suggest backward for time and linear for U.

ilia February 9, 2010 05:00

Thank you!

So, you recommend using the same schemes as in the channelFoam tutorial. But why MUSCL gives not good results in this case and you do not recommend using it?

eugene February 9, 2010 11:42

I have never tried MUSCL for LES, but it includes upwind components, so it will dissipate a lot of energy from the system which makes it unsuitable for conventional LES.

mdjames June 16, 2010 16:46

Hi Ilia,

How did you go about modifying channelFoam with regards to maintaining a constant pressure gradient?

eugene June 17, 2010 06:12

The current channelFoam modifies the imposed gradP in a goal-seek fashion to try and maintain a fixed flow rate. To apply a fixed gradP, you just have to change the code to use a constant gradP. Very simple.

dav1dt April 8, 2011 16:39

Hello everyone

I think I'm at the right place.

I try to maintain a constant pressure gradient in a solver derived from channelFoam. I encounter some difficulties and I want to know if it comes from my modification, maybe someone could help me.

The pertinent part of this code is:

while (runTime.run())
{
#include "readTimeControls.H"
#include "readPISOControls.H"
#include "CourantNo.H"
#include "setDeltaT.H"

runTime++;

Info<< "Time = " << runTime.timeName() << nl << endl;
Info<< "Coriolis parameter = " << fc.value() << nl << endl;
Info<< "pressure gradient = " << gradP.value() << nl << endl;

sgsModel->correct();

fvVectorMatrix UEqn
(
fvm::ddt(U)
+ fvm::div(phi, U)
+ sgsModel->divDevBeff(U)
+ (fc^U)
==
-gradP
);

if (momentumPredictor)
{
solve(UEqn == -fvc::grad(p));
}

...................

Where graP is declared as a constant vector. When I use this solver, several timeStep after reaching a turbulent flow, the third component of fvc::grad(p) accelerates as a formula 1 even if I had declared a zero in the third component of my constant gradP.

My question is: knowing that I'm pretty sure that problem doesn't come from the other source term (fc^U), my modification appears to be legit or not? A hint could be very useful.

Thanks

dav1dt April 18, 2011 16:58

I found it, beginner's problem!


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