3.5 Falle and Komissarov upwind scheme

Instead of starting from the conservative form of the hydrodynamic equations, one can use a primitive variable formulation in quasi-linear form,
∂v ∂v --- + 𝒜 --- = 0, (41 ) ∂t ∂x
where v is any set of primitive variables. A local linearization of the above system allows one to obtain the solution of the Riemann problem, and from this the numerical fluxes needed to advance a conserved version of the equations in time.

Falle and Komissarov [89Jump To The Next Citation Point] have considered two different algorithms to solve the local Riemann problems in SRHD by extending the methods devised in [87]. In a first algorithm, the intermediate states of the Riemann problem at both sides of the contact discontinuity, vL∗ and vR ∗, are obtained by solving the system

− + vL∗ = vL + bLrL , vR ∗ = vR + bRrR, (42 )
where r−L is the right eigenvector of 𝒜(vL ) associated with sound waves moving upstream, and r+R is the right eigenvector of 𝒜(vR ) of sound waves moving downstream. The continuity of pressure and of the normal component of the velocity across the contact discontinuity allows one to obtain the wave strengths bL and bR from the above expressions, and hence the linear approximation to the intermediate state v (v ,v ) ∗ L R.

In the second algorithm proposed by Falle and Komissarov [89Jump To The Next Citation Point], a linearization of system (41View Equation) is obtained by constructing a constant matrix 𝒜^(vL, vR ) = 𝒜 (12(vL + vR )). The solution of the corresponding Riemann problem is that of a linear system with matrix 𝒜^, i.e.,

∑ v∗ = vL + ^α(p)^r(p), (43 ) ^(p) λ <0
or, equivalently,
∑ v ∗ = vR − ^α(p)^r(p), (44 ) ^λ(p)>0
(p) ^(p) ^α = l ⋅ (vR − vL), (45 )
where ^λ(p), ^r(p), and ^l(p) are the eigenvalues and the right and left eigenvectors of 𝒜^, respectively (p runs from 1 to the number of equations of the system).

In both algorithms, the final step involves the computation of the numerical fluxes for the conservation equations,

^FFK = F (u (v∗(vL,vR ))). (46 )

  Go to previous page Go up Go to next page