NuTo
Numerics Tool
InterpolationTriangleLinear.h
Go to the documentation of this file.
1 #pragma once
2 #include <Eigen/Core>
5 
6 namespace NuTo
7 {
9 {
10 public:
11  static Eigen::Matrix<double, 2, 1> LocalCoords(int rNodeIndex);
12 
13  static Eigen::Matrix<double, 3, 1> ShapeFunctions(const Eigen::VectorXd& rCoordinates);
14 
15  static Eigen::Matrix<double, 3, 2> DerivativeShapeFunctions(const Eigen::VectorXd& rCoordinates);
16 
17  std::unique_ptr<InterpolationSimple> Clone() const override;
18 
19  Eigen::VectorXd GetShapeFunctions(const NaturalCoords& naturalIpCoords) const override;
20 
21  Eigen::MatrixXd GetDerivativeShapeFunctions(const NaturalCoords& naturalIpCoords) const override;
22 
23  NaturalCoords GetLocalCoords(int nodeId) const override;
24 
25  int GetNumNodes() const override;
26 
27  const Shape& GetShape() const override;
28 
29 private:
30  Triangle mShape;
31 };
32 } /* NuTo */
Eigen::VectorXd GetShapeFunctions(const NaturalCoords &naturalIpCoords) const override
calculates the shape functions
Definition: InterpolationTriangleLinear.cpp:11
static Eigen::Matrix< double, 3, 1 > ShapeFunctions(const Eigen::VectorXd &rCoordinates)
Definition: InterpolationTriangleLinear.cpp:52
Definition: InterpolationTriangleLinear.h:8
int GetNumNodes() const override
returns the number of nodes
Definition: InterpolationTriangleLinear.cpp:27
Base class for the interpolation. The derived classes provide information about the actual interpolat...
Definition: InterpolationSimple.h:12
static Eigen::Matrix< double, 3, 2 > DerivativeShapeFunctions(const Eigen::VectorXd &rCoordinates)
Definition: InterpolationTriangleLinear.cpp:61
std::unique_ptr< InterpolationSimple > Clone() const override
Definition: InterpolationTriangleLinear.cpp:6
Eigen::MatrixXd GetDerivativeShapeFunctions(const NaturalCoords &naturalIpCoords) const override
calculates the derivative shape functions
Definition: InterpolationTriangleLinear.cpp:17
Definition: Shape.h:20
Definition: Exception.h:6
Definition: SerializeStreamOut.h:9
const Shape & GetShape() const override
Definition: InterpolationTriangleLinear.cpp:32
Definition: Triangle.h:8
static Eigen::Matrix< double, 2, 1 > LocalCoords(int rNodeIndex)
Definition: InterpolationTriangleLinear.cpp:37
NaturalCoords GetLocalCoords(int nodeId) const override
returns the local node coordinates
Definition: InterpolationTriangleLinear.cpp:22