DofPrimitiveValueMixin< dim, ValueType, Derived > Struct Template Reference

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

#include <state_views_mixins.hpp>

Public Types

using Idx = PrimitiveVariableIndex< dim >
 

Public Member Functions

decltype(auto) pressure () const
 
decltype(auto) velocity (const unsigned int component) const
 
auto velocity () const
 
decltype(auto) temperature () const
 

Private Member Functions

decltype(auto) value () const
 

Detailed Description

template<int dim, ArithmeticType ValueType, typename Derived>
struct MeltPoolDG::CompressibleFlow::DofPrimitiveValueMixin< dim, ValueType, Derived >

CRTP mixin providing semantic access to primitive variables.

This mixin assumes that the derived class exposes:

auto value();

returning a tensor-like container indexed according to TensorStorageIndex<dim>.

It provides direct access to primitive variables (pressure, velocity, temperature).

All accessors are thin inline wrappers around the underlying storage. No additional data members are introduced and no quantities are cached.

Template Parameters
ValueTypeType of a single value in the underlying storage container obtained when using [] on value() of the derived class.

Member Typedef Documentation

◆ Idx

template<int dim, ArithmeticType ValueType, typename Derived >
using MeltPoolDG::CompressibleFlow::DofPrimitiveValueMixin< dim, ValueType, Derived >::Idx = PrimitiveVariableIndex<dim>

Member Function Documentation

◆ pressure()

template<int dim, ArithmeticType ValueType, typename Derived >
decltype(auto) MeltPoolDG::CompressibleFlow::DofPrimitiveValueMixin< dim, ValueType, Derived >::pressure ( ) const
inline

◆ temperature()

template<int dim, ArithmeticType ValueType, typename Derived >
decltype(auto) MeltPoolDG::CompressibleFlow::DofPrimitiveValueMixin< dim, ValueType, Derived >::temperature ( ) const
inline

◆ value()

template<int dim, ArithmeticType ValueType, typename Derived >
decltype(auto) MeltPoolDG::CompressibleFlow::DofPrimitiveValueMixin< dim, ValueType, Derived >::value ( ) const
inlineprivate

◆ velocity() [1/2]

template<int dim, ArithmeticType ValueType, typename Derived >
auto MeltPoolDG::CompressibleFlow::DofPrimitiveValueMixin< dim, ValueType, Derived >::velocity ( ) const
inline

◆ velocity() [2/2]

template<int dim, ArithmeticType ValueType, typename Derived >
decltype(auto) MeltPoolDG::CompressibleFlow::DofPrimitiveValueMixin< dim, ValueType, Derived >::velocity ( const unsigned int  component) const
inline

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