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:

texture = 0.6 * brass + 0.4 * copper
print(texture)
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()
discrete texture
<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)

Gallery generated by Sphinx-Gallery