MultiSpeciesDofValueAndGradientStateView< dim, n_species, number, Value, Gradient > Struct Template Reference

Developer Documentation: MeltPoolDG::CompressibleFlow::MultiSpeciesDofValueAndGradientStateView< dim, n_species, number, Value, Gradient > Struct Template Reference
Developer Documentation
MeltPoolDG::CompressibleFlow::MultiSpeciesDofValueAndGradientStateView< dim, n_species, number, Value, Gradient > Struct Template Reference

#include <state_views_multi_species.hpp>

Inheritance diagram for MeltPoolDG::CompressibleFlow::MultiSpeciesDofValueAndGradientStateView< dim, n_species, number, Value, Gradient >:
[legend]
Collaboration diagram for MeltPoolDG::CompressibleFlow::MultiSpeciesDofValueAndGradientStateView< dim, n_species, number, Value, Gradient >:
[legend]

Public Types

using state_type = std::remove_cvref_t< Value >
 
using gradient_type = std::remove_cvref_t< Gradient >
 
- Public Types inherited from MeltPoolDG::CompressibleFlow::DofValueMixin< dim, Value::value_type, MultiSpeciesDofValueAndGradientStateView< dim, n_species, number, Value, Gradient > >
using Idx = ConservedVariableIndex< dim >
 
- Public Types inherited from MeltPoolDG::CompressibleFlow::DofGradientMixin< dim, Gradient::value_type::value_type, MultiSpeciesDofValueAndGradientStateView< dim, n_species, number, Value, Gradient > >
using Idx = ConservedVariableIndex< dim >
 
- Public Types inherited from MeltPoolDG::SpeciesTransport::DofValueMixin< n_conserved_variables< dim >, n_species, Value, MultiSpeciesDofValueAndGradientStateView< dim, n_species, number, Value, Gradient > >
using value_type = std::conditional_t< std::is_const_v< std::remove_reference_t< Value > >, std::add_const_t< typename ValueType::value_type >, typename ValueType::value_type >
 
- Public Types inherited from MeltPoolDG::SpeciesTransport::GradientValueMixin< n_conserved_variables< dim >, n_species, Value, Gradient, MultiSpeciesDofValueAndGradientStateView< dim, n_species, number, Value, Gradient > >
using value_type = std::conditional_t< std::is_const_v< std::remove_reference_t< Value > >, std::add_const_t< typename ValueType::value_type >, typename ValueType::value_type >
 
using gradient_type = std::conditional_t< std::is_const_v< std::remove_reference_t< Gradient > >, std::add_const_t< typename GradientType::value_type >, typename GradientType::value_type >
 
- Public Types inherited from MeltPoolDG::SpeciesTransport::DerivedPartialValueMixin< n_species, Value, MultiSpeciesDofValueAndGradientStateView< dim, n_species, number, Value, Gradient > >
using value_type = std::conditional_t< std::is_const_v< std::remove_reference_t< Value > >, std::add_const_t< typename ValueType::value_type >, typename ValueType::value_type >
 

Public Member Functions

 MultiSpeciesDofValueAndGradientStateView (Value &value_state, Gradient &gradient_state, const MaterialPhaseData< number > &material_data)
 
Value & value () const
 
Gradient & gradient_value () const
 
EquationOfState eos_type () const
 
const MaterialPhaseData< number > & material () const
 
- Public Member Functions inherited from MeltPoolDG::CompressibleFlow::DofValueMixin< dim, Value::value_type, MultiSpeciesDofValueAndGradientStateView< dim, n_species, number, Value, Gradient > >
decltype(auto) density () const
 
decltype(auto) momentum (const unsigned int component) const
 
decltype(auto) momentum () const
 
decltype(auto) velocity (const unsigned int component) const
 
dealii::Tensor< 1, dim, ValueType > velocity () const
 
decltype(auto) total_energy () const
 
decltype(auto) specific_total_energy () const
 
- Public Member Functions inherited from MeltPoolDG::CompressibleFlow::DofGradientMixin< dim, Gradient::value_type::value_type, MultiSpeciesDofValueAndGradientStateView< dim, n_species, number, Value, Gradient > >
decltype(auto) grad_density () const
 
decltype(auto) grad_momentum (const unsigned int component) const
 
decltype(auto) grad_momentum () const
 
decltype(auto) grad_velocity (const unsigned int component, const ValueType &density, const ValueType &velocity_component) const
 
decltype(auto) grad_velocity () const
 
decltype(auto) grad_total_energy () const
 
decltype(auto) grad_specific_total_energy (const ValueType &density, const ValueType &specific_total_energy) const
 
