Model::Solid::Linear::Hexagonal
src/Model/Solid/Linear/Hexagonal.H
This class implements elasticity for a linear material with hexagonal symmetry. The elastic modulus tensor \(\mathbb{C}\) has major and minor symmetry but not cubic symmetry, so the symmetry class for this material is MajorMinor The five elastic constants in the unrotated system are \(C_{11},C_{12},C_{13},C_{33},C_{44}\), and the resulting elastic modulus tensor is
\[\begin{split}\mathbb{C} &=
\begin{bmatrix}
C_{0000} & C_{0011} & C_{0022} & C_{0012} & C_{0020} & C_{0001} \\
C_{1100} & C_{1111} & C_{1122} & C_{1112} & C_{1120} & C_{1101} \\
C_{2200} & C_{2211} & C_{2222} & C_{2212} & C_{2220} & C_{2201} \\
C_{1200} & C_{1211} & C_{1222} & C_{1212} & C_{1220} & C_{1201} \\
C_{2000} & C_{2011} & C_{2022} & C_{2012} & C_{2020} & C_{2001} \\
C_{0100} & C_{0111} & C_{0122} & C_{0112} & C_{0120} & C_{0101}
\end{bmatrix} \\
&=
\begin{bmatrix}
C_{11} & C_{12} & C_{12} & & & \\
C_{12} & C_{11} & C_{13} & & & \\
C_{12} & C_{13} & C_{33} & & & \\
& & & C_{44} & & \\
& & & & 0.5(C_{11}-C_{12}) & \\
& & & & & 0.5(C_{11}-C_{12})
\end{bmatrix}\end{split}\]
Rotations can be specified using Bunge euler angles to generate a rotation matrix \(\mathbf{R}\). The rotated modulus tensor \(\mathbb{C}^{rot}\) is then
\[\mathbb{C}^{rot}_{psqt} = \mathbb{C}_{ijkl}R_{pi}R_{qj}R_{sk}R_{tl}\]
\(\phantom{0}\)
C11
required
Elastic constant
Names by executable 4 executables, 4 uses
alamo-2d-coverage-g++
mechanics.model0.C11
alamo-3d-coverage-g++
mechanics.model0.C11
mechanics-2d-coverage-g++
model0.C11
mechanics-3d-coverage-g++
model0.C11
C12
required
Elastic constant
Names by executable 4 executables, 4 uses
alamo-2d-coverage-g++
mechanics.model0.C12
alamo-3d-coverage-g++
mechanics.model0.C12
mechanics-2d-coverage-g++
model0.C12
mechanics-3d-coverage-g++
model0.C12
C13
required
Elastic constant
Names by executable 4 executables, 4 uses
alamo-2d-coverage-g++
mechanics.model0.C13
alamo-3d-coverage-g++
mechanics.model0.C13
mechanics-2d-coverage-g++
model0.C13
mechanics-3d-coverage-g++
model0.C13
C33
required
Elastic constant
Names by executable 4 executables, 4 uses
alamo-2d-coverage-g++
mechanics.model0.C33
alamo-3d-coverage-g++
mechanics.model0.C33
mechanics-2d-coverage-g++
model0.C33
mechanics-3d-coverage-g++
model0.C33
C44
required
Elastic constant
Names by executable 4 executables, 4 uses
alamo-2d-coverage-g++
mechanics.model0.C44
alamo-3d-coverage-g++
mechanics.model0.C44
mechanics-2d-coverage-g++
model0.C44
mechanics-3d-coverage-g++
model0.C44
phi1
0
Bunge Euler angle \(\phi_1\)
Names by executable 4 executables, 4 uses
alamo-2d-coverage-g++
mechanics.model0.phi1
alamo-3d-coverage-g++
mechanics.model0.phi1
mechanics-2d-coverage-g++
model0.phi1
mechanics-3d-coverage-g++
model0.phi1
Phi
0
Bunge Euler angle \(\Phi\)
Names by executable 4 executables, 4 uses
alamo-2d-coverage-g++
mechanics.model0.Phi
alamo-3d-coverage-g++
mechanics.model0.Phi
mechanics-2d-coverage-g++
model0.Phi
mechanics-3d-coverage-g++
model0.Phi
phi2
0
Bunge Euler angle \(\phi_2\)
Names by executable 4 executables, 4 uses
alamo-2d-coverage-g++
mechanics.model0.phi2
alamo-3d-coverage-g++
mechanics.model0.phi2
mechanics-2d-coverage-g++
model0.phi2
mechanics-3d-coverage-g++
model0.phi2