CFD Online Discussion Forums

CFD Online Discussion Forums (https://www.cfd-online.com/Forums/)
-   Main CFD Forum (https://www.cfd-online.com/Forums/main/)
-   -   How grid resolution for a wave number depends on the scheme order? (https://www.cfd-online.com/Forums/main/192976-how-grid-resolution-wave-number-depends-scheme-order.html)

marinkobezu September 14, 2017 15:59

How grid resolution for a wave number depends on the scheme order?
 
Hello the question is as follows:

Generally, in order to resolve a wave with a scheme of 2nd order, it is advised to use 25 points per wave length, 6th order - 6 points. But if a code is 6th order in space but 2nd in time will this rule be still correct?
I have introduced a gust(wave like disturbance) into a flow field and tried to vary order of the scheme I use. I tried 2nd, 4th and 6th order in space ILES and 2nd order in time. Surprisingly in order to resolve the wave I need 25 points per wavelength independently of the scheme order.
Why is this so?
I would appreciate if anyone can suggest reading material on this topic.

FMDenaro September 14, 2017 16:25

Well, the first thing is to discriminate between a fully resolved wavelenght (DNS resolution) and a filtered resolved wavelenght (LES/ILES). You should provide more details of what you are doing.
Then, the modified wavenumber analysis of the scheme can tell something about the actual spatial resolution at each wavenumber. For a time-space dicretization, the global local truncation error in the wavenumber space can give some help.
Note that I am considering wave at wavenumbers below the Nyquist cut-off induced by the grid. Of course, shock waves cannot be resolved in this way, they are a singularity in case of inviscid flow and are at very small lenght scale in case of viscous flows.
I dont' think you need of 25 nodes...try to test first the solution of the Burgers equation.

marinkobezu September 15, 2017 12:59

Hello RMDenaro, thank you for your comment.

I am doing ILES using finite difference code(FDL3DI developed by Visbal and Gaitonde). Flow is subsonic(M = 0.5). I am introducing gust as a source in the right-hand side of Navier Stokes equations. I have used several uniform grids with different number of points per wavelength(10,20,25,45).
For example, I introduce gust with wavenumber components k1 = 1,k2 = 1,k3 = 0. Then wavelength is: lambda = 2*pi/k1=6.28. Thus I need spacing dx = 0.628 if I want to have 10 points per wavelength.

When I want to check if the disturbance I introduce is represented correctly I extract values of velocities components and vorticity at certain time(let's say 3 seconds) and compare it to the theoretical values that I expect to see.

In the picture 4 cases are shown. Blue line is theoretical values for x velocity U, y velocity V and z vorticity omega. Green, cyan, red and black are CFD values.
http://www.fileconvoy.com/dfl.php?id...2a49fc30f194ae

Z vorticity contours are shown in the following picture:
http://www.fileconvoy.com/dfl.php?id...5d59f2c194bfff

FMDenaro September 15, 2017 13:15

Quote:

Originally Posted by marinkobezu (Post 664502)
Hello RMDenaro, thank you for your comment.

I am doing ILES using finite difference code(FDL3DI developed by Visbal and Gaitonde). Flow is subsonic(M = 0.5). I am introducing gust as a source in the right-hand side of Navier Stokes equations. I have used several uniform grids with different number of points per wavelength(10,20,25,45).
For example, I introduce gust with wavenumber components k1 = 1,k2 = 1,k3 = 0. Then wavelength is: lambda = 2*pi/k1=6.28. Thus I need spacing dx = 0.628 if I want to have 10 points per wavelength.

When I want to check if the disturbance I introduce is represented correctly I extract values of velocities components and vorticity at certain time(let's say 3 seconds) and compare it to the theoretical values that I expect to see.

In the picture 4 cases are shown. Blue line is theoretical values for x velocity U, y velocity V and z vorticity omega. Green, cyan, red and black are CFD values.
http://www.fileconvoy.com/dfl.php?id...2a49fc30f194ae

Z vorticity contours are shown in the following picture:
http://www.fileconvoy.com/dfl.php?id...5d59f2c194bfff


well, what you are doing is not rigorously correct by a theoretical point of view ...When you add more grid points or change the accuracy order of the scheme in an LES and you use an implicit filtering, at each grid size corresponds a different filtered solution (different filter width). More points you add, more frequencies you can resolve tending towards a DNS solution. Therefore, the solutions you plot are not rigorously comparable. You can see also the power content in the wavenumber space as further comparison. In this sense, you cannot say that with 10 nodes the LES solution is totally wrong as it corresponds to a larger filter width that correctly smooths the solution. You should compare it to the exact solution after it is filtered at the same width.

What is the final goal of your test ?

marinkobezu September 19, 2017 11:52

Mr. Denaro, the final goal of my test is to figure out how many points I need to resolve a specific wave. I will introduce turbulence through momentum source and I should be able to tell that with grid cells dx = 0.001 I can resolve certain part of the spectrum (for example wavenumbers larger than k1 and smaller than k2).
I understand that filter size is different for different grids, but my point is that using 6 points per wavelength I cannot resolve the wave. If, for example,
I wanted to see the effect of a gust on a wing and used 6 ppw I would see no effect since the gust would be smoothed out. I tried using 2nd order scheme, 4th order, and 6th and changing the accuracy did not change the number of points per wave needed. That was surprising to me. This plot is almost same for 2nd, 4th and 6th order: http://www.fileconvoy.com/dfl.php?id...2a49fc30f194ae .
If I understood your comment correctly, then each grid has a specific cut-off filter width and all the waves smaller than this width are filtered, but then how does a higher order of a scheme help me? My point is not that the solution is totally wrong but that the wave under consideration is not resolved with this amount of grid.
I hope my thoughts make sence to you=)

FMDenaro September 19, 2017 12:13

Quote:

Originally Posted by marinkobezu (Post 664922)
Mr. Denaro, the final goal of my test is to figure out how many points I need to resolve a specific wave. I will introduce turbulence through momentum source and I should be able to tell that with grid cells dx = 0.001 I can resolve certain part of the spectrum (for example wavenumbers larger than k1 and smaller than k2).
I understand that filter size is different for different grids, but my point is that using 6 points per wavelength I cannot resolve the wave. If, for example,
I wanted to see the effect of a gust on a wing and used 6 ppw I would see no effect since the gust would be smoothed out. I tried using 2nd order scheme, 4th order, and 6th and changing the accuracy did not change the number of points per wave needed. That was surprising to me. This plot is almost same for 2nd, 4th and 6th order: http://www.fileconvoy.com/dfl.php?id...2a49fc30f194ae .
If I understood your comment correctly, then each grid has a specific cut-off filter width and all the waves smaller than this width are filtered, but then how does a higher order of a scheme help me? My point is not that the solution is totally wrong but that the wave under consideration is not resolved with this amount of grid.
I hope my thoughts make sence to you=)


there are some issues to be addressed:
1) a computational grid of size h introduces (whatever the accuracy order of a scheme is) the Nyquist cut-off wavenumber kc=pi/h. Therefore, you are sure that all wavenumbers up to kc can be represented on such grid (Nyquist theorem says you can represent a complete sine period at wavenumber kc using three nodes over 2*h lenght).

2) the way and the quality of the numerical representation of the wavenumbers content up to kc depends on the numerical discretization you use. For example, using the spectral method you have an exact representation of the wavenumbers content up to kc. Conversely, using FD, FV, FEM, the spectral resolution is degraded going towards kc, depending on the accuracy order. That can be studied by means of the modified wavenumbers analysis I suppose you are aware.

3) that means that, even if Nyquist theorem ensures you can represent small wavelenghts on the grid of size h with only three nodes, depending on the accuracy order of the scheme you could need to use more nodes to describes accurately the wavelenght.

