Validation of LES models
Dear all,
Let me make use of this new subforum to post a request here. I am not an OpenFOAM nor an LES expert by any means, but I am very interested in the stories of people that validated or benchmarked the LES models of OpenFOAM against DNS databases or other modelled results. I think that it will be a waste of time when everybody does this him or herself with the same repeated cases. I'd like to ask the people that have a readytouse test case somewhere on their desk to share their experiences (including case and results) with the community using this thread. I think a lot of people can benefit from all the efforts that has been put into it already. Regards, Bernhard 
Hi Bernard,
Good initiative! There was a quite interesting thread already http://www.cfdonline.com/Forums/ope...nelflows.html But nevertheless, not all aspect have been covered yet. For instance, I would like to have some more information on LES wall functions. In the thread above, the complete boundary layer was resolved. My question is: can we get away with this by using appropriate wall functions ? I did some tests with LES in the Moin and Kim channel (because the DNS data can be obtained from the internet), but I am really not happy with the result. I find that I can only get the pressure drop correct (I use the channelFoam trick, so I set the mass flow fixed by adjusting the pressure gradient) if I really resolve the wall boundary layer (fist grid point within one wall unit from the wall). I use the nuSgsUSpaldingWallFunction from OF 2.0.x, and in my understand it should be possible to put the first grid cell somewhere between 10 and 30 y+, but this yields a pressure drop which is too high. Another trick I tried was to use grid refinement using snappyHex mesh. In that you you can easily double the grid resolution near the wall. However, at the transition from the refined layer to the course grid, the grid exapansion is almost a factor of 2, and this spoils the solution completely (in LES, ideally uniform grid must be used, or at least a very smoothly varying grid). I could send in some more details, but I need to summarise my results a bit. I am curious if other users have experience in get a correct LES simulation of a channel using wall functions or grid refinement near the wall such that the total grid size remains within feasible limits (at least < 2 mlj cells). Regards Eelco 
Hallo Eelco,
I also tested the wall function of Spalding (different names in different OFversions) for a RANS pipe flow with different y+values (1150). I also determined a too high pressure drop for y+values of above approx. 10. I suppose there's the same problem in LES. Perhaps you or we can check this. There are DNSdata for pipe flow from Eggels or Fukagata: http://www.thtlab.t.utokyo.ac.jp/DNS/dns_database.html The problem here is the small Renumber, so you almost have to stay in lowReregions, otherwise the core flow is not well resolved. Best, Timo 
some LES channel flow results with two different meshes
3 Attachment(s)
Hi Timo,
Thanks for the link, I didn't know this one. Very interesting for validating purpose. I just send here two small examples of attemps of a channel LxHxB=6.4x1x1.6 at Re=Um*H/nu=29,000 by setting Um=0.3306 m/s with nu=1.14e5 m2/s. Care was taken to get a fully developped flow. backward time integration with dt=0.01 s was used, leading to Co_max=0.75. Gauss linear interpolation was used for all matrix solvers, using GAMG with the residual set at 1e7. The expected pressure drop I estimated by using the relation Ref=0.09*Re**0.88 (Pope), so the Reynolds number based on the friction velocity uf is 760. Using Ref=uf*wh/nu (wh=H/2) gives me uf=0.017 m/s. Finally, the pressure drop is obtained by gradP/rho=uf**2/wh=0.00060 m/s2. Well, tested several turbulence models (smagorinsky, 1 equation eddy, DES), all with nuSgsUSpaldingWallFunction at the wall bc of nuSgs. Not much difference between the results for the different turbulence models The grid has actually the greatest impact on the results. I compare here for instance two grids: g0 and g1. g0: grid info: 2.1 mlj (256x128x64) cells created with blockmesh using a simpleGrading (1 10 1) at the walls (so two blocks where formed, just like channel395 from the tutorials). yplus : 1.70512780145771 uf : 0.0195762739049085 gradP : 0.000766461 g3 grid info: 1.6 mlj cells. Course uniform grid (no simplegrading) was formed with blockMesh (100x50x30 cells) and refinement was made using snappyhexmesh (with a block near the wall with double refinement and a block in the log layer with a single refinement) yplus : 0.719308714802291 gradP : 0.00102801 uf : 0.022671678367514 Pictures of the grids g0 and g3 together with their mean U profiles are included to this post. As you can see, the g0 performce best in terms of the presure gradient (and therefore the velocity profile), but the gradP=0.0007 I find is still 20% too high with respect to the value based on Popes relation So the refinement using snappyhex mesh is not applicable for LES I assume? Netherless, I would hope to get a bit better result then the plot I show using 2.1 mlj cell for g0. Unfortunately I am occupied with other stuff right now so I don't have really time to find out how to improve my LES simulation of the channel. I am sure if I resolve the full boundary layerI get better results (in other posts on the forum with LES, the first grid point was at y+=0.2), but if you try to do that LES becomes almost as expensive as DNS. I don't see the point in using a wall function if you still have to put your first grid point within y+=1. Hopefully somebody could comment on that: am I doing something wrong? Or are there any alternatives beside Spalding ? Well, if somebody has obtained better results then I am showing here, I would be very interested in the settings. Regards Eelco Attachment 9489 Attachment 9490 Attachment 9491 
Validation of LES
I have incorporated Smagorinky subgrid scale model in my code and now I want to validate it. I am looking for a Turbulent jet case with free shear flow, preferebly square jet. 3D. Can anyone help?

