|
| v0.14.0
|
Go to the documentation of this file.
9 #ifndef __NEOHOOKEAN_HPP__
10 #define __NEOHOOKEAN_HPP__
15 template <
typename TYPE>
29 MatrixBoundedArray<TYPE, 9>
invC;
53 logJ = log(sqrt(this->
J * this->
J));
64 boost::shared_ptr<const NumeredEntFiniteElement> fe_ptr) {
89 logJ = log(sqrt(this->
J * this->
J));
96 boost::shared_ptr<const NumeredEntFiniteElement> fe_ptr) {
#define MoFEMFunctionReturnHot(a)
Last executable line of each PETSc function used for error handling. Replaces return()
FunctionsToCalculatePiolaKirchhoffI()
FTensor::Tensor2< FTensor::PackPtr< TYPE *, 0 >, 3, 3 > t_P
Implementation of elastic (non-linear) St. Kirchhoff equation.
MoFEMErrorCode calculateElasticEnergy(const NonlinearElasticElement::BlockData block_data, boost::shared_ptr< const NumeredEntFiniteElement > fe_ptr)
Calculate elastic energy density.
structure grouping operators and data used for calculation of nonlinear elastic element
MoFEMErrorCode NeoHooke_PiolaKirchhoffII()
calculate second Piola Kirchhoff
PetscErrorCode MoFEMErrorCode
MoFEM/PETSc error code.
MoFEMErrorCode invertTensor3by3(ublas::matrix< T, L, A > &jac_data, ublas::vector< T, A > &det_data, ublas::matrix< T, L, A > &inv_jac_data)
Calculate inverse of tensor rank 2 at integration points.
#define CHKERR
Inline error check.
MatrixBoundedArray< TYPE, 9 > F
FTensor::Index< 'j', 3 > j
FTensor::Tensor2< FTensor::PackPtr< TYPE *, 0 >, 3, 3 > t_F
FTensor::Tensor2< FTensor::PackPtr< TYPE *, 0 >, 3, 3 > t_S
data for calculation heat conductivity and heat capacity elements
MatrixBoundedArray< TYPE, 9 > C
FTensor::Tensor2< FTensor::PackPtr< TYPE *, 0 >, 3, 3 > t_C
FTensor::Tensor2< FTensor::PackPtr< TYPE *, 0 >, 3, 3 > t_invC
static auto determinantTensor3by3(T &t)
Calculate the determinant of a 3x3 matrix or a tensor of rank 2.
MoFEMErrorCode NeoHookean_ElasticEnergy()
calculate elastic energy density
FTensor::Index< 'k', 3 > k
static auto resizeAndSet(MatrixBoundedArray< TYPE, 9 > &m)
FTensor::Index< 'i', 3 > i
MoFEMErrorCode calculateC_CauchyDeformationTensor()
#define MoFEMFunctionBeginHot
First executable line of each MoFEM function, used for error handling. Final line of MoFEM functions ...
virtual MoFEMErrorCode calculateP_PiolaKirchhoffI(const NonlinearElasticElement::BlockData block_data, boost::shared_ptr< const NumeredEntFiniteElement > fe_ptr)
Function overload to implement user material.
#define MoFEMFunctionReturn(a)
Last executable line of each PETSc function used for error handling. Replaces return()
MatrixBoundedArray< TYPE, 9 > invC
#define MoFEMFunctionBegin
First executable line of each MoFEM function, used for error handling. Final line of MoFEM functions ...