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 <cylinder_bounding_box.hpp>
Public Member Functions | |
Life Cycle | |
CylinderBoundingBox () | |
Default constructor. More... | |
CylinderBoundingBox (Parameters CustomParameters) | |
CylinderBoundingBox (PointType FirstCenter, PointType SecondCenter, double Radius, PointType Velocity, int Convexity) | |
CylinderBoundingBox & | operator= (CylinderBoundingBox const &rOther) |
Assignment operator. More... | |
CylinderBoundingBox (CylinderBoundingBox const &rOther) | |
Copy constructor. More... | |
virtual | ~CylinderBoundingBox () |
Destructor. More... | |
Operations | |
bool | IsInside (const PointType &rPoint, double &rCurrentTime, double Radius=0) override |
bool | IsInside (BoundingBoxParameters &rValues, const ProcessInfo &rCurrentProcessInfo) override |
void | CreateBoundingBoxBoundaryMesh (ModelPart &rModelPart, int linear_partitions=4, int angular_partitions=4) override |
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::SpatialBoundingBox | |
KRATOS_CLASS_POINTER_DEFINITION (SpatialBoundingBox) | |
Pointer definition of SpatialBoundingBox. More... | |
SpatialBoundingBox () | |
Default constructor. More... | |
SpatialBoundingBox (Parameters CustomParameters) | |
SpatialBoundingBox (const PointType &rLowerPoint, const PointType &rUpperPoint) | |
SpatialBoundingBox (const PointType &rCenter, const double &rRadius) | |
SpatialBoundingBox (ModelPart &rModelPart, const double &rRadius, double factor=0) | |
virtual SpatialBoundingBox & | operator= (SpatialBoundingBox const &rOther) |
Assignment operator. More... | |
SpatialBoundingBox (SpatialBoundingBox const &rOther) | |
Copy constructor. More... | |
virtual | ~SpatialBoundingBox () |
Destructor. More... | |
virtual void | UpdateBoxPosition (const double &rCurrentTime) |
virtual bool | IsInside (const PointType &rPoint) |
virtual void | GetParametricDirections (BoundingBoxParameters &rValues, Vector &rT1, Vector &rT2) |
void | SetUpperPoint (PointType &rUpperPoint) |
void | SetLowerPoint (PointType &rLowerPoint) |
void | SetVelocity (PointType &rVelocity) |
void | SetAngularVelocity (PointType &rAngularVelocity) |
void | SetDimension (int dimension) |
void | SetAxisymmetric () |
void | SetRigidBodyCenter (NodeType::Pointer pCenter) |
virtual double | GetRadius () |
virtual double | GetRadius (const PointType &rPoint) |
virtual PointType | GetVelocity () |
virtual PointType | GetCenter () |
virtual PointType | GetCenter (const PointType &rPoint) |
std::vector< PointType > | GetHoles (ModelPart &rModelPart) |
Compute inside holes. More... | |
void | GetVertices (std::vector< PointType > &rVertices, const double &rCurrentTime, const unsigned int &rDimension) |
Compute vertices. More... | |
void | GetTriangularFaces (DenseMatrix< unsigned int > &rFaces, const unsigned int &rDimension) |
void | GetQuadrilateralFaces (DenseMatrix< unsigned int > &rFaces, const unsigned int &rDimension) |
Protected Member Functions | |
Protected Operations | |
bool | ContactSearch (const PointType &rPoint, const double &rRadius) |
bool | ContactSearch (BoundingBoxParameters &rValues, const ProcessInfo &rCurrentProcessInfo) |
void | CreateQuadrilateralBoundaryMesh (ModelPart &rModelPart, const unsigned int &rInitialNodeId, const unsigned int &angular_partitions) |
Protected Member Functions inherited from Kratos::SpatialBoundingBox | |
void | MapToLocalFrame (QuaternionType &rQuaternion, BoundingBoxVariables &rBox) |
PointType | GetBoxDisplacement (const double &rCurrentTime) |
PointType | GetBoxDeltaDisplacement (const double &rCurrentTime, const double &rPreviousTime) |
void | ComputeContactTangent (BoundingBoxParameters &rValues, const ProcessInfo &rCurrentProcessInfo) |
NodeType::Pointer | CreateNode (ModelPart &rModelPart, PointType &rPoint, const unsigned int &rNodeId) |
void | CalculateOrthonormalBase (PointType &rDirectionVectorX, PointType &rDirectionVectorY, PointType &rDirectionVectorZ) |
Protected Attributes | |
Protected static Member Variables | |
PointType | mFirstCenter |
PointType | mSecondCenter |
Protected Attributes inherited from Kratos::SpatialBoundingBox | |
NodeType::Pointer | mpRigidBodyCenter |
bool | mRigidBodyCenterSupplied |
BoundingBoxVariables | mBox |
Type Definitions | |
typedef array_1d< double, 3 > | PointType |
typedef ModelPart::NodeType | NodeType |
typedef ModelPart::NodesContainerType | NodesContainerType |
typedef NodesContainerType::Pointer | NodesContainerTypePointer |
typedef Quaternion< double > | QuaternionType |
typedef ModelPart::ElementType | ElementType |
typedef ElementType::GeometryType | GeometryType |
KRATOS_CLASS_POINTER_DEFINITION (CylinderBoundingBox) | |
Pointer definition of CylinderBoundingBox. More... | |
Additional Inherited Members | |
Public Types inherited from Kratos::SpatialBoundingBox | |
typedef array_1d< double, 3 > | PointType |
typedef ModelPart::NodeType | NodeType |
typedef ModelPart::NodesContainerType | NodesContainerType |
typedef NodesContainerType::Pointer | NodesContainerTypePointer |
typedef BeamMathUtils< double > | BeamMathUtilsType |
typedef Quaternion< double > | QuaternionType |
Static Protected Member Functions inherited from Kratos::SpatialBoundingBox | |
static unsigned int | GetMaxNodeId (ModelPart &rModelPart) |
static unsigned int | GetMaxElementId (ModelPart &rModelPart) |
Short class definition.
Detail class definition.
This Box represents a 3D wall composed by a cylinder
A convexity parameter is given to determine if the internal or external space is considered as boundary
This bounding box is essentially used for rigid wall contact purposes
typedef NodesContainerType::Pointer Kratos::CylinderBoundingBox::NodesContainerTypePointer |
typedef array_1d<double, 3> Kratos::CylinderBoundingBox::PointType |
|
inline |
Default constructor.
|
inline |
|
inline |
|
inline |
Copy constructor.
|
inlinevirtual |
Destructor.
|
inlineprotected |
|
inlineprotected |
|
inlineoverridevirtual |
Reimplemented from Kratos::SpatialBoundingBox.
|
inlineprotected |
|
inlineoverridevirtual |
Turn back information as a string.
Reimplemented from Kratos::SpatialBoundingBox.
|
inlineoverridevirtual |
Reimplemented from Kratos::SpatialBoundingBox.
|
inlineoverridevirtual |
Reimplemented from Kratos::SpatialBoundingBox.
Kratos::CylinderBoundingBox::KRATOS_CLASS_POINTER_DEFINITION | ( | CylinderBoundingBox | ) |
Pointer definition of CylinderBoundingBox.
|
inline |
Assignment operator.
|
inlineoverridevirtual |
Print object's data.
Reimplemented from Kratos::SpatialBoundingBox.
|
inlineoverridevirtual |
Print information about this object.
Reimplemented from Kratos::SpatialBoundingBox.
|
protected |
|
protected |