|
[Sponsors] |
July 31, 2006, 03:48 |
Roe approximate riemann solver
|
#1 |
Guest
Posts: n/a
|
I need a roe second order solver in fortran or c. please help me to download this code. thanks everyone
|
|
July 31, 2006, 05:20 |
Re: Roe approximate riemann solver
|
#2 |
Guest
Posts: n/a
|
the roe solver is not second order but it can be made second order with an appropriate treatment of the cell-quantities using a MUSCL approach.
If you have a first order ROE solver you need only a MUSCL extrapolator which can be made by yourself because it's really simple. |
|
July 31, 2006, 11:46 |
Re: Roe approximate riemann solver
|
#3 |
Guest
Posts: n/a
|
BTW - i wouldn't recommend MUSCL, although it's quiet popular.I.e. i use SupBEE to reconstruct R and L fluxes.
|
|
July 31, 2006, 23:33 |
Re: Roe approximate riemann solver
|
#4 |
Guest
Posts: n/a
|
One question for you guys, because I'm not deep into approximate riemann solvers.
Most of time, it seems to me that we need to know the Jacobian to do the riemann solver. say: u_t + f(u)_x =0, i.e. we need to know the functional form of f(u). Yet, what if the equation is simply u_t + q(x,t)_x =0. And the functional form of q(x,t) is entirely unknown or under investigation? And calculation of Jacobian dq/du is quite difficult? Say, I have 10 formulas for q(x,t) which is some function of u and other parameters such as in the field of sediment transport, u being the elevation of the river bed, q being the flux of sands/mud. Yet q(x,t) depends on river bed very indirectly and depends on flow velocity v, sand diameter, wave period,,,,,,directly. I want to evaluate which formula is better or even come up with new formulas. Do you think we have to code 10 different Riemann solves for the 10 different formulas? What about 2D cases with irregular shape of river banks, coastalines? How much difficulty we are getting into compared to 1D river? thanks, wen |
|
August 1, 2006, 00:38 |
Re: Roe approximate riemann solver
|
#5 |
Guest
Posts: n/a
|
Dear Mar; Thanks for your suggestion, But I don't know how make a first order to second order with MUSCL. Please Guide me or send me a link for download it. I have,nt any time. Please send it to me If possible and as soon as possible. Thanks Have a Great sky
|
|
August 1, 2006, 00:41 |
Re: Roe approximate riemann solver
|
#6 |
Guest
Posts: n/a
|
Dear Nick; Thanks for your suggestion, But I don't know how make a first order to second order with SupBEE. I just know this parameter is a limiter for second order roe approximation (hirsch book).Please Guide me or send me a link for download it. I have,nt any time. Please send it to me If possible and as soon as possible. Thanks Have a Great sky
|
|
August 1, 2006, 00:47 |
Re: Roe approximate riemann solver
|
#7 |
Guest
Posts: n/a
|
Hi Wen! I think in this case one can use flux vector splitting, or, if it works poorly, method of fractural steps for your equation. Say, you linearize it along the point of dT solution and split it into two categories. First you resolve the 'classical' nonlinear part with the approx. Riemann solver, and then use a more simple procedure (say standard upwind scheme with limiters) for the linearized part of your transport equations. I've done it for shallow water equations, and it worked fine.
Regards. |
|
August 1, 2006, 00:58 |
Re: Roe approximate riemann solver
|
#8 |
Guest
Posts: n/a
|
This is classic with MUSCL: - van Leer. Towards the Ultimate Conservation Difference Scheme IV; A New Approach to Numerical Convection,// Journal of Computational Physics, 23: 276-299, 1977.
In general: -http://en.wikipedia.org/wiki/MUSCL_scheme -http://en.wikipedia.org/wiki/Total_variation_diminishing Say, for euler equations: -http://www.hho.edu.tr/huten/Huten%20Dergi/2005Ocak/08.pdf SuperBEE is a bit more complex, however there's nothing new. I have few articles of my own, but those are in russian =) The numerical validity of various limiters, see my note: -http://community.livejournal.com/numpro/3797.html#cutid1 |
|
August 1, 2006, 04:30 |
Re: Roe approximate riemann solver
|
#9 |
Guest
Posts: n/a
|
Nowdays MUSCL is a standard so you can find it everywhere. you can have a look to
http://en.wikipedia.org/wiki/MUSCL_scheme to undestand the basics of the schemes; after this you willl need only a limiter function(the most simple is the minmod). Because MUSCL is widely used you can search also on the NASA site . I don't know where are you from but in European library is easy to find the following book C. Hirsch, Numerical computation of internal and external ows- Vol. 2 (2nd edn). John Wiley & Sons. Even if this book is quite old it is, in my opinion, a very comprehensive book for the solution of compressible Euler equations. Good luck |
|
August 1, 2006, 08:57 |
Re: Roe approximate riemann solver
|
#10 |
Guest
Posts: n/a
|
One technique that is used today is to use numerical Jacobians. Set du = epsilon (machine definable small number) and then compute the Jacobian as J = (q(u+du) - q(u))/du. This can be useful when the flux function is complex.
|
|
August 1, 2006, 09:36 |
Re: Roe approximate riemann solver
|
#11 |
Guest
Posts: n/a
|
Hi Nick,
my equation is u_t + q(x,t)_x=0. The problem is that I don't even know how to linearize q(x,t) as a function of u. Because q doesn't depend on u directly. Can we completely avoid dq/du kind of jacobian in Riemann solver? Thanks Wen |
|
August 1, 2006, 09:43 |
Re: Roe approximate riemann solver
|
#12 |
Guest
Posts: n/a
|
Hi ag
This is not easy for me, because calculating q(u+du) is verly difficult when q doesn't depend on u directly. say u is the sea bed level, q is calculated from flow rate, shear stress, particle fall velocity,,,,. When I give a du, I have to go through the flow solver to find flow rate, shear stress,,,and finally get q(u+du). And du is not only one number, because the flow rate depends on the whole domain. For each grid number, I have to give a du. The flow solver is expensive. Thanks, Wen |
|
August 1, 2006, 11:33 |
Re: Roe approximate riemann solver
|
#13 |
Guest
Posts: n/a
|
<<<<<<<<Thanks everyone. >>>>>>>>>> tomorrow is my project deadline! I have the first order roe scheme but I have'nt any time to Complete my code. maybe my project is not well or Complete But Now I have many Friend in many Point of world and I happy for this. <<<<<<<<Thanks everyone. >>>>>>>>>> My real name is Karan Have a Great Sky
|
|
August 2, 2006, 15:28 |
Re: Roe approximate riemann solver
|
#14 |
Guest
Posts: n/a
|
Hello Wen. Just a thought. And what about Gadunov-method. Say, you have a dependence of q(u,t,l,z). if u physically is a velocity, then: i.e. U*n>0 on the border of a finite volume(FV), then flows is outward, and take q=q in the FV, else, q=q in FV_next_to_that_one. Then use high order nonlinear schemes to construct q.
|
|
August 2, 2006, 16:09 |
Re: Roe approximate riemann solver
|
#15 |
Guest
Posts: n/a
|
Nick,
Thanks a lot! That sounds very reasonable. Baiscally Godunov type is better than any kind of Riemann scheme in my humble/not-well-meditated opinion. If u is velocity,, take q in side of the cell when u.n >0 , take q next to the cell when u.n < 0 If u is not velocity,, need to find the direction of wave propagation. If wave go out of the cell, take q in side of the cell, if wave go into the cell, take q next to the cell. Wen |
|
August 3, 2006, 01:31 |
Re: Roe approximate riemann solver
|
#16 |
Guest
Posts: n/a
|
That's right, at least i hope it would work. And don't forget to apply a high order scheme (say TVD type) for any reconstruction of 'q'.
Nick. |
|
|
|
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
2D riemann solver | moein_joon27 | Main CFD Forum | 1 | January 10, 2011 06:45 |
roe solver | morteza08 | Main CFD Forum | 0 | May 25, 2010 16:41 |
Exact Riemann solver | Wendelin | Main CFD Forum | 1 | July 5, 2006 07:25 |
New Approx. Riemann Solver | Andrei Chernousov | Main CFD Forum | 3 | February 15, 2000 05:31 |
Parallelization of Riemann ??? I need Roe or Osher | Rouboa | Main CFD Forum | 0 | July 19, 1999 15:26 |