oomph::MooneyRivlin Class Reference

#include <constitutive_laws.h>

+ Inheritance diagram for oomph::MooneyRivlin:

Public Member Functions

 MooneyRivlin (double *c1_pt, double *c2_pt)
 Constructor takes the pointer to the value of the constants. More...
 
virtual ~MooneyRivlin ()
 Empty 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)
 
bool requires_incompressibility_constraint ()
 
- 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)
 

Private Attributes

doubleC1_pt
 Pointer to first Mooney Rivlin constant. More...
 
doubleC2_pt
 Pointer to second Mooney Rivlin constant. More...
 

Detailed Description

///////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////// MooneyRivlin strain-energy function. with constitutive parameters C1 and C2:

\[ W = C_1 (I_0 - 3) + C_2 (I_1 - 3) \]

where incompressibility ( \( I_2 \equiv 1\)) is assumed.

Constructor & Destructor Documentation

◆ MooneyRivlin()

oomph::MooneyRivlin::MooneyRivlin ( double c1_pt,
double c2_pt 
)
inline

Constructor takes the pointer to the value of the constants.

149  : StrainEnergyFunction(), C1_pt(c1_pt), C2_pt(c2_pt)
150  {
151  }
double * C2_pt
Pointer to second Mooney Rivlin constant.
Definition: constitutive_laws.h:193
double * C1_pt
Pointer to first Mooney Rivlin constant.
Definition: constitutive_laws.h:190
StrainEnergyFunction()
Constructor takes no arguments.
Definition: constitutive_laws.h:51

◆ ~MooneyRivlin()

virtual oomph::MooneyRivlin::~MooneyRivlin ( )
inlinevirtual

Empty Virtual destructor.

154 {}

Member Function Documentation

◆ derivatives()

void oomph::MooneyRivlin::derivatives ( Vector< double > &  I,
Vector< double > &  dWdI 
)
inlinevirtual

Return the derivatives of the strain energy function with respect to the strain invariants

Reimplemented from oomph::StrainEnergyFunction.

172  {
173  dWdI[0] = (*C1_pt);
174  dWdI[1] = (*C2_pt);
175  dWdI[2] = 0.0;
176  }

◆ requires_incompressibility_constraint()

bool oomph::MooneyRivlin::requires_incompressibility_constraint ( )
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. True

Implements oomph::StrainEnergyFunction.

183  {
184  return true;
185  }

◆ W() [1/2]

double oomph::MooneyRivlin::W ( const DenseMatrix< double > &  gamma)
inlinevirtual

Return the strain energy in terms of strain tensor.

Reimplemented from oomph::StrainEnergyFunction.

158  {
160  }
virtual double W(const DenseMatrix< double > &gamma)
Return the strain energy in terms of the strain tensor.
Definition: constitutive_laws.h:58
Mdouble gamma(Mdouble gamma_in)
This is the gamma function returns the true value for the half integer value.
Definition: ExtendedMath.cc:116

References mathsFunc::gamma(), and oomph::StrainEnergyFunction::W().

◆ W() [2/2]

double oomph::MooneyRivlin::W ( const Vector< double > &  I)
inlinevirtual

Return the strain energy in terms of the strain invariants.

Reimplemented from oomph::StrainEnergyFunction.

164  {
165  return (*C1_pt) * (I[0] - 3.0) + (*C2_pt) * (I[1] - 3.0);
166  }
#define I
Definition: main.h:127

References C1_pt, C2_pt, and I.

Member Data Documentation

◆ C1_pt

double* oomph::MooneyRivlin::C1_pt
private

Pointer to first Mooney Rivlin constant.

Referenced by W().

◆ C2_pt

double* oomph::MooneyRivlin::C2_pt
private

Pointer to second Mooney Rivlin constant.

Referenced by W().


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