Finite Volume Solver  prototype
A framework to build finite volume solvers for the AG Klein at the Freie Universität Berlin.
Classes | Namespaces | Typedefs | Functions
PerfectGasMix.hpp File Reference
#include "fub/State.hpp"
#include "fub/StateArray.hpp"
#include "fub/CompleteFromCons.hpp"
#include "fub/Equation.hpp"
#include "fub/ext/Eigen.hpp"
#include "fub/equations/EulerEquation.hpp"
#include <array>

Go to the source code of this file.

Classes

struct  fub::PerfectGasMixConservative< Density, Momentum, Energy, Species >
 This is a template class for constructing conservative states for the perfect gas equations. More...
 
struct  fub::meta::Rank< PerfectGasMixConsShape< R > >
 
struct  fub::StateTraits< PerfectGasMixConservative< Xs... > >
 
struct  fub::PerfectGasMixPrimitive< Density, Velocity, Pressure, Species >
 
struct  fub::meta::Rank< PerfectGasMixPrimShape< R > >
 
struct  fub::StateTraits< PerfectGasMixPrimitive< Xs... > >
 
struct  fub::PerfectGasMixKineticState< Density, Temperature, MoleFractions >
 
struct  fub::meta::Rank< PerfectGasMixKineticStateShape >
 
struct  fub::StateTraits< PerfectGasMixKineticState< Xs... > >
 
struct  fub::PerfectGasMixCharacteristics< Minus, Zero, Plus, Species >
 
struct  fub::meta::Rank< PerfectGasMixCharShape< R > >
 
struct  fub::StateTraits< PerfectGasMixCharacteristics< Xs... > >
 
struct  fub::PerfectGasMixComplete< Density, Momentum, Energy, Species, Pressure, SpeedOfSound >
 
struct  fub::meta::Rank< PerfectGasMixCompleteShape< R > >
 
struct  fub::StateTraits< PerfectGasMixComplete< Xs... > >
 
struct  fub::PerfectGasMix< N >
 

Namespaces

 fub
 The fub namespace.
 
 fub::meta
 The meta namespace.
 

Typedefs

template<int Rank>
using fub::PerfectGasMixConsShape = PerfectGasMixConservative< ScalarDepth, VectorDepth< Rank >, ScalarDepth, VectorDepth<-1 > >
 
template<int Rank>
using fub::PerfectGasMixPrimShape = PerfectGasMixPrimitive< ScalarDepth, VectorDepth< Rank >, ScalarDepth, VectorDepth<-1 > >
 
using fub::PerfectGasMixKineticStateShape = PerfectGasMixKineticState< ScalarDepth, ScalarDepth, VectorDepth<-1 > >
 
template<int Rank>
using fub::PerfectGasMixCharShape = PerfectGasMixCharacteristics< ScalarDepth, VectorDepth< Rank >, ScalarDepth, VectorDepth<-1 > >
 
template<int Rank>
using fub::PerfectGasMixCompleteShape = PerfectGasMixComplete< ScalarDepth, VectorDepth< Rank >, ScalarDepth, VectorDepth<-1 >, ScalarDepth, ScalarDepth >
 

Functions

template<int Rank>
void fub::CompleteFromPrim (const PerfectGasMix< Rank > &equation, Complete< PerfectGasMix< Rank >> &complete, const Primitive< PerfectGasMix< Rank >> &prim)
 
template<int Rank>
void fub::CompleteFromPrim (const PerfectGasMix< Rank > &equation, CompleteArray< PerfectGasMix< Rank >> &complete, const PrimitiveArray< PerfectGasMix< Rank >> &prim)
 
template<int Rank>
void fub::PrimFromComplete (const PerfectGasMix< Rank > &equation, Primitive< PerfectGasMix< Rank >> &prim, const Complete< PerfectGasMix< Rank >> &complete)
 
template<int Rank>
void fub::PrimFromComplete (const PerfectGasMix< Rank > &equation, PrimitiveArray< PerfectGasMix< Rank >> &prim, const CompleteArray< PerfectGasMix< Rank >> &complete)
 
