Dicretization schemes in LES (pitzDaily)
Hallo Foamers,
I am trying to do a compressible LES simulation of a cylinder at Re=10,000. And I am very confused about the fvSchemes settings in openfoam. I have read it in many places that upwind schemes must be avoided as they are highly dissipative. Now I come to my question, in "tutorials/compressible/rhoPimpleFoam/les/pitzDaily" some divergence schemes are given as: div(phi,U) Gauss filteredLinear2V 0.2 0; div(phi,h) Gauss filteredLinear2 0.2 0; Openfoam documentation says " filteredLinear2  Linear with filtering for highfrequency ringing" I have 2 questions: 1Well I don't know how would this effect the results if I simply select limitedLinear for div(phi,U) and div(phi,h)? 2If I choose filteredLinear2 then what does the two numbers specify (i.e. 0.2 0) and how should I choose them? Any help would be welcomed. If somebody could give me a pointer where I could read more about it, I would be very happy. :D And if somebody could help me or guide me about setting fvSchemes specifically for LES I would be the happiest man on earth for some time. Regards, Awais 
Hi,
My divSchemes are Gauss linear in general, but for div(phi,U) which is Gauss linearUpwindV grad(U); . By the way, I don't know why I am using this!!! What I know is that the spatial schemes have to be centered; and the temporal scheme has to be of 2nd order (CrankNicholson 1/2 or Backward) (cf university of Chalmers). Eugene DeVillier promotes the use of Backward but I am not sure it is a good idea with large time steps. 'hope thie little things could help you... 
Quote:
My point of view is that using upwind schemes would produce high Dissipation so may be you should avoid using linearUpwind for grad(U) and instead simply use Gauss Linear for grad. What is confusing for me is that how should we use filteredLinear and filteredLinearV, and when should we use them, because they are used in LES tutorials in openFoam specially for div(phi,U) and div(phi,h). So if you have any idea about it?. :) Regards, Awais 
Hi Owayz,
I agree with you: I have red that upWind schemes were "forbidden" in LES cases because thay add viscosity. So I tried to change my scheme, replacing div(phi,U) Gauss linearUpwindV grad(U); by div(phi,U) Gauss linear; But now, that DOES NOT WORK AT ALL! The flow is awful , the mesh appears: http://www.cfdonline.com/Forums/mem...usslinear.png So I prefer to keep Gauss linearUpwindV grad(U);. Nevertheless, this thread (http://www.cfdonline.com/Forums/openfoambugs/62534problemfvschemesdivschemescannotusegausslinearupwind.html) is about fvSchemes in general. maybe there is some of your answers? 
Hi Djub
Well, it could be the problem with flow convergence or mesh refinement. Actually I tried linear scheme for all my terms (i.e. div, laplacian, grad) in fvSchemes and it works for me. May be you can share your case? regards, Awais 
What do you mean by sharing my case? Do you want all my dictionnaries ?

