|
| using | Traits = TraitsFromFE< Basis_, FERequirements_, useEigenRef > |
| |
| using | Basis = typename Traits::Basis |
| |
| using | FlatBasis = typename Traits::FlatBasis |
| |
| using | FERequirementType = typename Traits::FERequirementType |
| |
| using | LocalView = typename Traits::LocalView |
| |
| using | Geometry = typename Traits::Geometry |
| |
| using | GridView = typename Traits::GridView |
| |
| using | Element = typename Traits::Element |
| |
| using | ResultRequirementsType = typename Traits::ResultRequirementsType |
| |
| using | BasePowerFE = PowerBasisFE< FlatBasis > |
| |
| using | Material = Material_ |
| |
| using | VolumeType = Volume< NonLinearElastic< Basis_, Material_, FERequirements_, useEigenRef >, Traits > |
| |
| using | TractionType = Traction< NonLinearElastic< Basis_, Material_, FERequirements_, useEigenRef >, Traits > |
| |
| using | LocalBasisType = decltype(std::declval< LocalView >().tree().child(0).finiteElement().localBasis()) |
| |
| using | RootBasis = Basis_::FlatBasis |
| | Type of the root basis. More...
|
| |
| using | GlobalIndex = typename LocalView::MultiIndex |
| | Type of the global index. More...
|
| |
| using | GridElement = typename LocalView::Element |
| | Type of the grid element. More...
|
| |
|
| template<typename VolumeLoad = utils::LoadDefault, typename NeumannBoundaryLoad = utils::LoadDefault> |
| | NonLinearElastic (const Basis &globalBasis, const typename LocalView::Element &element, const Material &p_mat, VolumeLoad p_volumeLoad={}, const BoundaryPatch< GridView > *p_neumannBoundary=nullptr, NeumannBoundaryLoad p_neumannBoundaryLoad={}) |
| | Constructor for the NonLinearElastic class. More...
|
| |
| template<typename ScalarType = double> |
| auto | displacementFunction (const FERequirementType &par, const std::optional< const Eigen::VectorX< ScalarType > > &dx=std::nullopt) const |
| | Get the displacement function for the given FERequirementType. More...
|
| |
| template<typename ScalarType = double> |
| auto | strainFunction (const FERequirementType &par, const std::optional< const Eigen::VectorX< ScalarType > > &dx=std::nullopt) const |
| | The strain function for the given FERequirementType. More...
|
| |
| template<typename ScalarType , int strainDim, bool voigt = true> |
| auto | materialTangent (const Eigen::Vector< ScalarType, strainDim > &strain) const |
| | Get the material tangent for the given strain. More...
|
| |
| template<typename ScalarType , int strainDim> |
| auto | getInternalEnergy (const Eigen::Vector< ScalarType, strainDim > &strain) const |
| | Get the internal energy for the given strain. More...
|
| |
| template<typename ScalarType , int strainDim, bool voigt = true> |
| auto | getStress (const Eigen::Vector< ScalarType, strainDim > &strain) const |
| | Get the stress for the given strain. More...
|
| |
| const Geometry & | geometry () const |
| |
| size_t | numberOfNodes () const |
| |
| int | order () const |
| |
| double | calculateScalar (const FERequirementType &par) const |
| | Calculate the scalar value associated with the given FERequirementType. More...
|
| |
| void | calculateVector (const FERequirementType &par, typename Traits::template VectorType<> force) const |
| | Calculate the vector associated with the given FERequirementType. More...
|
| |
| void | calculateMatrix (const FERequirementType &par, typename Traits::template MatrixType<> K) const |
| | Calculate the matrix associated with the given FERequirementType. More...
|
| |
| void | calculateAt (const ResultRequirementsType &req, const Dune::FieldVector< double, Traits::mydim > &local, ResultTypeMap< double > &result) const |
| | Calculate specified results at a given local position. More...
|
| |
| constexpr size_t | size () const |
| | Get the size of the local view. More...
|
| |
| void | globalFlatIndices (std::vector< GlobalIndex > &globalIndices) const |
| | Get the global flat indices for the power basis. More...
|
| |
| const GridElement & | gridElement () const |
| | Get the grid element associated with the local view. More...
|
| |
| const LocalView & | localView () const |
| | Get the const reference to the local view. More...
|
| |
| LocalView & | localView () |
| | Get the reference to the local view. More...
|
| |
| double | calculateScalar (const FERequirementType &req) const |
| | Calculate the scalar value. More...
|
| |
| void | calculateVector (const FERequirementType &req, typename Traits::template VectorType<> force) const |
| | Calculate the vector associated with the given FERequirementType. More...
|
| |
| void | calculateMatrix (const FERequirementType &req, typename Traits::template MatrixType<> K) const |
| | Calculate the matrix associated with the given FERequirementType. More...
|
| |
| double | calculateScalar (const FERequirementType &req) const |
| | Calculate the scalar value. More...
|
| |
| void | calculateVector (const FERequirementType &req, typename Traits::template VectorType<> force) const |
| | Calculate the vector associated with the given FERequirementType. More...
|
| |
| void | calculateMatrix (const FERequirementType &req, typename Traits::template MatrixType<> K) const |
| | Calculate the matrix associated with the given FERequirementType. More...
|
| |
|
| template<typename ScalarType > |
| auto | calculateScalarImpl (const FERequirementType &par, const std::optional< const Eigen::VectorX< ScalarType > > &dx=std::nullopt) const -> ScalarType |
| |
| template<typename ScalarType > |
| void | calculateVectorImpl (const FERequirementType &par, typename Traits::template VectorType< ScalarType > force, const std::optional< const Eigen::VectorX< ScalarType > > &dx=std::nullopt) const |
| |
| auto | calculateScalarImpl (const FERequirementType &par, const std::optional< const Eigen::VectorX< ScalarType > > &dx=std::nullopt) const -> ScalarType |
| |
| void | calculateVectorImpl (const FERequirementType &par, typename Traits::template VectorType< ScalarType > force, const std::optional< const Eigen::VectorX< ScalarType > > &dx=std::nullopt) const |
| |
| void | calculateMatrixImpl (const FERequirementType &par, typename Traits::template MatrixType<> K, const std::optional< const Eigen::VectorX< ScalarType > > &dx=std::nullopt) const |
| |
| auto | calculateScalarImpl (const FERequirementType &par, const std::optional< const Eigen::VectorX< ScalarType > > &dx=std::nullopt) const -> ScalarType |
| |
| void | calculateVectorImpl (const FERequirementType &par, typename Traits::template VectorType< ScalarType > force, const std::optional< const Eigen::VectorX< ScalarType > > dx=std::nullopt) const |
| |
| void | calculateMatrixImpl (const FERequirementType &par, typename Traits::template MatrixType<> K, const std::optional< const Eigen::VectorX< ScalarType > > &dx=std::nullopt) const |
| |
template<typename Basis_, typename Material_, typename FERequirements_ = FERequirements<>, bool useEigenRef = false>
class Ikarus::NonLinearElastic< Basis_, Material_, FERequirements_, useEigenRef >
- Template Parameters
-
| Basis_ | The basis type for the finite element. |
| Material_ | The material type for the finite element. |
| FERequirements_ | The requirements for the finite element. |
| useEigenRef | A boolean flag indicating whether to use Eigen references. |