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.
rbf_shape_functions_utility.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: Sebastian Ares de Parga
11 //
12 
13 #if !defined(KRATOS_rbf_shape_functions_utility_H_INCLUDED)
14 #define KRATOS_rbf_shape_functions_utility_H_INCLUDED
15 
16 
17 // System includes
18 
19 // External includes
20 
21 // Project includes
22 #include "containers/array_1d.h"
23 #include "includes/define.h"
24 #include "spaces/ublas_space.h"
26 
27 namespace Kratos
28 {
29 
35 class KRATOS_API(KRATOS_CORE) RBFShapeFunctionsUtility
36 {
37 
38 public:
39 
42 
45 
48 
51 
55 
59 
63 
71  static double EvaluateRBF(
72  const double x,
73  const double h);
74 
84  static void CalculateShapeFunctions(
85  const Matrix& rPoints,
86  const array_1d<double,3>& rX,
87  const double h,
88  Vector& rN,
89  DenseQRPointerType pDenseQR = nullptr);
90 
99  static void CalculateShapeFunctions(
100  const Matrix& rPoints,
101  const array_1d<double,3>& rX,
102  Vector& rN,
103  DenseQRPointerType pDenseQR = nullptr);
104 
115  static double CalculateShapeFunctionsAndInterpolation(
116  const Matrix& rPoints,
117  const array_1d<double,3>& rX,
118  const double h,
119  Vector& rN,
120  Vector& rY);
121 
123 private:
126 
128 
129  static double CalculateInverseMultiquadricShapeParameter(const Matrix& rPoints);
130 
132 };
133 
134 } // namespace Kratos.
135 
136 #endif // KRATOS_rbf_shape_functions_utility_H_INCLUDED defined
Definition: dense_householder_qr_decomposition.h:45
Definition: dense_qr_decomposition.h:44
Radial Basis Functions utility to calculate shape function values This class uses Gaussian raidal bas...
Definition: rbf_shape_functions_utility.h:36
typename DenseQRDecomposition< DenseSpace >::Pointer DenseQRPointerType
QR decomposition pointer definition.
Definition: rbf_shape_functions_utility.h:47
A class template for handling data types, matrices, and vectors in a Ublas space.
Definition: ublas_space.h:121
REF: G. R. Cowper, GAUSSIAN QUADRATURE FORMULAS FOR TRIANGLES.
Definition: mesh_condition.cpp:21
h
Definition: generate_droplet_dynamics.py:91
x
Definition: sensitivityMatrix.py:49