#include <MooneyRivlinMaterialLaw.hpp>
Public Member Functions | |
double | Get_dW_dI1 (double I1, double I2) |
double | Get_dW_dI2 (double I1, double I2) |
double | Get_d2W_dI1 (double I1, double I2) |
double | Get_d2W_dI2 (double I1, double I2) |
double | Get_d2W_dI1I2 (double I1, double I2) |
double | GetC1 () |
double | GetC2 () |
MooneyRivlinMaterialLaw (double c1, double c2=MINUS_LARGE) | |
void | ScaleMaterialParameters (double scaleFactor) |
Private Attributes | |
double | mC1 |
double | mC2 |
A Mooney-Rivlin isotropic incompressible hyperelastic material law for finite elasticity
The law is given by a strain energy function W(I_1,I_2,I_3) = c1(I_1-3) + c2(I_2-3) - p/2 C^{-1} in 3d, or W(I_1,I_3) = c1(I_1-2) - p/2 C^{-1} in 2d.
Here I_i are the principal invariants of C, the Lagrangian deformation tensor. (I1=trace(C), I2=trace(C)^2-trace(C^2), I3=det(C)).
Note: only dimension equals 2 or 3 is permitted.
Definition at line 57 of file MooneyRivlinMaterialLaw.hpp.
MooneyRivlinMaterialLaw< DIM >::MooneyRivlinMaterialLaw | ( | double | c1, | |
double | c2 = MINUS_LARGE | |||
) | [inline] |
Constructor, Taking in mooney-rivlin parameters c1 and c2. Note: c2 is not used if the dimension is 2. Just pass in c1 if 2d.
c1 | parameter c1 | |
c2 | parameter c2 (defaults to MINUS_LARGE) |
Definition at line 90 of file MooneyRivlinMaterialLaw.cpp.
References EXCEPTION.
double MooneyRivlinMaterialLaw< DIM >::Get_dW_dI1 | ( | double | I1, | |
double | I2 | |||
) | [inline, virtual] |
Get the first derivative dW/dI1.
I1 | first principal invariant of C | |
I2 | second principal invariant of C |
Implements AbstractIsotropicIncompressibleMaterialLaw< DIM >.
Definition at line 32 of file MooneyRivlinMaterialLaw.cpp.
References MooneyRivlinMaterialLaw< DIM >::mC1.
double MooneyRivlinMaterialLaw< DIM >::Get_dW_dI2 | ( | double | I1, | |
double | I2 | |||
) | [inline, virtual] |
Get the first derivative dW/dI2.
I1 | first principal invariant of C | |
I2 | second principal invariant of C |
Implements AbstractIsotropicIncompressibleMaterialLaw< DIM >.
Definition at line 38 of file MooneyRivlinMaterialLaw.cpp.
References MooneyRivlinMaterialLaw< DIM >::mC2.
double MooneyRivlinMaterialLaw< DIM >::Get_d2W_dI1 | ( | double | I1, | |
double | I2 | |||
) | [inline, virtual] |
Get the second derivative d^2W/dI1^2.
I1 | first principal invariant of C | |
I2 | second principal invariant of C |
Implements AbstractIsotropicIncompressibleMaterialLaw< DIM >.
Definition at line 49 of file MooneyRivlinMaterialLaw.cpp.
double MooneyRivlinMaterialLaw< DIM >::Get_d2W_dI2 | ( | double | I1, | |
double | I2 | |||
) | [inline, virtual] |
Get the second derivative d^2W/dI2^2.
I1 | first principal invariant of C | |
I2 | second principal invariant of C |
Implements AbstractIsotropicIncompressibleMaterialLaw< DIM >.
Definition at line 55 of file MooneyRivlinMaterialLaw.cpp.
double MooneyRivlinMaterialLaw< DIM >::Get_d2W_dI1I2 | ( | double | I1, | |
double | I2 | |||
) | [inline, virtual] |
Get the second derivative d^2W/dI1dI2.
I1 | first principal invariant of C | |
I2 | second principal invariant of C |
Implements AbstractIsotropicIncompressibleMaterialLaw< DIM >.
Definition at line 66 of file MooneyRivlinMaterialLaw.cpp.
double MooneyRivlinMaterialLaw< DIM >::GetC1 | ( | ) | [inline] |
Get method for mC1.
Definition at line 77 of file MooneyRivlinMaterialLaw.cpp.
References MooneyRivlinMaterialLaw< DIM >::mC1.
double MooneyRivlinMaterialLaw< DIM >::GetC2 | ( | ) | [inline] |
Get method for mC2.
Definition at line 83 of file MooneyRivlinMaterialLaw.cpp.
References MooneyRivlinMaterialLaw< DIM >::mC2.
void MooneyRivlinMaterialLaw< DIM >::ScaleMaterialParameters | ( | double | scaleFactor | ) | [inline, virtual] |
Scale the dimensional material parameters.
scaleFactor |
Reimplemented from AbstractMaterialLaw< DIM >.
Definition at line 109 of file MooneyRivlinMaterialLaw.cpp.
References MooneyRivlinMaterialLaw< DIM >::mC1, and MooneyRivlinMaterialLaw< DIM >::mC2.
double MooneyRivlinMaterialLaw< DIM >::mC1 [private] |
Parameter c1.
Definition at line 62 of file MooneyRivlinMaterialLaw.hpp.
Referenced by MooneyRivlinMaterialLaw< DIM >::Get_dW_dI1(), MooneyRivlinMaterialLaw< DIM >::GetC1(), and MooneyRivlinMaterialLaw< DIM >::ScaleMaterialParameters().
double MooneyRivlinMaterialLaw< DIM >::mC2 [private] |
Parameter c2.
Definition at line 65 of file MooneyRivlinMaterialLaw.hpp.
Referenced by MooneyRivlinMaterialLaw< DIM >::Get_dW_dI2(), MooneyRivlinMaterialLaw< DIM >::GetC2(), and MooneyRivlinMaterialLaw< DIM >::ScaleMaterialParameters().