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
PerfectGas.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::PerfectGasConservative< Density, Momentum, Energy >
 This is a template class for constructing conservative states for the perfect gas equations. More...
 
struct  fub::meta::Rank< PerfectGasConsShape< R > >
 
struct  fub::StateTraits< PerfectGasConservative< Xs... > >
 
struct  fub::PerfectGasPrimitive< Density, Velocity, Pressure >
 
struct  fub::meta::Rank< PerfectGasPrimShape< R > >
 
struct  fub::StateTraits< PerfectGasPrimitive< Xs... > >
 
struct  fub::PerfectGasCharacteristics< Minus, Zero, Plus >
 
struct  fub::meta::Rank< PerfectGasCharShape< R > >
 
struct  fub::StateTraits< PerfectGasCharacteristics< Xs... > >
 
struct  fub::PerfectGasComplete< Density, Momentum, Energy, Pressure, SpeedOfSound >
 
struct  fub::meta::Rank< PerfectGasCompleteShape< R > >
 
struct  fub::StateTraits< PerfectGasComplete< Xs... > >
 
struct  fub::PerfectGas< N >
 

Namespaces

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

Typedefs

template<int Rank>
using fub::PerfectGasConsShape = PerfectGasConservative< ScalarDepth, VectorDepth< Rank >, ScalarDepth >
 
template<int Rank>
using fub::PerfectGasPrimShape = PerfectGasPrimitive< ScalarDepth, VectorDepth< Rank >, ScalarDepth >
 
template<int Rank>
using fub::PerfectGasCharShape = PerfectGasCharacteristics< ScalarDepth, VectorDepth< Rank >, ScalarDepth >
 
template<int Rank>
using fub::PerfectGasCompleteShape = PerfectGasComplete< ScalarDepth, VectorDepth< Rank >, ScalarDepth, ScalarDepth, ScalarDepth >
 

Functions

template<int Rank>
void fub::CompleteFromPrim (const PerfectGas< Rank > &equation, Complete< PerfectGas< Rank >> &complete, const Primitive< PerfectGas< Rank >> &prim)
 
template<int Rank>
void fub::PrimFromComplete (const PerfectGas< Rank > &, Primitive< PerfectGas< Rank >> &prim, const Complete< PerfectGas< Rank >> &complete)
 
template<int Rank>
void fub::CompleteFromPrim (const PerfectGas< Rank > &equation, CompleteArray< PerfectGas< Rank >> &complete, const PrimitiveArray< PerfectGas< Rank >> &prim)
 
template<int Rank>
void fub::PrimFromComplete (const PerfectGas< Rank > &, PrimitiveArray< PerfectGas< Rank >> &prim, const CompleteArray< PerfectGas< Rank >> &complete)
 
void fub::Reflect (Conservative< PerfectGas< 1 >> &reflected, const Conservative< PerfectGas< 1 >> &state, const Eigen::Matrix< double, 1, 1 > &normal, const PerfectGas< 1 > &gas)
 
void fub::Reflect (Conservative< PerfectGas< 2 >> &reflected, const Conservative< PerfectGas< 2 >> &state, const Eigen::Vector2d &normal, const PerfectGas< 2 > &gas)
 
void fub::Reflect (Conservative< PerfectGas< 3 >> &reflected, const Conservative< PerfectGas< 3 >> &state, const Eigen::Vector3d &normal, const PerfectGas< 3 > &gas)
 
void fub::Reflect (Complete< PerfectGas< 1 >> &reflected, const Complete< PerfectGas< 1 >> &state, const Eigen::Matrix< double, 1, 1 > &normal, const PerfectGas< 1 > &gas)
 
void fub::Reflect (Complete< PerfectGas< 2 >> &reflected, const Complete< PerfectGas< 2 >> &state, const Eigen::Vector2d &normal, const PerfectGas< 2 > &gas)
 
void fub::Reflect (Complete< PerfectGas< 3 >> &reflected, const Complete< PerfectGas< 3 >> &state, const Eigen::Vector3d &normal, const PerfectGas< 3 > &gas)
 
void fub::Rotate (Conservative< PerfectGas< 2 >> &rotated, const Conservative< PerfectGas< 2 >> &state, const Eigen::Matrix< double, 2, 2 > &rotation, const PerfectGas< 2 > &)
 Defines how to rotate a given state of the euler equations. More...
 
void fub::Rotate (Complete< PerfectGas< 2 >> &rotated, const Complete< PerfectGas< 2 >> &state, const Eigen::Matrix< double, 2, 2 > &rotation, const PerfectGas< 2 > &)
 Defines how to rotate a given state of the euler equations. More...
 
void fub::Rotate (Conservative< PerfectGas< 3 >> &rotated, const Conservative< PerfectGas< 3 >> &state, const Eigen::Matrix< double, 3, 3 > &rotation, const PerfectGas< 3 > &)
 Defines how to rotate a given state of the euler equations. More...
 
void fub::Rotate (Complete< PerfectGas< 3 >> &rotated, const Complete< PerfectGas< 3 >> &state, const Eigen::Matrix< double, 3, 3 > &rotation, const PerfectGas< 3 > &)
 Defines how to rotate a given state of the euler equations. More...