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.
geometry_metric_calculator.h
Go to the documentation of this file.
1 // | / |
2 // ' / __| _` | __| _ \ __|
3 // . \ | ( | | ( |\__ `
4 // _|\_\_| \__,_|\__|\___/ ____/
5 // Multi-Physics
6 //
7 // License: BSD License
8 // Kratos default license: kratos/license.txt
9 //
10 // Main authors: Ruben Zorrilla
11 //
12 //
13 
14 #if !defined(KRATOS_GEOMETRY_METRIC_CALCULATOR_INCLUDED)
15 #define KRATOS_GEOMETRY_METRIC_CALCULATOR_INCLUDED
16 
17 // System includes
18 
19 // External includes
20 
21 // Project includes
22 #include "includes/define.h"
23 #include "includes/node.h"
24 #include "geometries/geometry.h"
25 
26 namespace Kratos
27 {
30 
33 
37 
41 
45 
49 
50 template<std::size_t TDim, std::size_t TNumNodes>
51 class KRATOS_API(KRATOS_CORE) GeometryMetricCalculator
52 {
53 public:
56 
59 
61 
65 
66  // Deleted default constructor
68 
71 
75 
78 
82 
93  static void CalculateMetricTensor(
94  const GeometryType& rGeometry,
95  BoundedMatrix<double, TDim, TDim>& rMetricTensor);
96 
113  static void CalculateMetricTensor(
114  const GeometryType& rGeometry,
115  BoundedMatrix<double, TDim, TDim>& rMetricTensor,
116  double& rReferenceElementSize,
117  double& rMetricInfimum,
118  double& rMetricSupremum);
119 
138  static void CalculateMetricTensorDimensionless(
139  const GeometryType& rGeometry,
140  BoundedMatrix<double, TDim, TDim>& rMetricTensorDimensionless,
141  double& rReferenceElementSize,
142  double& rMetricInfimum,
143  double& rMetricSupremum);
144 
146 }; // Class GeometryMetricCalculator
147 
149 
151 
152 } // namespace Kratos.
153 
154 #endif // KRATOS_GEOMETRY_METRIC_CALCULATOR_INCLUDED defined
155 
Geometry base class.
Definition: geometry.h:71
Definition: geometry_metric_calculator.h:52
static void CalculateMetricTensor(const GeometryType &rGeometry, BoundedMatrix< double, TDim, TDim > &rMetricTensor)
Calculate the metric tensor of a given geometry This function calculates the metric tensor and its da...
KRATOS_CLASS_POINTER_DEFINITION(GeometryMetricCalculator)
Pointer definition of GeometryMetricCalculator.
GeometryMetricCalculator & operator=(GeometryMetricCalculator const &rOther)=delete
Deleted assignment operator.
GeometryMetricCalculator(GeometryMetricCalculator const &rOther)=delete
Deleted copy constructor.
Geometry< Node > GeometryType
Definition: geometry_metric_calculator.h:60
Definition: amatrix_interface.h:41
REF: G. R. Cowper, GAUSSIAN QUADRATURE FORMULAS FOR TRIANGLES.
Definition: mesh_condition.cpp:21