Public Member Functions | |
LevelSetComplementObject (int id, const LevelSetObject *source) | |
LevelSetComplementObject< LevelSetObject > * | clone () const override |
Public Member Functions inherited from bitpit::LevelSetComplementBaseObject< LevelSetObject > | |
bool | empty () const override |
const LevelSetObject * | getCellReferenceObject (long id) const override |
const LevelSetObject * | getReferenceObject (const std::array< double, 3 > &point) const override |
virtual const LevelSetObject * | getSourceObject () const |
std::vector< const LevelSetObject * > | getSourceObjects () const override |
Public Member Functions inherited from bitpit::LevelSetProxyObject< SourceLevelSetObject, BaseLevelSetObject > | |
int | getCellReferenceObjectId (long id) const override |
virtual const SourceLevelSetObject * | getCellReferencePrimaryObject (long id) const |
int | getCellReferencePrimaryObjectId (long id) const override |
int | getPrimaryObjectId (long) const |
std::vector< int > | getPrimarySourceObjectIds () const override |
virtual std::vector< const SourceLevelSetObject * > | getPrimarySourceObjects () const |
int | getReferenceObjectId (const std::array< double, 3 > &point) const override |
virtual const SourceLevelSetObject * | getReferencePrimaryObject (const std::array< double, 3 > &point) const |
int | getReferencePrimaryObjectId (const std::array< double, 3 > &point) const override |
std::vector< int > | getSourceObjectIds () const override |
bool | isCellInNarrowBand (long id) const override |
bool | isInNarrowBand (const std::array< double, 3 > &point) const override |
bool | isPrimary () const override |
Public Member Functions inherited from bitpit::LevelSetObject | |
virtual | ~LevelSetObject () |
BITPIT_DEPRECATED_FOR (double getValue(long cellId) const, double evalCellValue(long id, bool signedLevelSet) const) | |
BITPIT_DEPRECATED_FOR (short getSign(long cellId) const, short evalCellSign(long id) const) | |
BITPIT_DEPRECATED_FOR (std::array< double BITPIT_COMMA 3 > getGradient(long cellId) const, std::array< double BITPIT_COMMA 3 > evalCellGradient(long id, bool signedLevelSet) const) | |
std::array< double BITPIT_COMMA 3 > | computeProjectionPoint (const std::array< double, 3 > &point) const |
std::array< double BITPIT_COMMA 3 > | computeProjectionPoint (long cellId) const |
std::array< double BITPIT_COMMA 3 > | computeVertexProjectionPoint (long vertexId) const |
void | disableFieldCellCache (LevelSetField field) |
void | enableFieldCellCache (LevelSetField field, LevelSetCacheMode cacheMode) |
void | enableVTKOutput (const LevelSetFieldset &fieldset, bool enable=true) |
void | enableVTKOutput (const LevelSetFieldset &fieldset, const std::string &objectName, bool enable=true) |
void | enableVTKOutput (LevelSetField field, bool enable=true) |
void | enableVTKOutput (LevelSetField field, const std::string &objectName, bool enable=true) |
void | enableVTKOutput (LevelSetWriteField field, bool enable=true) |
void | enableVTKOutput (LevelSetWriteField fieldset, const std::string &objectName, bool enable=true) |
virtual std::array< double, 3 > | evalCellGradient (long id, bool signedLevelSet) const |
virtual std::array< double, 3 > | evalCellProjectionPoint (long id) const |
virtual short | evalCellSign (long id) const |
virtual double | evalCellValue (long id, bool signedLevelSet) const |
virtual std::array< double, 3 > | evalGradient (const std::array< double, 3 > &point, bool signedLevelSet) const |
virtual std::array< double, 3 > | evalProjectionPoint (const std::array< double, 3 > &point) const |
virtual short | evalSign (const std::array< double, 3 > &point) const |
virtual double | evalValue (const std::array< double, 3 > &point, bool signedLevelSet) const |
void | flushData (std::fstream &, const std::string &, VTKFormat) override |
LevelSetBulkEvaluationMode | getCellBulkEvaluationMode () const |
LevelSetCacheMode | getFieldCellCacheMode (LevelSetField field) const |
int | getId () const |
virtual const LevelSetKernel * | getKernel () const |
LevelSetInfo | getLevelSetInfo (long cellId) const |
double | getLS (long cellId) const |
double | getNarrowBandSize () const |
std::size_t | getReferenceCount () const |
double | getSizeNarrowBand () const |
virtual LevelSetFieldset | getSupportedFields () const |
LevelSetIntersectionStatus | intersectSurface (long, LevelSetIntersectionMode=LevelSetIntersectionMode::FAST_FUZZY) const |
void | setCellBulkEvaluationMode (LevelSetBulkEvaluationMode evaluationMode) |
void | update (const std::vector< adaption::Info > &adaptionData) |
Public Member Functions inherited from bitpit::VTKBaseStreamer | |
virtual void | absorbData (std::fstream &, const std::string &, VTKFormat, uint64_t, uint8_t, VTKDataType) |
template<typename T > | |
void | flushValue (std::fstream &, VTKFormat, const T &value) const |
template<typename T > | |
void | flushValue (std::fstream &, VTKFormat, const T *values, int nValues) const |
Additional Inherited Members | |
Public Types inherited from bitpit::LevelSetObject | |
typedef LevelSetCachedKernel::CellCacheCollection | CellCacheCollection |
Protected Types inherited from bitpit::LevelSetObject | |
template<typename data_t > | |
using | CellCacheEntry = typename CellCacheCollection::ValueCache<data_t>::Entry |
Protected Member Functions inherited from bitpit::LevelSetComplementBaseObject< LevelSetObject > | |
LevelSetComplementBaseObject (int id, const LevelSetObject *source) | |
std::array< double, 3 > | _evalCellGradient (long id, bool signedLevelSet) const override |
short | _evalCellSign (long id) const override |
double | _evalCellValue (long id, bool signedLevelSet) const override |
std::array< double, 3 > | _evalGradient (const std::array< double, 3 > &point, bool signedLevelSet) const override |
short | _evalSign (const std::array< double, 3 > &point) const override |
double | _evalValue (const std::array< double, 3 > &point, bool signedLevelSet) const override |
void | fillCellPropagatedSignCache () override |
void | replaceSourceObject (const LevelSetObject *current, const LevelSetObject *updated) override |
Protected Member Functions inherited from bitpit::LevelSetProxyObject< SourceLevelSetObject, BaseLevelSetObject > | |
LevelSetProxyObject (int) | |
void | fillCellLocationCache () override |
void | fillCellLocationCache (const std::vector< adaption::Info > &adaptionData) override |
Protected Member Functions inherited from bitpit::LevelSetObject | |
LevelSetObject (const LevelSetObject &other) | |
LevelSetObject (int) | |
LevelSetObject (LevelSetObject &&other) | |
virtual LevelSetIntersectionStatus | _intersectSurface (long, double distance, LevelSetIntersectionMode=LevelSetIntersectionMode::FAST_FUZZY) const |
void | adaptCellCaches (const std::vector< adaption::Info > &adaptionData) |
virtual void | addVTKOutputData (LevelSetField field, const std::string &objectName) |
void | clearCellCache (std::size_t cacheId, bool release) |
void | completeCellCacheExchange (const std::unordered_map< int, std::vector< long > > &sendCellIds, std::size_t cacheIds, DataCommunicator *) |
void | completeCellCachesExchange (const std::unordered_map< int, std::vector< long > > &sendCellIds, const std::vector< std::size_t > &cacheIds, DataCommunicator *) |
template<typename value_t > | |
std::size_t | createCellCache (LevelSetFillIn expectedFillIn, std::size_t cacheId=CellCacheCollection::NULL_CACHE_ID) |
virtual std::size_t | createCellLocationCache (std::size_t cacheId=CellCacheCollection::NULL_CACHE_ID) |
virtual std::size_t | createCellPropagatedSignCache (std::size_t cacheId=CellCacheCollection::NULL_CACHE_ID) |
virtual std::size_t | createFieldCellCache (LevelSetField field, std::size_t cacheId=CellCacheCollection::NULL_CACHE_ID) |
template<typename value_t > | |
std::size_t | createFieldCellCache (LevelSetField field, std::size_t cacheId=CellCacheCollection::NULL_CACHE_ID) |
void | destroyCellBulkData () |
void | destroyCellCache (std::size_t cacheId) |
void | destroyCellLocationCache () |
void | destroyCellNarrowBandData () |
void | destroyCellPropagatedSignCache () |
virtual void | destroyFieldCellCache (LevelSetField field) |
virtual void | dump (std::ostream &) |
std::vector< long > | evalCellCacheFillIds (LevelSetZone zone, LevelSetCacheMode cacheMode) const |
std::vector< long > | evalCellCacheFillIds (LevelSetZone zone, LevelSetCacheMode cacheMode, const std::vector< adaption::Info > &adaptionData) const |
std::vector< long > | evalCellCacheStaleIds (const std::vector< adaption::Info > &adaptionData) const |
template<typename value_t , typename evaluator_t , typename fallback_t > | |
value_t | evalCellField (LevelSetField field, long id, const evaluator_t &evaluator, const fallback_t &fallback) const |
template<typename value_t , typename evaluator_t , typename fallback_t > | |
value_t | evalCellFieldCached (LevelSetField field, long id, const evaluator_t &evaluator, const fallback_t &fallback) const |
std::vector< long > | evalCellFullCacheFillIds (LevelSetZone zone) const |
std::vector< long > | evalCellFullCacheFillIds (LevelSetZone zone, const std::vector< adaption::Info > &adaptionData) const |
std::vector< long > | evalCellNarrowBandCacheFillIds (LevelSetZone zone) const |
std::vector< long > | evalCellNarrowBandCacheFillIds (LevelSetZone zone, const std::vector< adaption::Info > &adaptionData) const |
std::vector< long > | evalCellOnDemandCacheFillIds (LevelSetZone zone) const |
std::vector< long > | evalCellOnDemandCacheFillIds (LevelSetZone zone, const std::vector< adaption::Info > &adaptionData) const |
void | evaluate () |
void | evaluateCellBulkData () |
void | evaluateCellNarrowBandData () |
short | evalValueSign (double value) const |
virtual LevelSetCellLocation | fillCellGeometricNarrowBandLocationCache (long id) |
void | fillFieldCellCache (LevelSetField field, const std::vector< long > &cellIds) |
virtual void | fillFieldCellCache (LevelSetField field, long id) |
template<typename value_t > | |
void | fillFieldCellCache (LevelSetField field, long id, const value_t &value) const |
void | fillFieldCellCaches (LevelSetZone zone, const std::vector< LevelSetField > &fields) |
void | fillFieldCellCaches (LevelSetZone zone, const std::vector< LevelSetField > &fields, const std::vector< adaption::Info > &adaptionData) |
virtual void | flushVTKOutputData (std::fstream &stream, VTKFormat format, LevelSetField field) const |
template<typename value_t , typename evaluator_t , typename fallback_t > | |
void | flushVTKOutputData (std::fstream &stream, VTKFormat format, LevelSetField field, const evaluator_t evluator, const fallback_t fallback) const |
template<typename value_t > | |
CellCacheCollection::ValueCache< value_t > * | getCellCache (std::size_t cacheId) const |
CellCacheCollection::Cache * | getCellCache (std::size_t cacheId) const |
LevelSetCellLocation | getCellLocation (long id) const |
LevelSetZone | getCellZone (long id) const |
template<typename value_t > | |
CellCacheCollection::ValueCache< value_t > * | getFieldCellCache (LevelSetField field) const |
CellCacheCollection::Cache * | getFieldCellCache (LevelSetField field) const |
std::size_t | getFieldCellCacheId (LevelSetField field) const |
virtual LevelSetKernel * | getKernel () |
std::string | getVTKOutputDataName (LevelSetField field, const std::string &objectName) const |
virtual std::string | getVTKOutputFieldName (LevelSetField field) const |
bool | hasVTKOutputData (LevelSetField field, const std::string &objectName) const |
void | pruneCellCache (std::size_t cacheId, const std::vector< long > &cellIds) |
void | removeVTKOutputData (LevelSetField field, const std::string &objectName) |
virtual void | restore (std::istream &) |
void | setDefaultLevelSetSigndness (bool signedLevelSet) |
virtual void | setKernel (LevelSetKernel *) |
void | setNarrowBandSize (double size) |
void | setSizeNarrowBand (double) |
void | startCellCacheExchange (const std::unordered_map< int, std::vector< long > > &recvCellIds, std::size_t cacheIds, DataCommunicator *) const |
void | startCellCachesExchange (const std::unordered_map< int, std::vector< long > > &recvCellIds, const std::vector< std::size_t > &cacheIds, DataCommunicator *) const |
void | update () |
void | updateCellBulkData (const std::vector< adaption::Info > &adaptionData) |
void | updateCellNarrowBandData (const std::vector< adaption::Info > &adaptionData) |
Protected Attributes inherited from bitpit::LevelSetObject | |
std::size_t | m_cellLocationCacheId |
Id of the cache that will keep track if cell zones. | |
std::size_t | m_cellPropagatedSignCacheId |
Id of the cache that will keep track if cell propagated sign. | |
bool | m_defaultSignedLevelSet |
LevelSetFieldMap< std::string > | m_enabledOutputFields |
LevelSetKernel * | m_kernel |
double | m_narrowBandSize |
Size of narrow band. | |
Static Protected Attributes inherited from bitpit::LevelSetObject | |
static const bool | CELL_CACHE_IS_SIGNED = false |
static const LevelSetIntersectionMode | CELL_LOCATION_INTERSECTION_MODE = LevelSetIntersectionMode::FAST_GUARANTEE_FALSE |
Definition at line 76 of file levelSetComplementObject.hpp.
bitpit::LevelSetComplementObject< LevelSetObject >::LevelSetComplementObject | ( | int | id, |
const LevelSetObject * | source ) |
Constructor.
[in] | id | identifier of object |
[in] | source | pointer to source object |
Definition at line 43 of file levelSetComplementObject.cpp.
|
overridevirtual |
Clones the object
Implements bitpit::LevelSetObject.
Definition at line 52 of file levelSetComplementObject.cpp.