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.
|
#include <divide_triangle_2d_3.h>
Public Member Functions | |
virtual IndexedPointGeometryPointerType | GenerateAuxiliaryPartitionTriangle (const int I0, const int I1, const int I2) |
virtual IndexedPointGeometryPointerType | GenerateIntersectionLine (const int I0, const int I1) |
Life Cycle | |
DivideTriangle2D3 (const GeometryType &rInputGeometry, const Vector &rNodalDistances) | |
Default constructor. More... | |
~DivideTriangle2D3 () | |
Destructor. 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... | |
Operations | |
const std::vector< int > & | GetEdgeIdsI () const override |
const std::vector< int > & | GetEdgeIdsJ () const override |
std::vector< int > & | GetSplitEdges () override |
void | GenerateDivision () override |
void | GenerateIntersectionsSkin () override |
void | GenerateExteriorFaces (std::vector< IndexedPointGeometryPointerType > &rExteriorFacesVector, std::vector< unsigned int > &rExteriorFacesParentSubdivisionsIdsVector, const std::vector< IndexedPointGeometryPointerType > &rSubdivisionsContainer) override |
void | GenerateExteriorFaces (std::vector< IndexedPointGeometryPointerType > &rExteriorFacesVector, std::vector< unsigned int > &rExteriorFacesParentSubdivisionsIdsVector, const std::vector< IndexedPointGeometryPointerType > &rSubdivisionsContainer, const unsigned int FatherFaceId) override |
Public Member Functions inherited from Kratos::DivideGeometry< TPointType > | |
DivideGeometry (const GeometryType &rInputGeometry, const Vector &rNodalDistances) | |
Default constructor. More... | |
virtual | ~DivideGeometry () |
Destructor. More... | |
std::vector< IndexedPointGeometryPointerType > | GetPositiveSubdivisions () const |
Get the Positive Subdivisions object This method returns the container with the positive side subgeometries. More... | |
std::vector< IndexedPointGeometryPointerType > | GetNegativeSubdivisions () const |
Get the Negative Subdivisions object This method returns the container with the negative side subgeometries. More... | |
std::vector< IndexedPointGeometryPointerType > | GetPositiveInterfaces () const |
Get the Positive Interfaces object This method returns the container with the positive side interfaces. More... | |
std::vector< IndexedPointGeometryPointerType > | GetNegativeInterfaces () const |
Get the Negaitive Interfaces object This method returns the container with the negative side interfaces. More... | |
std::vector< unsigned int > | GetPositiveInterfacesParentIds () const |
Get the Positive Interfaces Parent Ids object This method returns the container with the positive side interfaces parent ids. More... | |
std::vector< unsigned int > | GetNegativeInterfacesParentIds () const |
Get the Negative Interfaces Parent Ids object This method returns the container with the negative side interfaces parent ids. More... | |
Vector | GetNodalDistances () const |
GeometryType | GetInputGeometry () const |
KRATOS_CLASS_POINTER_DEFINITION (DivideGeometry) | |
Pointer definition of DivideGeometry. More... | |
Type Definitions | |
typedef DivideGeometry< TPointType > | BaseType |
typedef BaseType::GeometryType | GeometryType |
typedef BaseType::IndexedPointType | IndexedPointType |
typedef BaseType::IndexedPointPointerType | IndexedPointPointerType |
typedef BaseType::IndexedPointGeometryType | IndexedPointGeometryType |
typedef BaseType::IndexedPointGeometryType::GeometriesArrayType | IndexedGeometriesArrayType |
typedef BaseType::IndexedPointGeometryPointerType | IndexedPointGeometryPointerType |
typedef Line2D2< IndexedPointType > | IndexedPointLineType |
typedef Triangle2D3< IndexedPointType > | IndexedPointTriangleType |
const std::vector< int > | mEdgeNodeI = {0, 1, 2} |
const std::vector< int > | mEdgeNodeJ = {1, 2, 0} |
std::vector< int > | mSplitEdges = {0, 1, 2, -1, -1, -1} |
KRATOS_CLASS_POINTER_DEFINITION (DivideTriangle2D3) | |
Pointer definition of DivideTriangle2D3. More... | |
typedef DivideGeometry<TPointType> Kratos::DivideTriangle2D3< TPointType >::BaseType |
typedef BaseType::GeometryType Kratos::DivideTriangle2D3< TPointType >::GeometryType |
typedef BaseType::IndexedPointGeometryType::GeometriesArrayType Kratos::DivideTriangle2D3< TPointType >::IndexedGeometriesArrayType |
typedef BaseType::IndexedPointGeometryPointerType Kratos::DivideTriangle2D3< TPointType >::IndexedPointGeometryPointerType |
typedef BaseType::IndexedPointGeometryType Kratos::DivideTriangle2D3< TPointType >::IndexedPointGeometryType |
typedef Line2D2< IndexedPointType > Kratos::DivideTriangle2D3< TPointType >::IndexedPointLineType |
typedef BaseType::IndexedPointPointerType Kratos::DivideTriangle2D3< TPointType >::IndexedPointPointerType |
typedef Triangle2D3< IndexedPointType > Kratos::DivideTriangle2D3< TPointType >::IndexedPointTriangleType |
typedef BaseType::IndexedPointType Kratos::DivideTriangle2D3< TPointType >::IndexedPointType |
Kratos::DivideTriangle2D3< TPointType >::DivideTriangle2D3 | ( | const GeometryType & | rInputGeometry, |
const Vector & | rNodalDistances | ||
) |
Default constructor.
Kratos::DivideTriangle2D3< TPointType >::~DivideTriangle2D3 |
Destructor.
|
virtual |
Reimplemented in Kratos::DivideTriangle3D3< TPointType >.
|
overridevirtual |
Divides the input geometry according to the provided distance data.
Implements Kratos::DivideGeometry< TPointType >.
|
overridevirtual |
Generates a list containing the exterior (boundary) faces geometries for either the positive or the negative element subdivisions.
rExteriorFacesVector | Vector containing the generated exterior subfaces geometries |
rExteriorFacesParentSubdivisionsIdsVector | Vector containing the ids of the parent subdivision of each subface |
rSubdivisionsContainer | Positive or negative parent geometry subdivisions container |
Reimplemented from Kratos::DivideGeometry< TPointType >.
|
overridevirtual |
Given a father face id, generates a list containing the exterior (boundary) faces geometries belonging to either the positive or negative side of that that father face.
rExteriorFacesVector | Vector containing the generated exterior subfaces geometries |
rExteriorFacesParentSubdivisionsIdsVector | Vector containing the ids of the parent subdivision of each subface |
rSubdivisionsContainer | Positive or negative parent geometry subdivisions container |
FatherFaceId | Father face in where the positive exterior faces are to be obtained |
Reimplemented from Kratos::DivideGeometry< TPointType >.
|
virtual |
Reimplemented in Kratos::DivideTriangle3D3< TPointType >.
|
overridevirtual |
Generates a list containing the intersection interface geometries for either the positive or the negative element subdivisions.
Implements Kratos::DivideGeometry< TPointType >.
|
overridevirtual |
Returns the member vector containing the edges node I ids.
Implements Kratos::DivideGeometry< TPointType >.
|
overridevirtual |
Returns the member vector containing the edges node J ids.
Implements Kratos::DivideGeometry< TPointType >.
|
overridevirtual |
Returns the member vector containing the split edges member vector.
Implements Kratos::DivideGeometry< TPointType >.
|
overridevirtual |
Turn back information as a string.
Reimplemented from Kratos::DivideGeometry< TPointType >.
Kratos::DivideTriangle2D3< TPointType >::KRATOS_CLASS_POINTER_DEFINITION | ( | DivideTriangle2D3< TPointType > | ) |
Pointer definition of DivideTriangle2D3.
|
overridevirtual |
Print object's data.
Reimplemented from Kratos::DivideGeometry< TPointType >.
|
overridevirtual |
Print information about this object.
Reimplemented from Kratos::DivideGeometry< TPointType >.
const std::vector<int> Kratos::DivideTriangle2D3< TPointType >::mEdgeNodeI = {0, 1, 2} |
const std::vector<int> Kratos::DivideTriangle2D3< TPointType >::mEdgeNodeJ = {1, 2, 0} |
std::vector<int> Kratos::DivideTriangle2D3< TPointType >::mSplitEdges = {0, 1, 2, -1, -1, -1} |