CubbyFlow::LevelSetSolver2 Class Referenceabstract

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

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

Inheritance diagram for CubbyFlow::LevelSetSolver2:
CubbyFlow::FMMLevelSetSolver2 CubbyFlow::IterativeLevelSetSolver2 CubbyFlow::ENOLevelSetSolver2 CubbyFlow::UpwindLevelSetSolver2

Public Member Functions

 LevelSetSolver2 ()=default
 Default constructor. More...
 
 LevelSetSolver2 (const LevelSetSolver2 &)=delete
 Deleted copy constructor. More...
 
 LevelSetSolver2 (LevelSetSolver2 &&) noexcept=delete
 Deleted move constructor. More...
 
virtual ~LevelSetSolver2 ()=default
 Default virtual destructor. More...
 
LevelSetSolver2operator= (const LevelSetSolver2 &)=delete
 Deleted copy assignment operator. More...
 
LevelSetSolver2operator= (LevelSetSolver2 &&) noexcept=delete
 Deleted move assignment operator. More...
 
virtual void Reinitialize (const ScalarGrid2 &inputSDF, double maxDistance, ScalarGrid2 *outputSDF)=0
 
virtual void Extrapolate (const ScalarGrid2 &input, const ScalarField2 &sdf, double maxDistance, ScalarGrid2 *output)=0
 
virtual void Extrapolate (const CollocatedVectorGrid2 &input, const ScalarField2 &sdf, double maxDistance, CollocatedVectorGrid2 *output)=0
 
virtual void Extrapolate (const FaceCenteredGrid2 &input, const ScalarField2 &sdf, double maxDistance, FaceCenteredGrid2 *output)=0
 

Detailed Description

Abstract base class for 2-D level set solver.

Constructor & Destructor Documentation

◆ LevelSetSolver2() [1/3]

CubbyFlow::LevelSetSolver2::LevelSetSolver2 ( )
default

Default constructor.

◆ LevelSetSolver2() [2/3]

CubbyFlow::LevelSetSolver2::LevelSetSolver2 ( const LevelSetSolver2 )
delete

Deleted copy constructor.

◆ LevelSetSolver2() [3/3]

CubbyFlow::LevelSetSolver2::LevelSetSolver2 ( LevelSetSolver2 &&  )
deletenoexcept

Deleted move constructor.

◆ ~LevelSetSolver2()

virtual CubbyFlow::LevelSetSolver2::~LevelSetSolver2 ( )
virtualdefault

Default virtual destructor.

Member Function Documentation

◆ Extrapolate() [1/3]

virtual void CubbyFlow::LevelSetSolver2::Extrapolate ( const ScalarGrid2 input,
const ScalarField2 sdf,
double  maxDistance,
ScalarGrid2 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::IterativeLevelSetSolver2, and CubbyFlow::FMMLevelSetSolver2.

◆ Extrapolate() [2/3]

virtual void CubbyFlow::LevelSetSolver2::Extrapolate ( const CollocatedVectorGrid2 input,
const ScalarField2 sdf,
double  maxDistance,
CollocatedVectorGrid2 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::IterativeLevelSetSolver2, and CubbyFlow::FMMLevelSetSolver2.

◆ Extrapolate() [3/3]

virtual void CubbyFlow::LevelSetSolver2::Extrapolate ( const FaceCenteredGrid2 input,
const ScalarField2 sdf,
double  maxDistance,
FaceCenteredGrid2 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::IterativeLevelSetSolver2, and CubbyFlow::FMMLevelSetSolver2.

◆ operator=() [1/2]

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

Deleted copy assignment operator.

◆ operator=() [2/2]

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

Deleted move assignment operator.

◆ Reinitialize()

virtual void CubbyFlow::LevelSetSolver2::Reinitialize ( const ScalarGrid2 inputSDF,
double  maxDistance,
ScalarGrid2 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::IterativeLevelSetSolver2, and CubbyFlow::FMMLevelSetSolver2.


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