MFEM
v3.1
Finite element discretization library
|
Abstract class for hyperelastic models. More...
#include <nonlininteg.hpp>
Public Member Functions | |
HyperelasticModel () | |
void | SetTransformation (ElementTransformation &_T) |
An element transformation that can be used to evaluate coefficients. More... | |
virtual double | EvalW (const DenseMatrix &J) const =0 |
Evaluate the strain energy density function, W=W(J). More... | |
virtual void | EvalP (const DenseMatrix &J, DenseMatrix &P) const =0 |
Evaluate the 1st Piola-Kirchhoff stress tensor, P=P(J). More... | |
virtual void | AssembleH (const DenseMatrix &J, const DenseMatrix &DS, const double weight, DenseMatrix &A) const =0 |
virtual | ~HyperelasticModel () |
Protected Attributes | |
ElementTransformation * | T |
Abstract class for hyperelastic models.
Definition at line 49 of file nonlininteg.hpp.
|
inline |
Definition at line 55 of file nonlininteg.hpp.
|
inlinevirtual |
Definition at line 73 of file nonlininteg.hpp.
|
pure virtual |
Evaluate the derivative of the 1st Piola-Kirchhoff stress tensor and assemble its contribution to the local gradient matrix 'A'. 'DS' is the gradient of the basis matrix (dof x dim), and 'weight' is the quadrature weight.
Implemented in mfem::NeoHookeanModel, and mfem::InverseHarmonicModel.
|
pure virtual |
Evaluate the 1st Piola-Kirchhoff stress tensor, P=P(J).
Implemented in mfem::NeoHookeanModel, and mfem::InverseHarmonicModel.
|
pure virtual |
Evaluate the strain energy density function, W=W(J).
Implemented in mfem::NeoHookeanModel, and mfem::InverseHarmonicModel.
|
inline |
An element transformation that can be used to evaluate coefficients.
Definition at line 58 of file nonlininteg.hpp.
|
protected |
Definition at line 52 of file nonlininteg.hpp.