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.
List of all members
Kratos::SpatialContainersConfigure< TDimension, TEntity > Class Template Reference

Thhis class is a container for spatial search. More...

#include <spatial_containers_configure.h>

Collaboration diagram for Kratos::SpatialContainersConfigure< TDimension, TEntity >:

Public Member Functions

Life Cycle
 SpatialContainersConfigure ()
 Default constructor. More...
 
virtual ~SpatialContainersConfigure ()
 Destructor. More...
 
Input and output
virtual std::string Info () const
 Turn back information as a string. More...
 
virtual void PrintInfo (std::ostream &rOStream) const
 Print information about this object. More...
 
virtual void PrintData (std::ostream &rOStream) const
 Print object's data. More...
 

Static Public Member Functions

Operations
static void CalculateBoundingBox (const PointerType &rObject, PointType &rLowPoint, PointType &rHighPoint)
 This method computes the bounding box. More...
 
static void CalculateBoundingBox (const PointerType &rObject, PointType &rLowPoint, PointType &rHighPoint, const double Radius)
 This method computes the bounding box. More...
 
static bool Intersection (const PointerType &rObj_1, const PointerType &rObj_2)
 This method computes the intersection. More...
 
static bool Intersection (const PointerType &rObj_1, const PointerType &rObj_2, const double Radius)
 This method computes the intersection. More...
 
static bool IntersectionBox (const PointerType &rObject, const PointType &rLowPoint, const PointType &rHighPoint)
 This method computes the intersection box. More...
 
static bool IntersectionBox (const PointerType &rObject, const PointType &rLowPoint, const PointType &rHighPoint, const double Radius)
 This method computes the intersection box. More...
 
static void Distance (const PointerType &rObj_1, const PointerType &rObj_2, double &rDistance)
 This method computes the distance. More...
 

Type Definitions

using PointType = Point
 Point definition. More...
 
using NodeType = Node
 The node definition. More...
 
using GeometryType = Geometry< NodeType >
 The geometry definition. More...
 
using DistanceIteratorType = std::vector< double >::iterator
 Dditance iterator. More...
 
using EntityType = TEntity
 The entity definition. More...
 
using ContainerType = typename PointerVectorSet< TEntity, IndexedObject >::ContainerType
 Container definition. More...
 
using PointerType = typename ContainerType::value_type
 
using IteratorType = typename ContainerType::iterator
 
using ResultContainerType = typename PointerVectorSet< TEntity, IndexedObject >::ContainerType
 
using ResultPointerType = typename ResultContainerType::value_type
 
using ResultIteratorType = typename ResultContainerType::iterator
 
static constexpr std::size_t Dimension = TDimension
 Definition of the Dimension (it is the template argument, but it is needed to be defined as a static member for legacy reasons as it is used that way in other places) More...
 
static constexpr std::size_t DIMENSION = TDimension
 Definition of the DIMENSION (it is the template argument, but it is needed to be defined as a static member for legacy reasons as it is used that way in other places) More...
 
static constexpr std::size_t MAX_LEVEL = 16
 Definition of the maximum level. More...
 
static constexpr std::size_t MIN_LEVEL = 2
 Definition of the minimum level. More...
 
 KRATOS_CLASS_POINTER_DEFINITION (SpatialContainersConfigure)
 Pointer definition of SpatialContainersConfigure. More...
 

Detailed Description

template<SizeType TDimension, class TEntity = Element>
class Kratos::SpatialContainersConfigure< TDimension, TEntity >

Thhis class is a container for spatial search.

It is used in binbased locator among other classes and utilities

Template Parameters
TDimensionThe working dimension
TEntityThe entity considered
Author
Nelson Lafontaine

Member Typedef Documentation

◆ ContainerType

template<SizeType TDimension, class TEntity = Element>
using Kratos::SpatialContainersConfigure< TDimension, TEntity >::ContainerType = typename PointerVectorSet<TEntity, IndexedObject>::ContainerType

Container definition.

◆ DistanceIteratorType

