Improper Rotations edit page

A rotation preserves handedness: a right handed set of axes stays right handed. An improper rotation does not - it turns the object into its mirror image. Inversions and reflections are of this kind, and crystal symmetry needs them, since most point groups contain a mirror plane or an inversion centre.

MTEX stores improper rotations in the same <rotation.rotation.html rotation> class and marks them with a sign.

plottingConvention.default('y↑→x');

The Inversion

The inversion sends every direction to its opposite. It is written as the negative identity.

I = - rotation.id
I = rotation
 
  Bunge Euler angles in degree
  phi1  Phi phi2 Inv.
     0    0    0    1

Directions come back negated, which is what the minus sign is for.

I * vector3d.X
ans = vector3d (y↑→x)
   x  y  z
  -1  0  0

Writing it this way keeps the two ways of bracketing the same, which is the reason for the convention.

- (rotation.id * vector3d.X)
ans = vector3d (y↑→x)
   x  y  z
  -1  0  0

Reflections

A reflection at a plane is a rotation by \(180^\circ\) about the normal of that plane, followed by the inversion. Spelled out for the plane with normal \((111)\),

mir = - rotation.byAxisAngle(vector3d(1,1,1),180*degree)
mir = rotation
 
  Bunge Euler angles in degree
  phi1     Phi    phi2    Inv.
   135 109.471      45       1

and as a shortcut,

mir = reflection(vector3d(1,1,1))
mir = rotation
 
  Bunge Euler angles in degree
  phi1     Phi    phi2    Inv.
   135 109.471      45       1

A direction in the mirror plane is left where it is,

mir * vector3d(1,-1,0)
ans = vector3d (y↑→x)
  x  y  z
  1 -1  0

while the normal of the plane is sent to its opposite.

mir * vector3d(1,1,1)
ans = vector3d (y↑→x)
   x  y  z
  -1 -1 -1

Telling the Two Apart

isImproper answers whether handedness is preserved.

mir.isImproper
ans =
  logical
   1

This matters when a symmetry group is used as a set of operations: only the proper elements are motions a crystal can actually be turned by, and the improper ones exist as symmetries of the lattice, not as rotations of the specimen. Which elements a group has is discussed in Crystal Symmetries, and the proper subgroup is reached by cs.properGroup.

Next

Operations covers the arithmetic that applies to proper and improper rotations alike.