FluxMixin< dim, Derived > Struct Template Reference

Developer Documentation: MeltPoolDG::CompressibleFlow::FluxMixin< dim, Derived > Struct Template Reference
Developer Documentation
MeltPoolDG::CompressibleFlow::FluxMixin< dim, Derived > Struct Template Reference

#include <state_views_mixins.hpp>

Public Types

using Idx = ConservedVariableIndex< dim >
 

Public Member Functions

decltype(auto) density_flux () const
 
decltype(auto) momentum_flux (const unsigned int component) const
 
decltype(auto) energy_flux () const
 

Private Member Functions

decltype(auto) get_value () const
 

Detailed Description

template<int dim, typename Derived>
struct MeltPoolDG::CompressibleFlow::FluxMixin< dim, Derived >

CRTP mixin providing semantic access to flux components of the state.

This mixin assumes that the derived class fulfills the HasIndexableValue concept and provides a value() member function returning an indexable tensor-like container storing the flux vector components in the layout defined by TensorStorageIndex<dim>:

\[ F = \left[ \text{density flux}, \text{momentum flux}_0, \dots, \text{momentum flux}_{dim-1}, \text{energy flux} \right]. \]

All member functions are thin inline wrappers around the underlying state. No additional data members are introduced and no quantities are cached. Every flux component is retrieved on demand from the derived class.

Member Typedef Documentation

◆ Idx

template<int dim, typename Derived >
using MeltPoolDG::CompressibleFlow::FluxMixin< dim, Derived >::Idx = ConservedVariableIndex<dim>

Member Function Documentation

◆ density_flux()

template<int dim, typename Derived >
decltype(auto) MeltPoolDG::CompressibleFlow::FluxMixin< dim, Derived >::density_flux ( ) const
inline

◆ energy_flux()

template<int dim, typename Derived >
decltype(auto) MeltPoolDG::CompressibleFlow::FluxMixin< dim, Derived >::energy_flux ( ) const
inline

◆ get_value()

template<int dim, typename Derived >
decltype(auto) MeltPoolDG::CompressibleFlow::FluxMixin< dim, Derived >::get_value ( ) const
inlineprivate

◆ momentum_flux()

template<int dim, typename Derived >
decltype(auto) MeltPoolDG::CompressibleFlow::FluxMixin< dim, Derived >::momentum_flux ( const unsigned int  component) const
inline

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