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/)
-   -   Problems occur using kklomega in simpleFoam (https://www.cfd-online.com/Forums/openfoam-solving/183904-problems-occur-using-kklomega-simplefoam.html)

PeterShi February 16, 2017 10:03

Problems occur using kklomega in simpleFoam
 
2 Attachment(s)
Dear Foamers,

It is not a new question, many people had similar situations as me and posted their threads. However, even though I have tried every suggestion given by these threads, my program still crashes---omega tends to blow up after certain number of iterations. Now, I am wondering if there is anyone can help me.

The case I am studying is 30p30n, a popular muti-element airfoil configuration. My flow condition is Ma=0.2, Re=9e6.

I attached my case folder below, you can see my settings from it. This setting is almost same with one kklomega case in the tutorial-incompressible/pimpleFoam/elipsekkLOmega.

As I mentioned, this is only one of my various settings, and I've tried various settings.

The checkMesh information is also included for your reference. I can tell you this mesh is not very good, but I think it is okay to work, since I simulated the exactly same mesh in simpleFoam with distinct turbulent models, i.e. k-e, S-A, k-omega and realizable k-e, all of them gave reasonable results.

I read from the literature that transitional model may improve the accuracy of the result, hence I am interested in kklomega to see whether it is true.

Any comments, suggestions, ideas and helps are welcome and highly appreciated.

Besides, following two discussions are valuable for me, and I would like to give them below:
1.https://www.cfd-online.com/Forums/op...nce-model.html
2.https://www.cfd-online.com/Forums/op...st-models.html

PS: If you need the mesh, you can reach me through email then I will email it to you. (it is too big to upload here)

Best regards,
Peter

PeterShi February 16, 2017 20:36

Hi all,

BTW, have anyone tested the capability of kklomega in OpenFOAM 4.0? I see there are several bugs of this model for previous versions.

Thanks,
Peter

PeterShi February 25, 2017 09:22

Hello all,

I have already solved this problem by myself. For people who may meet the same situation as me, I would like to post my solution here: Initialize your field by the solution of K-Omega SST first.

Moreover, I do think the new vision of OpenFOAM should include more popular transitional models, like Retheta-gamma. Let's wait and see.

Best,
Peter

Flowkersma February 25, 2017 11:21

OpenFOAM (foundation) has had gamma-Re_theta already for some time.

PeterShi February 25, 2017 22:30

Quote:

Originally Posted by Flowkersma (Post 638493)
OpenFOAM (foundation) has had gamma-Re_theta already for some time.

Hi,

Oh really, could you please tell me which version has this model?

I am using OpenFOAM 4.1 right now.

Thanks and best,

Peter

Flowkersma February 26, 2017 12:50

Seems like kOmegaSSTLM it is not yet in 4.1 release. Here is the commit:
https://github.com/OpenFOAM/OpenFOAM...4fe0420015186f
I have tested it with a couple of airfoils and got plausible results.

However, with kkLOmega model my results are bad. In comparison with kOmegaSST model I get higher drag with kkLOmega which is not reasonable (e.g. flow over NACA0012). Have you done similar comparison?

PeterShi February 26, 2017 17:55

Hi,

Thanks for your link. Then have you tested this komegaSSTLM transitional model, how is it?

I discussed the experience of kklomega with a guy in the following thread:
https://www.cfd-online.com/Forums/op...-kl-omega.html

Moreover, I read from the literature that low Reynolds number transitional model is not suitable for the aerodynamic flow, and kklomega is exactly that type.

I hope this will give you some ideas.

Best,
Peter

Flowkersma February 27, 2017 17:03

The results have been quite good with the two airfoils I have simulated. However, the solver converges slower and each iteration takes longer than with kOmegaSST which is expected.

These transitional models have been developed for external airfoil simulations according to the authors so they should be suitable.

PeterShi March 1, 2017 08:32

Quote:

Originally Posted by Flowkersma (Post 638771)
The results have been quite good with the two airfoils I have simulated. However, the solver converges slower and each iteration takes longer than with kOmegaSST which is expected.

These transitional models have been developed for external airfoil simulations according to the authors so they should be suitable.

Hello Mikke,

I installed this transitional model into my OpenFOAM 4.1. However, I have trouble when using this model, would you like to help me?

There are several questions for you
1) Let's say the names of my bcs for airfoil is inlet, outlet, walls, and frontAndBack, how should I set the bc types for two additional variables? I mean, Re_Theta and gamma. Since I am a running 2D case, so it should be "empty" on frontAndBack.
2) How to set initial values for Re_Theta and gamma?
3) What div schemes and solution means should be employed for these two guys in fvScheme and fvSolution?

