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.
derivative_recovery_meshing_tools.h
Go to the documentation of this file.
1 //
2 // Project Name: Kratos
3 // Last Modified by: $Author: gcasas $
4 // Date: $Date: 2014-03-08 08:56:42 $
5 //
6 //
7 
8 #if !defined(KRATOS_DERIVATIVE_RECOVERY_MESHING_TOOLS)
9 #define KRATOS_DERIVATIVE_RECOVERY_MESHING_TOOLS
10 
11 // /* External includes */
12 #ifdef _OPENMP
13 #include <omp.h>
14 #endif
15 
16 // System includes
17 #include <string>
18 #include <iostream>
19 #include <cstdlib>
20 
21 #include "includes/model_part.h"
22 
23 namespace Kratos
24 {
25 
28 
32 
36 
40 
44 
46 
49 template<std::size_t TDim>
50 class KRATOS_API(SWIMMING_DEM_APPLICATION) DerivativeRecoveryMeshingTools
51 {
52 public:
55  typedef ModelPart::ElementsContainerType::iterator ElementIteratorType;
56  typedef ModelPart::NodesContainerType::iterator NodeIteratorType;
58 
61 
65 
67 
69 
72 
76 
80 
81 //***************************************************************************************************************
82 //***************************************************************************************************************
83 
84 void FillUpEdgesModelPartFromSimplicesModelPart(ModelPart& r_edges_model_part, ModelPart& r_tetra_model_part, std::string element_type);
85 
86 //**************************************************************************************************************************************************
87 //**************************************************************************************************************************************************
88 
89 
93 
97 
101 
103 virtual std::string Info() const
104 {
105  return "";
106 }
107 
109 virtual void PrintInfo(std::ostream& rOStream) const {}
110 
112 virtual void PrintData(std::ostream& rOStream) const {}
113 
118 
119 protected:
120 
121 private:
122 
123 
127 
131 
135 
139 
143 
146 
148 
149 }; // Class DerivativeRecoveryMeshingTools
150 
152 
155 
159 
161 template<std::size_t TDim>
162 inline std::ostream& operator << (std::ostream& rOStream,
164 {
165  rThis.PrintInfo(rOStream);
166  rOStream << std::endl;
167  rThis.PrintData(rOStream);
168 
169  return rOStream;
170 }
172 
173 } // namespace Kratos.
174 
175 #endif // KRATOS_DERIVATIVE_RECOVERY_MESHING_TOOLS defined
PeriodicInterfaceProcess & operator=(const PeriodicInterfaceProcess &)=delete
This class performs simple meshing tools related to the derivative recovery algorithms.
Definition: derivative_recovery_meshing_tools.h:51
virtual void PrintData(std::ostream &rOStream) const
Print object's data.
Definition: derivative_recovery_meshing_tools.h:112
DerivativeRecoveryMeshingTools()
Default constructor.
Definition: derivative_recovery_meshing_tools.h:68
virtual std::string Info() const
Turn back information as a stemplate<class T, std::size_t dim> tring.
Definition: derivative_recovery_meshing_tools.h:103
ModelPart::ElementsContainerType::iterator ElementIteratorType
Definition: derivative_recovery_meshing_tools.h:55
KRATOS_CLASS_POINTER_DEFINITION(DerivativeRecoveryMeshingTools)
Pointer definition of DerivativeRecoveryMeshingTools.
virtual ~DerivativeRecoveryMeshingTools()
Destructor.
Definition: derivative_recovery_meshing_tools.h:71
Properties PropertiesType
Definition: derivative_recovery_meshing_tools.h:57
ModelPart::NodesContainerType::iterator NodeIteratorType
Definition: derivative_recovery_meshing_tools.h:56
virtual void PrintInfo(std::ostream &rOStream) const
Print information about this object.
Definition: derivative_recovery_meshing_tools.h:109
This class aims to manage meshes for multi-physics simulations.
Definition: model_part.h:77
Properties encapsulates data shared by different Elements or Conditions. It can store any type of dat...
Definition: properties.h:69
REF: G. R. Cowper, GAUSSIAN QUADRATURE FORMULAS FOR TRIANGLES.
Definition: mesh_condition.cpp:21
std::ostream & operator<<(std::ostream &rOStream, const LinearMasterSlaveConstraint &rThis)
output stream function
Definition: linear_master_slave_constraint.h:432
element_type
Choosing element type for lagrangian_model_part.
Definition: lagrangian_droplet_test.py:56