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.
Public Types | Public Member Functions | List of all members
Kratos::LinearToQuadraticTetrahedraMeshConverter Class Reference

#include <linear_to_quadratic_tetrahedra_mesh_converter_utility.h>

Inheritance diagram for Kratos::LinearToQuadraticTetrahedraMeshConverter:
Collaboration diagram for Kratos::LinearToQuadraticTetrahedraMeshConverter:

Public Types

typedef Node NodeType
 
typedef Geometry< NodeTypeGeometryType
 
typedef GeometryType::Pointer GeometryPtrType
 
- 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
 

Public Member Functions

 KRATOS_CLASS_POINTER_DEFINITION (LinearToQuadraticTetrahedraMeshConverter)
 Pointer definition of VoxelInsideVolume. More...
 
Life Cycle
 LinearToQuadraticTetrahedraMeshConverter (ModelPart &ModelPart)
 Default constructors. More...
 
 ~LinearToQuadraticTetrahedraMeshConverter ()=default
 Destructor. More...
 
Operations
void LocalConvertLinearToQuadraticTetrahedraMesh (bool RefineOnReference, bool InterpolateInternalVariables)
 
- Public Member Functions inherited from Kratos::LocalRefineTetrahedraMesh
 LocalRefineTetrahedraMesh (ModelPart &rModelPart)
 Default constructors. More...
 
 ~LocalRefineTetrahedraMesh ()=default
 Destructor. More...
 
unsigned int CreateCenterNode (Geometry< Node > &geom, ModelPart &model_part)
 
void EraseOldElementAndCreateNewElement (ModelPart &this_model_part, const compressed_matrix< int > &Coord, PointerVector< Element > &NewElements, bool interpolate_internal_variables) override
 
void UpdateSubModelPartElements (ModelPart &this_model_part, PointerVector< Element > &NewElements)
 
void EraseOldConditionsAndCreateNew (ModelPart &this_model_part, const compressed_matrix< int > &Coord) override
 
void UpdateSubModelPartConditions (ModelPart &rModelPart, PointerVector< Condition > &rNewConditions)
 
void CalculateEdges (Element::GeometryType &geom, const compressed_matrix< int > &Coord, int *edge_ids, std::vector< int > &aux) override
 
void CalculateEdgesFaces (Element::GeometryType &geom, const compressed_matrix< int > &Coord, int *edge_ids, array_1d< int, 6 > &aux)
 
- 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 CSRRowMatrix (ModelPart &this_model_part, compressed_matrix< int > &Coord)
 
virtual void SearchEdgeToBeRefined (ModelPart &this_model_part, compressed_matrix< int > &Coord)
 
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)
 
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)
 
virtual void ResetFatherNodes (ModelPart &rModelPart)
 

Additional Inherited Members

- 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
 

Member Typedef Documentation

◆ GeometryPtrType

◆ GeometryType

◆ NodeType

Constructor & Destructor Documentation

◆ LinearToQuadraticTetrahedraMeshConverter()

Kratos::LinearToQuadraticTetrahedraMeshConverter::LinearToQuadraticTetrahedraMeshConverter ( ModelPart ModelPart)
inline

Default constructors.

◆ ~LinearToQuadraticTetrahedraMeshConverter()

Kratos::LinearToQuadraticTetrahedraMeshConverter::~LinearToQuadraticTetrahedraMeshConverter ( )
default

Destructor.

Member Function Documentation

◆ KRATOS_CLASS_POINTER_DEFINITION()

Kratos::LinearToQuadraticTetrahedraMeshConverter::KRATOS_CLASS_POINTER_DEFINITION ( LinearToQuadraticTetrahedraMeshConverter  )

Pointer definition of VoxelInsideVolume.

◆ LocalConvertLinearToQuadraticTetrahedraMesh()

void Kratos::LinearToQuadraticTetrahedraMeshConverter::LocalConvertLinearToQuadraticTetrahedraMesh ( bool  RefineOnReference,
bool  InterpolateInternalVariables 
)

Replaces the geometry of the mesh of Tetrahedra3D4 elements. Resulting is a mesh of Tetrahedra3D10 created by adding intermediate nodes to each Tetrahedra3D4. Does the same for conditions, replacing the Triangle3D3 by Triangle3D6

Parameters
RefineOnReferenceBoolean that defines if refine or not the mesh according to the reference
InterpolateInternalVariablesBoolean that defines if to interpolate or not the internal variables

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