Crystal Orientation as Coordinate Transformation edit page

In MTEX a crystal orientation is defined as the rotation that transforms crystal coordinates, i.e., a description of a vector or a tensor with respect to the crystal reference frame, into specimen coordinates, i.e., a description of the same object with respect to a specimen fixed reference frame.

In MTEX any orientation consists of two ingredients. A rotation

% lets take a random one
rot = rotation.rand
rot = rotation
 
  Bunge Euler angles in degree
     phi1     Phi    phi2
  156.958 161.468 197.878

and a description of the crystal lattice, which are represented in MTEX by variables of type crystalSymmetry

% lets take cubic crystal symmetry
cs = crystalSymmetry.load("Al-Aluminum.cif")
cs = crystalSymmetry
 
  mineral : Aluminum
  symmetry: m-3m    
  elements: 48      
  a, b, c : 4, 4, 4

Combining both ingredients allows us to define an orientation

ori = orientation(rot,cs)
ori = orientation (Aluminum → xyz)
 
  Bunge Euler angles in degree
     phi1     Phi    phi2
  156.958 161.468 197.878

As a consequence a variable of type orientation is at the same time of type rotation and hence allows for all operations that are available for rotations.

Crystal coordinates to specimen coordinates

Let us consider the following crystal direction

h = Miller(1,0,0,cs,'uvw')
h = Miller (Aluminum)
  u v w
  1 0 0

In a grain with orientation ori this direction h has the specimen coordinates

r = ori * h
r = vector3d
        x         y         z
  3.08518  -2.59319 -0.395133

Similarly, orientations transform tensors given with respect to the crystal reference frame, e.g., the following single crystal stiffness tensor

C = stiffnessTensor(...
  [[2 1 1 0 0 0];...
  [1 2 1 0 0 0];...
  [1 1 2 0 0 0];...
  [0 0 0 1 0 0];...
  [0 0 0 0 1 0];...
  [0 0 0 0 0 1]],cs)
C = stiffnessTensor (Aluminum)
  unit: GPa              
  rank: 4 (3 x 3 x 3 x 3)
 
  tensor in Voigt matrix representation:
 2 1 1 0 0 0
 1 2 1 0 0 0
 1 1 2 0 0 0
 0 0 0 1 0 0
 0 0 0 0 1 0
 0 0 0 0 0 1

into a stiffness tensor with respect to the specimen reference frame

ori * C
ans = stiffnessTensor (xyz)
  unit: GPa              
  rank: 4 (3 x 3 x 3 x 3)
 
  tensor in Voigt matrix representation:
  2.4996  0.5568  0.9436 -0.1188 -0.0327  0.1002
  0.5568  2.5701   0.873 -0.1103 -0.0564 -0.0308
  0.9436   0.873  2.1834   0.229  0.0891 -0.0694
 -0.1188 -0.1103   0.229   0.873 -0.0694 -0.0564
 -0.0327 -0.0564  0.0891 -0.0694  0.9436 -0.1188
  0.1002 -0.0308 -0.0694 -0.0564 -0.1188  0.5568

Objects that can be translated by orientations from crystal into specimen coordinates and vice versa include

Specimen coordinates into crystal coordinates

Conversely, we can go back from specimen coordinates to crystal coordinates by multiplying with the inverse orientation

inv(ori) * r
ans = Miller (Aluminum)
        h       k       l
  16.3991       0       0

Note, that in literature orientations are often defined to transform specimen coordinates into crystal coordinates, i.e., to coincide with the inverse orientations in MTEX. The consequences of this differences are exhaustively discussed in the topic orientation conventions.

Specimen Rotation

Rotations of the specimen ,i.e., changing the specimen reference frame, do also change the orientation. Assume the specimen is rotated about the X-axis about 60 degree. We may define this rotation by

rot = rotation.byAxisAngle(vector3d.X,60*degree);

Then an orientation ori is updated to the rotated reference frame by

ori_new = rot * ori
ori_new = orientation (Aluminum → xyz)
 
  Bunge Euler angles in degree
     phi1     Phi    phi2
  172.672 102.755 218.216

It should also be noted, that orientations are sensitive with respect to the alignment of the Euclidean reference frame \(\vec X\), \(\vec Y\), \(\vec Z\) with respect to the crystal axes \(\vec a\), \(\vec b\) and \(\vec c\). This issue is discussed in more detail in the topic Crystal Reference Frames.