ConvectiveKernels< dim, number > Struct Template Reference
|
Developer Documentation
|
Convective kernel operations for compressible flow solvers. More...
#include <convective_kernels.hpp>
Public Types | |
| using | ConservedVariables = ConservedVariablesType< dim, number > |
| using | ConservedVariablesGradient = ConservedVariablesGradientType< dim, number > |
Public Member Functions | |
| ConvectiveKernels (const OperationData< number > &flow_data, const Material< dim, number > &material) | |
| Constructor initializing the convective kernel with flow and material properties. | |
| DEAL_II_ALWAYS_INLINE ConservedVariablesGradient | calculate_convective_flux (const ConservedVariables &conserved_variables) const |
| Calculate the convective flux F_c. | |
| DEAL_II_ALWAYS_INLINE ConservedVariables | calculate_convective_numerical_flux (const ConservedVariables &u_m, const ConservedVariables &u_p, const dealii::Tensor< 1, dim, dealii::VectorizedArray< number > > &normal) const |
| Calculate the convective numerical flux F_c^*. | |
| DEAL_II_ALWAYS_INLINE ConservedVariablesGradient | calculate_jacobian_convective_numerical_flux (const std::pair< ConservedVariables, ConservedVariables > &w_q, const std::pair< ConservedVariables, ConservedVariables > &delta_w_q, const dealii::Tensor< 1, dim, dealii::VectorizedArray< number > > &normal) const |
| Compute the linearization of the convective numerical flux with respect to the primary variables. | |
| DEAL_II_ALWAYS_INLINE ConservedVariablesGradient | calculate_jacobian_convective_flux (const ConservedVariables &w_q, const ConservedVariables &delta_w_q) const |
| Compute the linearization of the convective flux with respect to the primary variables. | |
Private Member Functions | |
| ConservedVariablesGradient | calculate_jacobian_convective_numerical_flux_jump_term (const std::pair< ConservedVariables, ConservedVariables > &w_q, const std::pair< ConservedVariables, ConservedVariables > &delta_w_q, const dealii::Tensor< 1, dim, dealii::VectorizedArray< number > > &normal) const |
| Compute the jump term in the convective numerical flux. | |
Private Attributes | |
| const OperationData< number > & | flow_data |
| Flow-related parameters. | |
| const Material< dim, number > & | material |
| Material-related parameters. | |
| number | rs_div_c |
| precomputed constant | |
Detailed Description
struct MeltPoolDG::CompressibleFlow::ConvectiveKernels< dim, number >
Convective kernel operations for compressible flow solvers.
This struct implements the evaluation of convective fluxes and their linearizations for compressible flow governed by the Euler or Navier–Stokes equations. It supports flux evaluation on both volume cells and faces.
It also provides functionality to compute the Jacobian (linearized form) of these fluxes, which is required for implicit schemes.
Member Typedef Documentation
◆ ConservedVariables
| using MeltPoolDG::CompressibleFlow::ConvectiveKernels< dim, number >::ConservedVariables = ConservedVariablesType<dim, number> |
◆ ConservedVariablesGradient
| using MeltPoolDG::CompressibleFlow::ConvectiveKernels< dim, number >::ConservedVariablesGradient = ConservedVariablesGradientType<dim, number> |
Constructor & Destructor Documentation
◆ ConvectiveKernels()
|
explicit |
Constructor initializing the convective kernel with flow and material properties.
- Parameters
-
flow_data Reference to the flow data object containing simulation-specific parameters. material Reference to the material model providing thermodynamic properties.
Member Function Documentation
◆ calculate_convective_flux()
|
inline |
Calculate the convective flux F_c.
- Parameters
-
conserved_variables Current values of the conserved variables.
- Returns
- Convective flux.
◆ calculate_convective_numerical_flux()
|
inline |
Calculate the convective numerical flux F_c^*.
- Parameters
-
u_m Current values of the conserved variables on the inner face. u_p Current values of the conserved variables on the outer type. normal Outer facing normal vector.
- Returns
- Convective numerical flux.
◆ calculate_jacobian_convective_flux()
|
inline |
Compute the linearization of the convective flux with respect to the primary variables.
- Parameters
-
w_q Primary variables. delta_w_q Change in the primary variables.
- Returns
- Linearized convective flux.
◆ calculate_jacobian_convective_numerical_flux()
|
inline |
Compute the linearization of the convective numerical flux with respect to the primary variables.
- Parameters
-
w_q Primary variables on the inner (first) and outer (second) face. delta_w_q Change in the primary variables n the inner (first) and outer (second) face. normal Outer facing normal vector.
- Returns
- Linearized convective numerical flux.
◆ calculate_jacobian_convective_numerical_flux_jump_term()
|
inlineprivate |
Compute the jump term in the convective numerical flux.
For the used Lax-Friedrichs flux the jump term is given by lambda/2 times the jump in the primary variables.
- Parameters
-
w_q Primary variables on the inner (first) and outer (second) face. delta_w_q Change in the primary variables n the inner (first) and outer (second) face. normal Outer facing normal vector.
- Returns
- Jump term of the Lax-Friedrichs flux.
Member Data Documentation
◆ flow_data
|
private |
Flow-related parameters.
◆ material
|
private |
Material-related parameters.
◆ rs_div_c
|
private |
precomputed constant
The documentation for this struct was generated from the following file:
- include/meltpooldg/compressible_flow/convective_kernels.hpp
Generated by