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::PointBelong< TNumNodes, TNumNodesMaster > Class Template Reference

Custom Point container to be used by the mapper. More...

#include <mortar_classes.h>

Inheritance diagram for Kratos::PointBelong< TNumNodes, TNumNodesMaster >:
Collaboration diagram for Kratos::PointBelong< TNumNodes, TNumNodesMaster >:

Public Member Functions

Life Cycle
 PointBelong ()
 Default constructors. More...
 
 PointBelong (const array_1d< double, 3 > Coords)
 
 PointBelong (const array_1d< double, 3 > Coords, const BelongType &ThisBelongs)
 
 ~PointBelong () override=default
 Destructor. More...
 
Operations
void SetBelong (BelongType ThisBelongs)
 This method allows to set where the point belongs. More...
 
BelongType GetBelong () const
 This method recovers where the point belongs. More...
 
- Public Member Functions inherited from Kratos::Point
 Point ()
 Default constructor. More...
 
 Point (double NewX, double NewY=0, double NewZ=0)
 3d constructor. More...
 
 Point (Point const &rOtherPoint)
 
 Point (CoordinatesArrayType const &rOtherCoordinates)
 
template<class TVectorType >
 Point (vector_expression< TVectorType > const &rOtherCoordinates)
 
 Point (std::vector< double > const &rOtherCoordinates)
 
virtual ~Point ()
 Destructor. More...
 
Pointoperator= (const Point &rOther)
 Assignment operator. More...
 
bool operator== (const Point &rOther) const
 
double SquaredDistance (const Point &rOtherPoint) const
 This method computes the distance between this point and another one (squared) More...
 
double Distance (const Point &rOtherPoint) const
 This method computes the distance between this point and another one. More...
 
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...
 
 KRATOS_CLASS_POINTER_DEFINITION (Point)
 Pointer definition of Point. More...
 
double X () const
 
double Y () const
 
double Z () const
 
doubleX ()
 
doubleY ()
 
doubleZ ()
 
CoordinatesArrayType const & Coordinates () const
 
CoordinatesArrayTypeCoordinates ()
 
- Public Member Functions inherited from Kratos::array_1d< double, 3 >
BOOST_UBLAS_INLINE array_1d ()
 Default constructor. More...
 
BOOST_UBLAS_INLINE array_1d (size_type array_size)
 
BOOST_UBLAS_INLINE array_1d (size_type array_size, value_type v)
 
BOOST_UBLAS_INLINE array_1d (const std::initializer_list< value_type > &rInitList)
 
BOOST_UBLAS_INLINE array_1d (size_type array_size, const array_type &rdata)
 
BOOST_UBLAS_INLINE array_1d (const array_1d &v)
 
BOOST_UBLAS_INLINE array_1d (const boost::numeric::ublas::vector_expression< AE > &ae)
 
BOOST_UBLAS_INLINE const_reference operator() (size_type i) const
 
BOOST_UBLAS_INLINE reference operator() (size_type i)
 
BOOST_UBLAS_INLINE const_reference operator[] (size_type i) const
 
BOOST_UBLAS_INLINE reference operator[] (size_type i)
 
BOOST_UBLAS_INLINE array_1doperator= (const array_1d &v)
 
BOOST_UBLAS_INLINE array_1doperator= (const boost::numeric::ublas::vector_expression< AE > &ae)
 
BOOST_UBLAS_INLINE array_1doperator+= (const boost::numeric::ublas::vector_expression< AE > &ae)
 
BOOST_UBLAS_INLINE array_1doperator-= (const boost::numeric::ublas::vector_expression< AE > &ae)
 
BOOST_UBLAS_INLINE array_1doperator/= (const AT &at)
 
BOOST_UBLAS_INLINE bool operator== (const array_1d &v) const
 Compares whether this array_1d is equal to the given array_1d. More...
 
 KRATOS_CLASS_POINTER_DEFINITION (array_1d)
 Pointer definition of array_1d. More...
 
BOOST_UBLAS_INLINE const_iterator find (size_type i) const
 
BOOST_UBLAS_INLINE iterator find (size_type i)
 
BOOST_UBLAS_INLINE size_type size () const
 
BOOST_UBLAS_INLINE array_1dminus_assign (const boost::numeric::ublas::vector_expression< AE > &ae)
 
BOOST_UBLAS_INLINE const array_typedata () const
 
BOOST_UBLAS_INLINE array_typedata ()
 
BOOST_UBLAS_INLINE const_iterator begin () const
 
BOOST_UBLAS_INLINE iterator begin ()
 
BOOST_UBLAS_INLINE const_iterator end () const
 
BOOST_UBLAS_INLINE iterator end ()
 
BOOST_UBLAS_INLINE const_reverse_iterator rbegin () const
 
BOOST_UBLAS_INLINE reverse_iterator rbegin ()
 
BOOST_UBLAS_INLINE const_reverse_iterator rend () const
 
BOOST_UBLAS_INLINE reverse_iterator rend ()
 
BOOST_UBLAS_INLINE void resize (size_type array_size, bool preserve=true)
 
BOOST_UBLAS_INLINE array_1dassign_temporary (array_1d &v)
 
BOOST_UBLAS_INLINE array_1doperator*= (const AT &at)
 
BOOST_UBLAS_INLINE array_1dplus_assign (const boost::numeric::ublas::vector_expression< AE > &ae)
 
BOOST_UBLAS_INLINE array_1dassign (const boost::numeric::ublas::vector_expression< AE > &ae)
 
