BrinkmanPenalizationJacobianContribution< dim, number, ObstacleType > Struct Template Reference
|
Developer Documentation
|
#include <brinkman_penalization.hpp>
Public Types | |
| using | ConservedVariablesType = CompressibleFlow::ConservedVariablesType< dim, number > |
Public Member Functions | |
| BrinkmanPenalizationJacobianContribution (const BrinkmanPenalizationData< number > &brinkman_penalization_data, const std::shared_ptr< MatrixFreeCellBatchParticleCache< dim, number, ObstacleType > > &cell_cache) | |
| ConservedVariablesType | value (number time_step_size, unsigned int cell_batch_id, const dealii::Point< dim, dealii::VectorizedArray< number > > &q_point, const ConservedVariablesType &w_q, const ConservedVariablesType &delta_w_q) override |
Public Member Functions inherited from MeltPoolDG::CompressibleFlow::ExternalFlowForceJacobian< dim, number, n_species > | |
| virtual | ~ExternalFlowForceJacobian ()=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, const ConservedVariablesType< dim, number, n_species > &delta_w)=0 |
Private Attributes | |
| const BrinkmanPenalizationData< number > | brinkman_penalization_data |
| Brinkman penalization data. | |
| const std::shared_ptr< MatrixFreeCellBatchParticleCache< dim, number, ObstacleType > > | cell_cache |
| Cached cell data for computing Brinkman penalty term. | |
Detailed Description
struct MeltPoolDG::BrinkmanPenalizationJacobianContribution< dim, number, ObstacleType >
Implementation of the Brinkman penalization force Jacobian for compressible flows.
The penalization force is computed as
\[ f^{vp}_\rho &= 0,\\ f^{vp}_\bm{m} &= \frac{\xi}{\eta} \left(\rho_f \mathbf{u}_s - \mathbf{m}_f \right), \\ f^{vp}_e &= \frac{\xi}{\eta} \left(\rho_f \mathbf{u}_s - \mathbf{m}_f \right)\frac{m_j}{\rho}, \\ \]
where:
- \(\xi\) is the mask function,
- \(\eta\) is the permeability,
- \(\rho_f\) is the local fluid density,
- \(\mathbf{u}_s\) is the local obstacle velocity,
- \(\mathbf{m}_f\) is the current fluid momentum.
Member Typedef Documentation
◆ ConservedVariablesType
| using MeltPoolDG::BrinkmanPenalizationJacobianContribution< dim, number, ObstacleType >::ConservedVariablesType = CompressibleFlow::ConservedVariablesType<dim, number> |
Constructor & Destructor Documentation
◆ BrinkmanPenalizationJacobianContribution()
| MeltPoolDG::BrinkmanPenalizationJacobianContribution< dim, number, ObstacleType >::BrinkmanPenalizationJacobianContribution | ( | const BrinkmanPenalizationData< number > & | brinkman_penalization_data, |
| const std::shared_ptr< MatrixFreeCellBatchParticleCache< dim, number, ObstacleType > > & | cell_cache | ||
| ) |
Constructor that stores relevant data internally and uses the default mask function for the penalty term computation. The default mask function returns 1 for points inside the obstacle volume and 0 outside.
- Parameters
-
brinkman_penalization_data Data required for computing the Brinkman penalization term. cell_cache Cache for retrieving the particles relevant to each cell batch.
Member Function Documentation
◆ value()
|
override |
This function evaluates the Jacobian of the Brinkman penalty term at a set of vectorized points, typically quadrature points. Since successive calls often operate on the same set of cells, the function internally caches the obstacles relevant to the provided cells. The cache is updated automatically if the cell set differs from that used in the previous call.
- Parameters
-
time_step_size Current time step size. cell_batch_id ID of the cell batch for which to compute the Jacobian contribution. q_point Coordinates at which the penalty term is to be evaluated. w_q Conserved variables evaluated at the given coordinates. delta_w_q Change in conserved variables at the given coordinates.
- Returns
- The computed Brinkman penalty term at the specified points.
Member Data Documentation
◆ brinkman_penalization_data
|
private |
Brinkman penalization data.
◆ cell_cache
|
private |
Cached cell data for computing Brinkman penalty term.
The documentation for this struct was generated from the following files:
- include/meltpooldg/fluid_structure_interaction/brinkman_penalization.hpp
- source/fluid_structure_interaction/brinkman_penalization.cpp
Generated by
Public Member Functions inherited from