Thanks in advance, I am really new to this model. If possible, could you please share your case folder with me so that I can see how you handle it?

Many thanks.

Best,
Peter

Flowkersma March 1, 2017 09:54

Hey Peter,

I suggest you to read this paper. It explains the boundary conditions:

gamma
Code:

inlet - fixedValue 1
walls - zeroGradient

Re_Thetat
Code:

walls - zeroGradient
Re_thetat inlet boundary I calculated from equations 35 and 36 by assuming that lambda is zero. Note that Tu is turbulence intensity in percentages. I used the same fvScheme and fvSolution settings for lambda and Re_thetat as for other turbulence quantities.

Regards,
Mikko

PeterShi March 1, 2017 12:06

Quote:

Originally Posted by Flowkersma (Post 639034)
Hey Peter,

I suggest you to read this paper. It explains the boundary conditions:

gamma
Code:

inlet - fixedValue 1
walls - zeroGradient

Re_Thetat
Code:

walls - zeroGradient
Re_thetat inlet boundary I calculated from equations 35 and 36 by assuming that lambda is zero. Note that Tu is turbulence intensity in percentages. I used the same fvScheme and fvSolution settings for lambda and Re_thetat as for other turbulence quantities.

Regards,
Mikko

Hello Mikk,

You are my big help!

For calculating Re_theta, I guess you can just refer to fig3 in the paper you gave me.

And for the initial value for gamma, to my knowledge, should it be zero at the beginning? I mean, the coming flow has very low turbulent intensity, it essentially is a "laminar" flow. Hence, the flow will transit to turbulence at some point. If you set it to be 1 at the very beginning, then is it equivalent to fully turbulent models?


Thanks again.

Best,
Peter

Flowkersma March 1, 2017 12:21

From the paper:
Quote:

The boundary condition for gamma at a wall is zero normal flux, while for an inlet gamma is equal to 1.0. An inlet gamma equal to 1.0 is necessary to preserve the original turbulence model’s freestream turbulence decay rate.
So, I would stick to what they suggest in the paper.

PeterShi March 1, 2017 12:31

Quote:

Originally Posted by Flowkersma (Post 639062)
From the paper:


So, I would stick to what they suggest in the paper.

Hi Mikko,

Thanks. Let me carry out some experiments to verify it.

Best
Peter

PeterShi March 1, 2017 22:05

Quote:

Originally Posted by Flowkersma (Post 639062)
From the paper:


So, I would stick to what they suggest in the paper.

Hey Mikko,

After several tests, this model gives me decent results. However, I observe that there is an oscillation espically for Cd, no matter how many iteration steps I took. The oscillation is approximately 2%. Do you have the similar situation as me? Based on my previous experience, a good convergence should not have such a big(in my eyes, it is big) fluctuation.

Moreover, Re_t varies as AOA changes, so how do you set it for various AOAs?

BTW, what is your internal value for gamma. I set gamma as 1 in the inlet as you recommended, 0 for the internal field.

Thanks, I really really appreciate it.

Best,
Peter

Flowkersma March 2, 2017 03:55

From my experience, kOmegaSSTLM does not converge as fast and "nicely" as kOmegaSST but at the end I get converged results. So, the cL or cD reach a steady state without significant fluctuation and the residuals reach a small value (usually <1e-6).

Why would Re_thetat boundary condition change if AOA changes? It depends only on turbulence intensity. I use the same values for initial field as for the boundary condition. When I simulate a range of angles of attacks, I initialize with previously converged simulation with closest angle of attack or I initialize by running potentialFoam.

Do you also get this warning when using the kOmegaSSTLM model?
Quote:

Number of lambda iterations exceeds maxLambdaIter(10)

PeterShi March 2, 2017 04:17

Quote:

Originally Posted by Flowkersma (Post 639141)
From my experience, kOmegaSSTLM does not converge as fast and "nicely" as kOmegaSST but at the end I get converged results. So, the cL or cD reach a steady state without significant fluctuation and the residuals reach a small value (usually <1e-6).

Why would Re_thetat boundary condition change if AOA changes? It depends only on turbulence intensity. I use the same values for initial field as for the boundary condition. When I simulate a range of angles of attacks, I initialize with previously converged simulation with closest angle of attack or I initialize by running potentialFoam.

Do you also get this warning when using the kOmegaSSTLM model?

Hi Mikko,

Yes, I did. I also got this warning. But it looks like just fine, so I did not take care of it.

