An isotropic elasticity tensor defined in terms of Young's modulus and Poisson's ratio. The elasticity tensor is assumed to be non-dimensionalised on some reference value for Young's modulus so the value provided to the constructor (if any) is to be interpreted as the ratio of the actual Young's modulus to the Young's modulus used to non-dimensionalise the stresses/tractions in the governing equations. More...
#include <pml_time_harmonic_elasticity_tensor.h>
Public Member Functions | |
PMLTimeHarmonicIsotropicElasticityTensor (const double &nu, const double &E) | |
Constructor. Passing in the values of the Poisson's ratio and Young's modulus (interpreted as the ratio of the actual Young's modulus to the Young's modulus (or other reference stiffness) used to non-dimensionalise stresses and tractions in the governing equations). More... | |
PMLTimeHarmonicIsotropicElasticityTensor (const double &nu) | |
Constructor. Passing in the value of the Poisson's ratio. Stresses and tractions in the governing equations are assumed to have been non-dimensionalised on Young's modulus. More... | |
double | nu () const |
Poisson's ratio. More... | |
void | update_constitutive_parameters (const double &nu, const double &E=1.0) |
Update parameters: Specify values of the Poisson's ratio and (optionally) Young's modulus (interpreted as the ratio of the actual Young's modulus to the Young's modulus (or other reference stiffness) used to non-dimensionalise stresses and tractions in the governing equations). More... | |
std::complex< double > | independent_component (const unsigned &i) const |
Overload the independent coefficient function. More... | |
Public Member Functions inherited from oomph::PMLTimeHarmonicElasticityTensor | |
virtual | ~PMLTimeHarmonicElasticityTensor () |
Empty virtual Destructor. More... | |
std::complex< double > | operator() (const unsigned &i, const unsigned &j, const unsigned &k, const unsigned &l) const |
Return the appropriate independent component via the index translation scheme (const version). More... | |
Private Member Functions | |
void | set_lame_coefficients (const double &lambda, const double &mu) |
Private Attributes | |
std::complex< double > | C [4] |
Storage for the independent components of the elasticity tensor. More... | |
double | Nu |
Poisson's ratio. More... | |
Static Private Attributes | |
static const unsigned | StaticIndex [21] |
Translation scheme between the 21 independent components of the general elasticity tensor and the isotropic case. More... | |
Additional Inherited Members | |
Protected Member Functions inherited from oomph::PMLTimeHarmonicElasticityTensor | |
void | range_check (const unsigned &i, const unsigned &j, const unsigned &k, const unsigned &l) const |
Helper range checking function (Note that this only captures over-runs in 3D but errors are likely to be caught in evaluation of the stress and strain tensors anyway...) More... | |
PMLTimeHarmonicElasticityTensor () | |
Empty Constructor. More... | |
An isotropic elasticity tensor defined in terms of Young's modulus and Poisson's ratio. The elasticity tensor is assumed to be non-dimensionalised on some reference value for Young's modulus so the value provided to the constructor (if any) is to be interpreted as the ratio of the actual Young's modulus to the Young's modulus used to non-dimensionalise the stresses/tractions in the governing equations.
Definition at line 148 of file pml_time_harmonic_elasticity_tensor.h.
|
inline |
Constructor. Passing in the values of the Poisson's ratio and Young's modulus (interpreted as the ratio of the actual Young's modulus to the Young's modulus (or other reference stiffness) used to non-dimensionalise stresses and tractions in the governing equations).
Definition at line 167 of file pml_time_harmonic_elasticity_tensor.h.
References C, oomph::QuadTreeNames::E, nu(), and set_lame_coefficients().
|
inline |
Constructor. Passing in the value of the Poisson's ratio. Stresses and tractions in the governing equations are assumed to have been non-dimensionalised on Young's modulus.
Definition at line 180 of file pml_time_harmonic_elasticity_tensor.h.
References C, oomph::QuadTreeNames::E, nu(), and set_lame_coefficients().
|
inlinevirtual |
Overload the independent coefficient function.
Reimplemented from oomph::PMLTimeHarmonicElasticityTensor.
Definition at line 215 of file pml_time_harmonic_elasticity_tensor.h.
References C, i, and StaticIndex.
|
inline |
Poisson's ratio.
Definition at line 194 of file pml_time_harmonic_elasticity_tensor.h.
References Nu.
Referenced by oomph::PMLTimeHarmonicLinearElasticityEquationsBase< DIM >::nu(), PMLTimeHarmonicIsotropicElasticityTensor(), and update_constitutive_parameters().
|
inlineprivate |
Definition at line 223 of file pml_time_harmonic_elasticity_tensor.h.
References C.
Referenced by PMLTimeHarmonicIsotropicElasticityTensor(), and update_constitutive_parameters().
|
inline |
Update parameters: Specify values of the Poisson's ratio and (optionally) Young's modulus (interpreted as the ratio of the actual Young's modulus to the Young's modulus (or other reference stiffness) used to non-dimensionalise stresses and tractions in the governing equations).
Definition at line 204 of file pml_time_harmonic_elasticity_tensor.h.
References C, oomph::QuadTreeNames::E, nu(), and set_lame_coefficients().
|
private |
Storage for the independent components of the elasticity tensor.
Definition at line 152 of file pml_time_harmonic_elasticity_tensor.h.
Referenced by independent_component(), PMLTimeHarmonicIsotropicElasticityTensor(), set_lame_coefficients(), and update_constitutive_parameters().
|
private |
Poisson's ratio.
Definition at line 159 of file pml_time_harmonic_elasticity_tensor.h.
Referenced by nu().
|
staticprivate |
Translation scheme between the 21 independent components of the general elasticity tensor and the isotropic case.
Translation scheme for the isotropic elasticity tensor.
Definition at line 156 of file pml_time_harmonic_elasticity_tensor.h.
Referenced by independent_component().