![]() |
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 <compound_noses_bounding_box.hpp>
Classes | |
| struct | BoxNoseVariables |
Public Types | |
| 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 |
| typedef ModelPart::ElementType | ElementType |
| typedef ElementType::GeometryType | GeometryType |
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 |
Public Member Functions | |
Type Definitions | |
| KRATOS_CLASS_POINTER_DEFINITION (CompoundNosesBoundingBox) | |
| Pointer definition of CompoundNosesBoundingBox. More... | |
Life Cycle | |
| CompoundNosesBoundingBox () | |
| Default constructor. More... | |
| CompoundNosesBoundingBox (Parameters CustomParameters) | |
| CompoundNosesBoundingBox (Vector Radius, Vector RakeAngles, Vector ClearanceAngles, Matrix Centers, Vector Convexities, Vector Velocity, Vector AngularVelocity, Vector UpperPoint, Vector LowerPoint, Matrix InitialLocalMatrix) | |
| CompoundNosesBoundingBox & | operator= (CompoundNosesBoundingBox const &rOther) |
| Assignment operator. More... | |
| CompoundNosesBoundingBox (CompoundNosesBoundingBox const &rOther) | |
| Copy constructor. More... | |
| virtual | ~CompoundNosesBoundingBox () |
| Destructor. More... | |
Operations | |
| double | GetRadius (const PointType &rPoint) override |
| PointType | GetCenter (const PointType &rPoint) override |
| void | UpdateBoxPosition (const double &rCurrentTime) override |
| 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 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 PointType | GetVelocity () |
| virtual PointType | GetCenter () |
| 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 | |
| void | CreateLinearBoundaryMesh (ModelPart &rModelPart, const unsigned int &rInitialNodeId) |
| void | CreateQuadrilateralBoundaryMesh (ModelPart &rModelPart, const unsigned int &rFirstInitialNodeId, const unsigned int &rSecondInitialNodeId) |
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 member Variables | |
| std::vector< BoxNoseVariables > | mBoxNoses |
Protected Attributes inherited from Kratos::SpatialBoundingBox | |
| NodeType::Pointer | mpRigidBodyCenter |
| bool | mRigidBodyCenterSupplied |
| BoundingBoxVariables | mBox |
Additional Inherited Members | |
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 2D wall composed by a set of two-line sistems called "Noses" each pair of lines are tangent to the semi-circle given by a center and a radius these semi-circles represent the "noses" or the "tips" of the box wall One line is the upper line of the nose defined by a rake angle (respect to the vertical axis) The other line is a down line defined by a clearance angle (respect to the horizontal axis)
A convexity parameter is given to determine which side of each nose is considered the internal or external boundary
This bounding box is essentially used for rigid wall contact purposes
| typedef NodesContainerType::Pointer Kratos::CompoundNosesBoundingBox::NodesContainerTypePointer |
|
inline |
Default constructor.
|
inline |
|
inline |
|
inline |
Copy constructor.
|
inlinevirtual |
Destructor.
|
inlineoverridevirtual |
Reimplemented from Kratos::SpatialBoundingBox.
|
inlineprotected |
|
inlineprotected |
|
inlineoverridevirtual |
Reimplemented from Kratos::SpatialBoundingBox.
|
inlineoverridevirtual |
Reimplemented from Kratos::SpatialBoundingBox.
|
inlineoverridevirtual |
Turn back information as a string.
Reimplemented from Kratos::SpatialBoundingBox.
|
inlineoverridevirtual |
Reimplemented from Kratos::SpatialBoundingBox.
|
inlineoverridevirtual |
Reimplemented from Kratos::SpatialBoundingBox.
| Kratos::CompoundNosesBoundingBox::KRATOS_CLASS_POINTER_DEFINITION | ( | CompoundNosesBoundingBox | ) |
Pointer definition of CompoundNosesBoundingBox.
|
inline |
Assignment operator.
|
inlineoverridevirtual |
Print object's data.
Reimplemented from Kratos::SpatialBoundingBox.
|
inlineoverridevirtual |
Print information about this object.
Reimplemented from Kratos::SpatialBoundingBox.
|
inlineoverridevirtual |
Reimplemented from Kratos::SpatialBoundingBox.
|
protected |