16 : mInterpolation(interpolation)
20 mNodes.push_back(*
node);
21 assert(static_cast<int>(mNodes.size()) == interpolation.
GetNumNodes());
24 ElementFem(std::initializer_list<std::reference_wrapper<NuTo::NodeSimple>> nodes,
27 , mInterpolation(interpolation)
30 assert(static_cast<int>(mNodes.size()) == interpolation.
GetNumNodes());
71 dofNumbering[i++] =
node.GetDofNumber(iDof);
84 return mInterpolation;
89 assert(i < static_cast<int>(mNodes.size()));
96 assert(i < static_cast<int>(mNodes.size()));
106 std::vector<std::reference_wrapper<NodeSimple>> mNodes;
107 std::reference_wrapper<const InterpolationSimple> mInterpolation;
int GetNumNodes() const override
Definition: ElementFem.h:77
Eigen::VectorXd GetShapeFunctions(NaturalCoords ipCoords) const override
Definition: ElementFem.h:47
Definition: ElementFem.h:12
virtual int GetNumNodes() const =0
returns the number of nodes
Store node values and its dof.
Definition: NodeSimple.h:11
const InterpolationSimple & Interpolation() const
Definition: ElementFem.h:82
NodeSimple & GetNode(int i)
Definition: ElementFem.h:87
Definition: ElementInterface.h:8
virtual Eigen::VectorXd GetShapeFunctions(const NaturalCoords &naturalIpCoords) const =0
calculates the shape functions
int GetNumValues() const
Definition: NodeSimple.h:82
Eigen::MatrixXd GetNMatrix(NaturalCoords ipCoords) const override
Definition: ElementFem.h:42
Base class for the interpolation. The derived classes provide information about the actual interpolat...
Definition: InterpolationSimple.h:12
const Shape & GetShape() const
Definition: ElementFem.h:100
virtual Eigen::MatrixXd GetDerivativeShapeFunctions(const NaturalCoords &naturalIpCoords) const =0
calculates the derivative shape functions
node
Definition: Brick8NCoupling.py:104
const NodeSimple & GetNode(int i) const
Definition: ElementFem.h:94
ElementFem(std::initializer_list< std::reference_wrapper< NuTo::NodeSimple >> nodes, const InterpolationSimple &interpolation)
Definition: ElementFem.h:24
virtual Eigen::VectorXd ExtractNodeValues(int instance=0) const override
extracts all node values of this element
Definition: ElementFem.h:33
Definition: Exception.h:6
const Eigen::VectorXd & GetValues(int instance=0) const
Definition: NodeSimple.h:50
Eigen::MatrixXd GetDerivativeShapeFunctions(NaturalCoords ipCoords) const override
Definition: ElementFem.h:52
constexpr int dim
Definition: ConstraintNodeToElement2D.cpp:24
int GetDofDimension() const override
Definition: ElementFem.h:57
Eigen::MatrixXd N(const Eigen::VectorXd &shapeFunctions, int numNodes, int dim)
Definition: Matrix.h:8
Eigen::VectorXi GetDofNumbering() const override
extract the dof numbers from its nodes.
Definition: ElementFem.h:62
ElementFem(std::vector< NodeSimple * > nodes, const InterpolationSimple &interpolation)
Definition: ElementFem.h:15