21 #ifndef FUB_EQUATIONS_PERFECT_GAS_EXACT_RIEMANN_SOLVER_HPP
22 #define FUB_EQUATIONS_PERFECT_GAS_EXACT_RIEMANN_SOLVER_HPP
36 : equation_{equation} {}
void SolveRiemannProblem(Complete &state, const Complete &left, const Complete &right, double, double, Duration dt, double dx, Direction dir)
Returns either left or right, depending on the upwind velocity.
ExactRiemannSolver(const PerfectGas< Dim > &equation)
Definition: equations/perfect_gas/ExactRiemannSolver.hpp:35
std::array< double, 2 > ComputeMiddleState(const Complete &left, const Complete &right, Direction dir)
typename PerfectGas< Dim >::CompleteArray CompleteArray
Definition: equations/perfect_gas/ExactRiemannSolver.hpp:33
void SolveRiemannProblem(CompleteArray &state, const CompleteArray &left, const CompleteArray &right, MaskArray mask, Direction dir)
void SolveRiemannProblem(Complete &state, const Complete &left, const Complete &right, Direction dir)
typename PerfectGas< Dim >::Complete Complete
Definition: equations/perfect_gas/ExactRiemannSolver.hpp:32
std::array< double, 2 > ComputeSignals(const Complete &, const Complete &, Direction dir)
Returns the upwind velocity in the specified direction.
std::array< Array1d, 2 > ComputeSignals(const CompleteArray &, const CompleteArray &, Direction dir)
void SolveRiemannProblem(CompleteArray &state, const CompleteArray &left, const CompleteArray &right, Direction dir)
PerfectGas< Dim > equation_
Definition: equations/perfect_gas/ExactRiemannSolver.hpp:65
Definition: ExactRiemannSolver.hpp:26
The fub namespace.
Definition: AnyBoundaryCondition.hpp:31
std::chrono::duration< double > Duration
Definition: Duration.hpp:31
Direction
This is a type safe type to denote a dimensional split direction.
Definition: Direction.hpp:30
Array< bool, 1 > MaskArray
Definition: Eigen.hpp:59
Definition: PerfectGas.hpp:164