Struct ae108::elements::ElementWithMass
template <ElementConcept Element_>
ClassList > ae108 > elements > ElementWithMass
Extends a given element to also store a mass matrix.
#include <ElementWithMass.h>
Public Types
| Type | Name |
|---|---|
| typedef Element_ | Element |
| typedef typename Element::Energy | Energy |
| typedef typename Element::NodalDisplacements | Forces The forces equal to $d_{ij} E$. Here, d_ij refers to the derivative with respect to jth degree of freedom of the ith node. |
| typedef StiffnessMatrix | MassMatrix |
| typedef typename Element::NodalDisplacements | NodalDisplacements The displacements per node. |
| typedef typename Element::Real | Real |
| typedef typename Element::Size | Size |
| typedef typename Element::StiffnessMatrix | StiffnessMatrix The stiffness matrix equal to $d_{ij} d_{kl} E$. Here, d_ij refers to the derivative with respect to jth degree of freedom of the ith node. |
| typedef typename Element::Time | Time |
| typedef typename Element::Value | Value |
Public Attributes
| Type | Name |
|---|---|
| Element | element |
| MassMatrix | mass_matrix |
Public Static Attributes
| Type | Name |
|---|---|
| const Size | DegreesOfFreedom = Element::DegreesOfFreedomNumber of degrees of freedom. |
| const Size | Dimension = Element::DimensionThe dimension of physical space. |
| const Size | NumVerts = Element::NumVertsNumber of element nodes / shape functions. |
Public Functions
| Type | Name |
|---|---|
| Energy | computeEnergy (const NodalDisplacements & u, const Time & time) noexcept const Computes the energy for the given displacements. |
| Forces | computeForces (const NodalDisplacements & u, const Time & time) noexcept const Computes the forces for the given displacements. |
| MassMatrix | computeMassMatrix () noexcept const |
| StiffnessMatrix | computeStiffnessMatrix (const NodalDisplacements & u, const Time & time) noexcept const Computes the stiffness matrix for the given displacements. |
Public Types Documentation
typedef Element
using ae108::elements::ElementWithMass< Element_ >::Element = Element_;
typedef Energy
using ae108::elements::ElementWithMass< Element_ >::Energy = typename Element::Energy;
typedef Forces
The forces equal to $d_{ij} E$. Here, d_ij refers to the derivative with respect to jth degree of freedom of the ith node.
using ae108::elements::ElementWithMass< Element_ >::Forces = typename Element::NodalDisplacements;
typedef MassMatrix
using ae108::elements::ElementWithMass< Element_ >::MassMatrix = StiffnessMatrix;
typedef NodalDisplacements
The displacements per node.
using ae108::elements::ElementWithMass< Element_ >::NodalDisplacements = typename Element::NodalDisplacements;
typedef Real
using ae108::elements::ElementWithMass< Element_ >::Real = typename Element::Real;
typedef Size
using ae108::elements::ElementWithMass< Element_ >::Size = typename Element::Size;
typedef StiffnessMatrix
The stiffness matrix equal to $d_{ij} d_{kl} E$. Here, d_ij refers to the derivative with respect to jth degree of freedom of the ith node.
using ae108::elements::ElementWithMass< Element_ >::StiffnessMatrix = typename Element::StiffnessMatrix;
typedef Time
using ae108::elements::ElementWithMass< Element_ >::Time = typename Element::Time;
typedef Value
using ae108::elements::ElementWithMass< Element_ >::Value = typename Element::Value;
Public Attributes Documentation
variable element
Element ae108::elements::ElementWithMass< Element_ >::element;
variable mass_matrix
MassMatrix ae108::elements::ElementWithMass< Element_ >::mass_matrix;
Public Static Attributes Documentation
variable DegreesOfFreedom
Number of degrees of freedom.
const Size ae108::elements::ElementWithMass< Element_ >::DegreesOfFreedom;
variable Dimension
The dimension of physical space.
const Size ae108::elements::ElementWithMass< Element_ >::Dimension;
variable NumVerts
Number of element nodes / shape functions.
const Size ae108::elements::ElementWithMass< Element_ >::NumVerts;
Public Functions Documentation
function computeEnergy
Computes the energy for the given displacements.
inline Energy ae108::elements::ElementWithMass::computeEnergy (
const NodalDisplacements & u,
const Time & time
) noexcept const
function computeForces
Computes the forces for the given displacements.
inline Forces ae108::elements::ElementWithMass::computeForces (
const NodalDisplacements & u,
const Time & time
) noexcept const
function computeMassMatrix
inline MassMatrix ae108::elements::ElementWithMass::computeMassMatrix () noexcept const
function computeStiffnessMatrix
Computes the stiffness matrix for the given displacements.
inline StiffnessMatrix ae108::elements::ElementWithMass::computeStiffnessMatrix (
const NodalDisplacements & u,
const Time & time
) noexcept const
The documentation for this class was generated from the following file elements/src/include/ae108/elements/ElementWithMass.h