ExponentialMaterialLaw< DIM > Class Template Reference

#include <ExponentialMaterialLaw.hpp>

Inherits AbstractIsotropicIncompressibleMaterialLaw< DIM >.

Collaboration diagram for ExponentialMaterialLaw< DIM >:
Collaboration graph
[legend]

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 GetA ()
double GetB ()
 ExponentialMaterialLaw (double a, double b)

Private Attributes

double mA
double mB

Detailed Description

template<unsigned DIM>
class ExponentialMaterialLaw< DIM >

ExponentialMaterialLaw

An exponential isotropic incompressible hyperelastic material law for finite elasticity

The law is given by a strain energy function W(I_1,I_2,I_3) = a exp( b(I_1-3) ) - p/2 C^{-1} in 3d, or W(I_1,I_2,I_3) = a exp( b(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 55 of file ExponentialMaterialLaw.hpp.


Constructor & Destructor Documentation

template<unsigned DIM>
ExponentialMaterialLaw< DIM >::ExponentialMaterialLaw ( double  a,
double  b 
) [inline]

Constructor, taking in the parameters a and b. a must be positive.

Parameters:
a the parameter a
b the parameter b

Definition at line 32 of file ExponentialMaterialLaw.cpp.

References EXCEPTION.


Member Function Documentation

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

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

Todo:
The name of this method should not include underscores.
Parameters:
I1 first principal invariant of C
I2 second principal invariant of C

Implements AbstractIsotropicIncompressibleMaterialLaw< DIM >.

Definition at line 76 of file ExponentialMaterialLaw.cpp.

References ExponentialMaterialLaw< DIM >::mA, and ExponentialMaterialLaw< DIM >::mB.

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

Get the second derivative d^2W/dI1dI2.

Todo:
The name of this method should not include underscores.
Parameters:
I1 first principal invariant of C
I2 second principal invariant of C

Implements AbstractIsotropicIncompressibleMaterialLaw< DIM >.

Definition at line 96 of file ExponentialMaterialLaw.cpp.

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

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

Todo:
The name of this method should not include underscores.
Parameters:
I1 first principal invariant of C
I2 second principal invariant of C

Implements AbstractIsotropicIncompressibleMaterialLaw< DIM >.

Definition at line 82 of file ExponentialMaterialLaw.cpp.

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

Get the first derivative dW/dI1.

Todo:
The name of this method should not include underscores.
Parameters:
I1 first principal invariant of C
I2 second principal invariant of C

Implements AbstractIsotropicIncompressibleMaterialLaw< DIM >.

Definition at line 56 of file ExponentialMaterialLaw.cpp.

References ExponentialMaterialLaw< DIM >::mA, and ExponentialMaterialLaw< DIM >::mB.

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

Get the first derivative dW/dI2.

Todo:
The name of this method should not include underscores.
Parameters:
I1 first principal invariant of C
I2 second principal invariant of C

Implements AbstractIsotropicIncompressibleMaterialLaw< DIM >.

Definition at line 62 of file ExponentialMaterialLaw.cpp.

template<unsigned DIM>
double ExponentialMaterialLaw< DIM >::GetA (  )  [inline]

Get method for mA.

Definition at line 44 of file ExponentialMaterialLaw.cpp.

References ExponentialMaterialLaw< DIM >::mA.

template<unsigned DIM>
double ExponentialMaterialLaw< DIM >::GetB (  )  [inline]

Get method for mB.

Definition at line 50 of file ExponentialMaterialLaw.cpp.

References ExponentialMaterialLaw< DIM >::mB.


Member Data Documentation

template<unsigned DIM>
double ExponentialMaterialLaw< DIM >::mA [private]
template<unsigned DIM>
double ExponentialMaterialLaw< DIM >::mB [private]

The documentation for this class was generated from the following files:
Generated on Thu Dec 22 13:04:30 2011 for Chaste by  doxygen 1.6.3