Weno-rf
I am planning the implementation of a small 3D MHD code using finite difference WENO. I was wondering about which flux-splitting technique to use. In particular I was wondering about using Roe with entropy fix (WENO-RF) or local Lax-Friedrichs.
It seems to me that, in order to do a Roe splitting, I could just set (in the x-direction): Fi+ = Fi, if si > 0 Fi+ = 0, otherwise where Fi is the projection on the characteristic variables of the flux vector and si the associated speed. In this way I would need to perform only half of the flux reconstructions (a-la ENO-RF) with respect to WENO-LLF when I don't need to use the entropy fix. (Because each wave has just either a positive or a negative non-trivial flux). In any case I could not find any reference on the implementation of WENO-RF schemes, so I am not sure about this formulation. Does anyone have any experience with WENO-RF methods or knows about a reference in which I could find the details of the formulation? |
Hamilton-Jacobi WENO
Hei,
you could use the Hamilton-Jacobi WENO formulation instead. Straightforward coding through divided difference table. See Osher&Fedkiw "Level Set Methods and dynamic implicit surfaces" for details. http://books.google.de/books?id=J4sJRlk0KQ8C&lpg=PR8&dq=osher%20fedkiw%20 level%20set%20google%20books&pg=PP1#v=onepage&q&f= false Cheers Hans |
Hi, thank you for the reply.
Quote:
|
Weno
Hei,
You can do two things for the conservations law: you can reconstruct the numerical fluxes of a cell with WENO and use the conservation law directly in its conservative form. Or you can use the upwind-biased Hamilton-Jacobi WENO directly on the differential operator. When you check the literature, for general fluid flow calculations with WENO, this is usually the way it is implemented. If a scheme with strictly enforced conservation is a must for you, then you a right, you are better off with the flux based WENO. Cheers Hans |
Thanks for the hints, I will definitely look into HJ-WENO to learn more about them. But for the applications that I have in mind mass conservation is absolutely required. Thus, as you suggested, I have to use WENO in the flux version.
In any case what do you think of the way in which I intend to perform the global flux splitting? Is it the right way? I have been trying to extend to WENO the ENO-RF decomposition used by Shu, Chi-Wang and Osher, Stanley; Efficient implementation of essentially non-oscillatory shock-capturing schemes, II; Journal of Computational Physics; 83 32-78 but it's not entirely clear to me if I am adopting the right approach or if I should just decompose the flux in waves and the split them in the positive and negative part. The latter seems the most correct thing to do because the flux then will be smooth at the sonic point, but it's also twice as expensive. Also the ENO-RF formulation doesn't need the splitting on the single waves... |
It was pointed to me that the answer to my questions are addressed in the
ICASE Report No. 97-65 by Shu. |
All times are GMT -4. The time now is 21:40. |