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::LocalRefineTriangleMeshConditions Class Reference

#include <local_refine_triangle_mesh_conditions.hpp>

Inheritance diagram for Kratos::LocalRefineTriangleMeshConditions:
Collaboration diagram for Kratos::LocalRefineTriangleMeshConditions:

Public Member Functions

Life Cycle
 LocalRefineTriangleMeshConditions (ModelPart &model_part)
 Default constructors. More...
 
 ~LocalRefineTriangleMeshConditions () override=default
 Destructor. More...
 
Operations
void EraseOldElementAndCreateNewElement (ModelPart &rModelPart, const compressed_matrix< int > &rCoord, PointerVector< Element > &rNewElements, bool InterpolateInternalVariables) override
 
void EraseOldConditionsAndCreateNew (ModelPart &rModelPart, const compressed_matrix< int > &rCoord) override
 
void SearchEdgeToBeRefined (ModelPart &rModelPart, compressed_matrix< int > &rCoord) override
 
void ResetFatherNodes (ModelPart &rModelPart) override
 
void UpdateSubModelPartConditions (ModelPart &rModelPart, PointerVector< Condition > &NewConditions)
 
void CSRRowMatrix (ModelPart &rModelPart, compressed_matrix< int > &rCoord) override
 
- Public Member Functions inherited from Kratos::LocalRefineTriangleMeshGeneric< Condition, ModelPart::ConditionsContainerType >
 LocalRefineTriangleMeshGeneric (ModelPart &model_part)
 Default constructors. More...
 
 ~LocalRefineTriangleMeshGeneric () override=default
 Destructor. More...
 
void EraseOldObjetcsAndCreateNewObjects (ModelPart &rThisModelPart, ModelPart::ConditionsContainerType &rObjects, const compressed_matrix< int > &rCoord, PointerVector< Condition > &rNewObjects, bool InterpolateInternalVariables)
 
void CalculateEdges (Geometry< Node > &rGeom, const compressed_matrix< int > &rCoord, int *EdgeIds, std::vector< int > &rAux) override
 
GlobalPointersVector< Element > & GetNeighbour (ElementsArrayType::iterator it_elem)
 
GlobalPointersVector< Condition > & GetNeighbour (ConditionsArrayType::iterator it_cond)
 
- Public Member Functions inherited from Kratos::LocalRefineGeometryMesh
 LocalRefineGeometryMesh (ModelPart &model_part)
 Default constructors. More...
 
virtual ~LocalRefineGeometryMesh ()=default
 Destructor. More...
 
virtual void LocalRefineMesh (bool refine_on_reference, bool interpolate_internal_variables)
 
virtual void CreateListOfNewNodes (ModelPart &this_model_part, compressed_matrix< int > &Coord, std::vector< int > &List_New_Nodes, std::vector< array_1d< int, 2 > > &Position_Node)
 
virtual void CalculateCoordinateAndInsertNewNodes (ModelPart &this_model_part, const std::vector< array_1d< int, 2 > > &Position_Node, const std::vector< int > &List_New_Nodes)
 
virtual void CalculateEdges (Element::GeometryType &geom, const compressed_matrix< int > &Coord, int *edge_ids, std::vector< int > &aux)
 
void CreatePartition (unsigned int number_of_threads, const int number_of_rows, vector< unsigned int > &partitions)
 
template<typename TGeometricalObjectPointerType >
void InterpolateInteralVariables (const int &number_elem, const TGeometricalObjectPointerType father_elem, TGeometricalObjectPointerType child_elem, const ProcessInfo &rCurrentProcessInfo)
 
virtual void UpdateSubModelPartNodes (ModelPart &rModelPart)
 

Additional Inherited Members

- Public Types inherited from Kratos::LocalRefineGeometryMesh
typedef ModelPart::NodesContainerType NodesArrayType
 
typedef ModelPart::ElementsContainerType ElementsArrayType
 
typedef ModelPart::ConditionsContainerType ConditionsArrayType
 
typedef std::vector< MatrixMatrix_Order_Tensor
 
typedef std::vector< VectorVector_Order_Tensor
 
