Finite Volume Solver  prototype
A framework to build finite volume solvers for the AG Klein at the Freie Universität Berlin.
Public Types | Public Member Functions | Private Attributes | List of all members
fub::ExactRiemannSolver< PerfectGas< Dim > > Class Template Reference

#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_
 

Member Typedef Documentation

◆ Complete

template<int Dim>
using fub::ExactRiemannSolver< PerfectGas< Dim > >::Complete = typename PerfectGas<Dim>::Complete

◆ CompleteArray

template<int Dim>
using fub::ExactRiemannSolver< PerfectGas< Dim > >::CompleteArray = typename PerfectGas<Dim>::CompleteArray

Constructor & Destructor Documentation

◆ ExactRiemannSolver()

template<int Dim>
fub::ExactRiemannSolver< PerfectGas< Dim > >::ExactRiemannSolver ( const PerfectGas< Dim > &  equation)
inlineexplicit

Member Function Documentation

◆ ComputeMiddleState()

template<int Dim>
std::array<double, 2> fub::ExactRiemannSolver< PerfectGas< Dim > >::ComputeMiddleState ( const Complete left,
const Complete right,
Direction  dir 
)

◆ ComputeSignals() [1/2]

template<int Dim>
std::array<double, 2> fub::ExactRiemannSolver< PerfectGas< Dim > >::ComputeSignals ( const Complete ,
const Complete ,
Direction  dir 
)

Returns the upwind velocity in the specified direction.

◆ ComputeSignals() [2/2]

template<int Dim>
std::array<Array1d, 2> fub::ExactRiemannSolver< PerfectGas< Dim > >::ComputeSignals ( const CompleteArray ,
const CompleteArray ,
Direction  dir 
)

◆ SolveRiemannProblem() [1/4]

template<int Dim>
void fub::ExactRiemannSolver< PerfectGas< Dim > >::SolveRiemannProblem ( Complete state,
const Complete left,
const Complete right,
Direction  dir 
)

◆ SolveRiemannProblem() [2/4]

template<int Dim>
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.

◆ SolveRiemannProblem() [3/4]

template<int Dim>
void fub::ExactRiemannSolver< PerfectGas< Dim > >::SolveRiemannProblem ( CompleteArray state,
const CompleteArray left,
const CompleteArray right,
Direction  dir 
)

◆ SolveRiemannProblem() [4/4]

template<int Dim>
void fub::ExactRiemannSolver< PerfectGas< Dim > >::SolveRiemannProblem ( CompleteArray state,
const CompleteArray left,
const CompleteArray right,
MaskArray  mask,
Direction  dir 
)

Member Data Documentation

◆ equation_

template<int Dim>
PerfectGas<Dim> fub::ExactRiemannSolver< PerfectGas< Dim > >::equation_
private

The documentation for this class was generated from the following file: