|
| static MoFEMErrorCode | validateParameters (const Parameters ¶meters) |
| | Check finite, strictly positive C10, K and representable mu = 2*C10.
|
| |
| static SymmetricTensor | getTensor (const Coordinates &t_coordinates, double theta=0.) |
| | Reconstruct H = D + theta*I/3 from the fixed five-coordinate basis.
|
| |
| static Coordinates | getCoordinates (const SymmetricTensor &t_tensor) |
| | Project a symmetric tensor onto the fixed trace-free basis.
|
| |
| static MoFEMErrorCode | evaluateDeviator (const Parameters ¶meters, const Coordinates &t_deviator, double &energy, Coordinates *stress_ptr=nullptr, Tangent *hessian_ptr=nullptr) |
| | Evaluate f(D), optionally its five-component gradient and Hessian.
|
| |
| static MoFEMErrorCode | evaluateVolume (const Parameters ¶meters, double theta, VolumeState &state) |
| | Evaluate g(J) = K*(J-1)^2/2 and its logarithmic-volume derivatives.
|
| |
| static MoFEMErrorCode | evaluateInverse (const Parameters ¶meters, const Coordinates &t_stress, InverseState &state) |
| | Recover Dm(Td), its compliance and conjugate energy; no state is cached.
|
| |
| static MoFEMErrorCode | evaluateFenchelGap (const Parameters ¶meters, const Coordinates &t_deviator, const Coordinates &t_stress, const InverseState &inverse, double &gap, double *energy_ptr=nullptr) |
| |
Stateless material evaluations, independent of mesh fields and solvers.
The five coordinates use (11-22)/sqrt(2), (11+22-2*33)/sqrt(6), sqrt(2)*12, sqrt(2)*13 and sqrt(2)*23. Their Euclidean pairing is the Frobenius pairing of symmetric trace-free tensors.
Call validateParameters after reading or changing material parameters and before evaluating a state. Kernels recheck this precondition only in debug builds; trial-state validity and numerical representability are always checked.
Definition at line 22 of file NeoHookeanLogarithmicMaterial.hpp.