Note
Go to the end to download the full example code.
Average stiffness of discrete texture
This example shows how to compute the Voigt average of crystals with a mixture of discrete textures.
Define fibre texture
We define the stiffness tensor for BCC austenite using its elastic constants. They are taken from the Materials Project (mp-13).
from elasticipy.tensors.elasticity import StiffnessTensor
C = StiffnessTensor.cubic(C11=274, C12=175, C44=89)
Create two discrete textures
The Brass texture corresponds to {110}<112>, whereas the copper texture corresponds to {112}<111>:
from elasticipy.crystal_texture import DiscreteTexture
brass = DiscreteTexture.brass()
copper = DiscreteTexture.copper()
print(brass)
print(copper)
Crystallographic texture
φ1=35.26°, ϕ=45.00°, φ2=0.00°
Crystallographic texture
φ1=90.00°, ϕ=35.26°, φ2=45.00°
Create a composite texture
We assume that the overall texture consists in 60% brass and 40% copper:
Mixture of crystallographic textures
Wgt. Type Component
------------------------------------------------------------
0.60 discrete φ1=35.26°, ϕ=45.00°, φ2=0.00°
0.40 discrete φ1=90.00°, ϕ=35.26°, φ2=45.00°
Plot the pole figures
fig, ax = texture.plot_as_pole_figure([1,0,0], symmetrise=True, labels=['brass', 'copper'])
ax.legend()

<matplotlib.legend.Legend object at 0x70e41764aab0>
Compute the Voigt average
The Voigt average of the polycrystal is:
Cvoigt = C.Voigt_average(orientations=texture)
print(Cvoigt)
Stiffness tensor (in Voigt mapping):
[[318.77 148.67 156.57 -0. 0. -11.17]
[148.67 321.4 153.93 -0. 7.45 0. ]
[156.57 153.93 313.5 -0. -7.45 11.17]
[ 0. -0. -0. 67.93 11.17 7.45]
[ 0. 7.45 -7.45 11.17 70.57 -0. ]
[-11.17 0. 11.17 7.45 0. 62.67]]
Plot the Young modulus
Total running time of the script: (0 minutes 0.208 seconds)