|
[Sponsors] |
How to implement k-omega-SST without wall functions |
|
LinkBack | Thread Tools | Search this Thread | Display Modes |
January 30, 2016, 15:17 |
How to implement k-omega-SST without wall functions
|
#1 |
New Member
Julian
Join Date: Dec 2015
Location: Berlin
Posts: 6
Rep Power: 10 |
Hello,
I'm struggling with the implementation of the k-omega-SST model without wall functions. How exactly should I define k and omega? Is it correct that I've set k to fixedValue(Value) and omega is omegaWallFunction uniform Value? (I tried the search option already and I'm still unsure about that) I've already run the case with wall functions but my y+ is nowhere near 30<y+<300. It is more in the Range of y+=1 or below. Therefore I want to run the simulation without wall functions. Or should I use a Low-Re-Model (If I have to use one, how do I use it on the walls)? My case is a Rushton-turbine in a tank. Is there maybe a rule of thumb how big the error could be using wall functions on a mesh way below y+=30? Thank you for your help! Regards, bytesurfer |
|
January 30, 2016, 16:33 |
|
#2 |
Member
Join Date: May 2015
Posts: 68
Rep Power: 10 |
In my experience with some testcases kOmegaSST works fine with omegaWallFunction and kqRWallFunction and nutkWallFunction even for meshes with y+<1.
But I am interested in the opinion of other users on the topic because I don't understand perfectly WHY it is that way. Maybe interesting for you http://www.dicat.unige.it/guerrero/o...turbulence.pdf http://www.cfd-online.com/Forums/openfoam-programming-development/134102-komegasst-lowre-damping-fluent.html Ok I searched a little and found the presentation (German) https://fahrzeugtechnik.fh-joanneum....ansfer_SST.pdf which says that kOmegaSST switches between wall function and LowRe- implementation. So it makes sense why it works for a variety of y+-conditions Since it is writtern by Menter I assume this is true for CFX but should apply to OpenFOAM too. Last edited by hcl734; February 3, 2016 at 04:25. |
|
January 30, 2016, 17:11 |
|
#3 |
New Member
Julian
Join Date: Dec 2015
Location: Berlin
Posts: 6
Rep Power: 10 |
Thank you hcl734 for your quick answer!
So it should be defined as this: k = 1e-10 omega = 1e-10 nut = nutLowReWallFunction Uniform 0 Is that right? I think that maybe the wall functions are messing up my results. I got a power number of ~9, whilst the same simulation in CFX (done by my teacher, who is on vacation ) got ~4. I checked some books and they say it should be around 4-6 (depending on the baffles and tank bottom). Regards, bytesurfer |
|
January 30, 2016, 17:40 |
|
#4 |
Member
Join Date: May 2015
Posts: 68
Rep Power: 10 |
That's what they say in this presentation.
But this 'LowRe'-approach didn't worked that good for my testcases. I obtained the best results by usimg the mentioned 'HighRe' configuration above. So I would recommend to try both. It would be nice if you could give a feedback which one works best for your case. Also be aware that not everything called wallFunction is really a wallFunction in the sense of log-law etc. They are sometimes just zeroGradient etc. Take a look at the omegaWallFunction.H e.g. for more information. |
|
February 1, 2016, 12:11 |
|
#5 |
New Member
Julian
Join Date: Dec 2015
Location: Berlin
Posts: 6
Rep Power: 10 |
I tried the Low-Re configuration and the results are in the enclosed pictures. The power number went up a little bit but is still ~9. So that didn't really helped.
I tried the scalable wall function too, but forgot to take pictures and overwrote it. But the power number was still ~9. I'm a bit confused, because the difference between openfoam and cfx can't be that big, when both simulations use the same algorithms, or could it? Maybe something else is wrong but I don't know what... P.S. just ignore the lift and drag, I'm to lazy to remove these from my script |
|
February 1, 2016, 17:19 |
|
#6 |
Senior Member
Joachim Herb
Join Date: Sep 2010
Posts: 650
Rep Power: 21 |
Are you sure your calculation converted? The residuum for p seems to be 0.01 which is quite high. Have you tried to get it to values equal or lower to 1e-4?
Also just to make sure this is not the problem: You have considered the different units for the pressure in CFX and OpenFOAM (p/rho)? |
|
February 2, 2016, 05:52 |
|
#7 |
New Member
Julian
Join Date: Dec 2015
Location: Berlin
Posts: 6
Rep Power: 10 |
Hello jherb,
the simulation should be converged. The residuals always look like that and don't change when I use a different mesh or different schemes. They're steady till ~2000 iterations, after that they go up (I guess rounding errors are the problem there). Maybe there is something wrong. It always bothered me that the pressure does not go down. Should I post my fvsolution and fvschemes? Well, in CFX my teacher specified the density as 1000 kg/m³ and CFX calculated the torque. In openfoam I used "libforces.so" with 1000 kg/m³ and then I used this python script to calculate/plot the forces: https://github.com/lordvon/OpenFOAM_Tutorials/blob/master/HowToPlotForces/plot_forces.py |
|
February 3, 2016, 04:30 |
|
#8 | |
Member
Join Date: May 2015
Posts: 68
Rep Power: 10 |
Quote:
I think the whole wall-treatment-stuff is rather confusing in OpenFOAM and maybe they should add a section about it to the user guid or wiki. |
||
February 13, 2016, 12:45 |
|
#9 |
New Member
Join Date: Jun 2014
Posts: 9
Rep Power: 11 |
Hi Julian
The SST implemented in OpenFOAM contains all the terms in the papers the code cited. This model does not require a damping function to integrate itself to wall. In fact, omega-based models don't need damping functions to compute the viscous layer. The difference between the very original kOmega purposed by Wilcox, and the latest version was an addition of a cross-diffusion term http://turbmodels.larc.nasa.gov/wilcox.html. A mesh with y+~1 will solve on both forms of kOmega, but the very original kOmega was not able to recreate the peak in turbulent kinetic energy near wall. The very original SST purposed by Menter did not have any damping http://turbmodels.larc.nasa.gov/sst.html but had this cross-diffusion as a result of the epsilon=k*omega transformation of the diffusion term in the epsilon equation. Damping functions are added in omega-based models primarily for computing laminar-turbulence transition, but there are better transitional models available. It is ok to use k=1e-15, omega=omegaWallFunction and nut=nutLowReWallFunction if you wish to integrate SST to wall. But.... I have tried to interpret the residual plot you provided. Was it a transient simulation with pressure corrected twice? Or was it a steady state simulation with pressure corrected once? If it was transient, then you want to look into residual convergence of velocities and turbulence parameters within each time step, because they are not shown in the residual plot provided. If it was steady state, the pressure residual was simply too large, and you want to check if velocities/turbulence parameters were still being solved....The solver will stop solving them if their residual tolerances are too large. The residual plot you provided only shows the initial residuals of all parameters for each iterations. If the simulation was transient, you want to have residual convergence within each time step. Therefore, the final residuals ( where solver escapes its PISO loop ) should be small enough. If the simulation was steady state, then you would like to see the initial residuals reduced to small values. |
|
|
|
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
[Commercial meshers] Fluent3DMeshToFoam | simvun | OpenFOAM Meshing & Mesh Conversion | 50 | January 19, 2020 15:33 |
Natural convection in a closed domain STILL NEEDING help! | Yr0gErG | FLUENT | 4 | December 2, 2019 00:04 |
Centrifugal fan | j0hnny | CFX | 13 | October 1, 2019 13:55 |
kOmegaSST wall functions and mass inlet boundary | FransVisscher | OpenFOAM Pre-Processing | 0 | February 4, 2015 05:58 |
Wall function implementation K Omega SSt | cbarry | OpenFOAM | 3 | August 18, 2009 10:09 |