#include <StrainDisplacement.h>
Represents the strain-displacement matrix (B-matrix) for a finite element.
The B-matrix relates the strain vector (in Voigt notation) to the nodal displacement vector: ε = B * u.
| DataTypes | The traits defining the simulation's data types (e.g., Vec3d). |
| ElementType | The type of finite element (e.g., Tetrahedron). |
Public Attributes | |
| sofa::type::Mat< nbLines, nbColumns, sofa::Real_t< DataTypes > > | B |
Static Public Attributes | |
| static constexpr auto | spatial_dimensions = DataTypes::spatial_dimensions |
| static constexpr auto | nbLines = sofa::type::NumberOfIndependentElements<spatial_dimensions> |
| static constexpr auto | nbNodesInElement = ElementType::NumberOfNodes |
| static constexpr auto | nbColumns = nbNodesInElement * spatial_dimensions |
Public Member Functions | |
| constexpr Real & | operator() (sofa::Size i, sofa::Size j) noexcept |
| constexpr const Real & | operator() (sofa::Size i, sofa::Size j) const noexcept |
| constexpr sofa::type::Vec< nbLines, Real > | operator* (const sofa::type::Vec< nbColumns, Real > &v) const |
| template<sofa::Size C> | |
| constexpr sofa::type::Mat< nbColumns, C, Real > | multTranspose (const sofa::type::Mat< nbLines, C, Real > &v) const noexcept |
| constexpr sofa::type::Vec< nbColumns, Real > | multTranspose (const sofa::type::Vec< nbLines, Real > &v) const noexcept |
Friends | |
| std::ostream & | operator<< (std::ostream &out, const StrainDisplacement &B) |
| sofa::type::Mat<nbLines, nbColumns, sofa::Real_t<DataTypes> > sofa::component::solidmechanics::fem::elastic::StrainDisplacement< DataTypes, ElementType >::B |
Internal representation of the strain-displacement matrix.
|
staticconstexpr |
|
staticconstexpr |
|
staticconstexpr |
|
staticconstexpr |
|
inlineconstexprnoexcept |
Multiplies the transpose of the B-matrix by a matrix.
| C | Number of columns in the matrix v. |
| v | Matrix to multiply with B^T. |
|
inlineconstexprnoexcept |
Multiplies the transpose of the B-matrix by a strain vector.
| v | Strain (or stress) vector in Voigt notation. |
|
inlineconstexprnoexcept |
Accesses the element at (i, j) in the strain-displacement matrix (const).
|
inlineconstexprnoexcept |
Accesses the element at (i, j) in the strain-displacement matrix.
|
inlineconstexpr |
Multiplies the B-matrix by a displacement vector.
| v | Displacement vector. |
|
friend |
Outputs the B-matrix to a stream.