template<SizeType TDimension, class TEntity = Element>
using Kratos::SpatialContainersConfigure< TDimension, TEntity >::DistanceIteratorType = std::vector<double>::iterator

Dditance iterator.

◆ EntityType

template<SizeType TDimension, class TEntity = Element>
using Kratos::SpatialContainersConfigure< TDimension, TEntity >::EntityType = TEntity

The entity definition.

◆ GeometryType

template<SizeType TDimension, class TEntity = Element>
using Kratos::SpatialContainersConfigure< TDimension, TEntity >::GeometryType = Geometry<NodeType>

The geometry definition.

◆ IteratorType

template<SizeType TDimension, class TEntity = Element>
using Kratos::SpatialContainersConfigure< TDimension, TEntity >::IteratorType = typename ContainerType::iterator

◆ NodeType

template<SizeType TDimension, class TEntity = Element>
using Kratos::SpatialContainersConfigure< TDimension, TEntity >::NodeType = Node

The node definition.

◆ PointerType

template<SizeType TDimension, class TEntity = Element>
using Kratos::SpatialContainersConfigure< TDimension, TEntity >::PointerType = typename ContainerType::value_type

◆ PointType

template<SizeType TDimension, class TEntity = Element>
using Kratos::SpatialContainersConfigure< TDimension, TEntity >::PointType = Point

Point definition.

◆ ResultContainerType

template<SizeType TDimension, class TEntity = Element>
using Kratos::SpatialContainersConfigure< TDimension, TEntity >::ResultContainerType = typename PointerVectorSet<TEntity, IndexedObject>::ContainerType

◆ ResultIteratorType

template<SizeType TDimension, class TEntity = Element>
using Kratos::SpatialContainersConfigure< TDimension, TEntity >::ResultIteratorType = typename ResultContainerType::iterator

◆ ResultPointerType

template<SizeType TDimension, class TEntity = Element>
using Kratos::SpatialContainersConfigure< TDimension, TEntity >::ResultPointerType = typename ResultContainerType::value_type

Constructor & Destructor Documentation

◆ SpatialContainersConfigure()

template<SizeType TDimension, class TEntity = Element>
Kratos::SpatialContainersConfigure< TDimension, TEntity >::SpatialContainersConfigure ( )
inline

Default constructor.

◆ ~SpatialContainersConfigure()

template<SizeType TDimension, class TEntity = Element>
virtual Kratos::SpatialContainersConfigure< TDimension, TEntity >::~SpatialContainersConfigure ( )
inlinevirtual

Destructor.

Member Function Documentation

◆ CalculateBoundingBox() [1/2]

template<SizeType TDimension, class TEntity = Element>
static void Kratos::SpatialContainersConfigure< TDimension, TEntity >::CalculateBoundingBox ( const PointerType rObject,
PointType rLowPoint,
PointType rHighPoint 
)
inlinestatic

This method computes the bounding box.

Parameters
rObjectThe object to compute the bounding box
rLowPointThe lower point of the bounding box
rHighPointThe higher point of the bounding box

◆ CalculateBoundingBox() [2/2]

template<SizeType TDimension, class TEntity = Element>
static void Kratos::SpatialContainersConfigure< TDimension, TEntity >::CalculateBoundingBox ( const PointerType rObject,
PointType rLowPoint,
PointType rHighPoint,
const double  Radius 
)
inlinestatic

This method computes the bounding box.

Parameters
rObjectThe object to compute the bounding box
rLowPointThe lower point of the bounding box
rHighPointThe higher point of the bounding box
RadiusThe radius

◆ Distance()

template<SizeType TDimension, class TEntity = Element>
static void Kratos::SpatialContainersConfigure< TDimension, TEntity >::Distance ( const PointerType rObj_1,
const PointerType rObj_2,
double rDistance 
)
inlinestatic

This method computes the distance.

Parameters
rObj_1The first object
rObj_2The second object
rDistanceThe distance

◆ Info()

