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/)
-   -   Fluctuating Pressure Fields (LES-pisoFoam) (https://www.cfd-online.com/Forums/openfoam-solving/97779-fluctuating-pressure-fields-les-pisofoam.html)

fluentfreak February 24, 2012 13:31

Fluctuating Pressure Fields (LES-pisoFoam)
 
Hi,

The Case:
I am testing on the pitzDaily ("tutorials/incompressible/pisoFoam/les/pitzDaily") case with time varying velocity inlet conditions. I have extruded the grid to a large 3D case.

A time varying velocity profile is imposed at the inlet (using the timeVaryingMapped type). When the variations are very small, the case converges and the results time series all look good.

The Problem:
When the velocity profiles and the inlet have larger changes in time, the pressure fields fluctuate in time: e.g: from t=0 to t=1 the whole domain has negative pressures. From time t=2 to t=3 the whole domain has positive pressures and so on. Note that the velocity fields look normal and have the expected values.


Do you have any thoughts on this strange behavior?
Thanks.

Jan.Östh February 28, 2012 03:41

What numerical scheme are you using for the convective terms in the momentum equations? Sometimes when I get a fluctuating pressure field in LES simulations I have to use the blended scheme (blend of CD and first order upwind) instead of pure central differencing. This adds additional numerical dissipation and you have to be careful not to add to much. However, I have never had the exact problem that you are having, normally when my pressure field is corrupted, then the velocity field is as well. Maybe you have to decrease the time step when you have larger fluctuations since the CFL number in the cells located at the inlet will be higher.

fluentfreak February 28, 2012 15:59

Quote:

Originally Posted by Jan.Östh (Post 346586)
What numerical scheme are you using for the convective terms in the momentum equations? Sometimes when I get a fluctuating pressure field in LES simulations I have to use the blended scheme (blend of CD and first order upwind) instead of pure central differencing. This adds additional numerical dissipation and you have to be careful not to add to much. However, I have never had the exact problem that you are having, normally when my pressure field is corrupted, then the velocity field is as well. Maybe you have to decrease the time step when you have larger fluctuations since the CFL number in the cells located at the inlet will be higher.

Thanks for your recommendations.
Timestep: i have used extremely small timesteps and also normal timesteps (Courant Number of about 0.5)....but the problem persists...

Discretization Scheme:
divSchemes
{
default none;
div(phi,U) Gauss linear;
div(phi,k) Gauss limitedLinear 1;
div(phi,B) Gauss limitedLinear 1;
div(phi,nuTilda) Gauss limitedLinear 1;
div(B) Gauss linear;
div((nuEff*dev(T(grad(U))))) Gauss linear;
}
I will try them with 0.5 (blended schemes with more weight for the upwind part...). I hope it works this time!

I'll post here whether it makes any change or not.

Thanks.

Jan.Östh March 13, 2012 04:08

Did you acquire any improvements in the simulation? I'm trying to get an LES simulation running using LES as well. However, I don't know if the blended scheme mixes second order Central Differencing scheme with first or second order Upwind Scheme...

zcjwyl March 29, 2012 12:24

Quote:

Originally Posted by fluentfreak (Post 346179)
Hi,

The Case:
I am testing on the pitzDaily ("tutorials/incompressible/pisoFoam/les/pitzDaily") case with time varying velocity inlet conditions. I have extruded the grid to a large 3D case.

A time varying velocity profile is imposed at the inlet (using the timeVaryingMapped type). When the variations are very small, the case converges and the results time series all look good.

The Problem:
When the velocity profiles and the inlet have larger changes in time, the pressure fields fluctuate in time: e.g: from t=0 to t=1 the whole domain has negative pressures. From time t=2 to t=3 the whole domain has positive pressures and so on. Note that the velocity fields look normal and have the expected values.


Do you have any thoughts on this strange behavior?
Thanks.

Hej,

Have you solved the problem?

I've got the same unphysical pressure functuation. I'm using turbulentInlet BC combined with a velocity profile at the inflow boundary. The velocity field looks normal but the pressure...

fluentfreak April 11, 2012 16:04

Quote:

Originally Posted by zcjwyl (Post 352206)
Hej,

Have you solved the problem?

I've got the same unphysical pressure functuation. I'm using turbulentInlet BC combined with a velocity profile at the inflow boundary. The velocity field looks normal but the pressure...

Not yet :confused:
But I will post an update when I make it right!

fluentfreak April 18, 2012 04:15

Even the original pitzDaily case has the same problem. I have tried more number of PISO corrections, and also limitedLinear, filteredLinear schemes.
Still no lock :(
As soon as you remove velocity fluctuations at the inlet, the case runs smooth!
Does not matter if you implement the velocity by the "turbulentinlet" or just map them directly......

Any ideas?
You can test it your self and run the pitzDaily tutorial in incompressible/pisoFoam/les/pitzDaily ->check the pressure field instead of U and you will see the fluctuations!

tanzil May 25, 2012 22:02

2 Attachment(s)
Hi, i've also a pressure issue when using pisoFoam. Although its a completely different case. Im simulating flow around airfoil and using turbulence model k-omega-SST. I've checked all my numerical schemes, tried more loops in fvSolution, set up the Co<0.5. Mesh is good. What i got from Residuals plot is partially not acceptable. Following you can see that all other parameters convergence beside pressure. In addition the pressure run more than the Iterations that i was setting (20000).


what will/are this pressure going to tell us? is anyone actually encounter non fluctuated pressure when using pisoFoam?

Thank You

owayz August 8, 2012 17:53

Hi All,
Well I am stuck with the same problem.
I am simulating an externet cylinder flow. Please bear with me I will go through it thorougly to describe what I have done.

1- My grid is not bad quality. The extents of the domain are 15 times dia meter in x and y direction. I have 1 outlet, 1 inlet, cylinder wall and cylic BC in the normal direction to flow (no high-fi science).
2- I successfully ran the RANS simulation without wall functions (I prepared a grid for LES, with aim to have y+<1). Drag and Strouhal number looked fine. Residuals didn't converge properly. But I thought may be that's because of the unsteadiness in the flow. As we can observe that residuals don't converge very well for PitzDaily as well.
3- I decided to do an LES simulation on the same grid (from previous RANS run) with the same boundary conditions (no turbulentInlet BC, just a fixedValue BC for velocity) and I failed to get the expected behavior of pressure.
4- I created a new grid with more grid points (just to be sure that my grid resolution is not causing problems). But I failed again.
5- I changed the upper and lower Bc of my domain slip wall, (as my boundaries are far enough I thought may be adding slip walls would add to the stability of the case) but this didn't help either.
6- I was using freeStream boundary condition at the outlet which was working very well for me at the outlet, and now I thought about doing what has been done in pitzDaily for outlet and this didn't help either.

I don't know what to do, but I am trying. If something works then the question will arise why did it work?. :p
Anyways I am a bit relieved to know that I am not the only one stuck with this problem. Again I would request everybody to share their experience and the solution if they reach any proper results.

Regards,
Awais

owayz August 8, 2012 18:12

Another info which I forgot is that I am using rhoPimpleFOAM.
Even thought my flow doesn't come under the category of being called compressible flow. But the I will need to study heat transfer in flow as well. That is why I am considering a compressible flow.
Regards,
Awais

cm_jubayer October 19, 2012 23:48

The one question is that why the pitzdaily case (pressure field) behave this way. Something is not right. Why OpenFOAM Ltd. is not addressing this issue? People has been facing this for a long time.

Jubayer

owayz October 20, 2012 10:50

Hi Jubayer,
This is not the problem with oneEqEddy SGS model. In fact its the problem with the turbulent inlet BC in the pitzDaily tutorial. Somehow the turbulent inlet BC adds random fluctuations which is not correct.
I have used oneEqEddy model with other cases and it works fine.

Regards,
Awais

cm_jubayer October 23, 2012 11:10

Hi Awais,

I don't think its the turbulent inlet BC itself. I have tried to use real time history data from the wind tunnel into the simulation. I am getting the same pressure fluctuations. Seems like anything other than steady inlet is creating pressure fluctuations.

Jubayer

owayz October 23, 2012 11:22

Hi Jubayer,
May be your are right. But I didn't observe any problem with oneEqEddy and Smagorinsky for a simulation of flower over a cylinder.
That is why I thought there is nothing wrong with the oneEqEddy model.
One other thing I could think off is that the pitzDaily is 2D tutorial, may be you should try to extend the same case to 3D. With some perriodic BC in spanwise direction. That might remove your doubts.
LES should be strictly a 3 dimensional simulation. 2D you can't really capture all the flow phenomena associated with large eddies.
Whenever you run a 2D LES, openFOAM always generates a warning that case is 2D.

Regards,
Awais

cm_jubayer October 23, 2012 11:28

Hi Awais,

Actually the case that I mentioned is a 3D simulation (Flow inside an empty 3d box, like a wind tunnel)

Jubayer

cm_jubayer January 29, 2013 10:31

I have submitted a ticket to OpenFOAM. Let's see what they reply. Issue ID number 0000729

Jubayer

mgg July 12, 2014 19:01

Quote:

Originally Posted by owayz (Post 388139)
Hi Jubayer,
May be your are right. But I didn't observe any problem with oneEqEddy and Smagorinsky for a simulation of flower over a cylinder.
That is why I thought there is nothing wrong with the oneEqEddy model.
One other thing I could think off is that the pitzDaily is 2D tutorial, may be you should try to extend the same case to 3D. With some perriodic BC in spanwise direction. That might remove your doubts.
LES should be strictly a 3 dimensional simulation. 2D you can't really capture all the flow phenomena associated with large eddies.
Whenever you run a 2D LES, openFOAM always generates a warning that case is 2D.

Regards,
Awais


Hi Ali,

glad to hear similar voice on the forum. I am wondering whether you have solved that problem. If yes, can you give me some tipes? That would be helpful. I am trying to do similar simulation but it is a DNS turbulent pipe flow, as I described in the other post:

I am doing DNS of heated pipe flow (one phase) with OF 2.2.2. The solver is buoyantpimplefoam. The pipe diameter is 2mm and length of 30D. I use Inflow Generator as inlet U BC (zeroGradient for p_rgh), convective BC (fixedValue for p_rgh) as outlet U BC. On the wall is fixedValue for U and fixedFluxPressure for p_rgh.

Mesh for pipe is O type. Total mesh number is 16 Mio. (y1 plus 0.15 (y1 under 1e6m)), time step is about 2.5e-5. The simulations is running but I observed that solving implicit pressure equation p_rgh withg PCG solver costs extremly high iterations (about 3000). Even with GAMG, the number of iteration reduce, but the simulation time is not shorter. Can anyone tell me the reason? Thanks.


Code:


Courant Number mean: 0.139192 max: 0.440982
Time = 0.14305

diagonal:  Solving for rho, Initial residual = 0, Final residual = 0, No Iterations 0
PIMPLE: iteration 1
DILUPBiCG:  Solving for Ux, Initial residual = 0.00175306, Final residual = 1.12238e-05, No Iterations 1
DILUPBiCG:  Solving for Uy, Initial residual = 0.0120509, Final residual = 7.41802e-05, No Iterations 1
DILUPBiCG:  Solving for Uz, Initial residual = 0.0121983, Final residual = 7.48894e-05, No Iterations 1
DILUPBiCG:  Solving for h, Initial residual = 0.0019991, Final residual = 1.53736e-05, No Iterations 1
DICPCG:  Solving for p_rgh, Initial residual = 0.288555, Final residual = 0.0288528, No Iterations 270
diagonal:  Solving for rho, Initial residual = 0, Final residual = 0, No Iterations 0
time step continuity errors : sum local = 2.09524e-06, global = -9.12762e-09, cumulative = 0.000147021
DICPCG:  Solving for p_rgh, Initial residual = 0.165296, Final residual = 0.016265, No Iterations 272
diagonal:  Solving for rho, Initial residual = 0, Final residual = 0, No Iterations 0
time step continuity errors : sum local = 1.18901e-06, global = -3.42642e-09, cumulative = 0.000147018
PIMPLE: iteration 2
DILUPBiCG:  Solving for Ux, Initial residual = 0.000820635, Final residual = 7.07099e-07, No Iterations 2
DILUPBiCG:  Solving for Uy, Initial residual = 0.0054738, Final residual = 3.39042e-07, No Iterations 3
DILUPBiCG:  Solving for Uz, Initial residual = 0.00553878, Final residual = 1.68451e-07, No Iterations 3
DILUPBiCG:  Solving for h, Initial residual = 1.69246e-05, Final residual = 5.86086e-07, No Iterations 1
DICPCG:  Solving for p_rgh, Initial residual = 0.247132, Final residual = 0.0246096, No Iterations 238
diagonal:  Solving for rho, Initial residual = 0, Final residual = 0, No Iterations 0
time step continuity errors : sum local = 1.97068e-06, global = -7.81902e-08, cumulative = 0.00014694
DICPCG:  Solving for p_rgh, Initial residual = 0.22143, Final residual = 9.80952e-07, No Iterations 3245
diagonal:  Solving for rho, Initial residual = 0, Final residual = 0, No Iterations 0
time step continuity errors : sum local = 3.75146e-10, global = -5.31774e-14, cumulative = 0.00014694
ExecutionTime = 35208.9 s  ClockTime = 35539 s


adambarfi July 13, 2014 00:45

Hi everybody,

Tanzil said that:
Quote:

In addition the pressure run more than the Iterations that i was setting (20000)
I think that means you are plotting the both initial and final pressure in the same graph. that means you are plotting the pressure residuals in every PISO correction.

I suggest you all to check that which pressure residuals (initial/final) did you plot?

Regards,
Mostafa

mgg July 13, 2014 04:59

Quote:

Originally Posted by adambarfi (Post 501304)
Hi everybody,

Tanzil said that:

I think that means you are plotting the both initial and final pressure in the same graph. that means you are plotting the pressure residuals in every PISO correction.

I suggest you all to check that which pressure residuals (initial/final) did you plot?

Regards,
Mostafa

Hi Adam,

thank you for your reply. I do not know about his situation. But what I mean is the number of iteration of solving pressure equation every time, as I show in the pasted code. Even in my simple DNS pipe flow (D=2mm, L=5D, Re5400, cyclic BC) using pimpleFoma without heating, the number of iteration of solving pressure equation is still high, between 200 to 500.

Code:


Courant Number mean: 0.139758 max: 0.408903
Time = 1.26527

DILUPBiCG:  Solving for Ux, Initial residual = 0.00286241, Final residual = 2.24989e-06, No Iterations 2
DILUPBiCG:  Solving for Uy, Initial residual = 0.018632, Final residual = 5.21038e-07, No Iterations 3
DILUPBiCG:  Solving for Uz, Initial residual = 0.0186937, Final residual = 5.25248e-07, No Iterations 3
Pressure gradient source: uncorrected Ubar = 0.2214, pressure gradient = 0.422697
DICPCG:  Solving for p, Initial residual = 0.0519374, Final residual = 0.00243942, No Iterations 17
DICPCG:  Solving for p, Initial residual = 0.00320961, Final residual = 0.000157564, No Iterations 44
time step continuity errors : sum local = 9.09704e-09, global = -2.56957e-17, cumulative = 1.85272e-11
Pressure gradient source: uncorrected Ubar = 0.2214, pressure gradient = 0.422648
DICPCG:  Solving for p, Initial residual = 0.00337498, Final residual = 0.000167255, No Iterations 24
DICPCG:  Solving for p, Initial residual = 0.000211678, Final residual = 9.81297e-07, No Iterations 282
time step continuity errors : sum local = 6.27083e-11, global = -2.57021e-17, cumulative = 1.85272e-11
Pressure gradient source: uncorrected Ubar = 0.2214, pressure gradient = 0.422633
ExecutionTime = 11254.6 s  ClockTime = 11261 s

fieldAverage fieldAverage1 output:
    Calculating averages

Courant Number mean: 0.139757 max: 0.405683
Time = 1.2653

DILUPBiCG:  Solving for Ux, Initial residual = 0.00286216, Final residual = 2.24945e-06, No Iterations 2
DILUPBiCG:  Solving for Uy, Initial residual = 0.0186351, Final residual = 5.2073e-07, No Iterations 3
DILUPBiCG:  Solving for Uz, Initial residual = 0.018694, Final residual = 5.27611e-07, No Iterations 3
Pressure gradient source: uncorrected Ubar = 0.2214, pressure gradient = 0.422706
DICPCG:  Solving for p, Initial residual = 0.0521988, Final residual = 0.00242619, No Iterations 17
DICPCG:  Solving for p, Initial residual = 0.00320642, Final residual = 0.000151411, No Iterations 44
time step continuity errors : sum local = 8.75685e-09, global = -2.62042e-17, cumulative = 1.85272e-11
Pressure gradient source: uncorrected Ubar = 0.2214, pressure gradient = 0.422654
DICPCG:  Solving for p, Initial residual = 0.00338838, Final residual = 0.000165025, No Iterations 24
DICPCG:  Solving for p, Initial residual = 0.000210263, Final residual = 9.72091e-07, No Iterations 538
time step continuity errors : sum local = 5.61873e-11, global = -2.62133e-17, cumulative = 1.85271e-11
Pressure gradient source: uncorrected Ubar = 0.2214, pressure gradient = 0.42264
ExecutionTime = 11255.9 s  ClockTime = 11262 s


adambarfi July 13, 2014 06:07

Quote:

Originally Posted by mgg (Post 501313)
Hi Adam,

thank you for your reply. I do not know about his situation. But what I mean is the number of iteration of solving pressure equation every time, as I show in the pasted code. Even in my simple DNS pipe flow (D=2mm, L=5D, Re5400, cyclic BC) using pimpleFoma without heating, the number of iteration of solving pressure equation is still high, between 200 to 500.

Code:


Courant Number mean: 0.139758 max: 0.408903
Time = 1.26527

DILUPBiCG:  Solving for Ux, Initial residual = 0.00286241, Final residual = 2.24989e-06, No Iterations 2
DILUPBiCG:  Solving for Uy, Initial residual = 0.018632, Final residual = 5.21038e-07, No Iterations 3
DILUPBiCG:  Solving for Uz, Initial residual = 0.0186937, Final residual = 5.25248e-07, No Iterations 3
Pressure gradient source: uncorrected Ubar = 0.2214, pressure gradient = 0.422697
DICPCG:  Solving for p, Initial residual = 0.0519374, Final residual = 0.00243942, No Iterations 17
DICPCG:  Solving for p, Initial residual = 0.00320961, Final residual = 0.000157564, No Iterations 44
time step continuity errors : sum local = 9.09704e-09, global = -2.56957e-17, cumulative = 1.85272e-11
Pressure gradient source: uncorrected Ubar = 0.2214, pressure gradient = 0.422648
DICPCG:  Solving for p, Initial residual = 0.00337498, Final residual = 0.000167255, No Iterations 24
DICPCG:  Solving for p, Initial residual = 0.000211678, Final residual = 9.81297e-07, No Iterations 282
time step continuity errors : sum local = 6.27083e-11, global = -2.57021e-17, cumulative = 1.85272e-11
Pressure gradient source: uncorrected Ubar = 0.2214, pressure gradient = 0.422633
ExecutionTime = 11254.6 s  ClockTime = 11261 s

fieldAverage fieldAverage1 output:
    Calculating averages

Courant Number mean: 0.139757 max: 0.405683
Time = 1.2653

DILUPBiCG:  Solving for Ux, Initial residual = 0.00286216, Final residual = 2.24945e-06, No Iterations 2
DILUPBiCG:  Solving for Uy, Initial residual = 0.0186351, Final residual = 5.2073e-07, No Iterations 3
DILUPBiCG:  Solving for Uz, Initial residual = 0.018694, Final residual = 5.27611e-07, No Iterations 3
Pressure gradient source: uncorrected Ubar = 0.2214, pressure gradient = 0.422706
DICPCG:  Solving for p, Initial residual = 0.0521988, Final residual = 0.00242619, No Iterations 17
DICPCG:  Solving for p, Initial residual = 0.00320642, Final residual = 0.000151411, No Iterations 44
time step continuity errors : sum local = 8.75685e-09, global = -2.62042e-17, cumulative = 1.85272e-11
Pressure gradient source: uncorrected Ubar = 0.2214, pressure gradient = 0.422654
DICPCG:  Solving for p, Initial residual = 0.00338838, Final residual = 0.000165025, No Iterations 24
DICPCG:  Solving for p, Initial residual = 0.000210263, Final residual = 9.72091e-07, No Iterations 538
time step continuity errors : sum local = 5.61873e-11, global = -2.62133e-17, cumulative = 1.85271e-11
Pressure gradient source: uncorrected Ubar = 0.2214, pressure gradient = 0.42264
ExecutionTime = 11255.9 s  ClockTime = 11262 s


1-
that's a part of solution. you should plot the last initial pressure, I think.

Code:

cat log | grep 'Solving for p' | cut -d' ' -f9 | sed -n 'p;N;N;N;N' | tr -d ','&quot; title 'p' with lines
or
cat log | grep 'Solving for p' | cut -d' ' -f13 | sed -n 'p;N;N;N;N' | tr -d ','&quot; title 'p' with lines

at first you determine which field you need. f9 means that you use the 9th field in the row, while you start counting with the comma after "solving for p". e.g:

GAMG: Solving for p, Initial residual = 0.193462, Final residual = 1.37372e-05, No Iterations 8

The 9th field in this example would be the number 1.37e-05. (Fields are seperated by a spare field, this is defined by: "by cut -d' '") Therefore you have to check your logfile and decide which field you want to plot. In the normal case this would be the 9th (-> f9).
The number of "N" you have to write is determined by the number of iterations for p per timestep. In my case GAMG iterated p three times, so I have to ignore two iterations and write two Ns. In your case, p is iterated four times, so you should writes three Ns.

hope this can help you

p.s:
2-
are you solving the channel flow using LES? can you share your results with me? I have some problems when I'm using a finer mesh!

Regards,
Mostafa


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