CFD Online Discussion Forums

CFD Online Discussion Forums (https://www.cfd-online.com/Forums/)
-   Main CFD Forum (https://www.cfd-online.com/Forums/main/)
-   -   ENO/Flux limiting/Godunov scheme (https://www.cfd-online.com/Forums/main/10619-eno-flux-limiting-godunov-scheme.html)

Wen January 12, 2006 19:40

ENO/Flux limiting/Godunov scheme
 
Hi,

for u_t+ f(u,...,)_x = s(x,t) kind of problems.

Is there any ENO/flux liming/Godunov type of scheme that deos not rely on Rieman solver for eigen values, yet strictly upwind?

More precisely, any upwind scheme that doens't really depend on how the flux function is related to the dependent variable? I ask this because f(u,...,) may be very complicated, and I don want to have a scheme that are specific to certain form of f() and leaves no way to modify f() substantially without changing the scheme.

Lax-wendorff, MacCormack, Lax-Friedrich schemes are not wanted here.

Thanks,

Wen

S K Prasad January 13, 2006 00:38

Re: ENO/Flux limiting/Godunov scheme
 
I'm not sure..but may be kinetic schemes do not really depend on the eigenvalues of the jacobian. In fact upwinding is applied to the Boltzmann equations which happens to be a scalar equation. Then si-moment of the Boltzmann rqn is taken to obtain the inviscid fluxes. Please correct me if i'm wrong.

Wen January 13, 2006 01:02

Re: ENO/Flux limiting/Godunov scheme
 
Hi,

Thanks for your comment. I will look into kinetic schemes.

I think this is a challenging problem. I ask the question particularly because I'm trying to do modeling of physics problems such as morphology change of ocean bottom. It's essentially conservation of bottom material. Yet in the sediment transport community, we don't exactly know how the flux should be calculated, no uniform agreement has been obtained. And the focus is to develop models to find the most accurate way to evaluate the transport formula( Flux as a function of complex fluid flow and sediment proporties). Since doing experiments are still quite expensive and unachievable. Modeling has been one of the major effort. And the verification of models with different flux formulas has to be made indirectly from the predicted botttom change. But to do that, we have to have a stable scheme first. And the scheme shouldn't depend on the flux formula, because the flux formula are still under investigation.

For a convection problem, upwinding is easy because the flow velocity is the wind direction. For a wave problem with the flux formula complicated and indefinite, it's kind of hard to find the wind direction. Say waves go both ways like a standing wave, but I don't know how to calculate the egien value or the so called approximate Rieman solver, because the f(u) might looklike

f(u(x))= (abs(u)^)1.5*u

or can be many different ways. If we have to evalulate the eigen value numerically, then how?

I would like to see more suggestions on this issue.

Wen


Salvador January 13, 2006 06:58

Re: ENO/Flux limiting/Godunov scheme
 
I imagien ypur problem is hyperbolic in anture, or can be put in hyperobolic form (otherwise discussio has no meaning)

u_t+f(u)_x=S

I would suggest computing the jacobians numerically df/du, using Frechet derivatives or similar.

A(u)=df/du=f(u+e)-f(u)/e where e is a small number. One u got the numerical jacobian it is not very difficult to obtain the eigen values, the jacopbian matrix A would be relatively small (how many dimensions does your problem have). A would be evaluated at teh intermediate point between left and right ecells, or use a reconstruction technique (linear maybe), you don not expect large changes between neigbouring cells do you ??. there are no shocks. Alternative where to evaluate the jacobian exist.

If the system is hyperbolic then all eigen values are real and are the speed of propagation of information. So basically

Compute Jacobian (numerically) Compute eigenvalues (nuemrically) Regarding the eigen values you choose your upwinding scheme (something in the line of Roe's scheme maybe)

I recomend Toro's book about it


S K Prasad January 13, 2006 09:25

Re: ENO/Flux limiting/Godunov scheme
 
Salvador do u think for the particular test case mentioned, the preconditioning of the jacobian matrix is necessary to cluster the eigenvalues??

Wen January 13, 2006 21:32

Re: ENO/Flux limiting/Godunov scheme
 
Thanks- Salvador,

I would guess the problem is hyperbolic, yet I'm not very sure. And I haven't seen much work on this in text books. Most text book will talk about:

u_t + f(u)_x =0

for 1 scalar problem, or

z_t + u f(z)_x =0

u_t + u g(u)_x =0

for vector problem, etc.

Yet for my problem it is:

z_t + f(u,d,...,)_x =0 --->(1)

u_t + *** =0 --> (2)

eta_t + ****=0 --> (3)

where z represents the seabed level, u_t represents velocity of the water column in x direction. eta represents the sea surface elevation. f() is the transport rate of bottom materials. (2) and (3) are water wave equations. (1) is balance of bottom material. Problem is that (2)(3) are solved not using the same scheme as (1), becasue water moves much faster than sea bottom, hence they are not at the same time scale. And f(u,d,,) is not a direction function like f(z), hence (1) is not in the form of

z_t + f(z)_x =0 --> (4)

and in (1) f depends on velocity u, sand diameter d, ..., a number of other effects. Looking solely at (1), I don't know whether I should call it a hyperbolic equation or not. I guess it's more precisely called a balance law. Solution technique of (2) and (3) are already very mature, so it's not a problem. Only that we want to develop schemes for (1) regardless what other schemes are used for (2)(3). Most books will talk about solving the whole system (1)(2)(3) using the same scheme. This is not a good option for the case of sediment transport and morphology. Because first of all, the time scale is much different, secondly, f(u,d,...,) is still not well established except for simple cases. The purpose is to find the functional form of f().

Have you guys seen ENO/Flux Limiting/Godunov or any other upwind scheme used for only one equation of a system of equations, while the rest of the equations are solved using other schemes? (****important question for me)

If we look for the Jacobian, that means the whole system has to be solved using the same scheme. And that's not good because our wave model (2)(3) is much more complicated (high order PDE's like Boussinesq eqns) than just shallow water equation, the Jacobians are not easy to find for high order water wave equations. Yet Jacoians are easy to be obtained for shallow water equation, unfortunately, shallow water wave equations aren't the best wave equation.

One other thing I want to know is : should we call

z_t + f(u)_x =0

a hyperbolic equation for z? Yet u can be any function related to z directly or through a complex model (2)(3). I doubt about it, if u is not a function of z at all, then we shouldn't call it hyperbolic equation. If u related to z through a complex system (2)(3), it is probably is a hyperbolic equation for z, but it's rather difficult to cope with when the relation between u and z is not quite simple.

Any comments are welcome,,

Wen


Salva January 16, 2006 08:06

Re: ENO/Flux limiting/Godunov scheme
 
Let's see, the mathematical definition is: A system with d spatial dimensions and p conditions

u_t + sum f(u)_j = 0

with u=(u1,u2,...up) x= (x1,x2,..xd) and f=(f1,f2,...,fp)

is hyperbolic if the jacobian matrix

Aij(u)= f_i/u_j

has real eigen values.

Your system d=1 p =3

u1=z u2=u u3=eta

f1=f(u,..) f2 and f3 form the shallow water equations so they are known and form and hypebolic system.

df1/du1=0 so I think that the system remains hyperbolic, I think that the dependence of f2 and f3 with u1 is linear in the water equations (am I right ?). I think basically the addition of a equation with df1/du1=0 does not alter the nature of the system.

If equation 1 is slower than the water equations 2 and 3, then that's not aproblem, basically the opposite. It means your CFL costrains for eq 2 and 3 will dictate the time stability of the problem. Try compact schemes, Lele, for equation 1. How are the typical profiles of z(x)?. I do not think they would be too steep. So benefits from an upwind scheme would be minimal, what happened when you choose central differences ??

Salva(dor)

Regrading pre-conditioning, I do not know. I think must of the times is possitive, although in asystem with few variables may not beworthy.



All times are GMT -4. The time now is 12:55.