StokesLawFluidForce< dim, number, ObstacleType > Struct Template Reference
|
Developer Documentation
|
#include <stokes_law.hpp>
Public Types | |
| using | ConservedVariablesType = CompressibleFlow::ConservedVariablesType< dim, number > |
| using | VectorType = dealii::LinearAlgebra::distributed::Vector< number > |
Public Member Functions | |
| StokesLawFluidForce (const VectorType &solution, ObstacleField< dim, number, ObstacleType > &obstacle_handler, const MatrixFreeContext< dim, number > &matrix_free, const number dynamic_viscosity) | |
| ConservedVariablesType | value (number time_step_size, unsigned int cell_batch_id, const dealii::Point< dim, dealii::VectorizedArray< number > > &q_point, const ConservedVariablesType &w_q) override |
Public Member Functions inherited from MeltPoolDG::CompressibleFlow::ExternalFlowForce< dim, number, n_species > | |
| virtual | ~ExternalFlowForce ()=default |
| virtual ConservedVariablesType< dim, number, n_species > | value (number time_step_size, unsigned int cell_batch_id, const dealii::Point< dim, dealii::VectorizedArray< number > > &points, const ConservedVariablesType< dim, number, n_species > &w)=0 |
Private Attributes | |
| const VectorType & | solution |
| Solution of the flow field. | |
| const number | dynamic_viscosity |
| Dynamic viscosity of the fluid. | |
| const MatrixFreeContext< dim, number > | matrix_free |
| ObstacleField< dim, number, ObstacleType > & | obstacle_handler |
| Reference to the obstacle handler managing obstacles in the domain. | |
Detailed Description
struct MeltPoolDG::StokesLawFluidForce< dim, number, ObstacleType >
This class applies a penalty force to the fluid equations to account for the presence of particles. The penalty term is derived from Stokes' law and effectively introduces the Stokes drag as a forcing term within the fluid momentum equations.
The approach follows the method proposed by Chen et al. (https://doi.org/10.1016/j.actamat.2020.06.033) in the context of vapor–particle interactions during metal additive manufacturing.
Member Typedef Documentation
◆ ConservedVariablesType
| using MeltPoolDG::StokesLawFluidForce< dim, number, ObstacleType >::ConservedVariablesType = CompressibleFlow::ConservedVariablesType<dim, number> |
◆ VectorType
| using MeltPoolDG::StokesLawFluidForce< dim, number, ObstacleType >::VectorType = dealii::LinearAlgebra::distributed::Vector<number> |
Constructor & Destructor Documentation
◆ StokesLawFluidForce()
| MeltPoolDG::StokesLawFluidForce< dim, number, ObstacleType >::StokesLawFluidForce | ( | const VectorType & | solution, |
| ObstacleField< dim, number, ObstacleType > & | obstacle_handler, | ||
| const MatrixFreeContext< dim, number > & | matrix_free, | ||
| const number | dynamic_viscosity | ||
| ) |
Constructor that stores relevant data internally.
- Parameters
-
solution Reference to the solution of the flow field. obstacle_handler Reference to the obstacle handler managing obstacles in the domain. dynamic_viscosity Dynamic viscosity of the fluid.
Member Function Documentation
◆ value()
|
override |
This function computes the penalty term for the cells in the given cell batch. The method applied here restricts the penalty force to the cell that contains the corresponding particle center. Using Stokes' law, the hydrodynamic force on the particle and, by Newton’s third law, the equal and opposite force exerted on the fluid, is evaluated and incorporated as a penalty term in the fluid momentum equations.
- Parameters
-
time_step_size The current time-step size. cell_batch_id The ID of the cell batch for which to compute the penalty term. q_point Coordinates at which the penalty term is evaluated. w_q Conserved variables evaluated at the given coordinates.
- Returns
- The computed penalty term at the specified points.
Member Data Documentation
◆ dynamic_viscosity
|
private |
Dynamic viscosity of the fluid.
◆ matrix_free
|
private |
Data on the matrix free context associated with the compressible flow solver for which the penalty force is computed.
◆ obstacle_handler
|
private |
Reference to the obstacle handler managing obstacles in the domain.
◆ solution
|
private |
Solution of the flow field.
The documentation for this struct was generated from the following files:
- include/meltpooldg/fluid_structure_interaction/stokes_law.hpp
- source/fluid_structure_interaction/stokes_law.cpp
Generated by
Public Member Functions inherited from