typedef std::vector< Vector_Order_TensorNode_Vector_Order_Tensor
 
typedef Node PointType
 
typedef Node ::Pointer PointPointerType
 
typedef std::vector< PointType::Pointer > PointVector
 
typedef PointVector::iterator PointIterator
 
- Protected Member Functions inherited from Kratos::LocalRefineGeometryMesh
template<typename TIteratorType >
void SearchEdgeToBeRefinedGeneric (TIteratorType GeometricalObjectsBegin, TIteratorType GeometricalObjectsEnd, compressed_matrix< int > &rCoord)
 
- Protected Attributes inherited from Kratos::LocalRefineGeometryMesh
ModelPartmModelPart
 
int mCurrentRefinementLevel
 The model part to be refined. More...
 
std::unordered_map< std::size_t, unsigned intmMapNodeIdToPos
 The current refinement level. More...
 
std::vector< std::size_t > mMapPosToNodeId
 

Constructor & Destructor Documentation

◆ LocalRefineTriangleMeshConditions()

Kratos::LocalRefineTriangleMeshConditions::LocalRefineTriangleMeshConditions ( ModelPart model_part)
inline

Default constructors.

◆ ~LocalRefineTriangleMeshConditions()

Kratos::LocalRefineTriangleMeshConditions::~LocalRefineTriangleMeshConditions ( )
overridedefault

Destructor.

Member Function Documentation

◆ CSRRowMatrix()

void Kratos::LocalRefineTriangleMeshConditions::CSRRowMatrix ( ModelPart this_model_part,
compressed_matrix< int > &  Coord 
)
inlineoverridevirtual

This function initialises the matrix Cord

Returns
Coord: The matrix that stores all the index of the geometry
this_model_part: The model part of the model (it is the input too)

Reimplemented from Kratos::LocalRefineGeometryMesh.

◆ EraseOldConditionsAndCreateNew()

void Kratos::LocalRefineTriangleMeshConditions::EraseOldConditionsAndCreateNew ( ModelPart rModelPart,
const compressed_matrix< int > &  rCoord 
)
inlineoverridevirtual

Remove the old conditions and creates new ones

Parameters
rModelPartThe model part of the model (it is the input too)
rCoordThe coordinates of the nodes of the geometry

Reimplemented from Kratos::LocalRefineGeometryMesh.

◆ EraseOldElementAndCreateNewElement()

void Kratos::LocalRefineTriangleMeshConditions::EraseOldElementAndCreateNewElement ( ModelPart rModelPart,
const compressed_matrix< int > &  rCoord,
PointerVector< Element > &  rNewElements,
bool  InterpolateInternalVariables 
)
inlineoverridevirtual

It erases the old elements and it creates the new ones

Parameters
rModelPartThe model part of the model (it is the input too)
rCoordThe coordinates of the element
rNewElementsThe new elements created
InterpolateInternalVariablesA boolean that defines if it is necessary to interpolate the internal variables Nothing done here since only conditions are used

Reimplemented from Kratos::LocalRefineGeometryMesh.

◆ ResetFatherNodes()

void Kratos::LocalRefineTriangleMeshConditions::ResetFatherNodes ( ModelPart rModelPart)
inlineoverridevirtual

Reimplemented from Kratos::LocalRefineGeometryMesh.

◆ SearchEdgeToBeRefined()

void Kratos::LocalRefineTriangleMeshConditions::SearchEdgeToBeRefined ( ModelPart this_model_part,
compressed_matrix< int > &  Coord 
)
inlineoverridevirtual

This functions looks for potential edges that could be refined

Returns
Coord: The matrix that stores all the index of the geometry
this_model_part: The model part of the model (it is the input too)

Reimplemented from Kratos::LocalRefineGeometryMesh.

◆ UpdateSubModelPartConditions()

void Kratos::LocalRefineTriangleMeshConditions::UpdateSubModelPartConditions ( ModelPart rModelPart,
PointerVector< Condition > &  NewConditions 
)
inline

Updates recursively the elements in the submodelpars

Parameters
NewElementslist of elems
Returns
rModelPart: The model part of the model (it is the input too)

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