30 #ifndef OOMPH_TIME_HARMONIC_ELASTICITY_TENSOR_HEADER
31 #define OOMPH_TIME_HARMONIC_ELASTICITY_TENSOR_HEADER
35 #include <oomph-lib-config.h>
38 #include "../generic/oomph_utilities.h"
58 static const unsigned Index[3][3][3][3];
76 const unsigned& l)
const
78 if ((
i > 2) || (
j > 2) || (
k > 2) || (l > 2))
80 std::ostringstream error_message;
83 error_message <<
"Range Error : Index 1 " <<
i
84 <<
" is not in the range (0,2)";
88 error_message <<
"Range Error : Index 2 " <<
j
89 <<
" is not in the range (0,2)";
94 error_message <<
"Range Error : Index 2 " <<
k
95 <<
" is not in the range (0,2)";
100 error_message <<
"Range Error : Index 4 " << l
101 <<
" is not in the range (0,2)";
125 const unsigned& l)
const
166 double lambda =
E * nu / ((1.0 + nu) * (1.0 - 2.0 * nu));
167 double mu =
E / (2.0 * (1.0 + nu));
182 double lambda =
E * nu / ((1.0 + nu) * (1.0 - 2.0 * nu));
183 double mu =
E / (2.0 * (1.0 + nu));
196 double lambda =
E * nu / ((1.0 + nu) * (1.0 - 2.0 * nu));
197 double mu =
E / (2.0 * (1.0 + nu));
int i
Definition: BiCGSTAB_step_by_step.cpp:9
cout<< "The eigenvalues of A are:"<< endl<< ces.eigenvalues()<< endl;cout<< "The matrix of eigenvectors, V, is:"<< endl<< ces.eigenvectors()<< endl<< endl;complex< float > lambda
Definition: ComplexEigenSolver_compute.cpp:9
Definition: matrices.h:74
Definition: oomph_definitions.h:222
Definition: time_harmonic_elasticity_tensor.h:55
TimeHarmonicElasticityTensor()
Empty Constructor.
Definition: time_harmonic_elasticity_tensor.h:113
virtual double independent_component(const unsigned &i) const
Definition: time_harmonic_elasticity_tensor.h:63
static const unsigned Index[3][3][3][3]
Definition: time_harmonic_elasticity_tensor.h:58
void range_check(const unsigned &i, const unsigned &j, const unsigned &k, const unsigned &l) const
Definition: time_harmonic_elasticity_tensor.h:73
double operator()(const unsigned &i, const unsigned &j, const unsigned &k, const unsigned &l) const
Definition: time_harmonic_elasticity_tensor.h:122
virtual ~TimeHarmonicElasticityTensor()
Empty virtual Destructor.
Definition: time_harmonic_elasticity_tensor.h:117
Definition: time_harmonic_elasticity_tensor.h:147
double independent_component(const unsigned &i) const
Overload the independent coefficient function.
Definition: time_harmonic_elasticity_tensor.h:203
static const unsigned StaticIndex[21]
Translation scheme for the isotropic elasticity tensor.
Definition: time_harmonic_elasticity_tensor.h:153
TimeHarmonicIsotropicElasticityTensor(const double &nu)
Definition: time_harmonic_elasticity_tensor.h:174
void update_constitutive_parameters(const double &nu, const double &E=1.0)
Definition: time_harmonic_elasticity_tensor.h:192
TimeHarmonicIsotropicElasticityTensor(const double &nu, const double &E)
Definition: time_harmonic_elasticity_tensor.h:161
void set_lame_coefficients(const double &lambda, const double &mu)
Definition: time_harmonic_elasticity_tensor.h:211
char char char int int * k
Definition: level2_impl.h:374
std::complex< double > mu
Definition: time_harmonic_fourier_decomposed_linear_elasticity/cylinder/cylinder.cc:52
double E
Elastic modulus.
Definition: TwenteMeshGluing.cpp:68
DRAIG: Change all instances of (SPATIAL_DIM) to (DIM-1).
Definition: AnisotropicHookean.h:10
#define OOMPH_EXCEPTION_LOCATION
Definition: oomph_definitions.h:61
#define OOMPH_CURRENT_FUNCTION
Definition: oomph_definitions.h:86
std::ptrdiff_t j
Definition: tut_arithmetic_redux_minmax.cpp:2