Bageshwar,
Couldn't find anything exact, but this might be a good reference. Look for other cases in this repository which might suit you. http://qnetercoftac.cfms.org.uk/w/i...erexpanded_jet Regards Atm 
Hi all,
concerning LES of turbulent channel flow with wall functions, I follow currently the approach of hybrid URANSLES for OpenFOAM developed at LeMoS at the University of Rostock. First results are promising, especially because the domain gets decomposed into URANS region and LES region dynamically dependend on local grid resolution and flow. The idea is that one can model the turbulent flow field with complex surface structures on the channel bed that become URANS region, with wall functions this would not work I guess. Currently I simulate a 32 m long and 2 m wide paved channel of a natural torrent with 16 mio cells and results fit the overall behavior of the channel. As soon as we can get surface velocity measurements this summer this might turn into a validation test case, then it might be redone with hLES for comparison. The other test case is a 6 m long flume, 0.3 m wide, with fixed gravel bed that find its way into the simulation by an .stl file from surface scan and snappyHexMesh. I would like to discuss that case because of the 'LegoBrick' kind of representation of the gravel bed and because of the jump in mesh resolution from high resolution close to the gravel bed to coarse resolution above the gravel bed. Again, this test yust started and currently we compare travel times of spheres in the flume with simulated spheres using CFDEMLIGGGHTS 
Validation of SGS models
2 Attachment(s)
Dear all,
I have been running the Open channel flow simulation using wall function approach. I have done done several LES for open channel flow using different wallfunctions, Sgs models, numerics, etc, and I would like to share my results for further suggestions and results corrections. These all simulations are for relatively higher Re_tau, e.g. 7500 to 60000, and in most of the cases, the grid is really coarse. Earlier (in OF 2.0 and 2.1), I was using "nuSgsUSpaldingWallFunction" wallfunction but now in the newer version of OF, it also possible to employ almost all the wallfunction which are made for RANS. In my case, I have used nuSgsUSpaldingWallFunction and nutUSpaldingWallFunction, and nutURoughWallFunction for smooth, and rough wall conditions, respectively. The LES results for open channel flow using wallfunctions are reasonably good as well as the velocity solutions agree reasonably well with the Loglaw for both smooth and rough wall surfaces. Actually, in all the cases, LES velocity profile underestimate the Loglaw in a nearwall region and produce a kink only for few cell centred values after the first one from the wall (please see the results in the attached file: Static_SGSModel.pdf ). I have been trying a lot in order to rid out of that kink near wall boundary but didn't find any reason for such a kink so far. I also discussed with other researcher those who use LESwallfunction approach, and they say that it is common to have a such a behaviour for few cell centred values where the velocity solution go away from the Loglaw. Also, that velocity defect occurs only for few cells (or nodes) so it shouldn't be too serious problem in my opinion. Please correct me if I am wrong? Please share your ideas if you have had experienced such a behaviour of velocity using wall function in LES. SGS model validation: Since, the coarse grid has been used in almost all LES for open channel flow, the SGS models play important roles in the simulations, and thus, the results are very sensitive to the SGS model used. From the open channel flow testing, it seems that one equation eddy viscosity (oneEqEddy) model gives good results for the coarse LES. I also tried standard Smagorinsky model but no improvement was observed in the nearwall agreement as well as poor agreement with Loglaw compared to that of using oneEqEddy model. When using any Dynamic or Lagrangian SGS models on the same case (same grid, Re_tau, numerical schemes, averaging time, solver), the LES results are really bad, the velocity profile seems to be nonstable as well as the velocity profile is not even comparable to the Loglaw.I do not know why any Dynamic or Lagrangian SGS models are not working as good as static SGS model, although they are suppose to produce better results because of the dynamic procedure of finding the model constant. I have tried, e.g. dynOneEqEddy, homogeneousDynOneEqEddy, homogeneousDynSmagorinsky and dynLagrangian SGS models on the same case. But the results are not acceptable. :confused:. The results using dynamic SGS models are attached in the file: Dynamic_SGSModel.pdf. Please find the attachments. Does any one have idea behind this problem? Did I miss something to take into account when employing the dynamic SGS model? I appreciate your comments and suggestions. Regards, Ashvin 
It is very helpful.

