Chaste Release::3.1
MooneyRivlinMaterialLaw< DIM > Class Template Reference

#include <MooneyRivlinMaterialLaw.hpp>

Inheritance diagram for MooneyRivlinMaterialLaw< DIM >:
Collaboration diagram for MooneyRivlinMaterialLaw< DIM >:

List of all members.

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

Detailed Description

template<unsigned DIM>
class MooneyRivlinMaterialLaw< DIM >

MooneyRivlinMaterialLaw

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 64 of file MooneyRivlinMaterialLaw.hpp.


Constructor & Destructor Documentation

template<unsigned DIM>
MooneyRivlinMaterialLaw< DIM >::MooneyRivlinMaterialLaw ( double  c1,
double  c2 = MINUS_LARGE 
)

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.

Parameters:
c1parameter c1
c2parameter c2 (defaults to MINUS_LARGE)

Definition at line 103 of file MooneyRivlinMaterialLaw.cpp.

References EXCEPTION.


Member Function Documentation

template<unsigned DIM>
double MooneyRivlinMaterialLaw< DIM >::Get_d2W_dI1 ( double  I1,
double  I2 
) [virtual]

Get the second derivative d^2W/dI1^2.

Todo:
The name of this method should not include underscores.
Parameters:
I1first principal invariant of C
I2second principal invariant of C

Implements AbstractIsotropicIncompressibleMaterialLaw< DIM >.

Definition at line 58 of file MooneyRivlinMaterialLaw.cpp.

template<unsigned DIM>
double MooneyRivlinMaterialLaw< DIM >::Get_d2W_dI1I2 ( double  I1,
double  I2 
) [virtual]

Get the second derivative d^2W/dI1dI2.

Todo:
The name of this method should not include underscores.
Parameters:
I1first principal invariant of C
I2second principal invariant of C

Implements AbstractIsotropicIncompressibleMaterialLaw< DIM >.

Definition at line 77 of file MooneyRivlinMaterialLaw.cpp.

template<unsigned DIM>
double MooneyRivlinMaterialLaw< DIM >::Get_d2W_dI2 ( double  I1,
double  I2 
) [virtual]

Get the second derivative d^2W/dI2^2.

Todo:
The name of this method should not include underscores.
Parameters:
I1first principal invariant of C
I2second principal invariant of C

Implements AbstractIsotropicIncompressibleMaterialLaw< DIM >.

Definition at line 64 of file MooneyRivlinMaterialLaw.cpp.

template<unsigned DIM>
double MooneyRivlinMaterialLaw< DIM >::Get_dW_dI1 ( double  I1,
double  I2 
) [virtual]

Get the first derivative dW/dI1.

Todo:
The name of this method should not include underscores.
Parameters:
I1first principal invariant of C
I2second principal invariant of C

Implements AbstractIsotropicIncompressibleMaterialLaw< DIM >.

Definition at line 39 of file MooneyRivlinMaterialLaw.cpp.

template<unsigned DIM>
double MooneyRivlinMaterialLaw< DIM >::Get_dW_dI2 ( double  I1,
double  I2 
) [virtual]

Get the first derivative dW/dI2.

Todo:
The name of this method should not include underscores.
Parameters:
I1first principal invariant of C
I2second principal invariant of C

Implements AbstractIsotropicIncompressibleMaterialLaw< DIM >.

Definition at line 45 of file MooneyRivlinMaterialLaw.cpp.

template<unsigned DIM>
double MooneyRivlinMaterialLaw< DIM >::GetC1 ( )

Get method for mC1.

Definition at line 90 of file MooneyRivlinMaterialLaw.cpp.

template<unsigned DIM>
double MooneyRivlinMaterialLaw< DIM >::GetC2 ( )

Get method for mC2.

Definition at line 96 of file MooneyRivlinMaterialLaw.cpp.

template<unsigned DIM>
void MooneyRivlinMaterialLaw< DIM >::ScaleMaterialParameters ( double  scaleFactor) [virtual]

Scale the dimensional material parameters.

Parameters:
scaleFactor

Reimplemented from AbstractMaterialLaw< DIM >.

Definition at line 122 of file MooneyRivlinMaterialLaw.cpp.


Member Data Documentation

template<unsigned DIM>
double MooneyRivlinMaterialLaw< DIM >::mC1 [private]

Parameter c1.

Definition at line 69 of file MooneyRivlinMaterialLaw.hpp.

template<unsigned DIM>
double MooneyRivlinMaterialLaw< DIM >::mC2 [private]

Parameter c2.

Definition at line 72 of file MooneyRivlinMaterialLaw.hpp.


The documentation for this class was generated from the following files: