BELFEM
0.9.0
Berkeley Lab Finite Element Framework
Toggle main menu visibility
Loading...
Searching...
No Matches
cl_IF_InterpolationFunction.hpp
Go to the documentation of this file.
1
//
2
// Created by Christian Messe on 24.10.19.
3
//
4
5
#ifndef BELFEM_CL_IF_INTERPOLATIONFUNCTION_HPP
6
#define BELFEM_CL_IF_INTERPOLATIONFUNCTION_HPP
7
8
#include "
typedefs.hpp
"
9
#include "
Mesh_Enums.hpp
"
10
#include "
cl_Vector.hpp
"
11
#include "
cl_Matrix.hpp
"
12
13
namespace
belfem
14
{
15
namespace
fem
16
{
23
class
InterpolationFunction
24
{
25
//------------------------------------------------------------------------------
26
public
:
27
//------------------------------------------------------------------------------
28
32
InterpolationFunction
() =
default
;
33
34
//------------------------------------------------------------------------------
35
39
virtual
~InterpolationFunction
() =
default
;
40
41
//------------------------------------------------------------------------------
42
47
virtual
void
48
param_coords
(
Matrix< real >
& aXiHat )
const
= 0;
49
50
//------------------------------------------------------------------------------
51
62
virtual
void
63
N
(
const
Vector< real >
& aXi,
64
Matrix< real >
& aN )
const
= 0;
65
66
//------------------------------------------------------------------------------
67
79
virtual
void
80
dNdXi
(
const
Vector< real >
& aXi,
81
Matrix< real >
& adNdXi )
const
= 0;
82
83
//------------------------------------------------------------------------------
84
96
virtual
void
97
d2NdXi2
(
const
Vector< real >
& aXi,
98
Matrix< real >
& ad2NdXi2 )
const
= 0;
99
100
//------------------------------------------------------------------------------
101
105
virtual
uint
106
number_of_bases
()
const
= 0;
107
108
//------------------------------------------------------------------------------
109
113
virtual
uint
114
number_of_dimensions
()
const
= 0;
115
116
//------------------------------------------------------------------------------
117
121
virtual
InterpolationOrder
122
interpolation_order
()
const
= 0;
123
124
//------------------------------------------------------------------------------
125
129
virtual
InterpolationType
130
interpolation_type
()
const
= 0;
131
132
//------------------------------------------------------------------------------
133
137
virtual
GeometryType
138
geometry_type
()
const
= 0;
139
140
//------------------------------------------------------------------------------
141
145
virtual
ElementType
146
element_type
()
const
= 0;
147
148
//------------------------------------------------------------------------------
149
};
150
//------------------------------------------------------------------------------
151
}
/* end namespace fem */
152
}
/* end namespace belfem */
153
#endif
//BELFEM_CL_IF_INTERPOLATIONFUNCTION_HPP
Mesh_Enums.hpp
cl_Matrix.hpp
cl_Vector.hpp
belfem::Matrix< real >
belfem::Vector< real >
belfem::fem::InterpolationFunction::d2NdXi2
virtual void d2NdXi2(const Vector< real > &aXi, Matrix< real > &ad2NdXi2) const =0
calculates the second derivative of the shape function in parameter space
belfem::fem::InterpolationFunction::number_of_dimensions
virtual uint number_of_dimensions() const =0
returns the number of dimensions for this shape function
belfem::fem::InterpolationFunction::element_type
virtual ElementType element_type() const =0
returns the element type
belfem::fem::InterpolationFunction::param_coords
virtual void param_coords(Matrix< real > &aXiHat) const =0
returns a matrix containing the parameter coordinates of the nodes < number of dimensions x number of...
belfem::fem::InterpolationFunction::number_of_bases
virtual uint number_of_bases() const =0
returns the number of bases for this shape function
belfem::fem::InterpolationFunction::geometry_type
virtual GeometryType geometry_type() const =0
returns the geometry type
belfem::fem::InterpolationFunction::N
virtual void N(const Vector< real > &aXi, Matrix< real > &aN) const =0
evaluates the shape function at a given point
belfem::fem::InterpolationFunction::interpolation_order
virtual InterpolationOrder interpolation_order() const =0
returns the interpolation order
belfem::fem::InterpolationFunction::InterpolationFunction
InterpolationFunction()=default
trivial constructor
belfem::fem::InterpolationFunction::~InterpolationFunction
virtual ~InterpolationFunction()=default
trivial destructor
belfem::fem::InterpolationFunction::dNdXi
virtual void dNdXi(const Vector< real > &aXi, Matrix< real > &adNdXi) const =0
calculates the first derivative of the shape function in parameter space
belfem::fem::InterpolationFunction::interpolation_type
virtual InterpolationType interpolation_type() const =0
returns the interpolation type
belfem::fem
Definition
cl_IFB_LINE3.hpp:21
belfem
USER GUIDES:
Definition
cl_Capacitor.cpp:16
belfem::InterpolationType
InterpolationType
Definition
Mesh_Enums.hpp:99
belfem::uint
unsigned int uint
Definition
typedefs.hpp:30
belfem::ElementType
ElementType
Element types.
Definition
Mesh_Enums.hpp:27
belfem::InterpolationOrder
InterpolationOrder
Definition
Mesh_Enums.hpp:85
belfem::GeometryType
GeometryType
Definition
Mesh_Enums.hpp:70
typedefs.hpp
src
fem
interpolation
cl_IF_InterpolationFunction.hpp
Generated by
1.18.0