Dear Ashvin Chaudhari, I am using pisoFoam with LES for channel flow, but for many days, can not get good velocity curve....really don't know where is wrong.
If it is possible, could you please, let me know some more details about your setting? Thank you very much!!!! Waiting for your reply. cheers 
2 Attachment(s)
Dear Xiangyin,
It completely depends on what kind of flow you are simulating. In my previous post, the results were obtained for open channel flow at higher Re_tau using wallfunction approach. Those results were obtained using combination of RK4 method (for time integration ) and projection method (we have developed our own solver ). Also, I have done some LES for smaller Re_tau (e.g. 180. 395) using the ARK3 method without using wallfunction, please see the attached files for results from relatively low Re_tau. Apart from this, I am use Gauss linear (second order central diff) scheme for div and grad terms and Gauss linear corrected for laplacian terms. Also, almost all the time, I run LES by fixing a small value for Courant number (i.e. max Co =0.25). Regarding the domain size (channel's dimensions), grid resolutions and SGS models, you can get information from my results attached in in this post and in previous post. I am not using pisoFoam at the moment. But your problem should not be dependent on the solver specific. As long as you are using pisoFoam it is completely fine solver in order to get agreement for channel flow simulation at least. Could you please provide some more details on your case (i.e. on the domain, grid resolution, Sgs model, fvSchemes, BC)? Are you using cyclic BC? if so, what did you fix to run LES, mass flow rate or pressure gradient? and if possible also post the results (mean velocity) you have obtained so far. Regards, Ashvin 
Thank u so much for the details, I will do some more investigations right now and let u know more details.
Thanks again!!! 
Quote:
Yust being curious, could you rerun the case with dynOneEqEddy with mesh grading towards the wall such that your first cell center is at y+ of about 100? Keylock et al (2012) "The application of computational fluid dynamics to natural river channels: Eddy resolving versus mean flow approaches" suggests the first cell center to be within 30 to 300 wall units close to the wall if wall functions are used, and less than 4 wall units if no wall functions are used. I am not sure if dynamic procedure and wall functions can always be applied at the same time without conflict. Of interest could be aswell: Notes on Numerical Fluid Mechanics and Multidisciplinary Design, Springer, Vol. 111, pp. 271281, 2010: "Large Eddy Simulations: Wall Functions with Forcing given by Backscatter from a ScaleSimilarity Model" in which the underprediction of resolved fluctuation of the wall shear stress in channel flow simulations with coarse wall region resolution and wall functions is adressed. 
1 Attachment(s)
Thank you Albrecht for the comments .
Quote:
Quote:
Quote:
Thanks for the references. I will look them and try to post the results for closed channel flow simulation using dynOneEqEddy model. 
1 Attachment(s)
Hello
I am to run channel flow with dynSmagorinsky(channel395), but my statistics are not in good agreement with Moser DNS(Retau=395) Dimesion of my domain is : 4*2*2,80*50*60 I run te simulation for long time . After the initial peaks in turbulent kinetic energy the energy fluctuates around a value. After that I run a long simulation and perform average. 1. vrms , wrms are underestimated. 2. urms is overestimated . 3. Uf.xy is also not matching far from the wall. the schemes of my channel: ddtSchemes { default backward; } gradSchemes { default Gauss linear; grad Gauss linear; grad Gauss linear; } divSchemes { default none; div(phi,U) Gauss linear; div(phi,k) Gauss limitedLinear 1; div(phi,B) Gauss limitedLinear 1; div Gauss linear; div(phi,nuTilda) Gauss limitedLinear 1; div((nuEff*dev(grad .T()))) Gauss linear; } laplacianSchemes { default none; laplacian(nuEff,U) Gauss linear corrected; laplacian((1A ),p) Gauss linear corrected; laplacian(DkEff,k) Gauss linear corrected; laplacian(DBEff,B) Gauss linear corrected; laplacian(DnuTildaEff,nuTilda) Gauss linear corrected; } interpolationSchemes { default linear; interpolate linear; } snGradSchemes { default corrected; } fluxRequired { default no; p; } I use delta cubeRootVol; Same issue I have with static Smagorinsky model also. Please see my results Thankyou 
How about dynOneEqEddy? Note that dynSmagorinsky only adjusts the model constant in dependency to the overall flow, so you will not get a local adjustment.

Quote:
Hi, OneEqEddy sgs model will be fine to bring good agreement for the LESchannel flow case at least. In your case, i think the grid is too coarse. I will suggest you to use finer grid resolution where first y+ is about 0.5 in wallnormal direction for both upper and lower walls. So please use finer grid such as 80 x 160 X 80 for the domain 4x2x2 in x, y and z directions, where y is wallnormal direction. Also, you are using limitedLinear scheme, so use only the linear scheme for the "divSchemes", i.e. Code:
divSchemes Good luck !  Ashvin 
Hello, Ashvin,
Thanks for your suggestion. I have used 40*160*40 points . But still I dont see any improvement. I will update my divergence scheme and run the simulation for higher resolution. Actually I would like to validate static Smagorinsky model. But I first started with dynamic one . Dynamic model results are much better than tha static one. Using static smag is specific to my problem else I would have used OneEqEddy sgs model :(. 
Dear subhendu,
I'm simulating a channelDNS case, I 'm also a newer of OF. Did you get the curves of urms,vrms using postChannel? and do you know how urms et al is calculated in OF? Thanks! 
Quote:
I'm curious about the differences between RK4 method and the builtin second order time integration. In your case, did you see some significant differences between the two schemes? I recently ran a rotating channel flow and found the Uf differ from DNS in the region far from the wall. However, the result is fine when no rotation is imposed. I would like to know if the schemes can cause this problem Xianbei 
All times are GMT 4. The time now is 03:26. 