SOFA API  6a688117
Open source framework for multi-physics simuation
sofa::component::fem::HyperelasticMaterial< DataTypes > Class Template Reference

#include <HyperelasticMaterial.h>

Inheritance diagram for sofa::component::fem::HyperelasticMaterial< DataTypes >:

Detailed Description

template<class DataTypes>
class sofa::component::fem::HyperelasticMaterial< DataTypes >

a Class that describe a generic hyperelastic material . The material is described based on continuum mechanics and the description is independent to any discretization method like the finite element method. A material is generically described by a strain energy function and its first and second derivatives.

Public Member Functions

virtual ~HyperelasticMaterial ()
 
virtual Real getStrainEnergy (StrainInformation< DataTypes > *, const MaterialParameters< DataTypes > &)
 
virtual void deriveSPKTensor (StrainInformation< DataTypes > *, const MaterialParameters< DataTypes > &, MatrixSym &)
 
virtual void applyElasticityTensor (StrainInformation< DataTypes > *, const MaterialParameters< DataTypes > &, const MatrixSym &, MatrixSym &)
 
virtual void ElasticityTensor (StrainInformation< DataTypes > *, const MaterialParameters< DataTypes > &, Matrix6 &)
 

Constructor details

template<class DataTypes >
virtual sofa::component::fem::HyperelasticMaterial< DataTypes >::~HyperelasticMaterial ( )
inlinevirtual

Function details

template<class DataTypes >
virtual void sofa::component::fem::HyperelasticMaterial< DataTypes >::applyElasticityTensor ( StrainInformation< DataTypes > *  ,
const MaterialParameters< DataTypes > &  ,
const MatrixSym ,
MatrixSym  
)
inlinevirtual

computes the Elasticity Tensor of the current configuration

Reimplemented in sofa::component::fem::Costa< DataTypes >, and sofa::component::fem::STVenantKirchhoff< DataTypes >.

template<class DataTypes >
virtual void sofa::component::fem::HyperelasticMaterial< DataTypes >::deriveSPKTensor ( StrainInformation< DataTypes > *  ,
const MaterialParameters< DataTypes > &  ,
MatrixSym  
)
inlinevirtual

computes the second Piola Kirchhoff stress tensor of the current configuration

Reimplemented in sofa::component::fem::Costa< DataTypes >, and sofa::component::fem::STVenantKirchhoff< DataTypes >.

template<class DataTypes >
virtual void sofa::component::fem::HyperelasticMaterial< DataTypes >::ElasticityTensor ( StrainInformation< DataTypes > *  ,
const MaterialParameters< DataTypes > &  ,
Matrix6  
)
inlinevirtual
template<class DataTypes >
virtual Real sofa::component::fem::HyperelasticMaterial< DataTypes >::getStrainEnergy ( StrainInformation< DataTypes > *  ,
const MaterialParameters< DataTypes > &   
)
inlinevirtual

returns the strain energy of the current configuration

Reimplemented in sofa::component::fem::Costa< DataTypes >, and sofa::component::fem::STVenantKirchhoff< DataTypes >.