hp2FEM  0.1
Public Member Functions | Protected Attributes
MooneyRivlinMaterial Class Reference

Implements the isotropic Mooney-Rivlin material. More...

#include <MooneyRivlinMaterial.h>

Inheritance diagram for MooneyRivlinMaterial:
Inheritance graph
[legend]
Collaboration diagram for MooneyRivlinMaterial:
Collaboration graph
[legend]

List of all members.

Public Member Functions

 MooneyRivlinMaterial ()
 Default constructor.
 MooneyRivlinMaterial (MooneyRivlinMaterial &Instance)
 Copy-initializer constructor. Copies the contents from Instance to the current object.
 MooneyRivlinMaterial (unsigned long MaterialNumber, ProblemType_E Application, double a_10=0.0, double a_01=0.0, double Kappa=0.0, double Nu=0.0, double AlphaT=0.0, double Rho=0.0)
 Constructor using parameters. Initialization of all class attributes is possible. Default values are also provided.
MooneyRivlinMaterialoperator= (MooneyRivlinMaterial &Instance)
 Copies the contents from Instance to the current object.
 ~MooneyRivlinMaterial ()
 Destructor.
void operator= (Material &Inst)
 Operator =This operation copies all Attributes from another object (Instance) to this class@.
void Read (FILE *File)
 Reads class attributes from the .def ASCII file.
void Print (FILE *File, char *Message)
 Prints class information to an ASCII file.
void Print (FILE *File)
 Implementation of an abstract base class's operation@.
void Save (FILE *File)
 Writes class information to a binary file. The current object state can be completely recovered when applying the Restore() operation.
void Restore (FILE *File)
 Restores class data (written using Save()) from a binary file.
void Free ()
 Releases the memory allocated for the class attributes.
void SetApplication (ProblemType_E Application)
 Sets the application type.
ProblemType_E GetApplication ()
 Returns the application type.
char * GetName ()
 Returns string with the name of the material.
MaterialType_E GetMaterialType ()
 Returns material type.
void SetProperties (BuiltInArray< double > &Properties)
 Sets material properties from values in an array.
void SetProperty (MaterialProperty_E Property, double Value)
 Sets the value of a specific material property.
void GetProperties (BuiltInArray< double > &Properties)
 Returns the values of the material properties in an array.
double GetProperty (MaterialProperty_E Property)
 Gets the value of a specific material property.
unsigned long GetNumberProperties ()
 Returns the number of properties of the material specialization.
void GetCMatrix (SymmetricMatrix &CMatrix)
 Returns the tangent compliance matrix of the material.
void GetDMatrix (SymmetricMatrix &DMatrix, double *Strain=NULL, double pbar=0.0, double *DeltaDef=NULL, unsigned long ElementNumber=0, unsigned long PointStateNumber=0)
 Returns the tangent elasticity matrix of the material.
unsigned long GetDMatrixOrder (unsigned long StrainOrder)
 Returns the highest order of the polynomials that describes the tangent stiffness properties (components of the D matrix).
void GetStress (double *Stress, double *Strain, double *StressTensor=NULL, double pbar=0.0, unsigned long ElementNumber=0, unsigned long PointStateNumber=0)
 Evaluation of stress tensor components using deformation components.
void GetStressUpdate (double *Stress, double *Strain, SymmetricMatrix &DMatrix, double Damage_n, unsigned long IntPoint, double &Damage_n1, double *StressTensor, double pbar=0.0, unsigned long ElementNumber=0, unsigned long PointStateNumber=0)
unsigned long GetStressOrder (unsigned long StrainOrder)
 Returns the highest order components of the stress tensor.
double GetStrainEnergyDensity (double *Strain, double pbar=0.0, unsigned long ElementNumber=0, unsigned long PointStateNumber=0)
 Returns the strain energy density of the material point whose strain is given as a parameter.
int GetStrainEnergyDensityOrder (unsigned long StrainOrder)
 Returns the highest order components of the strain energy density functional.

Protected Attributes

double A_10
 First material constant in the Mooney-Rivlin model. A10 multiplies the first invariant of C.
double A_01
 Second material constant in the Mooney-Rivlin model. A01 multiplies the second invariant of C.
double BulkModulus
 Proportionality constant between hidrostatic pressure and compressibility.
double PoissonRatio
 Poisson ratio.
double ThermalExpCoef
 Coefficient of thermal expansion (isotropicdilatation coefficient)
double Density
 Density: mass/volume when volume goes to zero@ ## begin MooneyRivlin::Density%3B32412B0300.attr preserve=no protected: double {UA}.

Detailed Description

Implements the isotropic Mooney-Rivlin material.


Constructor & Destructor Documentation

Copy-initializer constructor. Copies the contents from Instance to the current object.

Returns:
Reference to the current object.

Member Function Documentation

ProblemType_E MooneyRivlinMaterial::GetApplication ( ) [virtual]

Returns the application type.

Returns:
ProblemType_E as an enum value.

Reimplemented from Material.

void MooneyRivlinMaterial::GetCMatrix ( SymmetricMatrix CMatrix) [virtual]

Returns the tangent compliance matrix of the material.

Parameters:
[out]CMatrix- compliance matrix.

Implements Material.

void MooneyRivlinMaterial::GetDMatrix ( SymmetricMatrix DMatrix,
double *  Strain = NULL,
double  pbar = 0.0,
double *  DeltaDef = NULL,
unsigned long  ElementNumber = 0,
unsigned long  PointStateNumber = 0 
) [virtual]

