Generalisation of Mooney Rivlin constitutive law to compressible media as suggested on p. 553 of Fung, Y.C. & Tong, P. "Classical and Computational Solid Mechanics" World Scientific (2001). Input parameters are Young's modulus E, Poisson ratio nu and the Mooney-Rivlin constant C1. In the small-deformation-limit the behaviour becomes equivalent to that of linear elasticity with the same E and nu. More...
#include <constitutive_laws.h>
Inheritance diagram for oomph::GeneralisedMooneyRivlin:Public Member Functions | |
| GeneralisedMooneyRivlin (double *nu_pt, double *c1_pt) | |
| Constructor takes the pointers to the constitutive parameters: Poisson's ratio, the Mooney-Rivlin parameter. Young's modulus is set to 1, implying that it has been used to scale the stresses. More... | |
| GeneralisedMooneyRivlin (double *nu_pt, double *c1_pt, double *e_pt) | |
| Constructor takes the pointers to the constitutive parameters: Poisson's ratio, the Mooney-Rivlin parameter and Young's modulus. More... | |
| virtual | ~GeneralisedMooneyRivlin () |
| Virtual destructor. More... | |
| double | W (const DenseMatrix< double > &gamma) |
| Return the strain energy in terms of strain tensor. More... | |
| double | W (const Vector< double > &I) |
| Return the strain energy in terms of the strain invariants. More... | |
| void | derivatives (Vector< double > &I, Vector< double > &dWdI) |
| Return the derivatives of the strain energy function with respect to the strain invariants. More... | |
| bool | requires_incompressibility_constraint () |
| Pure virtual function in which the user must declare if the constitutive equation requires an incompressible formulation in which the volume constraint is enforced explicitly. Used as a sanity check in PARANOID mode. False. More... | |
Public Member Functions inherited from oomph::StrainEnergyFunction | |
| StrainEnergyFunction () | |
| Constructor takes no arguments. More... | |
| virtual | ~StrainEnergyFunction () |
| Empty virtual destructor. More... | |
| virtual void | derivative (const DenseMatrix< double > &gamma, DenseMatrix< double > &dWdgamma) |
| Return the derivatives of the strain energy function with respect to the components of the strain tensor (default is to use finite differences). More... | |
Private Attributes | |
| double * | Nu_pt |
| Poisson's ratio. More... | |
| double * | C1_pt |
| Mooney-Rivlin parameter. More... | |
| double * | E_pt |
| Young's modulus. More... | |
| bool | Must_delete_e |
| Boolean flag to indicate if storage for elastic modulus must be deleted in destructor. More... | |
Generalisation of Mooney Rivlin constitutive law to compressible media as suggested on p. 553 of Fung, Y.C. & Tong, P. "Classical and Computational Solid Mechanics" World Scientific (2001). Input parameters are Young's modulus E, Poisson ratio nu and the Mooney-Rivlin constant C1. In the small-deformation-limit the behaviour becomes equivalent to that of linear elasticity with the same E and nu.
Note that there's a factor of 2 difference between C1 and the Mooney Rivlin C1!
Definition at line 225 of file constitutive_laws.h.
|
inline |
Constructor takes the pointers to the constitutive parameters: Poisson's ratio, the Mooney-Rivlin parameter. Young's modulus is set to 1, implying that it has been used to scale the stresses.
Definition at line 233 of file constitutive_laws.h.
|
inline |
Constructor takes the pointers to the constitutive parameters: Poisson's ratio, the Mooney-Rivlin parameter and Young's modulus.
Definition at line 239 of file constitutive_laws.h.
|
inlinevirtual |
Virtual destructor.
Definition at line 246 of file constitutive_laws.h.
|
inlinevirtual |
Return the derivatives of the strain energy function with respect to the strain invariants.
Reimplemented from oomph::StrainEnergyFunction.
Definition at line 269 of file constitutive_laws.h.
|
inlinevirtual |
Pure virtual function in which the user must declare if the constitutive equation requires an incompressible formulation in which the volume constraint is enforced explicitly. Used as a sanity check in PARANOID mode. False.
Implements oomph::StrainEnergyFunction.
Definition at line 283 of file constitutive_laws.h.
|
inlinevirtual |
Return the strain energy in terms of strain tensor.
Reimplemented from oomph::StrainEnergyFunction.
Definition at line 252 of file constitutive_laws.h.
References oomph::StrainEnergyFunction::W().
|
inlinevirtual |
Return the strain energy in terms of the strain invariants.
Reimplemented from oomph::StrainEnergyFunction.
Definition at line 257 of file constitutive_laws.h.
|
private |
Mooney-Rivlin parameter.
Definition at line 291 of file constitutive_laws.h.
|
private |
Young's modulus.
Definition at line 294 of file constitutive_laws.h.
|
private |
Boolean flag to indicate if storage for elastic modulus must be deleted in destructor.
Definition at line 298 of file constitutive_laws.h.
|
private |
Poisson's ratio.
Definition at line 288 of file constitutive_laws.h.