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.
|
This class is used to search for elements, conditions and nodes in a given model part. More...
#include <specialized_spatial_search.h>
Public Member Functions | |
Life Cycle | |
SpecializedSpatialSearch () | |
Default constructor. More... | |
SpecializedSpatialSearch (Parameters ThisParameters) | |
Constructor with parameters. More... | |
~SpecializedSpatialSearch () override=default | |
Destructor. More... | |
Operations | |
void | SearchElementsInRadiusExclusive (const ElementsContainerType &rStructureElements, const ElementsContainerType &rInputElements, const RadiusArrayType &rRadius, VectorResultElementsContainerType &rResults, VectorDistanceType &rResultsDistance) override |
Search neighbours for every element in "rInputElements" excluding itself. More... | |
void | SearchElementsInRadiusExclusive (const ElementsContainerType &rStructureElements, const ElementsContainerType &rInputElements, const RadiusArrayType &rRadius, VectorResultElementsContainerType &rResults) override |
Search neighbours for every element in "rInputElements" excluding itself. More... | |
void | SearchNodesInRadiusExclusive (const NodesContainerType &rStructureNodes, const NodesContainerType &rInputNodes, const RadiusArrayType &rRadius, VectorResultNodesContainerType &rResults, VectorDistanceType &rResultsDistance) override |
Search neighbours for every node in "rInputNodes" excluding itself. More... | |
void | SearchNodesInRadiusExclusive (const NodesContainerType &rStructureNodes, const NodesContainerType &rInputNodes, const RadiusArrayType &rRadius, VectorResultNodesContainerType &rResults) override |
Search neighbours for every node in "rInputNodes" excluding itself. More... | |
void | SearchConditionsInRadiusExclusive (const ConditionsContainerType &rStructureConditions, const ConditionsContainerType &rInputConditions, const RadiusArrayType &rRadius, VectorResultConditionsContainerType &rResults, VectorDistanceType &rResultsDistance) override |
Search neighbours for every Condition in "rInputConditions" excluding itself. More... | |
void | SearchConditionsInRadiusExclusive (const ConditionsContainerType &rStructureConditions, const ConditionsContainerType &rInputConditions, const RadiusArrayType &rRadius, VectorResultConditionsContainerType &rResults) override |
Search neighbours for every Condition in "rInputConditions" excluding itself. More... | |
Input and output | |
std::string | Info () const override |
Turn back information as a string. More... | |
void | PrintInfo (std::ostream &rOStream) const override |
Print information about this object. More... | |
void | PrintData (std::ostream &rOStream) const override |
Print object's data. More... | |
Public Member Functions inherited from Kratos::SpatialSearch | |
SpatialSearch () | |
Default constructor. More... | |
virtual | ~SpatialSearch () |
Destructor. More... | |
virtual void | SearchElementsInRadiusExclusive (ModelPart &rModelPart, const RadiusArrayType &rRadius, VectorResultElementsContainerType &rResults, VectorDistanceType &rResultsDistance) |
Search neighbours for every element in "rModelpart" excluding itself. More... | |
virtual void | SearchElementsInRadiusExclusive (ModelPart &rModelPart, const ElementsContainerType &rInputElements, const RadiusArrayType &rRadius, VectorResultElementsContainerType &rResults, VectorDistanceType &rResultsDistance) |
Search neighbours for every element in "Inputelements" excluding itself. More... | |
virtual void | SearchElementsInRadiusExclusive (const ElementsContainerType &rStructureElements, const RadiusArrayType &rRadius, VectorResultElementsContainerType &rResults, VectorDistanceType &rResultsDistance) |
Search neighbours for every element in "StructureElements" excluding itself. More... | |
virtual void | SearchElementsInRadiusInclusive (ModelPart &rModelPart, const RadiusArrayType &rRadius, VectorResultNodesContainerType &rResults, VectorDistanceType &rResultsDistance) |
Search neighbours for every element in "rModelpart" including itself. More... | |
virtual void | SearchElementsInRadiusInclusive (ModelPart &rModelPart, const ElementsContainerType &rInputElements, const RadiusArrayType &rRadius, VectorResultNodesContainerType &rResults, VectorDistanceType &rResultsDistance) |
Search neighbours for every element in "InputElements" including itself. More... | |
virtual void | SearchElementsInRadiusInclusive (const ElementsContainerType &rStructureElements, const RadiusArrayType &rRadius, VectorResultNodesContainerType &rResults, VectorDistanceType &rResultsDistance) |
Search neighbours for every element in "StructureElements" including itself. More... | |
virtual void | SearchElementsInRadiusInclusive (const ElementsContainerType &rStructureElements, const ElementsContainerType &rInputElements, const RadiusArrayType &rRadius, VectorResultNodesContainerType &rResults, VectorDistanceType &rResultsDistance) |
Search neighbours for every element in "InputElements" including itself. More... | |
virtual void | SearchElementsInRadiusExclusive (ModelPart &rModelPart, const RadiusArrayType &rRadius, VectorResultElementsContainerType &rResults) |
Search neighbours for every element in "rModelpart" excluding itself. More... | |
virtual void | SearchElementsInRadiusExclusive (ModelPart &rModelPart, const ElementsContainerType &rInputElements, const RadiusArrayType &rRadius, VectorResultElementsContainerType &rResults) |
Search neighbours for every element in "Inputelements" excluding itself. More... | |
virtual void | SearchElementsInRadiusExclusive (const ElementsContainerType &rStructureElements, const RadiusArrayType &rRadius, VectorResultElementsContainerType &rResults) |
Search neighbours for every element in "StructureElements" excluding itself. More... | |
virtual void | SearchElementsInRadiusInclusive (ModelPart &rModelPart, const RadiusArrayType &rRadius, VectorResultNodesContainerType &rResults) |
Search neighbours for every element in "rModelpart" including itself. More... | |
virtual void | SearchElementsInRadiusInclusive (ModelPart &rModelPart, const ElementsContainerType &rInputElements, const RadiusArrayType &rRadius, VectorResultNodesContainerType &rResults) |
Search neighbours for every element in "InputElements" including itself. More... | |
virtual void | SearchElementsInRadiusInclusive (const ElementsContainerType &rStructureElements, const RadiusArrayType &rRadius, VectorResultNodesContainerType &rResults) |
Search neighbours for every element in "StructureElements" including itself. More... | |
virtual void | SearchElementsInRadiusInclusive (const ElementsContainerType &rStructureElements, const ElementsContainerType &rInputElements, const RadiusArrayType &rRadius, VectorResultNodesContainerType &rResults) |
Search neighbours for every element in "InputElements" including itself. More... | |
virtual void | SearchNodesInRadiusExclusive (ModelPart &rModelPart, const RadiusArrayType &rRadius, VectorResultNodesContainerType &rResults, VectorDistanceType &rResultsDistance) |
Search neighbours for every node in "rModelpart" excluding itself. More... | |
virtual void | SearchNodesInRadiusExclusive (ModelPart &rModelPart, const NodesContainerType &rInputNodes, const RadiusArrayType &rRadius, VectorResultNodesContainerType &rResults, VectorDistanceType &rResultsDistance) |
Search neighbours for every node in "InputNodes" excluding itself. More... | |
virtual void | SearchNodesInRadiusExclusive (const NodesContainerType &rStructureNodes, const RadiusArrayType &rRadius, VectorResultNodesContainerType &rResults, VectorDistanceType &rResultsDistance) |
Search neighbours for every node in "rStructureNodes" excluding itself. More... | |
virtual void | SearchNodesInRadiusInclusive (ModelPart &rModelPart, const RadiusArrayType &rRadius, VectorResultNodesContainerType &rResults, VectorDistanceType &rResultsDistance) |
Search neighbours for every node in "rModelpart" including itself. More... | |
virtual void | SearchNodesInRadiusInclusive (ModelPart &rModelPart, const NodesContainerType &rInputNodes, const RadiusArrayType &rRadius, VectorResultNodesContainerType &rResults, VectorDistanceType &rResultsDistance) |
Search neighbours for every node in "InputNodes" including itself. More... | |
virtual void | SearchNodesInRadiusInclusive (const NodesContainerType &rStructureNodes, const RadiusArrayType &rRadius, VectorResultNodesContainerType &rResults, VectorDistanceType &rResultsDistance) |
Search neighbours for every node in "rStructureNodes" including itself. More... | |
virtual void | SearchNodesInRadiusInclusive (const NodesContainerType &rStructureNodes, const NodesContainerType &rInputNodes, const RadiusArrayType &rRadius, VectorResultNodesContainerType &rResults, VectorDistanceType &rResultsDistance) |
Search neighbours for every node in "InputNodes" including itself. More... | |
virtual void | SearchNodesInRadiusExclusive (ModelPart &rModelPart, const RadiusArrayType &rRadius, VectorResultNodesContainerType &rResults) |
Search neighbours for every node in "rModelpart" excluding itself. More... | |
virtual void | SearchNodesInRadiusExclusive (ModelPart &rModelPart, const NodesContainerType &rInputNodes, const RadiusArrayType &rRadius, VectorResultNodesContainerType &rResults) |
Search neighbours for every node in "InputNodes" excluding itself. More... | |
virtual void | SearchNodesInRadiusExclusive (const NodesContainerType &rStructureNodes, const RadiusArrayType &rRadius, VectorResultNodesContainerType &rResults) |
Search neighbours for every node in "rStructureNodes" excluding itself. More... | |
virtual void | SearchNodesInRadiusInclusive (ModelPart &rModelPart, const RadiusArrayType &rRadius, VectorResultNodesContainerType &rResults) |
Search neighbours for every node in "rModelpart" including itself. More... | |
virtual void | SearchNodesInRadiusInclusive (ModelPart &rModelPart, const NodesContainerType &rInputNodes, const RadiusArrayType &rRadius, VectorResultNodesContainerType &rResults) |
Search neighbours for every node in "InputNodes" including itself. More... | |
virtual void | SearchNodesInRadiusInclusive (const NodesContainerType &rStructureNodes, const RadiusArrayType &rRadius, VectorResultNodesContainerType &rResults) |
Search neighbours for every node in "rStructureNodes" including itself. More... | |
virtual void | SearchNodesInRadiusInclusive (const NodesContainerType &rStructureNodes, const NodesContainerType &rInputNodes, const RadiusArrayType &rRadius, VectorResultNodesContainerType &rResults) |
Search neighbours for every node in "InputNodes" including itself. More... | |
virtual void | SearchConditionsInRadiusExclusive (ModelPart &rModelPart, const RadiusArrayType &rRadius, VectorResultConditionsContainerType &rResults, VectorDistanceType &rResultsDistance) |
Search neighbours for every Condition in "rModelpart" excluding itself. More... | |
virtual void | SearchConditionsInRadiusExclusive (ModelPart &rModelPart, const ConditionsContainerType &rInputConditions, const RadiusArrayType &rRadius, VectorResultConditionsContainerType &rResults, VectorDistanceType &rResultsDistance) |
Search neighbours for every Condition in "InputConditions" excluding itself. More... | |
virtual void | SearchConditionsInRadiusExclusive (const ConditionsContainerType &rStructureConditions, const RadiusArrayType &rRadius, VectorResultConditionsContainerType &rResults, VectorDistanceType &rResultsDistance) |
Search neighbours for every Condition in "rStructureConditions" excluding itself. More... | |
virtual void | SearchConditionsInRadiusInclusive (ModelPart &rModelPart, const RadiusArrayType &rRadius, VectorResultNodesContainerType &rResults, VectorDistanceType &rResultsDistance) |
Search neighbours for every Condition in "rModelpart" including itself. More... | |
virtual void | SearchConditionsInRadiusInclusive (ModelPart &rModelPart, const ConditionsContainerType &rInputConditions, const RadiusArrayType &rRadius, VectorResultNodesContainerType &rResults, VectorDistanceType &rResultsDistance) |
Search neighbours for every Condition in "InputConditions" including itself. More... | |
virtual void | SearchConditionsInRadiusInclusive (const ConditionsContainerType &rStructureConditions, const RadiusArrayType &rRadius, VectorResultNodesContainerType &rResults, VectorDistanceType &rResultsDistance) |
Search neighbours for every Condition in "rStructureConditions" including itself. More... | |
virtual void | SearchConditionsInRadiusInclusive (const ConditionsContainerType &rStructureConditions, const ConditionsContainerType &rInputConditions, const RadiusArrayType &rRadius, VectorResultNodesContainerType &rResults, VectorDistanceType &rResultsDistance) |
Search neighbours for every Condition in "InputConditions" including itself. More... | |
virtual void | SearchConditionsInRadiusExclusive (ModelPart &rModelPart, const RadiusArrayType &rRadius, VectorResultConditionsContainerType &rResults) |
Search neighbours for every Condition in "rModelpart" excluding itself. More... | |
virtual void | SearchConditionsInRadiusExclusive (ModelPart &rModelPart, const ConditionsContainerType &rInputConditions, const RadiusArrayType &rRadius, VectorResultConditionsContainerType &rResults) |
Search neighbours for every Condition in "InputConditions" excluding itself. More... | |
virtual void | SearchConditionsInRadiusExclusive (const ConditionsContainerType &rStructureConditions, const RadiusArrayType &rRadius, VectorResultConditionsContainerType &rResults) |
Search neighbours for every Condition in "rStructureConditions" excluding itself. More... | |
virtual void | SearchConditionsInRadiusInclusive (ModelPart &rModelPart, const RadiusArrayType &rRadius, VectorResultNodesContainerType &rResults) |
Search neighbours for every Condition in "rModelpart" including itself. More... | |
virtual void | SearchConditionsInRadiusInclusive (ModelPart &rModelPart, const ConditionsContainerType &rInputConditions, const RadiusArrayType &rRadius, VectorResultNodesContainerType &rResults) |
Search neighbours for every Condition in "InputConditions" including itself. More... | |
virtual void | SearchConditionsInRadiusInclusive (const ConditionsContainerType &rStructureConditions, const RadiusArrayType &rRadius, VectorResultNodesContainerType &rResults) |
Search neighbours for every Condition in "rStructureConditions" including itself. More... | |
virtual void | SearchConditionsInRadiusInclusive (const ConditionsContainerType &rStructureConditions, const ConditionsContainerType &rInputConditions, const RadiusArrayType &rRadius, VectorResultNodesContainerType &rResults) |
Search neighbours for every Condition in "InputConditions" including itself. More... | |
virtual void | SearchConditionsOverElementsInRadiusExclusive (ModelPart &rModelPart, const RadiusArrayType &rRadius, VectorResultElementsContainerType &rResults, VectorDistanceType &rResultsDistance) |
Search neighbours for every element in "rModelpart" excluding itself. More... | |
virtual void | SearchConditionsOverElementsInRadiusExclusive (ModelPart &rModelPart, const ConditionsContainerType &rInputConditions, const RadiusArrayType &rRadius, VectorResultElementsContainerType &rResults, VectorDistanceType &rResultsDistance) |
Search neighbours for every element in "Inputelements" excluding itself. More... | |
virtual void | SearchConditionsOverElementsInRadiusExclusive (const ElementsContainerType &rStructureElements, const ConditionsContainerType &rInputConditions, const RadiusArrayType &rRadius, VectorResultElementsContainerType &rResults, VectorDistanceType &rResultsDistance) |
Search neighbours for every element in "Inputelements" excluding itself. More... | |
virtual void | SearchConditionsOverElementsInRadiusInclusive (ModelPart &rModelPart, const RadiusArrayType &rRadius, VectorResultElementsContainerType &rResults, VectorDistanceType &rResultsDistance) |
Search neighbours for every element in "rModelpart" excluding itself. More... | |
virtual void | SearchConditionsOverElementsInRadiusInclusive (ModelPart &rModelPart, const ConditionsContainerType &rInputConditions, const RadiusArrayType &rRadius, VectorResultElementsContainerType &rResults, VectorDistanceType &rResultsDistance) |
Search neighbours for every element in "Inputelements" excluding itself. More... | |
virtual void | SearchConditionsOverElementsInRadiusInclusive (const ElementsContainerType &rStructureElements, const ConditionsContainerType &rInputConditions, const RadiusArrayType &rRadius, VectorResultElementsContainerType &rResults, VectorDistanceType &rResultsDistance) |
Search neighbours for every element in "Inputelements" excluding itself. More... | |
virtual void | SearchElementsOverConditionsInRadiusExclusive (ModelPart &rModelPart, const RadiusArrayType &rRadius, VectorResultElementsContainerType &rResults, VectorDistanceType &rResultsDistance) |
Search neighbours for every element in "rModelpart" excluding itself. More... | |
virtual void | SearchElementsOverConditionsInRadiusExclusive (ModelPart &rModelPart, const ElementsContainerType &rInputElements, const RadiusArrayType &rRadius, VectorResultElementsContainerType &rResults, VectorDistanceType &rResultsDistance) |
Search neighbours for every element in "Inputelements" excluding itself. More... | |
virtual void | SearchElementsOverConditionsInRadiusExclusive (const ConditionsContainerType &rStructureConditions, const ElementsContainerType &rInputElements, const RadiusArrayType &rRadius, VectorResultElementsContainerType &rResults, VectorDistanceType &rResultsDistance) |
Search neighbours for every element in "Inputelements" excluding itself. More... | |
virtual void | SearchElementsOverConditionsInRadiusInclusive (ModelPart &rModelPart, const RadiusArrayType &rRadius, VectorResultElementsContainerType &rResults, VectorDistanceType &rResultsDistance) |
Search neighbours for every element in "rModelpart" excluding itself. More... | |
virtual void | SearchElementsOverConditionsInRadiusInclusive (ModelPart &rModelPart, const ElementsContainerType &rInputElements, const RadiusArrayType &rRadius, VectorResultElementsContainerType &rResults, VectorDistanceType &rResultsDistance) |
Search neighbours for every element in "Inputelements" excluding itself. More... | |
virtual void | SearchElementsOverConditionsInRadiusInclusive (const ConditionsContainerType &rStructureConditions, const ElementsContainerType &rInputElements, const RadiusArrayType &rRadius, VectorResultElementsContainerType &rResults, VectorDistanceType &rResultsDistance) |
Search neighbours for every element in "Inputelements" excluding itself. More... | |
virtual void | InitializeBoundingBox (const NodesContainerType &rStructureNodes) |
This method allows to initialize the local bounding box (for nodes) More... | |
virtual void | InitializeBoundingBox (const ElementsContainerType &rStructureElements) |
This method allows to initialize the local bounding box (for elements) More... | |
virtual void | InitializeBoundingBox (const ConditionsContainerType &rStructureConditions) |
This method allows to initialize the local bounding box (for conditions) More... | |
KRATOS_CLASS_POINTER_DEFINITION (SpatialSearch) | |
Pointer definition of SpatialSearch. More... | |
Protected Member Functions | |
Protected Operations | |
Parameters | GetDefaultParameters () const |
This method returns the default parameters. More... | |
Protected Attributes | |
Protected member Variables | |
Parameters | mParameters |
This class is used to search for elements, conditions and nodes in a given model part.
In order to perform the search it uses as backend some of the the spatial containers defined spatial_containers
folder
TSearchBackend | The spatial container to be used as backend |
using Kratos::SpecializedSpatialSearch< TSearchBackend >::BaseType = SpatialSearch |
The base type.
using Kratos::SpatialSearch::ConditionsContainerType = ModelPart::ConditionsContainerType |
Conditions classes.
using Kratos::SpatialSearch::DistanceType = std::vector<double> |
using Kratos::SpatialSearch::ElementsContainerType = ModelPart::ElementsContainerType |
Elements classes.
using Kratos::SpatialSearch::NodesContainerType = ModelPart::NodesContainerType |
Nodes classes.
using Kratos::SpatialSearch::RadiusArrayType = std::vector<double> |
Input/output types.
using Kratos::SpatialSearch::ResultConditionsContainerType = ConditionsContainerType::ContainerType |
using Kratos::SpatialSearch::ResultElementsContainerType = ElementsContainerType::ContainerType |
using Kratos::SpatialSearch::ResultNodesContainerType = NodesContainerType::ContainerType |
using Kratos::SpatialSearch::VectorDistanceType = std::vector<DistanceType> |
using Kratos::SpatialSearch::VectorResultConditionsContainerType = std::vector<ResultConditionsContainerType> |
using Kratos::SpatialSearch::VectorResultElementsContainerType = std::vector<ResultElementsContainerType> |
using Kratos::SpatialSearch::VectorResultNodesContainerType = std::vector<ResultNodesContainerType> |
|
inline |
Default constructor.
|
inline |
Constructor with parameters.
ThisParameters | The parameters to be considered |
|
overridedefault |
Destructor.
|
protected |
This method returns the default parameters.
|
inlineoverridevirtual |
Turn back information as a string.
Reimplemented from Kratos::SpatialSearch.
Kratos::SpecializedSpatialSearch< TSearchBackend >::KRATOS_CLASS_POINTER_DEFINITION | ( | SpecializedSpatialSearch< TSearchBackend > | ) |
Pointer definition of SpecializedSpatialSearch.
|
inlineoverridevirtual |
Print object's data.
Reimplemented from Kratos::SpatialSearch.
|
inlineoverridevirtual |
Print information about this object.
Reimplemented from Kratos::SpatialSearch.
|
overridevirtual |
Search neighbours for every Condition in "rInputConditions" excluding itself.
Reimplemented from Kratos::SpatialSearch.
|
overridevirtual |
Search neighbours for every Condition in "rInputConditions" excluding itself.
KDtree definitions
Octree definitions
StaticBins definitions
BinsDynamic definitions
Reimplemented from Kratos::SpatialSearch.
|
overridevirtual |
Search neighbours for every element in "rInputElements" excluding itself.
Reimplemented from Kratos::SpatialSearch.
|
overridevirtual |
Search neighbours for every element in "rInputElements" excluding itself.
KDtree definitions
Octree definitions
StaticBins definitions
BinsDynamic definitions
Reimplemented from Kratos::SpatialSearch.
|
overridevirtual |
Search neighbours for every node in "rInputNodes" excluding itself.
Reimplemented from Kratos::SpatialSearch.
|
overridevirtual |
Search neighbours for every node in "rInputNodes" excluding itself.
KDtree definitions
Octree definitions
StaticBins definitions
BinsDynamic definitions
Reimplemented from Kratos::SpatialSearch.
|
protected |