Returns the tangent elasticity matrix of the material.

Parameters:
[out]DMatrix- elasticity matrix.

Implements Material.

unsigned long MooneyRivlinMaterial::GetDMatrixOrder ( unsigned long  StrainOrder) [virtual]

Returns the highest order of the polynomials that describes the tangent stiffness properties (components of the D matrix).

Parameters:
[in]StrainOrder- polynomial order for the starin measure.
Returns:
Material order.

Implements Material.

MaterialType_E MooneyRivlinMaterial::GetMaterialType ( ) [virtual]

Returns material type.

Returns:
Material type as a MaterialType_E enum value.

Implements Material.

char * MooneyRivlinMaterial::GetName ( ) [virtual]

Returns string with the name of the material.

Returns:
String "MooneyRivlinMaterial".

Implements Material.

unsigned long MooneyRivlinMaterial::GetNumberProperties ( ) [virtual]

Returns the number of properties of the material specialization.

Number of material properties=6.

Implements Material.

void MooneyRivlinMaterial::GetProperties ( BuiltInArray< double > &  Properties) [virtual]

Returns the values of the material properties in an array.

Parameters:
[out]Properties- array with the material properties.

Implements Material.

double MooneyRivlinMaterial::GetProperty ( MaterialProperty_E  Property) [virtual]

Gets the value of a specific material property.

Returns:
Material property value.

Implements Material.

double MooneyRivlinMaterial::GetStrainEnergyDensity ( double *  Strain,
double  pbar = 0.0,
unsigned long  ElementNumber = 0,
unsigned long  PointStateNumber = 0 
) [virtual]

Returns the strain energy density of the material point whose strain is given as a parameter.

Parameters:
[in]Strain- strain vector
Returns:
value of the strain enegry densiy.

Implements Material.

int MooneyRivlinMaterial::GetStrainEnergyDensityOrder ( unsigned long  StrainOrder) [virtual]

Returns the highest order components of the strain energy density functional.

Returns:
Material order.

Implements Material.

void MooneyRivlinMaterial::GetStress ( double *  Stress,
double *  Strain,
double *  StressTensor = NULL,
double  pbar = 0.0,
unsigned long  ElementNumber = 0,
unsigned long  PointStateNumber = 0 
) [virtual]

Evaluation of stress tensor components using deformation components.

Note:
The stress components are returned in the algoritmic order (according to the material application) and not in the order of a symmetric tensor
Parameters:
[out]Stress- stress tensor stored as vector.
[out]StressTensor- Stress tensor stored as a matrix.
[in]Strain- strain tensor stored as a vector.

Implements Material.

unsigned long MooneyRivlinMaterial::GetStressOrder ( unsigned long  StrainOrder) [virtual]

Returns the highest order components of the stress tensor.

Returns:
Material order.

Implements Material.

MooneyRivlinMaterial & MooneyRivlinMaterial::operator= ( MooneyRivlinMaterial Instance)

Copies the contents from Instance to the current object.

Returns:
Reference to the current object.
void MooneyRivlinMaterial::operator= ( Material Inst)

Operator =This operation copies all Attributes from another object (Instance) to this class@.

## Other Operations (specified) ## Operation: operator =%3B32404F00C9; C++

Reimplemented from Material.

void MooneyRivlinMaterial::Print ( FILE *  File,
char *  Message 
) [virtual]

Prints class information to an ASCII file.

Parameters:
[in]File,:pointer to the ASCII file.
[in]Message,:optional message

Implements Material.

void MooneyRivlinMaterial::Print ( FILE *  File) [virtual]

Implementation of an abstract base class's operation@.

## Operation: Print%3B32404F01AF; C++

Implements Material.

void MooneyRivlinMaterial::Read ( FILE *  File) [virtual]

Reads class attributes from the .def ASCII file.

Parameters:
[in]File,:pointer to the .def ASCII file.

Implements Material.

void MooneyRivlinMaterial::Restore ( FILE *  File) [virtual]

Restores class data (written using Save()) from a binary file.

Parameters:
[in]File,:pointer to the binary file.

Implements Material.

void MooneyRivlinMaterial::Save ( FILE *  File) [virtual]

Writes class information to a binary file. The current object state can be completely recovered when applying the Restore() operation.

Parameters:
[in]File,:pointer to the binary file.

Implements Material.

void MooneyRivlinMaterial::SetProperties ( BuiltInArray< double > &  Properties) [virtual]

Sets material properties from values in an array.

Parameters:
[in]Properties- array with material properties.

Implements Material.

void MooneyRivlinMaterial::SetProperty ( MaterialProperty_E  Property,
double  Value 
) [virtual]

Sets the value of a specific material property.

Parameters:
[in]Property- material property to be set as a MaterialProperty_E enum
[in]Value,:material property value.
Note:
Valid labels: E, NU, ALFAT, RHO@

Implements Material.


Member Data Documentation

double MooneyRivlinMaterial::Density [protected]

Density: mass/volume when volume goes to zero@ ## begin MooneyRivlin::Density%3B32412B0300.attr preserve=no protected: double {UA}.

## Attribute: Density%3B32412B0300


The documentation for this class was generated from the following files:
 All Classes Files Functions Variables Typedefs Friends Defines