![]() |
KratosMultiphysics
KRATOS Multiphysics (Kratos) is a framework for building parallel, multi-disciplinary simulation software, aiming at modularity, extensibility, and high performance. Kratos is written in C++, and counts with an extensive Python interface.
|
Short class definition. More...
#include <bins_dynamic_objects.h>
Public Member Functions | |
BinsObjectDynamic< TConfigure > & | operator= (const BinsObjectDynamic< TConfigure > &rOther) |
Assignment operator. More... | |
BinsObjectDynamic (const BinsObjectDynamic &rOther) | |
Copy constructor. More... | |
template<class T > | |
BinsObjectDynamic (const BinsObjectDynamic< T > &rOther) | |
Copy constructor. More... | |
Life Cycle | |
BinsObjectDynamic () | |
Default constructor. More... | |
BinsObjectDynamic (IteratorType const &ObjectsBegin, IteratorType const &ObjectsEnd) | |
Constructor de bins a bounding box. More... | |
BinsObjectDynamic (IteratorType const &ObjectsBegin, IteratorType const &ObjectsEnd, CoordinateType CellSize) | |
Constructs a new BinsObjectDynamic. More... | |
BinsObjectDynamic (const PointType &MinPoint, const PointType &MaxPoint, CoordinateType CellSize) | |
Constructs a new BinsObjectDynamic. More... | |
BinsObjectDynamic (const PointType &MinPoint, const PointType &MaxPoint, SizeType NumPoints) | |
Constructs a new BinsObjectDynamic object. More... | |
virtual | ~BinsObjectDynamic () |
Destructor. More... | |
SizeType | SearchObjects (PointerType &ThisObject, ResultContainerType &Result) |
Single search API. More... | |
SizeType | SearchObjects (PointerType &ThisObject, ResultIteratorType &Result, const SizeType &MaxNumberOfResults) |
SizeType | SearchObjectsInCell (const PointType &ThisPoint, ResultIteratorType Result) |
SizeType | SearchObjectsInCell (const PointType &ThisPoint, ResultIteratorType Result, const SizeType &MaxNumberOfResults) |
SizeType | SearchObjectsExclusive (PointerType &ThisObject, ResultIteratorType &Result) |
SizeType | SearchObjectsExclusive (PointerType &ThisObject, ResultIteratorType &Result, const SizeType &MaxNumberOfResults) |
SizeType | SearchObjectsInRadius (PointerType &ThisObject, const double &Radius, ResultIteratorType &Results) |
SizeType | SearchObjectsInRadius (PointerType &ThisObject, const double &Radius, ResultIteratorType &Results, const SizeType &MaxNumberOfResults) |
SizeType | SearchObjectsInRadius (PointerType &ThisObject, const double &Radius, ResultIteratorType &Results, DistanceIteratorType ResultDistances) |
SizeType | SearchObjectsInRadius (PointerType &ThisObject, const double &Radius, ResultIteratorType &Results, DistanceIteratorType ResultDistances, const SizeType &MaxNumberOfResults) |
virtual SizeType | SearchObjectsInRadiusExclusive (PointerType &ThisObject, const double &Radius, ResultIteratorType &Results) |
virtual SizeType | SearchObjectsInRadiusExclusive (PointerType &ThisObject, const double &Radius, ResultIteratorType &Results, const SizeType &MaxNumberOfResults) |
virtual SizeType | SearchObjectsInRadiusExclusive (PointerType &ThisObject, const double &Radius, ResultIteratorType &Results, DistanceIteratorType ResultDistances) |
virtual SizeType | SearchObjectsInRadiusExclusive (PointerType &ThisObject, const double &Radius, ResultIteratorType &Results, DistanceIteratorType ResultDistances, const SizeType &MaxNumberOfResults) |
void | SearchObjectsInRadius (IteratorType const &ThisObjects, SizeType const &NumberOfObjects, const std::vector< double > &Radius, std::vector< std::vector< PointerType > > &Results, std::vector< SizeType > &NumberOfResults, SizeType const &MaxNumberOfResults) |
Batch search API (needs to be extended with the missing functions) More... | |
void | SearchObjectsInRadius (IteratorType const &ThisObjects, SizeType const &NumberOfObjects, const std::vector< double > &Radius, std::vector< std::vector< PointerType > > &Results, std::vector< std::vector< double > > &ResultsDistances, std::vector< SizeType > &NumberOfResults, SizeType const &MaxNumberOfResults) |
virtual void | SearchObjectsInRadiusExclusive (IteratorType const &ThisObjects, SizeType const &NumberOfObjects, const std::vector< double > &Radius, std::vector< std::vector< PointerType > > &Results, std::vector< SizeType > &NumberOfResults, SizeType const &MaxNumberOfResults) |
virtual void | SearchObjectsInRadiusExclusive (IteratorType const &ThisObjects, SizeType const &NumberOfObjects, const std::vector< double > &Radius, std::vector< std::vector< PointerType > > &Results, std::vector< std::vector< double > > &ResultsDistances, std::vector< SizeType > &NumberOfResults, SizeType const &MaxNumberOfResults) |
virtual void | AddObject (const PointerType &ThisObject) |
Add/Remove. More... | |
void | RemoveObject (const PointerType &ThisObject) |
Operations | |
template<class GenericCoordType > | |
IndexArray | CalculateCell (const GenericCoordType &ThisObject) |
template<class GenericCoordType > | |
IndexType | CalculateIndex (const GenericCoordType &ThisObject) |
virtual IndexType | CalculatePosition (CoordinateType const &ThisCoord, const SizeType &ThisDimension) |
Access | |
CellContainerType & | GetCellContainer () |
Get the Cell Container object. More... | |
SizeArray & | GetDivisions () |
Get the Divisions object. More... | |
CoordinateArray & | GetCellSize () |
Get the Cell Size object. More... | |
PointType & | GetMinPoint () |
Get the Min Point object. More... | |
PointType & | GetMaxPoint () |
Get the Max Point object. More... | |
Input and output | |
virtual std::string | Info () const |
Turn back information as a string. More... | |
virtual void | PrintInfo (std::ostream &rOStream) const |
virtual void | PrintData (std::ostream &rOStream, std::string const &Perfix=std::string()) const |
void | PrintSize (std::ostream &rout) |
void | PrintBox (std::ostream &rout) |
Protected Attributes | |
Member Variables | |
PointType | mMinPoint |
PointType | mMaxPoint |
SizeType | mObjectsSize |
IteratorType | mObjectsBegin |
IteratorType | mObjectsEnd |
CoordinateArray | mCellSize |
CoordinateArray | mInvCellSize |
SizeArray | mN |
CellContainerType | mCells |
Short class definition.
Detail class definition.
typedef CellContainerType::iterator Kratos::BinsObjectDynamic< TConfigure >::CellContainerIterator |
typedef std::vector<CellType> Kratos::BinsObjectDynamic< TConfigure >::CellContainerType |
typedef Cell<Configure> Kratos::BinsObjectDynamic< TConfigure >::CellType |
typedef TConfigure Kratos::BinsObjectDynamic< TConfigure >::Configure |
typedef TConfigure::ContainerType Kratos::BinsObjectDynamic< TConfigure >::ContainerType |
typedef Tvector<CoordinateType,Dimension> Kratos::BinsObjectDynamic< TConfigure >::CoordinateArray |
typedef TreeNodeType::CoordinateType Kratos::BinsObjectDynamic< TConfigure >::CoordinateType |
typedef TConfigure::DistanceIteratorType Kratos::BinsObjectDynamic< TConfigure >::DistanceIteratorType |
typedef Tvector<IndexType,Dimension> Kratos::BinsObjectDynamic< TConfigure >::IndexArray |
typedef TreeNodeType::IndexType Kratos::BinsObjectDynamic< TConfigure >::IndexType |
typedef TreeNodeType::IteratorIteratorType Kratos::BinsObjectDynamic< TConfigure >::IteratorIteratorType |
typedef TreeNodeType LeafType;
typedef TConfigure::IteratorType Kratos::BinsObjectDynamic< TConfigure >::IteratorType |
typedef TConfigure::PointerType Kratos::BinsObjectDynamic< TConfigure >::PointerType |
typedef TConfigure::PointType Kratos::BinsObjectDynamic< TConfigure >::PointType |
typedef TConfigure::ResultContainerType Kratos::BinsObjectDynamic< TConfigure >::ResultContainerType |
typedef TConfigure::ResultIteratorType Kratos::BinsObjectDynamic< TConfigure >::ResultIteratorType |
typedef TreeNodeType::SearchStructureType Kratos::BinsObjectDynamic< TConfigure >::SearchStructureType |
typedef Tvector<SizeType,Dimension> Kratos::BinsObjectDynamic< TConfigure >::SizeArray |
typedef TreeNodeType::SizeType Kratos::BinsObjectDynamic< TConfigure >::SizeType |
typedef TreeNode<Dimension, PointType, PointerType, IteratorType, typename TConfigure::DistanceIteratorType> Kratos::BinsObjectDynamic< TConfigure >::TreeNodeType |
|
inline |
Default constructor.
|
inline |
Constructor de bins a bounding box.
Constructs a new BinsObjectDynamic
Construct a new BinsObjectDynamic using a list of objects and an automatically calculate cell size.
ObjectsBegin | Iterator to the first object of the bins |
ObjectsEnd | Iterator to the last object of the bins |
|
inline |
Constructs a new BinsObjectDynamic.
Constructs a new BinsObjectDynamic using a list of objects and an user provided cell size.
ObjectsBegin | Iterator to the first object of the bins |
ObjectsEnd | Iterator to the last object of the bins |
CellSize | Size of the cells (equal for every dimension) |
|
inline |
Constructs a new BinsObjectDynamic.
Constructs a new BinsObjectDynamic using a given bounding box and a user provided cell size.
MinPoint | Min point of the boundingbox containing the bins |
MaxPoint | Max point of the boundingbox containing the bins |
CellSize | Size of the cells (equal for very dimension) |
|
inline |
Constructs a new BinsObjectDynamic object.
Constructs a new BinsObjectDynamic using a given bounding box and a provided aproximation of the number of objects that will be added to the bins.
MinPoint | Min point of the boundingbox containing the bins |
MaxPoint | Max point of the boundingbox containing the bins |
NumPoints | Expected number of elements in the bins |
|
inlinevirtual |
Destructor.
|
inline |
Copy constructor.
|
inline |
Copy constructor.
|
inlinevirtual |
Add/Remove.
[AddObject description]
ThisObject | [description] |
|
inlineprotected |
|
inlineprotected |
Assigns the cell size of the bins using the provided CellSize.
Assigns the cell size of the bins using the provided CellSize.
CellSize | Desired size of the cells. |
|
inlineprotectedvirtual |
It computes each object's boundinx box and uses it to find the max and min points.
|
inline |
Calculates the IndexArray (x[,y[,z]]) of the provided object. Calculates the IndexArray (x[,y[,z]]) of the provided object. The provided object must provide its coordinates through the [] operator.
ThisObject | Input Object |
|
inlineprotected |
Calculates the cell size of the bins.
Calculates the cell size of the bins using an average aproximation of the objects in the bins.
ApproximatedSize | Aproximate number of objects that will be stored in the bins |
|
inline |
Calculates the Index of the provided object. Calculates the Index of the provided object. The provided object must provide its coordinates through the [] operator.
ThisObject | Input Object |
|
inlinevirtual |
[CalculatePosition description]
ThisCoord | [description] |
ThisDimension | [description] |
Reimplemented in Kratos::BinsObjectDynamicPeriodic< TConfigure >.
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
|
inlineprotectedvirtual |
|
inlineprotectedvirtual |
Fill container with objects
Reimplemented in Kratos::BinsObjectDynamicPeriodic< TConfigure >.
|
inline |
|
inline |
|
inline |
Get the Divisions object.
|
inline |
Get the Max Point object.
|
inline |
Get the Min Point object.
|
inlinevirtual |
Turn back information as a string.
Kratos::BinsObjectDynamic< TConfigure >::KRATOS_CLASS_POINTER_DEFINITION | ( | BinsObjectDynamic< TConfigure > | ) |
Pointer definition of BinsObjectDynamic.
|
inline |
Assignment operator.
|
inline |
Print Limits Points of the Container Print Limits Points of the Container
rout | [description] |
|
inlinevirtual |
Print object's data. Print object's data.
rOStream | [description] |
Perfix | [description] |
|
inlinevirtual |
Print information about this object. Print information about this object.
rOStream | [description] |
|
inline |
Print Size of Container Print Size of Container
rout | [description] |
|
inline |
[RemoveObject description]
ThisObject | [description] |
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
|
inlineprotectedvirtual |
|
inlineprotectedvirtual |
|
inlineprotectedvirtual |
|
inlineprotectedvirtual |
|
inlineprotectedvirtual |
|
inlineprotectedvirtual |
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
|
inline |
Single search API.
[SearchObjects description]
ThisObject | [description] |
Result | [description] |
|
inline |
[SearchObjects description]
ThisObject | [description] |
Result | [description] |
MaxNumberOfResults | [description] |
|
inline |
[SearchObjectsExclusive description]
ThisObject | [description] |
Result | [description] |
MaxNumberOfResults | [description] |
|
inline |
[SearchObjectsExclusive description]
ThisObject | [description] |
Result | [description] |
MaxNumberOfResults | [description] |
|
inline |
[SearchObjectsInCell description]
ThisPoint | [description] |
Result | [description] |
Missing API for 'SearchObjectsInCell' without 'MaxNumberOfResults'
|
inline |
[SearchObjectsInCell description]
ThisPoint | [description] |
Result | [description] |
MaxNumberOfResults | [description] |
|
inline |
Batch search API (needs to be extended with the missing functions)
[SearchObjectsInRadius description]
ThisObjects | [description] |
NumberOfObjects | [description] |
Radius | [description] |
Results | [description] |
NumberOfResults | [description] |
MaxNumberOfResults | [description] |
|
inline |
[SearchObjectsInRadius description]
ThisObjects | [description] |
NumberOfObjects | [description] |
Radius | [description] |
Results | [description] |
ResultsDistances | [description] |
NumberOfResults | [description] |
MaxNumberOfResults | [description] |
|
inline |
[SearchObjectsInRadius description]
ThisObject | [description] |
Radius | [description] |
Results | [description] |
Missing API for 'SearchObjectsInRadius' without 'MaxNumberOfResults'
|
inline |
[SearchObjectsInRadius description]
ThisObject | [description] |
Radius | [description] |
Results | [description] |
MaxNumberOfResults | [description] |
|
inline |
[SearchObjectsInRadius description]
ThisObject | [description] |
Radius | [description] |
Results | [description] |
ResultDistances | [description] |
Missing API for 'SearchObjectsInRadius' without 'MaxNumberOfResults'
|
inline |
[SearchObjectsInRadius description]
ThisObject | [description] |
Radius | [description] |
Results | [description] |
ResultDistances | [description] |
MaxNumberOfResults | [description] |
|
inlinevirtual |
[SearchObjectsInRadiusExclusive description]
ThisObjects | [description] |
NumberOfObjects | [description] |
Radius | [description] |
Results | [description] |
NumberOfResults | [description] |
MaxNumberOfResults | [description] |
|
inlinevirtual |
[SearchObjectsInRadiusExclusive description]
ThisObjects | [description] |
NumberOfObjects | [description] |
Radius | [description] |
Results | [description] |
ResultsDistances | [description] |
NumberOfResults | [description] |
MaxNumberOfResults | [description] |
|
inlinevirtual |
[SearchObjectsInRadiusExclusive description]
ThisObject | [description] |
Radius | [description] |
Results | [description] |
MaxNumberOfResults | [description] |
Missing API for 'SearchObjectsInRadiusExclusive' without 'MaxNumberOfResults'
|
inlinevirtual |
[SearchObjectsInRadiusExclusive description]
ThisObject | [description] |
Radius | [description] |
Results | [description] |
MaxNumberOfResults | [description] |
Reimplemented in Kratos::BinsObjectDynamicPeriodic< TConfigure >.
|
inlinevirtual |
[SearchObjectsInRadiusExclusive description]
ThisObject | [description] |
Radius | [description] |
Results | [description] |
ResultDistances | [description] |
Missing API for 'SearchObjectsInRadiusExclusive' without 'MaxNumberOfResults'
|
inlinevirtual |
[SearchObjectsInRadiusExclusive description]
ThisObject | [description] |
Radius | [description] |
Results | [description] |
ResultDistances | [description] |
MaxNumberOfResults | [description] |
Reimplemented in Kratos::BinsObjectDynamicPeriodic< TConfigure >.
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |