OGS
MaterialLib::Solids::LinearElasticIsotropicSoftening< DisplacementDim >::MaterialProperties Class Reference

Detailed Description

template<int DisplacementDim>
class MaterialLib::Solids::LinearElasticIsotropicSoftening< DisplacementDim >::MaterialProperties

Variables specific to the material model.

Definition at line 18 of file LinearElasticIsotropicSoftening.h.

#include <LinearElasticIsotropicSoftening.h>

Collaboration diagram for MaterialLib::Solids::LinearElasticIsotropicSoftening< DisplacementDim >::MaterialProperties:
[legend]

Public Member Functions

 MaterialProperties (P const &youngs_modulus, P const &poissons_ratio)
double lambda (double const t, X const &x) const
 Lamé's first parameter.
double mu (double const t, X const &x) const
 Lamé's second parameter, the shear modulus.
double bulk_modulus (double const t, X const &x) const
 the bulk modulus.

Private Types

using P = ParameterLib::Parameter<double>
using X = ParameterLib::SpatialPosition

Private Attributes

P const & _youngs_modulus
P const & _poissons_ratio

Member Typedef Documentation

◆ P

template<int DisplacementDim>
using MaterialLib::Solids::LinearElasticIsotropicSoftening< DisplacementDim >::MaterialProperties::P = ParameterLib::Parameter<double>
private

Definition at line 20 of file LinearElasticIsotropicSoftening.h.

◆ X

template<int DisplacementDim>
using MaterialLib::Solids::LinearElasticIsotropicSoftening< DisplacementDim >::MaterialProperties::X = ParameterLib::SpatialPosition
private

Definition at line 21 of file LinearElasticIsotropicSoftening.h.

Constructor & Destructor Documentation

◆ MaterialProperties()

Member Function Documentation

◆ bulk_modulus()

template<int DisplacementDim>
double MaterialLib::Solids::LinearElasticIsotropicSoftening< DisplacementDim >::MaterialProperties::bulk_modulus ( double const t,
X const & x ) const
inline

the bulk modulus.

Definition at line 45 of file LinearElasticIsotropicSoftening.h.

46 {
47 return _youngs_modulus(t, x)[0] /
48 (3 * (1 - 2 * _poissons_ratio(t, x)[0]));
49 }

References _poissons_ratio, and _youngs_modulus.

◆ lambda()

template<int DisplacementDim>
double MaterialLib::Solids::LinearElasticIsotropicSoftening< DisplacementDim >::MaterialProperties::lambda ( double const t,
X const & x ) const
inline

Lamé's first parameter.

Definition at line 30 of file LinearElasticIsotropicSoftening.h.

31 {
32 return _youngs_modulus(t, x)[0] * _poissons_ratio(t, x)[0] /
33 (1 + _poissons_ratio(t, x)[0]) /
34 (1 - 2 * _poissons_ratio(t, x)[0]);
35 }

References _poissons_ratio, and _youngs_modulus.

◆ mu()

template<int DisplacementDim>
double MaterialLib::Solids::LinearElasticIsotropicSoftening< DisplacementDim >::MaterialProperties::mu ( double const t,
X const & x ) const
inline

Lamé's second parameter, the shear modulus.

Definition at line 38 of file LinearElasticIsotropicSoftening.h.

39 {
40 return _youngs_modulus(t, x)[0] /
41 (2 * (1 + _poissons_ratio(t, x)[0]));
42 }

References _poissons_ratio, and _youngs_modulus.

Member Data Documentation

◆ _poissons_ratio

template<int DisplacementDim>
P const& MaterialLib::Solids::LinearElasticIsotropicSoftening< DisplacementDim >::MaterialProperties::_poissons_ratio
private

Definition at line 53 of file LinearElasticIsotropicSoftening.h.

Referenced by MaterialProperties(), bulk_modulus(), lambda(), and mu().

◆ _youngs_modulus

template<int DisplacementDim>
P const& MaterialLib::Solids::LinearElasticIsotropicSoftening< DisplacementDim >::MaterialProperties::_youngs_modulus
private

Definition at line 52 of file LinearElasticIsotropicSoftening.h.

Referenced by MaterialProperties(), bulk_modulus(), lambda(), and mu().


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