- Public Member Functions inherited from MeltPoolDG::SpeciesTransport::DofValueMixin< n_conserved_variables< dim >, n_species, Value, MultiSpeciesDofValueAndGradientStateView< dim, n_species, number, Value, Gradient > >
ValueType::value_type mass_fraction (const unsigned species_component) const
 
value_typepartial_density (const unsigned species_component) const
 
- Public Member Functions inherited from MeltPoolDG::SpeciesTransport::GradientValueMixin< n_conserved_variables< dim >, n_species, Value, Gradient, MultiSpeciesDofValueAndGradientStateView< dim, n_species, number, Value, Gradient > >
gradient_typegrad_partial_density (const unsigned species_component) const
 
GradientType::value_type grad_mass_fraction (const unsigned species_component) const
 
- Public Member Functions inherited from MeltPoolDG::Flow::EOSValueMixin< dim, Value::value_type, MultiSpeciesDofValueAndGradientStateView< dim, n_species, number, Value, Gradient > >
decltype(auto) pressure () const
 
decltype(auto) temperature () const
 
decltype(auto) speed_of_sound () const
 
decltype(auto) inner_energy_from_pressure (const ValueType &pressure) const
 
decltype(auto) specific_inner_energy () const
 
- Public Member Functions inherited from MeltPoolDG::Flow::EOSGradientMixin< dim, MultiSpeciesDofValueAndGradientStateView< dim, n_species, number, Value, Gradient > >
decltype(auto) grad_temperature () const
 
- Public Member Functions inherited from MeltPoolDG::CompressibleFlow::MultiSpeciesMaterialMixin< n_species, number, Value::value_type, MultiSpeciesDofValueAndGradientStateView< dim, n_species, number, Value, Gradient > >
Value::value_type dynamic_viscosity () const
 
number dynamic_viscosity (const unsigned species_component) const
 
Value::value_type thermal_conductivity () const
 
number thermal_conductivity (const unsigned species_component) const
 
Value::value_type heat_capacity_ratio () const
 
number heat_capacity_ratio (const unsigned species_component) const
 
Value::value_type specific_gas_constant () const
 
number specific_gas_constant (const unsigned species_component) const
 
Value::value_type specific_isobaric_heat () const
 
number specific_isobaric_heat (const unsigned species_component) const
 
number binary_diffusion_coefficient (const unsigned component_i, const unsigned component_j) const
 
Value::value_type molar_mass () const
 
Value::value_type molar_mass (const unsigned species_component) const
 
- Public Member Functions inherited from MeltPoolDG::SpeciesTransport::EffectiveMaterialMixin< n_species, number, ValueType, Derived >
ValueType mole_fraction (const unsigned species_component) const
 
ValueType mixture_averaged_diffusion_coefficient (const unsigned int species_component) const
 
template<typename ContainerType , typename SpeciesMaterial >
requires requires(int i) { { std::declval<const Derived>().mass_fraction(i) } -> std::convertible_to<ValueType>; }
ValueType effective_material_property (const ContainerType &species_material, number SpeciesMaterial::*property) const
 
- Public Member Functions inherited from MeltPoolDG::SpeciesTransport::DerivedPartialValueMixin< n_species, Value, MultiSpeciesDofValueAndGradientStateView< dim, n_species, number, Value, Gradient > >
ValueType::value_type partial_pressure (const unsigned species_component) const
 
ValueType::value_type partial_inner_energy (const unsigned species_component) const
 

Static Public Attributes

static constexpr std::array< EquationOfState, 1 > supported_eos = {{EquationOfState::ideal_gas}}
 

Private Attributes

Value * flow_state
 
Gradient * flow_gradient_state
 
const MaterialPhaseData< number > & material_data
 

Additional Inherited Members

- Public Attributes inherited from MeltPoolDG::SpeciesTransport::DofValueMixin< n_conserved_variables< dim >, n_species, Value, MultiSpeciesDofValueAndGradientStateView< dim, n_species, number, Value, Gradient > >
std::optional< typename ValueType::value_type > mass_fraction
 
std::optional< typename ValueType::value_type > partial_density
 
- Public Attributes inherited from MeltPoolDG::SpeciesTransport::GradientValueMixin< n_conserved_variables< dim >, n_species, Value, Gradient, MultiSpeciesDofValueAndGradientStateView< dim, n_species, number, Value, Gradient > >
std::optional< typename GradientType::value_type > mass_fraction
 
std::optional< typename GradientType::value_type > partial_density
 

Detailed Description

template<int dim, int n_species, typename number, IsConservedStateCompatible< dim > Value, IsConservedGradientCompatible< dim > Gradient>
struct MeltPoolDG::CompressibleFlow::MultiSpeciesDofValueAndGradientStateView< dim, n_species, number, Value, Gradient >