Yes share the dictionary files, and if possible mesh as well.
Regards, Awais 
Whoua... Let's go:
constant\polyMesh\blockMeshDict Code:
vertices ( constant\LESProperties Code:
LESModel Smagorinsky; Code:
application pimpleFoam; Code:
ddtSchemes{ solvers{ p { solver PCG; preconditioner DIC; tolerance 1e06; relTol 0.01; } pFinal { solver PCG; preconditioner DIC; tolerance 1e06; relTol 0; } U { solver PBiCG; preconditioner DILU; tolerance 1e05; relTol 0; } U final { solver PBiCG; preconditioner DILU; tolerance 1e05; relTol 0; } } PIMPLE { nOuterCorrectors 2; nCorrectors 2; nNonOrthogonalCorrectors 1; pRefCell 0; pRefValue 0; } cache { grad(U) ; } 0/U Code:
dimensions [ 0 1 1 0 0 0 0 ]; 0/p Code:
dimensions [ 0 2 2 0 0 0 0 ]; Code:
dimensions [ 0 2 1 0 0 0 0 ]; Of course, there are some other files, but nothing interesting (but nu=1.5e5). About the fvSchemes: what do you think about LUST ? 
I will try to run the case.
I myself don't have much idea about LUST scheme, haven't used it. openFOAM actually advises to use LUST in case the mesh is highly unstructured (and quality is not good). If you look into the LUST its a blending of linear and linearUpwind. The blending factor of 0.75 (for linear) is hard coded which they say is optimized for a range of mesh quality. But with a blending of linearUpwind (2nd order upwind), it will also add some damping. LUST is being used in motorbike tutorial of openFOAM. Regards, Awais 
The choice of the scheme for LES should be based on the numerical diffusion it introduces. Ideally you should use linear, or cubic. You need good and prett uniform mesh anyways for LES, since you are assuming the filter operator and the differential operator are commutative, which is not true on nonuniform grids!
The filtered schemes are a last resort scheme in my view, if you can't really do better with your mesh. Upwind and linearUpwind, but also limitedLinear and QUICK should be avoided because they are too dissipative. For the time scheme, backward is the prmary choice among the schemes available in OF. The constraint on he time step is generally not an issue in LES because you are tied by the requirement of resolving the flow largescale time scales. Best, 
Thanks !
Thanks a lot Alberto. Your explainations are so simple, accurate and efficient! Respect...
Nevertheless, I am quite surprised because I have been using linearUpwind since some months, and it seems to work well. At least for these "simple" cases of a rectangluar rod in a uniform flow (similar to BARC if you know), in which I am interested for vortex shedding (Von Karman Alley). Do you think I could have a bias in the vortex shedding frequency, due to the artificial dissipation introduced by linearUpwind ? PS: Thanks a lot also for GeekoCFD. While installing my Foam, you were my Saviour ! 
(picture added on post #4 : http://www.cfdonline.com/Forums/ope...tml#post383679 )

Hi Julien, since you are interested in accurate and detailed solutions, you should really use the "linear" scheme. This scheme requires the cell Re < 2, so you will have to use a refined mesh, which is anyways necessary when you do LES (of course it might be an issue if your Re is very high).
Best, 
Hi Alberto,
I really do not understand:  linearUpwind seems to work, when linear does not (is my picture a kind of "staggering"? I am quite new in CFD and my vocabulary is still poor). Why ??? Let suppose it is not working properly, giving wrong results. How to control this? How to be sure my solution is working well? Fields are pretty nice, vortex sheddind has a good frequency... What is wrong?  why does LES need a fine mesh? Small eddies have not to be resolved! Thus, I supposed a coarse mesh is enough to describe large structures, while my SGS is modelling finer eddies... In order to "tune" the size of my cells, I thought about the link between time and space: I am thinking about Strouhal number, which is commonly around 0.2 (for a cylinder for example). Thus, an eddy of size dx should "vibrate" at a frequency of nu=St.U/dx . With St=.2, this succeeds to a mean current number of about Co=5 (=St^1). My mesh is based on these considerations. My mesh is designed with a Co=5, about 1cm. You advice me to use Re=2. In my case, this leads to 0,1 mm. 100 times coarser, and thus a cell number 1 000 000 times larger :eek: !?!? I thought this kind of simulation was called DNS, not LES !:confused: 
Quote:
Quote:
Quote:
A DNS is technically a simulation where all the turbulent scales are directly resolved. In other words you resolve directly from the largest scale, down to the Kolmogorov microscale. An LES is less demanding in terms of grid resolution, because the isotropic scales are not resolved directly, so you can use a coarser mesh. Coarser however does not mean as coarse as you want. The requirement is that your filter size (typically the cubic root of your cell volume) corresponds to to a frequency that falls in the inertial subrange of the spectrum. About the schemes, in practical applications the linear scheme might have too stringent requirements. In such a case, some authors suggest to use the bounded QUICK, which is however known to be too dissipative for LES, due to its upwind nature. If you really can't use a central scheme (linear, cubic, ...), I would start looking at filtered schemes before considering others. Best, 
Quote:
Thanks for your useful guide regarding different schemes in LES. I have a question: you said that " Upwind and linearUpwind, but also limitedLinear and QUICK should be avoided because they are too dissipative" I know that Upwind and linearUpwind produce high dissipation and must be avoided. But what about QUICK and TVD schemes (e.g. limitedLinear & vanLeer)? are they dissipative too?(Please introduce me a reference about dissipation in QUICK and TVD schemes!!) Then the only choice that remains is Centred schemes (e.g. linear, cubicCorrection, midPoint) but they are all unbounded. The question is "what scheme should be used for divSchemes that guaranties both boundedness and accuracy and also has not been too much dissipative? " I have used the following Schemes for my case (twoLiquidMixingFoam) in LES: ddtSchemes { default backward; } gradSchemes { default Gauss linear; } divSchemes { default none; div(rho*phi,U) Gauss linear; div(phi,alpha1) Gauss vanLeer01; // to bound the vanLeer scheme strictly between 0 and 1 to avoid negative and higher than 1 alpha div(phi,k) Gauss limitedLinear 1; div(phi,B) Gauss limitedLinear 1; div(B) Gauss linear; div(phi,nuTilda) Gauss limitedLinear 1; div((nuEff*dev(T(grad(U))))) Gauss linear; } laplacianSchemes { default Gauss linear corrected; } interpolationSchemes { default linear; } snGradSchemes { default corrected; } fluxRequired { default no; p_rgh; alpha1; } Since we had negative or higher than 1 values for alpha we have to bound it using Gauss vanLeer01 and of course Gauss limitedLinear 1 for div(phi,k). What's your opinion about my schemes? Thanks in advance, Mohsen 
Dear Owayz,
I am also interested in try the scheme "filteredLinear2V" in the LES. Do you know what they mean about the parameters 0.2 and 0? Do you have any experience in selecting them? Thank you very much. best regards, OFFO Quote:

I think LUST can be used for LES with OpenFOAM solvers. It is available OF2.1.0 and is described as:
===================================== Linearupwind stabilised transport Linearupwind stabilised transport (LUST) is a new interpolation schemes in which linearupwind is blended with linear interpolation to stabilise solutions while maintaining secondorder behaviour. The scheme is proving particularly successful for LES/DES in complex geometries with complex unstructured meshes, e.g. external aerodynamics of vehicles. ===================================== The blending is harded coded as Code:
0.75*this>mesh().surfaceInterpolation::weights() Code:
combustion/fireFoam/les/flameSpreadWaterSuppressionPanel/system/fvSchemes:31: div(phi,U) Gauss LUST grad(U); Quote:

Quote:
Code:
// Scaling corefficient for the gradient ratio, 
All times are GMT 4. The time now is 05:53. 