WENO 5 extension to curvilinear grids
Hello everyone,
I have successfully implemented a finite-difference WENO5 2D compressible flow solver for the Euler equations in cartesian coordinates, but I'm having trouble with the generalization to curvilinear body-fitted grids. I was given a compact finite-difference solver that works fine in curvilinear grids, so my guess is that the problem may be in:
I read several articles on the matter such as this or this, but I cannot understand precisely the procedure they are using. Any help about the generalization of the global LxF splitting and/or WENO5 would be appreciated. Thank you. |
Thank you very much for your reply, t.teschner. I will have a look at those books.
|
This is all true. Just be sure that your grid mapping is smooth, say from a full-domain conformal mapping. It should be at least several times differentiable. You should recognize that the WENO smoothness metrics are based on the assumption of evenly spaced samples. If the grid spacing changes in an non-smooth way, the effect of the mesh stretching will not be "felt" by the smoothness indicators, so the WENO stencils will be weighted based on incorrect data. The same is true for normal linear finite differences as well, but the potential for out-sized errors are introduced with the nonlinear behavior of WENO or limiters, etc.
|
good point, did not consider that. thanks for adding that!
|
|
Thank you very much for all your answers. I am still putting the pieces together, but I am on the correct path.
On a related note, I hope it is not off-topic, I am interested on implementing a slightly different slip wall boundary condition. Many authors mirror the flow values (i.e. density, tangent velocity and pressure) across the wall boundary (which is placed on an interface midway between nodes) and negate the normal velocity. Is there a way to make the wall boundary fall on a node instead of on an interface using WENO? The reasoning behind this is to be able to compare the results of a problem with a Finite Difference code having the nodes placed on the same coordinates. |
All times are GMT -4. The time now is 10:50. |