Skip to content

Struct ae108::elements::Minimal

template <std::size_t Size_, std::size_t Dimension_, std::size_t DegreesOfFreedom_>

ClassList > ae108 > elements > Minimal

A minimal example of an element. Note that only the energy is defined.

  • #include <Minimal.h>

Public Types

Type Name
typedef Minimal< Size_, Dimension_, DegreesOfFreedom_ > Element
typedef Real Energy
typedef 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 tensor::Tensor< Value, NumVerts, DegreesOfFreedom > NodalDisplacements
The displacements per node.
typedef double Real
typedef std::size_t Size
typedef Eigen::Matrix< Value, NumVerts *DegreesOfFreedom, NumVerts *DegreesOfFreedom, Eigen::RowMajor > 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 Real Time
typedef double Value

Public Static Attributes

Type Name
const Size DegreesOfFreedom = Dimension\_
Number of degrees of freedom.
const Size Dimension = Dimension\_
The dimension of physical space.
const Size NumVerts = 1
Number of element nodes / shape functions.

Public Functions

Type Name
Energy computeEnergy (const NodalDisplacements &, const Time &) noexcept const
Computes the energy for the given displacements.
Forces computeForces (const NodalDisplacements & u, const Time & time) const
Computes the forces for the given displacements.
StiffnessMatrix computeStiffnessMatrix (const NodalDisplacements & u, const Time & time) const
Computes the stiffness matrix for the given displacements.

Public Types Documentation

typedef Element

using ae108::elements::Minimal< Size_, Dimension_, DegreesOfFreedom_ >::Element =  Minimal<Size_, Dimension_, DegreesOfFreedom_>;

typedef Energy

using ae108::elements::Minimal< Size_, Dimension_, DegreesOfFreedom_ >::Energy =  Real;

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::Minimal< Size_, Dimension_, DegreesOfFreedom_ >::Forces =  NodalDisplacements;


typedef NodalDisplacements

The displacements per node.

using ae108::elements::Minimal< Size_, Dimension_, DegreesOfFreedom_ >::NodalDisplacements =  tensor::Tensor<Value, NumVerts, DegreesOfFreedom>;


typedef Real

using ae108::elements::Minimal< Size_, Dimension_, DegreesOfFreedom_ >::Real =  double;

typedef Size

using ae108::elements::Minimal< Size_, Dimension_, DegreesOfFreedom_ >::Size =  std::size_t;

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::Minimal< Size_, Dimension_, DegreesOfFreedom_ >::StiffnessMatrix =  Eigen::Matrix<Value, NumVerts * DegreesOfFreedom, NumVerts * DegreesOfFreedom, Eigen::RowMajor>;


typedef Time

using ae108::elements::Minimal< Size_, Dimension_, DegreesOfFreedom_ >::Time =  Real;

typedef Value

using ae108::elements::Minimal< Size_, Dimension_, DegreesOfFreedom_ >::Value =  double;

Public Static Attributes Documentation

variable DegreesOfFreedom

Number of degrees of freedom.

const Size ae108::elements::Minimal< Size_, Dimension_, DegreesOfFreedom_ >::DegreesOfFreedom;


variable Dimension

The dimension of physical space.

const Size ae108::elements::Minimal< Size_, Dimension_, DegreesOfFreedom_ >::Dimension;


variable NumVerts

Number of element nodes / shape functions.

const Size ae108::elements::Minimal< Size_, Dimension_, DegreesOfFreedom_ >::NumVerts;


Public Functions Documentation

function computeEnergy

Computes the energy for the given displacements.

inline Energy ae108::elements::Minimal::computeEnergy (
    const NodalDisplacements &,
    const Time &
) noexcept const


function computeForces

Computes the forces for the given displacements.

inline Forces ae108::elements::Minimal::computeForces (
    const NodalDisplacements & u,
    const Time & time
) const


function computeStiffnessMatrix

Computes the stiffness matrix for the given displacements.

inline StiffnessMatrix ae108::elements::Minimal::computeStiffnessMatrix (
    const NodalDisplacements & u,
    const Time & time
) const



The documentation for this class was generated from the following file elements/src/include/ae108/elements/Minimal.h