SchmidCostaExponentialLaw2d Class Reference

#include <SchmidCostaExponentialLaw2d.hpp>

Inheritance diagram for SchmidCostaExponentialLaw2d:

Inheritance graph
[legend]
Collaboration diagram for SchmidCostaExponentialLaw2d:

Collaboration graph
[legend]

List of all members.

Public Member Functions

 SchmidCostaExponentialLaw2d ()
void ComputeStressAndStressDerivative (c_matrix< double, 2, 2 > &rC, c_matrix< double, 2, 2 > &rInvC, double pressure, c_matrix< double, 2, 2 > &rT, FourthOrderTensor< 2 > &rDTdE, bool computeDTdE)
double GetA ()
std::vector< std::vector
< double > > 
GetB ()
double GetZeroStrainPressure ()

Private Attributes

double mA
std::vector< std::vector
< double > > 
mB
c_matrix< double, 2, 2 > mIdentity


Detailed Description

A 2d version of the material law in Costa, Holmes, McCulloch "Modelling Cardiac Mechanical Properties in Three Dimensions" Philo. Trans. R. Soc.

W = aexp(Q-1) where Q = bff*Eff^2 + bfs*Efs^2 + bsf*Esf^2 + bss*Ess^2

where the parameters are taken from the fitting in Schmid,Nash,Young,Hunter "Myocardial Material Parameter Estimation - A Comparative Study for Simple Shear" Transactions of the ASME.

Definition at line 46 of file SchmidCostaExponentialLaw2d.hpp.


Constructor & Destructor Documentation

SchmidCostaExponentialLaw2d::SchmidCostaExponentialLaw2d (  ) 

Constructor.

Definition at line 31 of file SchmidCostaExponentialLaw2d.cpp.

References mA, mB, and mIdentity.


Member Function Documentation

void SchmidCostaExponentialLaw2d::ComputeStressAndStressDerivative ( c_matrix< double, 2, 2 > &  rC,
c_matrix< double, 2, 2 > &  rInvC,
double  pressure,
c_matrix< double, 2, 2 > &  rT,
FourthOrderTensor< 2 > &  rDTdE,
bool  computeDTdE 
)

Compute the (2nd Piola Kirchoff) stress T and the stress derivative dT/dE for a given strain.

NOTE: the strain E is not expected to be passed in, instead the Lagrangian deformation tensor C is required (recall, E = 0.5(C-I))

dT/dE is a fourth-order tensor, where dT/dE[M][N][P][Q] = dT^{MN}/dE_{PQ}

Parameters:
rC The Lagrangian deformation tensor (F^T F)
rInvC The inverse of C. Should be computed by the user. (Change this?)
pressure the current pressure
rT the stress will be returned in this parameter
rDTdE the stress derivative will be returned in this parameter, assuming the final parameter is true
computeDTdE a boolean flag saying whether the stress derivative is required or not.

Definition at line 58 of file SchmidCostaExponentialLaw2d.cpp.

References mA, mB, mIdentity, and FourthOrderTensor< DIM >::Zero().

double SchmidCostaExponentialLaw2d::GetA (  ) 

Get method for mA.

Definition at line 102 of file SchmidCostaExponentialLaw2d.cpp.

References mA.

std::vector< std::vector< double > > SchmidCostaExponentialLaw2d::GetB (  ) 

Get method for mB.

Definition at line 107 of file SchmidCostaExponentialLaw2d.cpp.

References mB.

double SchmidCostaExponentialLaw2d::GetZeroStrainPressure (  )  [virtual]

Get the pressure corresponding to E=0, ie C=identity.

Implements AbstractIncompressibleMaterialLaw< 2 >.

Definition at line 112 of file SchmidCostaExponentialLaw2d.cpp.


Member Data Documentation

Parameter a.

Definition at line 51 of file SchmidCostaExponentialLaw2d.hpp.

Referenced by ComputeStressAndStressDerivative(), GetA(), and SchmidCostaExponentialLaw2d().

std::vector<std::vector<double> > SchmidCostaExponentialLaw2d::mB [private]

Matrix of parameters b.

Definition at line 54 of file SchmidCostaExponentialLaw2d.hpp.

Referenced by ComputeStressAndStressDerivative(), GetB(), and SchmidCostaExponentialLaw2d().

c_matrix<double,2,2> SchmidCostaExponentialLaw2d::mIdentity [private]

2D identity matrix.

Definition at line 57 of file SchmidCostaExponentialLaw2d.hpp.

Referenced by ComputeStressAndStressDerivative(), and SchmidCostaExponentialLaw2d().


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

Generated on Tue Aug 4 16:11:41 2009 for Chaste by  doxygen 1.5.5