View providing access to the conserved variables and their gradients including partial densities stored in the underlying data structure. Besides direct access to the conserved variables, it enables computation of primitive variables, thermodynamic quantities, and material properties via the provided EOS and material data.

The underlying StateType must store the conserved variables in a tensor-like container indexed according to TensorStorageIndex<dim> and higher indices must represent the partial densities.

Template Parameters
n_speciesNumber of species.
StateTypeType of the data structure storing the conserved variables.
ValueStateType of the data structure storing the conserved variables.
GradientStateType of the data structure storing the gradients of conserved variables.

Member Typedef Documentation

◆ gradient_type

template<int dim, int n_species, typename number , IsConservedStateCompatible< dim > Value, IsConservedGradientCompatible< dim > Gradient>
using MeltPoolDG::CompressibleFlow::MultiSpeciesDofValueAndGradientStateView< dim, n_species, number, Value, Gradient >::gradient_type = std::remove_cvref_t<Gradient>

◆ state_type

template<int dim, int n_species, typename number , IsConservedStateCompatible< dim > Value, IsConservedGradientCompatible< dim > Gradient>
using MeltPoolDG::CompressibleFlow::MultiSpeciesDofValueAndGradientStateView< dim, n_species, number, Value, Gradient >::state_type = std::remove_cvref_t<Value>

Constructor & Destructor Documentation

◆ MultiSpeciesDofValueAndGradientStateView()

template<int dim, int n_species, typename number , IsConservedStateCompatible< dim > Value, IsConservedGradientCompatible< dim > Gradient>
MeltPoolDG::CompressibleFlow::MultiSpeciesDofValueAndGradientStateView< dim, n_species, number, Value, Gradient >::MultiSpeciesDofValueAndGradientStateView ( Value &  value_state,
Gradient &  gradient_state,
const MaterialPhaseData< number > &  material_data 
)
inline

Member Function Documentation

◆ eos_type()

template<int dim, int n_species, typename number , IsConservedStateCompatible< dim > Value, IsConservedGradientCompatible< dim > Gradient>
EquationOfState MeltPoolDG::CompressibleFlow::MultiSpeciesDofValueAndGradientStateView< dim, n_species, number, Value, Gradient >::eos_type ( ) const
inline

◆ gradient_value()

template<int dim, int n_species, typename number , IsConservedStateCompatible< dim > Value, IsConservedGradientCompatible< dim > Gradient>
Gradient & MeltPoolDG::CompressibleFlow::MultiSpeciesDofValueAndGradientStateView< dim, n_species, number, Value, Gradient >::gradient_value ( ) const
inline

◆ material()

template<int dim, int n_species, typename number , IsConservedStateCompatible< dim > Value, IsConservedGradientCompatible< dim > Gradient>
const MaterialPhaseData< number > & MeltPoolDG::CompressibleFlow::MultiSpeciesDofValueAndGradientStateView< dim, n_species, number, Value, Gradient >::material ( ) const
inline

◆ value()

template<int dim, int n_species, typename number , IsConservedStateCompatible< dim > Value, IsConservedGradientCompatible< dim > Gradient>
Value & MeltPoolDG::CompressibleFlow::MultiSpeciesDofValueAndGradientStateView< dim, n_species, number, Value, Gradient >::value ( ) const
inline

Member Data Documentation

◆ flow_gradient_state

template<int dim, int n_species, typename number , IsConservedStateCompatible< dim > Value, IsConservedGradientCompatible< dim > Gradient>
Gradient* MeltPoolDG::CompressibleFlow::MultiSpeciesDofValueAndGradientStateView< dim, n_species, number, Value, Gradient >::flow_gradient_state
private

◆ flow_state

template<int dim, int n_species, typename number , IsConservedStateCompatible< dim > Value, IsConservedGradientCompatible< dim > Gradient>
Value* MeltPoolDG::CompressibleFlow::MultiSpeciesDofValueAndGradientStateView< dim, n_species, number, Value, Gradient >::flow_state
private

◆ material_data

template<int dim, int n_species, typename number , IsConservedStateCompatible< dim > Value, IsConservedGradientCompatible< dim > Gradient>
const MaterialPhaseData<number>& MeltPoolDG::CompressibleFlow::MultiSpeciesDofValueAndGradientStateView< dim, n_species, number, Value, Gradient >::material_data
private

◆ supported_eos

template<int dim, int n_species, typename number , IsConservedStateCompatible< dim > Value, IsConservedGradientCompatible< dim > Gradient>
constexpr std::array<EquationOfState, 1> MeltPoolDG::CompressibleFlow::MultiSpeciesDofValueAndGradientStateView< dim, n_species, number, Value, Gradient >::supported_eos = {{EquationOfState::ideal_gas}}
staticconstexpr

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