NuTo
Numerics Tool
InterpolationTruss4thOrder.h
Go to the documentation of this file.
1 #pragma once
2 #include <eigen3/Eigen/Core>
5 
6 namespace NuTo
7 {
9 {
10 public:
11  static Eigen::Matrix<double, 1, 1> LocalCoords(int rNodeIndex);
12 
13  static Eigen::Matrix<double, 5, 1> ShapeFunctions(const Eigen::VectorXd& rCoordinates);
14 
15  static Eigen::Matrix<double, 5, 1> 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  Line mShape;
31 };
32 } /* NuTo */
Definition: InterpolationTruss4thOrder.h:8
Definition: Line.h:8
const Shape & GetShape() const override
Definition: InterpolationTruss4thOrder.cpp:32
static Eigen::Matrix< double, 5, 1 > DerivativeShapeFunctions(const Eigen::VectorXd &rCoordinates)
Definition: InterpolationTruss4thOrder.cpp:71
Eigen::MatrixXd GetDerivativeShapeFunctions(const NaturalCoords &naturalIpCoords) const override
calculates the derivative shape functions
Definition: InterpolationTruss4thOrder.cpp:17
std::unique_ptr< InterpolationSimple > Clone() const override
Definition: InterpolationTruss4thOrder.cpp:6
Base class for the interpolation. The derived classes provide information about the actual interpolat...
Definition: InterpolationSimple.h:12
static Eigen::Matrix< double, 1, 1 > LocalCoords(int rNodeIndex)
Definition: InterpolationTruss4thOrder.cpp:37
NaturalCoords GetLocalCoords(int nodeId) const override
returns the local node coordinates
Definition: InterpolationTruss4thOrder.cpp:22
Definition: Shape.h:20
Eigen::VectorXd GetShapeFunctions(const NaturalCoords &naturalIpCoords) const override
calculates the shape functions
Definition: InterpolationTruss4thOrder.cpp:11
Definition: Exception.h:6
Definition: SerializeStreamOut.h:9
int GetNumNodes() const override
returns the number of nodes
Definition: InterpolationTruss4thOrder.cpp:27
static Eigen::Matrix< double, 5, 1 > ShapeFunctions(const Eigen::VectorXd &rCoordinates)
Definition: InterpolationTruss4thOrder.cpp:56