4) While this issue appears quite clear in terms of a DNS formulation, when you go to an LES formulation the things are more complicated. If you use an implicit formulation, then you must be aware that both the computational grid and the numerical scheme introduces the shape of the filtering. That is further complicated by the original filtered PDE approach. If you use the top-hat filtering (for example the FV approach), you are assuming by definition that the resolved part of the spectrum is smoothed via via you tends towards kc. This is not a numerical error! It is just the action of the filter you adopt in the LES. In other words, you cannot hope that such filtering approach can give correct resolution of small wavelenght, independently from the accuracy order you use (you can use also 6th or 8th order accuracy, the filter shape remains smooth). Therefore, you need of an LES based on different shape of the filtering. That can be obtained using a spectral method. In such case, the filter is projective and does not smooth the wavenumber content. You have only the action of the cut-off filter.

Let me know if you need references about these issues

P.S. the link does not work

marinkobezu September 20, 2017 18:49

Thank you for your reply. I have tried to completely turn off the filter and obtained results that are slightly better than used to be, but still 10 points do not resolve the wave.(I have attached link with the results. Blue is theoretical wave, cyan is CFD calculation) In the code low-pass spatial filtering is incorporated(turned off now). It is compact-differencing scheme of 6th order. Do you think there could be something else other than filtering issue?

http://www.fileconvoy.com/dfl.php?id...55033b7f2cbed6

FMDenaro September 21, 2017 03:07

Quote:

Originally Posted by marinkobezu (Post 665089)
Thank you for your reply. I have tried to completely turn off the filter and obtained results that are slightly better than used to be, but still 10 points do not resolve the wave.(I have attached link with the results. Blue is theoretical wave, cyan is CFD calculation) In the code low-pass spatial filtering is incorporated(turned off now). It is compact-differencing scheme of 6th order. Do you think there could be something else other than filtering issue?

http://www.fileconvoy.com/dfl.php?id...55033b7f2cbed6

Well, you did not write before that an explicit filtering was in action in your code.
Now, you have the remaing effect of the smoothing induced by the compact 6th order scheme. You can understand it by looking at the spectral resolution of such scheme. You can see that at high resolved wavenumbers the content is still quite smoothed.
Now, with the explicit filtering turned off, you can check the quality of the solution for increasing number of grid nodes. However, remember that the exact solution should be considered in terms of unfiltered field. You should apply an explicit filtering to the theoretical solution to get a congruent comparison with your LES solution.
And, finally, I cannot exclude a bug in your code...you should test it in a more controlled test-case

marinkobezu September 21, 2017 12:06

1. Is it possible to reduce the effect of smoothing or it cannot be changed for the given scheme?
2. The code is well validated(I did not write it, I am just using it).

FMDenaro September 21, 2017 12:11

Quote:

Originally Posted by marinkobezu (Post 665160)
1. Is it possible to reduce the effect of smoothing or it cannot be changed for the given scheme?
2. The code is well validated(I did not write it, I am just using it).

For smooth filtering, it is possible to "reconstruct" a part of the energy content smoothed by the scheme using the so-called deconvolution technique.


All times are GMT -4. The time now is 10:25.