version 0.4.1
Ikarus::EAS::HX< GEO, ess > Struct Template Reference

Interface for displacement-based EAS elements, where displacement gradient is enhanced. More...

#include <ikarus/finiteelements/mechanics/strainenhancements/easvariants/displacementgradient.hh>

Inheritance diagram for Ikarus::EAS::HX< GEO, ess >:
[legend]

Public Types

using MType = Eigen::Matrix< double, strainSize, enhancedStrainSize >
 
using DType = Eigen::Matrix< double, enhancedStrainSize, enhancedStrainSize >
 
using AnsatzType = Eigen::Matrix< double, myDim, myDim >
 
using HType = std::array< AnsatzType, enhancedStrainSize >
 

Public Member Functions

 HX ()=default
 
 HX (const GEO &geometry)
 

Static Public Attributes

static constexpr int myDim = GEO::mydimension
 
static constexpr int strainSize = myDim * (myDim + 1) / 2
 
static constexpr int enhancedStrainSize = ess
 

Protected Member Functions

const auto & geometry () const
 

Protected Attributes

std::optional< GEO > geometry_
 

Detailed Description

template<typename GEO, int ess>
struct Ikarus::EAS::HX< GEO, ess >

See [9] for details.

Member Typedef Documentation

◆ AnsatzType

template<typename GEO , int ess>
using Ikarus::EAS::HX< GEO, ess >::AnsatzType = Eigen::Matrix<double, myDim, myDim>

◆ DType

template<typename GEO , int ess>
using Ikarus::EAS::HX< GEO, ess >::DType = Eigen::Matrix<double, enhancedStrainSize, enhancedStrainSize>

◆ HType

template<typename GEO , int ess>
using Ikarus::EAS::HX< GEO, ess >::HType = std::array<AnsatzType, enhancedStrainSize>

◆ MType

template<typename GEO , int ess>
using Ikarus::EAS::HX< GEO, ess >::MType = Eigen::Matrix<double, strainSize, enhancedStrainSize>

Constructor & Destructor Documentation

◆ HX() [1/2]

template<typename GEO , int ess>
Ikarus::EAS::HX< GEO, ess >::HX ( )
default

◆ HX() [2/2]

template<typename GEO , int ess>
Ikarus::EAS::HX< GEO, ess >::HX ( const GEO &  geometry)
inlineexplicit

Member Function Documentation

◆ geometry()

template<typename GEO , int ess>
const auto & Ikarus::EAS::HX< GEO, ess >::geometry ( ) const
inlineprotected

Member Data Documentation

◆ enhancedStrainSize

template<typename GEO , int ess>
constexpr int Ikarus::EAS::HX< GEO, ess >::enhancedStrainSize = ess
staticconstexpr

◆ geometry_

template<typename GEO , int ess>
std::optional<GEO> Ikarus::EAS::HX< GEO, ess >::geometry_
protected

◆ myDim

template<typename GEO , int ess>
constexpr int Ikarus::EAS::HX< GEO, ess >::myDim = GEO::mydimension
staticconstexpr

◆ strainSize

template<typename GEO , int ess>
constexpr int Ikarus::EAS::HX< GEO, ess >::strainSize = myDim * (myDim + 1) / 2
staticconstexpr

The documentation for this struct was generated from the following file: