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 | Static Public Member Functions | Public Attributes | List of all members
fub::perfect_gas::MusclHancockPrim< Dim > Struct Template Reference

#include <MusclHancockPrimMethod.hpp>

Public Types

using Conservative = ::fub::Conservative< PerfectGas< Dim > >
 
using Complete = ::fub::Complete< PerfectGas< Dim > >
 
using ConservativeArray = ::fub::ConservativeArray< PerfectGas< Dim > >
 
using CompleteArray = ::fub::CompleteArray< PerfectGas< Dim > >
 

Public Member Functions

 MusclHancockPrim (const PerfectGas< Dim > &equation)
 
const PerfectGas< Dim > & GetEquation () const noexcept
 
void ComputeNumericFlux (Conservative &flux, span< const Complete, 4 > stencil, Duration dt, double dx, Direction dir)
 
void ComputeNumericFlux (ConservativeArray &flux, Array1d face_fractions, span< const CompleteArray, 4 > stencil, span< const Array1d, 4 > volume_fractions, Duration dt, double dx, Direction dir)
 
void ComputeNumericFlux (ConservativeArray &flux, span< const CompleteArray, 4 > stencil, Duration dt, double dx, Direction dir)
 
double ComputeStableDt (span< const Complete, 4 > states, double dx, Direction dir)
 
Array1d ComputeStableDt (span< const CompleteArray, 4 > states, double dx, Direction dir)
 
Array1d ComputeStableDt (span< const CompleteArray, 4 > states, Array1d face_fraction, span< const Array1d, 4 >, double dx, Direction dir)
 

Static Public Member Functions

static constexpr int GetStencilWidth () noexcept
 

Public Attributes

PerfectGas< Dim > equation_
 

Member Typedef Documentation

◆ Complete

template<int Dim>
using fub::perfect_gas::MusclHancockPrim< Dim >::Complete = ::fub::Complete<PerfectGas<Dim> >

◆ CompleteArray

◆ Conservative

◆ ConservativeArray

Constructor & Destructor Documentation

◆ MusclHancockPrim()

template<int Dim>
fub::perfect_gas::MusclHancockPrim< Dim >::MusclHancockPrim ( const PerfectGas< Dim > &  equation)
inline

Member Function Documentation

◆ ComputeNumericFlux() [1/3]

template<int Dim>
void fub::perfect_gas::MusclHancockPrim< Dim >::ComputeNumericFlux ( Conservative flux,
span< const Complete, 4 >  stencil,
Duration  dt,
double  dx,
Direction  dir 
)

◆ ComputeNumericFlux() [2/3]

template<int Dim>
void fub::perfect_gas::MusclHancockPrim< Dim >::ComputeNumericFlux ( ConservativeArray flux,
Array1d  face_fractions,
span< const CompleteArray, 4 >  stencil,
span< const Array1d, 4 >  volume_fractions,
Duration  dt,
double  dx,
Direction  dir 
)

◆ ComputeNumericFlux() [3/3]

template<int Dim>
void fub::perfect_gas::MusclHancockPrim< Dim >::ComputeNumericFlux ( ConservativeArray flux,
span< const CompleteArray, 4 >  stencil,
Duration  dt,
double  dx,
Direction  dir 
)

◆ ComputeStableDt() [1/3]

template<int Dim>
double fub::perfect_gas::MusclHancockPrim< Dim >::ComputeStableDt ( span< const Complete, 4 >  states,
double  dx,
Direction  dir 
)

◆ ComputeStableDt() [2/3]

template<int Dim>
Array1d fub::perfect_gas::MusclHancockPrim< Dim >::ComputeStableDt ( span< const CompleteArray, 4 >  states,
Array1d  face_fraction,
span< const Array1d, 4 >  ,
double  dx,
Direction  dir 
)

◆ ComputeStableDt() [3/3]

template<int Dim>
Array1d fub::perfect_gas::MusclHancockPrim< Dim >::ComputeStableDt ( span< const CompleteArray, 4 >  states,
double  dx,
Direction  dir 
)

◆ GetEquation()

template<int Dim>
const PerfectGas<Dim>& fub::perfect_gas::MusclHancockPrim< Dim >::GetEquation ( ) const
inlinenoexcept

◆ GetStencilWidth()

template<int Dim>
static constexpr int fub::perfect_gas::MusclHancockPrim< Dim >::GetStencilWidth ( )
inlinestaticconstexprnoexcept

Member Data Documentation

◆ equation_

template<int Dim>
PerfectGas<Dim> fub::perfect_gas::MusclHancockPrim< Dim >::equation_

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