Blocked 3-D boundary condition solver for grids. More...
#include <Core/Solver/Grid/GridBlockedBoundaryConditionSolver3.h>
Public Member Functions | |
GridBlockedBoundaryConditionSolver3 () | |
Default constructor. More... | |
void | ConstrainVelocity (FaceCenteredGrid3 *velocity, unsigned int extrapolationDepth=5) override |
const Array3< char > & | GetMarker () const |
Returns the marker which is 1 if occupied by the collider. More... | |
Public Member Functions inherited from CubbyFlow::GridFractionalBoundaryConditionSolver3 | |
GridFractionalBoundaryConditionSolver3 () | |
Default constructor. More... | |
virtual | ~GridFractionalBoundaryConditionSolver3 () |
Default destructor. More... | |
void | ConstrainVelocity (FaceCenteredGrid3 *velocity, unsigned int extrapolationDepth=5) override |
ScalarField3Ptr | GetColliderSDF () const override |
Returns the signed distance field of the collider. More... | |
VectorField3Ptr | GetColliderVelocityField () const override |
Returns the velocity field of the collider. More... | |
Public Member Functions inherited from CubbyFlow::GridBoundaryConditionSolver3 | |
GridBoundaryConditionSolver3 () | |
Default constructor. More... | |
virtual | ~GridBoundaryConditionSolver3 () |
Default destructor. More... | |
const Collider3Ptr & | GetCollider () const |
Returns associated collider. More... | |
void | UpdateCollider (const Collider3Ptr &newCollider, const Size3 &gridSize, const Vector3D &gridSpacing, const Vector3D &gridOrigin) |
Applies new collider and build the internals. More... | |
int | GetClosedDomainBoundaryFlag () const |
Returns the closed domain boundary flag. More... | |
void | SetClosedDomainBoundaryFlag (int flag) |
Sets the closed domain boundary flag. More... | |
Protected Member Functions | |
void | OnColliderUpdated (const Size3 &gridSize, const Vector3D &gridSpacing, const Vector3D &gridOrigin) override |
Invoked when a new collider is set. More... | |
Protected Member Functions inherited from CubbyFlow::GridFractionalBoundaryConditionSolver3 | |
void | OnColliderUpdated (const Size3 &gridSize, const Vector3D &gridSpacing, const Vector3D &gridOrigin) override |
Invoked when a new collider is set. More... | |
Protected Member Functions inherited from CubbyFlow::GridBoundaryConditionSolver3 | |
const Size3 & | GetGridSize () const |
Returns the size of the velocity grid to be constrained. More... | |
const Vector3D & | GetGridSpacing () const |
Returns the spacing of the velocity grid to be constrained. More... | |
const Vector3D & | GetGridOrigin () const |
Returns the origin of the velocity grid to be constrained. More... | |
Detailed Description
Blocked 3-D boundary condition solver for grids.
This class constrains the velocity field by projecting the flow to the blocked representation of the collider. A collider is rasterized into voxels and each face of the collider voxels projects the velocity field onto its face. This implementation should pair up with GridSinglePhasePressureSolver3 since the pressure solver assumes blocked boundary representation as well.
Constructor & Destructor Documentation
◆ GridBlockedBoundaryConditionSolver3()
CubbyFlow::GridBlockedBoundaryConditionSolver3::GridBlockedBoundaryConditionSolver3 | ( | ) |
Default constructor.
Member Function Documentation
◆ ConstrainVelocity()
|
overridevirtual |
Constrains the velocity field to conform the collider boundary.
- Parameters
-
velocity Input and output velocity grid. extrapolationDepth Number of inner-collider grid cells that velocity will get extrapolated.
Implements CubbyFlow::GridBoundaryConditionSolver3.
◆ GetMarker()
const Array3<char>& CubbyFlow::GridBlockedBoundaryConditionSolver3::GetMarker | ( | ) | const |
Returns the marker which is 1 if occupied by the collider.
◆ OnColliderUpdated()
|
overrideprotectedvirtual |
Invoked when a new collider is set.
Implements CubbyFlow::GridBoundaryConditionSolver3.
The documentation for this class was generated from the following file:
- Core/Solver/Grid/GridBlockedBoundaryConditionSolver3.h