BOOST_UBLAS_INLINE void swap (array_1d &v)
 
BOOST_UBLAS_INLINE reference insert_element (size_type i, const_reference t)
 
BOOST_UBLAS_INLINE void erase_element (size_type i)
 
BOOST_UBLAS_INLINE void clear ()
 

Type Definitions

using BelongType = typename std::conditional< TNumNodes==2, PointBelongsLine2D2N, typename std::conditional< TNumNodes==3, typename std::conditional< TNumNodesMaster==3, PointBelongsTriangle3D3N, PointBelongsTriangle3D3NQuadrilateral3D4N >::type, typename std::conditional< TNumNodesMaster==3, PointBelongsQuadrilateral3D4NTriangle3D3N, PointBelongsQuadrilateral3D4N >::type >::type >::type
 The belonging type. More...
 
 KRATOS_CLASS_POINTER_DEFINITION (PointBelong)
 Counted pointer of PointBelong. More...
 

Additional Inherited Members

- Public Types inherited from Kratos::Point
typedef array_1d< double, mDimension > BaseType
 
typedef BaseType CoordinatesArrayType
 
typedef std::size_t SizeType
 
typedef std::size_t IndexType
 
- Public Types inherited from Kratos::array_1d< double, 3 >
typedef std::size_t size_type
 
typedef std::ptrdiff_t difference_type
 
typedef double value_type
 
typedef boost::numeric::ublas::type_traits< double >::const_reference const_reference
 
typedef double & reference
 
typedef std::array< double, N > array_type
 
typedef double * pointer
 
typedef array_1d< double, N > self_type
 
typedef const boost::numeric::ublas::vector_reference< const self_typeconst_closure_type
 
typedef boost::numeric::ublas::vector_reference< self_typeclosure_type
 
typedef self_type vector_temporary_type
 
typedef boost::numeric::ublas::dense_tag storage_category
 
typedef boost::numeric::ublas::reverse_iterator_base< const_iterator > const_reverse_iterator
 
typedef boost::numeric::ublas::reverse_iterator_base< iterator > reverse_iterator
 
- Static Public Member Functions inherited from Kratos::Point
static constexpr IndexType Dimension ()
 

Detailed Description

template<const SizeType TNumNodes, const SizeType TNumNodesMaster = TNumNodes>
class Kratos::PointBelong< TNumNodes, TNumNodesMaster >

Custom Point container to be used by the mapper.

This point which is a derived class of the standard point, contains the variable mBelongs. This variable is a "hash" that can be used to determine where in which intersections the point belongs

Author
Vicente Mataix Ferrandiz
Template Parameters
TNumNodesThe number of nodes of the slave
TNumNodesMasterThe number of nodes of the master

Member Typedef Documentation

◆ BelongType

template<const SizeType TNumNodes, const SizeType TNumNodesMaster = TNumNodes>
using Kratos::PointBelong< TNumNodes, TNumNodesMaster >::BelongType = typename std::conditional<TNumNodes == 2, PointBelongsLine2D2N, typename std::conditional<TNumNodes == 3, typename std::conditional<TNumNodesMaster == 3, PointBelongsTriangle3D3N, PointBelongsTriangle3D3NQuadrilateral3D4N>::type, typename std::conditional<TNumNodesMaster == 3, PointBelongsQuadrilateral3D4NTriangle3D3N, PointBelongsQuadrilateral3D4N>::type>::type>::type

The belonging type.

Constructor & Destructor Documentation

◆ PointBelong() [1/3]

template<const SizeType TNumNodes, const SizeType TNumNodesMaster = TNumNodes>
Kratos::PointBelong< TNumNodes, TNumNodesMaster >::PointBelong ( )
inline

Default constructors.

◆ PointBelong() [2/3]

template<const SizeType TNumNodes, const SizeType TNumNodesMaster = TNumNodes>
Kratos::PointBelong< TNumNodes, TNumNodesMaster >::PointBelong ( const array_1d< double, 3 >  Coords)
inline

◆ PointBelong() [3/3]

template<const SizeType TNumNodes, const SizeType TNumNodesMaster = TNumNodes>
Kratos::PointBelong< TNumNodes, TNumNodesMaster >::PointBelong ( const array_1d< double, 3 >  Coords,
const BelongType ThisBelongs 
)
inline

◆ ~PointBelong()

template<const SizeType TNumNodes, const SizeType TNumNodesMaster = TNumNodes>
Kratos::PointBelong< TNumNodes, TNumNodesMaster >::~PointBelong ( )
overridedefault

Destructor.

Member Function Documentation

◆ GetBelong()

template<const SizeType TNumNodes, const SizeType TNumNodesMaster = TNumNodes>
BelongType Kratos::PointBelong< TNumNodes, TNumNodesMaster >::GetBelong ( ) const
inline

This method recovers where the point belongs.

◆ KRATOS_CLASS_POINTER_DEFINITION()

template<const SizeType TNumNodes, const SizeType TNumNodesMaster = TNumNodes>
Kratos::PointBelong< TNumNodes, TNumNodesMaster >::KRATOS_CLASS_POINTER_DEFINITION ( PointBelong< TNumNodes, TNumNodesMaster >  )

Counted pointer of PointBelong.

◆ SetBelong()

template<const SizeType TNumNodes, const SizeType TNumNodesMaster = TNumNodes>
void Kratos::PointBelong< TNumNodes, TNumNodesMaster >::SetBelong ( BelongType  ThisBelongs)
inline

This method allows to set where the point belongs.


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