When I said fluctuations, it is a relative concept. My solution converged too, and the residual was small. But compared with the previous case-CL,CD almost do not change at the last 100 steps of iterations. All right, that is okay. I just wanna to confirm whether there is something wrong.

With this transitional model, the prediction of drag coefficient has been significantly improved, as expected. However, I got a little bit worse results of CL, how about you?

Thanks.

Best,
Peter

Flowkersma March 2, 2017 06:04

Are you comparing your simulation results with kOmegaSST and kOmegaSSTLM models to experiment with free transition? Can you give a bit more details. Whose experimental results are you using and are you simulation 30p30n airfoil with Re=9e6? What angles of attack?

I get better agreement for both lift and drag with kOmegaSSTLM model when comparing to experiments with free transition.

PeterShi March 2, 2017 06:18

Quote:

Originally Posted by Flowkersma (Post 639156)
Are you comparing your simulation results with kOmegaSST and kOmegaSSTLM models to experiment with free transition? Can you give a bit more details. Whose experimental results are you using and are you simulation 30p30n airfoil with Re=9e6? What angles of attack?

I get better agreement for both lift and drag with kOmegaSSTLM model when comparing to experiments with free transition.

Hi Mikko,

Actually, now I am using NHLP-2D as my test model, since it has more experimental data. Would you like to have a look at my results? If so, I will show you later, some programs are running right now. Very soon, I will get the lift, drag and moment curves. Besides transitional model (simpleFoam with komegaSSTLM), I tried rhoSimpleFoam with komegaSST as well. When taking into account the compressibility, surprisingly, I got much worsen results compared with incompressible counterpart. And the simulation is VERY easy to diverge, no matter what I do, it is still divergent as early as 16 degrees. (This comparsion will be posted either if you have interests). I have not solved this problem up to now.

BTW, do you any ideas about why such error mentioned earlier will occur?

Thanks.

Best,
Peter

PeterShi March 2, 2017 22:25

4 Attachment(s)
Quote:

Originally Posted by Flowkersma (Post 639156)
Are you comparing your simulation results with kOmegaSST and kOmegaSSTLM models to experiment with free transition? Can you give a bit more details. Whose experimental results are you using and are you simulation 30p30n airfoil with Re=9e6? What angles of attack?

I get better agreement for both lift and drag with kOmegaSSTLM model when comparing to experiments with free transition.

Hi Mikko,

My calculations have been completed. Following attached pictures are some results. My flow condition is Ma=0.197, Re=3.52e6 and the configuration is NHLP-2D.

1)Lift curve;
2)Drag curve;
3)Moment curve;
4) Grid dependency conducted at AOA=18.23 degree

Have a glance at curves, I conclude, at least in my cases, komegaSST without transitional model is best from the global point of view, while komegaSST with transitional model does give better drag data, however companying with a little bit worse of CL and much worse data of CM.

First question for you is, what is your setting of divScheme? My setting is:
divSchemes
{
default none;
div(phi,U) bounded Gauss linearUpwindV grad(U);
div(phi,k) bounded Gauss linearUpwind limited;
div(phi,omega) bounded Gauss limitedLinear 1;
div(phi,gammaInt) bounded Gauss linear;
div(phi,ReThetat) bounded Gauss linear;
div((nuEff*dev2(T(grad(U))))) Gauss linear;

}

I am still in trouble with my compressible solver, rhoSimpleFoam. I am asking it in this thread:
https://www.cfd-online.com/Forums/op...am-urgent.html

I guess compressible solver which includes transitional model will be best. At the range of post-stall, we need to carry out unsteady simulation.

The next question is, do you know which is the convenient way to get CLmax? Do I need to calculate a lot of AOAs and then get it? Related thread is:
https://www.cfd-online.com/Forums/op...implefoam.html

Best Regards,
Peter

Flowkersma March 6, 2017 03:37

Hi Peter,

Interesting results. I wonder from which experiment are these results? Is the boundary layer tripped?

My divergence schemes are following:
Code:

div(phi,U)          bounded Gauss linearUpwind grad(U);
div(phi,k)          bounded Gauss upwind;
div(phi,omega)      bounded Gauss upwind;
div(phi,gammaInt)  bounded Gauss upwind;
div(phi,ReThetat)  bounded Gauss upwind;
div((nuEff*dev2(T(grad(U))))) Gauss linear;

From my experience there is no big difference in using first and second order schemes for the turbulence quantities. However, first order converges much faster and therefore I am using it. To find out the cLmax I guess there is no better way to finding it out iteratively.

Best,
Mikko


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