CubbyFlow::LevelSetSolver3 Class Referenceabstract

Abstract base class for 3-D level set solver. More...

#include <Core/Solver/LevelSet/LevelSetSolver3.hpp>

Inheritance diagram for CubbyFlow::LevelSetSolver3:
CubbyFlow::FMMLevelSetSolver3 CubbyFlow::IterativeLevelSetSolver3 CubbyFlow::ENOLevelSetSolver3 CubbyFlow::UpwindLevelSetSolver3

Public Member Functions

 LevelSetSolver3 ()=default
 Default constructor. More...
 
 LevelSetSolver3 (const LevelSetSolver3 &)=delete
 Deleted copy constructor. More...
 
 LevelSetSolver3 (LevelSetSolver3 &&) noexcept=delete
 Deleted move constructor. More...
 
virtual ~LevelSetSolver3 ()=default
 Default virtual destructor. More...
 
LevelSetSolver3operator= (const LevelSetSolver3 &)=delete
 Deleted copy assignment operator. More...
 
LevelSetSolver3operator= (LevelSetSolver3 &&) noexcept=delete
 Deleted move assignment operator. More...
 
virtual void Reinitialize (const ScalarGrid3 &inputSDF, double maxDistance, ScalarGrid3 *outputSDF)=0
 
virtual void Extrapolate (const ScalarGrid3 &input, const ScalarField3 &sdf, double maxDistance, ScalarGrid3 *output)=0
 
virtual void Extrapolate (const CollocatedVectorGrid3 &input, const ScalarField3 &sdf, double maxDistance, CollocatedVectorGrid3 *output)=0
 
virtual void Extrapolate (const FaceCenteredGrid3 &input, const ScalarField3 &sdf, double maxDistance, FaceCenteredGrid3 *output)=0
 

Detailed Description

Abstract base class for 3-D level set solver.

Constructor & Destructor Documentation

◆ LevelSetSolver3() [1/3]

CubbyFlow::LevelSetSolver3::LevelSetSolver3 ( )
default

Default constructor.

◆ LevelSetSolver3() [2/3]

CubbyFlow::LevelSetSolver3::LevelSetSolver3 ( const LevelSetSolver3 )
delete

Deleted copy constructor.

◆ LevelSetSolver3() [3/3]

CubbyFlow::LevelSetSolver3::LevelSetSolver3 ( LevelSetSolver3 &&  )
deletenoexcept

Deleted move constructor.

◆ ~LevelSetSolver3()

virtual CubbyFlow::LevelSetSolver3::~LevelSetSolver3 ( )
virtualdefault

Default virtual destructor.

Member Function Documentation

◆ Extrapolate() [1/3]

virtual void CubbyFlow::LevelSetSolver3::Extrapolate ( const ScalarGrid3 input,
const ScalarField3 sdf,
double  maxDistance,
ScalarGrid3 output 
)
pure virtual

Extrapolates given scalar field from negative to positive SDF region.

Parameters
inputInput scalar field to be extrapolated.
sdfReference signed-distance field.
maxDistanceMax range of extrapolation.
outputOutput scalar field.

Implemented in CubbyFlow::IterativeLevelSetSolver3, and CubbyFlow::FMMLevelSetSolver3.

◆ Extrapolate() [2/3]

virtual void CubbyFlow::LevelSetSolver3::Extrapolate ( const CollocatedVectorGrid3 input,
const ScalarField3 sdf,
double  maxDistance,
CollocatedVectorGrid3 output 
)
pure virtual

Extrapolates given collocated vector field from negative to positive SDF region.

Parameters
inputInput collocated vector field to be extrapolated.
sdfReference signed-distance field.
maxDistanceMax range of extrapolation.
outputOutput collocated vector field.

Implemented in CubbyFlow::IterativeLevelSetSolver3, and CubbyFlow::FMMLevelSetSolver3.

◆ Extrapolate() [3/3]

virtual void CubbyFlow::LevelSetSolver3::Extrapolate ( const FaceCenteredGrid3 input,
const ScalarField3 sdf,
double  maxDistance,
FaceCenteredGrid3 output 
)
pure virtual

Extrapolates given face-centered vector field from negative to positive SDF region.

Parameters
inputInput face-centered field to be extrapolated.
sdfReference signed-distance field.
maxDistanceMax range of extrapolation.
outputOutput face-centered vector field.

Implemented in CubbyFlow::IterativeLevelSetSolver3, and CubbyFlow::FMMLevelSetSolver3.

◆ operator=() [1/2]

LevelSetSolver3& CubbyFlow::LevelSetSolver3::operator= ( const LevelSetSolver3 )
delete

Deleted copy assignment operator.

◆ operator=() [2/2]

LevelSetSolver3& CubbyFlow::LevelSetSolver3::operator= ( LevelSetSolver3 &&  )
deletenoexcept

Deleted move assignment operator.

◆ Reinitialize()

virtual void CubbyFlow::LevelSetSolver3::Reinitialize ( const ScalarGrid3 inputSDF,
double  maxDistance,
ScalarGrid3 outputSDF 
)
pure virtual

Reinitializes given scalar field to signed-distance field.

Parameters
inputSDFInput signed-distance field which can be distorted.
maxDistanceMax range of reinitialization.
outputSDFOutput signed-distance field.

Implemented in CubbyFlow::IterativeLevelSetSolver3, and CubbyFlow::FMMLevelSetSolver3.


The documentation for this class was generated from the following file: