|
MFEM
v3.2
Finite element discretization library
|
#include <nonlininteg.hpp>
Public Member Functions | |
| NeoHookeanModel (double _mu, double _K, double _g=1.0) | |
| NeoHookeanModel (Coefficient &_mu, Coefficient &_K, Coefficient *_g=NULL) | |
| virtual double | EvalW (const DenseMatrix &J) const |
| Evaluate the strain energy density function, W=W(J). More... | |
| virtual void | EvalP (const DenseMatrix &J, DenseMatrix &P) const |
| 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 |
Public Member Functions inherited from mfem::HyperelasticModel | |
| HyperelasticModel () | |
| void | SetTransformation (ElementTransformation &_T) |
| An element transformation that can be used to evaluate coefficients. More... | |
| virtual | ~HyperelasticModel () |
Protected Member Functions | |
| void | EvalCoeffs () const |
Protected Attributes | |
| double | mu |
| double | K |
| double | g |
| Coefficient * | c_mu |
| Coefficient * | c_K |
| Coefficient * | c_g |
| bool | have_coeffs |
| DenseMatrix | Z |
| DenseMatrix | G |
| DenseMatrix | C |
Protected Attributes inherited from mfem::HyperelasticModel | |
| ElementTransformation * | T |
Neo-Hookean hyperelastic model with a strain energy density function given by the formula:
where J is the deformation gradient and
. The parameters
and K are the shear and bulk moduli, respectively, and g is a reference volumetric scaling.
Definition at line 101 of file nonlininteg.hpp.
|
inline |
Definition at line 114 of file nonlininteg.hpp.
|
inline |
Definition at line 117 of file nonlininteg.hpp.
|
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.
Implements mfem::HyperelasticModel.
Definition at line 182 of file nonlininteg.cpp.
|
inlineprotected |
Definition at line 135 of file nonlininteg.cpp.
|
virtual |
Evaluate the 1st Piola-Kirchhoff stress tensor, P=P(J).
Implements mfem::HyperelasticModel.
Definition at line 161 of file nonlininteg.cpp.
|
virtual |
Evaluate the strain energy density function, W=W(J).
Implements mfem::HyperelasticModel.
Definition at line 145 of file nonlininteg.cpp.
|
mutableprotected |
Definition at line 109 of file nonlininteg.hpp.
|
protected |
Definition at line 105 of file nonlininteg.hpp.
|
protected |
Definition at line 105 of file nonlininteg.hpp.
|
protected |
Definition at line 105 of file nonlininteg.hpp.
|
mutableprotected |
Definition at line 104 of file nonlininteg.hpp.
|
mutableprotected |
Definition at line 109 of file nonlininteg.hpp.
|
protected |
Definition at line 106 of file nonlininteg.hpp.
|
mutableprotected |
Definition at line 104 of file nonlininteg.hpp.
|
mutableprotected |
Definition at line 104 of file nonlininteg.hpp.
|
mutableprotected |
Definition at line 108 of file nonlininteg.hpp.
1.8.5