![]() |
v0.16.0 |
Abaqus-compatible compressible Neo-Hookean material in principal stretches. More...
#include <Lie.hpp>#include <algorithm>#include <cmath>#include <cstdio>#include <iomanip>#include <limits>#include <sstream>#include <vector>Go to the source code of this file.
Classes | |
| struct | EshelbianPlasticity::HMHNeohookean |
| struct | EshelbianPlasticity::HMHNeohookean::PrincipalState |
| struct | EshelbianPlasticity::HMHNeohookean::OpJacobian |
| struct | EshelbianPlasticity::HMHNeohookean::OpSpatialPhysical |
| struct | EshelbianPlasticity::HMHNeohookean::OpSpatialPhysicalExternalStrain |
| struct | EshelbianPlasticity::HMHNeohookean::OpSpatialPhysical_du_du |
| struct | EshelbianPlasticity::HMHNeohookean::CalculateStretchFromStress< T_Biota, T_Stretch > |
| Recover the stretch tensor from a prescribed Biot stress. More... | |
| struct | EshelbianPlasticity::HMHNeohookean::OpCalculateStretchFromStress |
| struct | EshelbianPlasticity::HMHNeohookean::BlockData |
Namespaces | |
| namespace | EshelbianPlasticity |
Functions | |
| void | EshelbianPlasticity::tetcircumcenter_tp (double a[3], double b[3], double c[3], double d[3], double circumcenter[3], double *xi, double *eta, double *zeta) |
| MoFEMErrorCode | EshelbianPlasticity::testHMHNeohookeanStretchGradient () |
Abaqus-compatible compressible Neo-Hookean material in principal stretches.
The deformation gradient is split as F = R U, where R is a rigid rotation and U is the symmetric positive-definite stretch tensor. If lambda_a are the eigenvalues (principal stretches) of U, this implementation evaluates
W(U) = c10 (J^{-2/3} tr(U^2) - 3) + K/2 (J - 1)^2, J = det(U), mu_0 = 2 c10, D_1 = 2/K.
The internal scalar variable is the natural Hencky stretch h_a=log(lambda_a), so lambda_a=exp(h_a).
This is the same reduced-polynomial N=1 potential used by mofem/src/materials/impl/MatNeohookean.cpp. Require c10 > 0 and K > 0. The energy is objective, so rigid rotations do not change it: zero rotational modes in a full F-based Hessian are expected and are not a loss of stretch stability.
Definition in file HMHNeohookean.cpp.