Public Member Functions | Private Member Functions | Private Attributes | Static Private Attributes | List of all members
oomph::PMLTimeHarmonicIsotropicElasticityTensor Class Reference

#include <pml_time_harmonic_elasticity_tensor.h>

+ Inheritance diagram for oomph::PMLTimeHarmonicIsotropicElasticityTensor:

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...
 

Detailed Description

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 149 of file pml_time_harmonic_elasticity_tensor.h.

Constructor & Destructor Documentation

◆ PMLTimeHarmonicIsotropicElasticityTensor() [1/2]

oomph::PMLTimeHarmonicIsotropicElasticityTensor::PMLTimeHarmonicIsotropicElasticityTensor ( const double &  nu,
const double &  E 
)
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 169 of file pml_time_harmonic_elasticity_tensor.h.

◆ PMLTimeHarmonicIsotropicElasticityTensor() [2/2]

oomph::PMLTimeHarmonicIsotropicElasticityTensor::PMLTimeHarmonicIsotropicElasticityTensor ( const double &  nu)
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 183 of file pml_time_harmonic_elasticity_tensor.h.

References oomph::QuadTreeNames::E.

Member Function Documentation

◆ independent_component()

std::complex<double> oomph::PMLTimeHarmonicIsotropicElasticityTensor::independent_component ( const unsigned &  i) const
inlinevirtual

Overload the independent coefficient function.

Reimplemented from oomph::PMLTimeHarmonicElasticityTensor.

Definition at line 219 of file pml_time_harmonic_elasticity_tensor.h.

References i.

◆ nu()

double oomph::PMLTimeHarmonicIsotropicElasticityTensor::nu ( ) const
inline

◆ set_lame_coefficients()

void oomph::PMLTimeHarmonicIsotropicElasticityTensor::set_lame_coefficients ( const double &  lambda,
const double &  mu 
)
inlineprivate

Definition at line 226 of file pml_time_harmonic_elasticity_tensor.h.

◆ update_constitutive_parameters()

void oomph::PMLTimeHarmonicIsotropicElasticityTensor::update_constitutive_parameters ( const double &  nu,
const double &  E = 1.0 
)
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 207 of file pml_time_harmonic_elasticity_tensor.h.

References oomph::QuadTreeNames::E.

Member Data Documentation

◆ C

std::complex<double> oomph::PMLTimeHarmonicIsotropicElasticityTensor::C[4]
private

Storage for the independent components of the elasticity tensor.

Definition at line 153 of file pml_time_harmonic_elasticity_tensor.h.

◆ Nu

double oomph::PMLTimeHarmonicIsotropicElasticityTensor::Nu
private

Poisson's ratio.

Definition at line 160 of file pml_time_harmonic_elasticity_tensor.h.

◆ StaticIndex

const unsigned oomph::PMLTimeHarmonicIsotropicElasticityTensor::StaticIndex
staticprivate
Initial value:
=
{1,0,2,3,0,1,0,0,2,0,0,0,3,0,0,0,0,2,3,0,1}

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 157 of file pml_time_harmonic_elasticity_tensor.h.


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