include/meltpooldg/compressible_flow/state_views_multi_species.hpp File Reference

Developer Documentation: include/meltpooldg/compressible_flow/state_views_multi_species.hpp File Reference
Developer Documentation
state_views_multi_species.hpp File Reference
Include dependency graph for state_views_multi_species.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  MeltPoolDG::CompressibleFlow::MultiSpeciesDofValueView< dim, n_species, StateType >
 
struct  MeltPoolDG::CompressibleFlow::MultiSpeciesDofStateView< dim, n_species, number, Value >
 
struct  MeltPoolDG::CompressibleFlow::MultiSpeciesDofValueAndGradientStateView< dim, n_species, number, Value, Gradient >
 
struct  MeltPoolDG::CompressibleFlow::MultiSpeciesFluxView< dim, n_species, FluxTypeIn >
 

Namespaces

namespace  MeltPoolDG
 Interface for a general preconditioner.
 
namespace  MeltPoolDG::CompressibleFlow
 This file contains various functions that can be used to set and evaluate boundary conditions for the compressible flow solver. The functions can be directly used with the BoundaryConditions class, which provides an interface to manage and evaluate the different boundary conditions in the solver.
 

Detailed Description

This file provides a collection of view types for the multi-component compressible Navier–Stokes solver. The views offer convenient and semantically meaningful access to:

  • Conserved variables,
  • Their gradients,
  • Derived primitive and thermodynamic quantities, and
  • Associated convective and diffusive fluxes.

The views are implemented as CRTP mixins, allowing flexible composition and extension for different solver components while avoiding runtime overhead.

In addition to direct access to conserved quantities, the views integrate the evaluation of primitive variables and thermodynamic properties via a provided equation of state. If desired, they also expose material properties such as dynamic viscosity and thermal conductivity by taking the mass fraction averaged by the different species.

The overall design goal is to provide a clear and expressive interface for flux computations and related operations, while fully abstracting the underlying data layout and storage details.

Constness semantics

The views provided here follow the philosophy that view constness does not imply data constness. A const-qualified view prevents modification of the view object itself, but not necessarily of the referenced data. Data mutability is determined solely by the template parameter:

  • View<T> and const View<T> allow modification of the underlying data,
  • View<const T> provides read-only access to the underlying data.