MFEM
v3.3
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.