template<SizeType TDimension, class TEntity = Element>
virtual std::string Kratos::SpatialContainersConfigure< TDimension, TEntity >::Info ( ) const
inlinevirtual

Turn back information as a string.

◆ Intersection() [1/2]

template<SizeType TDimension, class TEntity = Element>
static bool Kratos::SpatialContainersConfigure< TDimension, TEntity >::Intersection ( const PointerType rObj_1,
const PointerType rObj_2 
)
inlinestatic

This method computes the intersection.

Parameters
rObj_1The first object
rObj_2The second object
Returns
True if there is an intersection, false otherwise

◆ Intersection() [2/2]

template<SizeType TDimension, class TEntity = Element>
static bool Kratos::SpatialContainersConfigure< TDimension, TEntity >::Intersection ( const PointerType rObj_1,
const PointerType rObj_2,
const double  Radius 
)
inlinestatic

This method computes the intersection.

Parameters
rObj_1The first object
rObj_2The second object
RadiusThe radius

◆ IntersectionBox() [1/2]

template<SizeType TDimension, class TEntity = Element>
static bool Kratos::SpatialContainersConfigure< TDimension, TEntity >::IntersectionBox ( const PointerType rObject,
const PointType rLowPoint,
const PointType rHighPoint 
)
inlinestatic

This method computes the intersection box.

Parameters
rObjectThe object considered
rLowPointThe low point of the box
rHighPointThe high point of the box

◆ IntersectionBox() [2/2]

template<SizeType TDimension, class TEntity = Element>
static bool Kratos::SpatialContainersConfigure< TDimension, TEntity >::IntersectionBox ( const PointerType rObject,
const PointType rLowPoint,
const PointType rHighPoint,
const double  Radius 
)
inlinestatic

This method computes the intersection box.

Parameters
rObjectThe object considered
rLowPointThe low point of the box
rHighPointThe high point of the box
RadiusThe radius

◆ KRATOS_CLASS_POINTER_DEFINITION()

template<SizeType TDimension, class TEntity = Element>
Kratos::SpatialContainersConfigure< TDimension, TEntity >::KRATOS_CLASS_POINTER_DEFINITION ( SpatialContainersConfigure< TDimension, TEntity >  )

Pointer definition of SpatialContainersConfigure.

◆ PrintData()

template<SizeType TDimension, class TEntity = Element>
virtual void Kratos::SpatialContainersConfigure< TDimension, TEntity >::PrintData ( std::ostream &  rOStream) const
inlinevirtual

Print object's data.

◆ PrintInfo()

template<SizeType TDimension, class TEntity = Element>
virtual void Kratos::SpatialContainersConfigure< TDimension, TEntity >::PrintInfo ( std::ostream &  rOStream) const
inlinevirtual

Print information about this object.

Member Data Documentation

◆ Dimension

template<SizeType TDimension, class TEntity = Element>
constexpr std::size_t Kratos::SpatialContainersConfigure< TDimension, TEntity >::Dimension = TDimension
staticconstexpr

Definition of the Dimension (it is the template argument, but it is needed to be defined as a static member for legacy reasons as it is used that way in other places)

◆ DIMENSION

template<SizeType TDimension, class TEntity = Element>
constexpr std::size_t Kratos::SpatialContainersConfigure< TDimension, TEntity >::DIMENSION = TDimension
staticconstexpr

Definition of the DIMENSION (it is the template argument, but it is needed to be defined as a static member for legacy reasons as it is used that way in other places)

◆ MAX_LEVEL

template<SizeType TDimension, class TEntity = Element>
constexpr std::size_t Kratos::SpatialContainersConfigure< TDimension, TEntity >::MAX_LEVEL = 16
staticconstexpr

Definition of the maximum level.

◆ MIN_LEVEL

template<SizeType TDimension, class TEntity = Element>
constexpr std::size_t Kratos::SpatialContainersConfigure< TDimension, TEntity >::MIN_LEVEL = 2
staticconstexpr

Definition of the minimum level.


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