Finite Volume Solver
prototype
A framework to build finite volume solvers for the AG Klein at the Freie Universität Berlin.
|
#include <ExactRiemannSolver.hpp>
Public Types | |
using | Complete = typename PerfectGas< Dim >::Complete |
using | CompleteArray = typename PerfectGas< Dim >::CompleteArray |
Public Member Functions | |
ExactRiemannSolver (const PerfectGas< Dim > &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. More... | |
void | SolveRiemannProblem (Complete &state, const Complete &left, const Complete &right, Direction dir) |
void | SolveRiemannProblem (CompleteArray &state, const CompleteArray &left, const CompleteArray &right, Direction dir) |
void | SolveRiemannProblem (CompleteArray &state, const CompleteArray &left, const CompleteArray &right, MaskArray mask, Direction dir) |
std::array< double, 2 > | ComputeSignals (const Complete &, const Complete &, Direction dir) |
Returns the upwind velocity in the specified direction. More... | |
std::array< Array1d, 2 > | ComputeSignals (const CompleteArray &, const CompleteArray &, Direction dir) |
std::array< double, 2 > | ComputeMiddleState (const Complete &left, const Complete &right, Direction dir) |
Private Attributes | |
PerfectGas< Dim > | equation_ |
using fub::ExactRiemannSolver< PerfectGas< Dim > >::Complete = typename PerfectGas<Dim>::Complete |
using fub::ExactRiemannSolver< PerfectGas< Dim > >::CompleteArray = typename PerfectGas<Dim>::CompleteArray |
|
inlineexplicit |
std::array<double, 2> fub::ExactRiemannSolver< PerfectGas< Dim > >::ComputeMiddleState | ( | const Complete & | left, |
const Complete & | right, | ||
Direction | dir | ||
) |
std::array<double, 2> fub::ExactRiemannSolver< PerfectGas< Dim > >::ComputeSignals | ( | const Complete & | , |
const Complete & | , | ||
Direction | dir | ||
) |
Returns the upwind velocity in the specified direction.
std::array<Array1d, 2> fub::ExactRiemannSolver< PerfectGas< Dim > >::ComputeSignals | ( | const CompleteArray & | , |
const CompleteArray & | , | ||
Direction | dir | ||
) |
void fub::ExactRiemannSolver< PerfectGas< Dim > >::SolveRiemannProblem | ( | Complete & | state, |
const Complete & | left, | ||
const Complete & | right, | ||
Direction | dir | ||
) |
void fub::ExactRiemannSolver< PerfectGas< Dim > >::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.
void fub::ExactRiemannSolver< PerfectGas< Dim > >::SolveRiemannProblem | ( | CompleteArray & | state, |
const CompleteArray & | left, | ||
const CompleteArray & | right, | ||
Direction | dir | ||
) |
void fub::ExactRiemannSolver< PerfectGas< Dim > >::SolveRiemannProblem | ( | CompleteArray & | state, |
const CompleteArray & | left, | ||
const CompleteArray & | right, | ||
MaskArray | mask, | ||
Direction | dir | ||
) |
|
private |