template<int Rank>
void fub::tag_invoke (tag_t< euler::CompleteFromKineticState >, const PerfectGasMix< Rank > &eq, CompleteArray< PerfectGasMix< Rank >> &q, const KineticStateArray< PerfectGasMix< Rank >> &kin, const Array< double, Rank > &u) noexcept
 
template<int Rank>
void fub::tag_invoke (tag_t< euler::CompleteFromKineticState >, const PerfectGasMix< Rank > &eq, Complete< PerfectGasMix< Rank >> &q, const KineticState< PerfectGasMix< Rank >> &kin) noexcept
 
template<int Rank>
void fub::tag_invoke (tag_t< euler::KineticStateFromComplete >, const PerfectGasMix< Rank > &eq, KineticStateArray< PerfectGasMix< Rank >> &kin, const CompleteArray< PerfectGasMix< Rank >> &q) noexcept
 
template<int Rank>
double fub::tag_invoke (tag_t< euler::Temperature >, const PerfectGasMix< Rank > &eq, const Complete< PerfectGasMix< Rank >> &q) noexcept
 
template<int Rank>
Array1d fub::tag_invoke (tag_t< euler::Temperature >, const PerfectGasMix< Rank > &eq, const CompleteArray< PerfectGasMix< Rank >> &q) noexcept
 
void fub::Reflect (Conservative< PerfectGasMix< 1 >> &reflected, const Conservative< PerfectGasMix< 1 >> &state, const Eigen::Matrix< double, 1, 1 > &normal, const PerfectGasMix< 1 > &gas)
 
void fub::Reflect (Conservative< PerfectGasMix< 2 >> &reflected, const Conservative< PerfectGasMix< 2 >> &state, const Eigen::Vector2d &normal, const PerfectGasMix< 2 > &gas)
 
void fub::Reflect (Conservative< PerfectGasMix< 3 >> &reflected, const Conservative< PerfectGasMix< 3 >> &state, const Eigen::Vector3d &normal, const PerfectGasMix< 3 > &gas)
 
void fub::Reflect (Complete< PerfectGasMix< 1 >> &reflected, const Complete< PerfectGasMix< 1 >> &state, const Eigen::Matrix< double, 1, 1 > &normal, const PerfectGasMix< 1 > &gas)
 
void fub::Reflect (Complete< PerfectGasMix< 2 >> &reflected, const Complete< PerfectGasMix< 2 >> &state, const Eigen::Vector2d &normal, const PerfectGasMix< 2 > &gas)
 
void fub::Reflect (Complete< PerfectGasMix< 3 >> &reflected, const Complete< PerfectGasMix< 3 >> &state, const Eigen::Vector3d &normal, const PerfectGasMix< 3 > &gas)
 
void fub::Rotate (Conservative< PerfectGasMix< 2 >> &rotated, const Conservative< PerfectGasMix< 2 >> &state, const Eigen::Matrix< double, 2, 2 > &rotation, const PerfectGasMix< 2 > &)
 Defines how to rotate a given state of the euler equations. More...
 
void fub::Rotate (Complete< PerfectGasMix< 2 >> &rotated, const Complete< PerfectGasMix< 2 >> &state, const Eigen::Matrix< double, 2, 2 > &rotation, const PerfectGasMix< 2 > &)
 Defines how to rotate a given state of the euler equations. More...
 
void fub::Rotate (Conservative< PerfectGasMix< 3 >> &rotated, const Conservative< PerfectGasMix< 3 >> &state, const Eigen::Matrix< double, 3, 3 > &rotation, const PerfectGasMix< 3 > &)
 Defines how to rotate a given state of the euler equations. More...
 
void fub::Rotate (Complete< PerfectGasMix< 3 >> &rotated, const Complete< PerfectGasMix< 3 >> &state, const Eigen::Matrix< double, 3, 3 > &rotation, const PerfectGasMix< 3 > &)
 Defines how to rotate a given state of the euler equations. More...