# Crystal and Specimen Symmetries (The Class symmetry)

This section describes the class symmetry and gives an overview how to deal with crystal symmetries in MTEX.

 On this page ... Class Description Defining a Crystal Symmetry The Crystal Coordinate System Complete Function list

## Class Description

Crystal symmetries are sets of rotations and mirroring operations that leave the lattice of a crystal invariant. They form so-called groups since the concatenation of two symmetry operations is again a symmetry operation. Crystal symmetries are classified in various ways - either according to the corresponding space group or the corresponding point group, or the corresponding Laue group. In total, there are only 11 different Laue groups present in crystallography. All these 11 Laue groups are supported by MTEX. More precisely, in MTEX a Laue group is represented by a variable of the class symmetry.

### Defining a Crystal Symmetry

MTEX supports the Schoenflies notation on Laue groups as well as the international notation. In the case of noncubic crystal symmetry the length of the crystal axis has to be specified as a second argument to the constructor symmtry and in the case of triclinic crystal symmetry the angles between the axes has to be passed as the third argument. Hence, valid definitions are:

Laue Group - international notation

cs = crystalSymmetry('m-3m')

cs = crystalSymmetry

symmetry: m-3m
a, b, c : 1, 1, 1

Laue Group - Schoenflies notation

cs = crystalSymmetry('O')

cs = crystalSymmetry

symmetry: 432
a, b, c : 1, 1, 1

Point Group or its Space Group

If not the name of a Laue group was specified but the name of a point group or a space group MTEX automatically determines the corresponding Laue group and assigns it to the variable.

cs = crystalSymmetry('Td')

cs = crystalSymmetry

symmetry: -43m
a, b, c : 1, 1, 1

CIF Files

Finally, MTEX allows defining a crystal symmetry by importing a crystallographic information file (*.cif).

cs = crystalSymmetry

mineral        : Quartz
symmetry       : 321
a, b, c        : 4.9, 4.9, 5.4
reference frame: X||a*, Y||b, Z||c*

### The Crystal Coordinate System

In the case of cubic crystal symmetry the crystal coordinate system is already well defined. However, especially in the case of low order crystal symmetry, the crystal coordinate system has to be specified by the length of the axis and the angle between the axis.

cs = crystalSymmetry('triclinic',[1,2.2,3.1],[80*degree,85*degree,95*degree]);

A and B Configurations

In the case of trigonal and hexagonal crystal symmetries different conventions are used. One distinguishes between the A and the B configuration depending whether the a-axis is aligned parallel to the x-axis or parallel to the y-axis. In order to specify the concrete

cs = crystalSymmetry('-3m',[1.7,1.7,1.4],'X||a');
plot(cs)
cs = crystalSymmetry('-3m',[1.7,1.7,1.4],'Y||a');
plot(cs)

## Complete Function list

 Laue return the corresponding Laue group LaueName get Laue name alignment return alignment of the reference frame as string, e.g. x||a, y||b* calcAngleDistribution compute the angle distribution of a uniform ODF for a crystal symmetry calcAxisDistribution compute the axis distribution of an uniform ODF or MDF calcQuat calculate quaternions for Laue groups check symmetry disjoint returns the disjoint of two symmetry groups ensureCS ensures that an obj has the right crystal symmetry eq check S1 == S2 factor izes s1 and s2 into l, d, r such that s1 = l * d and s2 = d * r fundamentalRegion fundamental region in orientation space for a (pair) of symmetries fundamentalRegionEuler get the fundamental region in Euler angles fundamentalSector get the fundamental sector for a symmetry in the inverse pole figure length number of symmetry elements maxAngle get the maximum angle of the fundamental region multiplicityPerpZ maximum angle rho multiplicityZ maximum angle rho nfold maximal nfold of symmetry axes plot visualize symmetry elements according to international table properGroup return the corresponding Laue group properSubGroup return the corresponding Laue group rotation_special returns symmetry elements different from rotation about caxis subsref overloads subsref symmetry Supported Symmetries union returns the union of two symmetry groups