2.2.1. Crystal Coordinate Systems

For zinc-blende materials there are three-digit Miller indices. The Miller indices define a plane. There exists a vector that is perpendicular to this plane, e.g. in zinc blende blende materials, the [hkl] vector is always perpendicular to the (hkl) plane. However, for wurtzite, this is not necessarily true. For instance, although the [0001] vector is perpendicular to the (0001) plane, in general is does not hold that the vector that is perpendicular to the (hkil) plane is defined by [hkil]. Note: For a 1D simulation, the heterostructure is always grown along the x axis. For a 2D simulation, always the (x,y) plane is used.

Zinc blende

crystal_zb{
   x_hkl = [1, 0, 0]    # Specify (hkl) plane perpendicular to x axis
   y_hkl = [0, 1, 0]    # Specify (hkl) plane perpendicular to y axis

The x axis of the simulation coordinate system is perpendicular to this (hkl) plane of the crystal, here: (1 0 0). The y axis of the simulation coordinate system is perpendicular to this (hkl) plane of the crystal, here: (0 1 0). The Miller indices (here: (0 0 1)) for the z axis are determined automatically. For zinc blende it holds: The vector [hkl] is perpendicular to the (hkl) plane.

Another example:

crystal_zb{
   x_hkl = [3,  1, 1]   #
   y_hkl = [0, -1, 1]   #

x axis of simulation coordinate system is perpendicular to (3 1 1) plane of crystal coordinate system, i.e. the x axis is along [311] direction. y axis of simulation coordinate system is perpendicular to (0 -1 1 ) plane of crystal coordinate system, i.e. the y axis is along [0-11] direction. The Miller indices (here: [2, -3, -3]) for the z axis are determined automatically, i.e. (2 -3 -3) plane, i.e. the z axis is along [311] direction.

Wurtzite

Usually for wurtzite, the four-digit Miller-Bravais indices (h k i l) are used. We also use this notation but omit the ‘i’ because i = - h - k. The three integer values (Miller indices) that are given for x_hkl refer to a plane and not to a direction. The x direction is then the one that is perpendicular to this plane.

This vector along the x axis has indices that are in general not identical to the Miller indices in wurtzite.

crystal_wz{              # e.g. hexagonal [0001] axis along x axis
   x_hkl = [ 0, 0, 1]    # Specify (hkil) plane perpendicular to x axis: ( 0, 0,  0, 1)
   y_hkl = [ 1, 0, 0]    # Specify (hkil) plane perpendicular to y axis: ( 1, 0, -1, 0)

This corresponds to the four-digit Miller-Bravais indices hkil = ( 0, 0, 0, 1) that define the (hkil)=(0001) plane. Coincidently, the vector [0001] is pependicular to it. This corresponds to the four-digit Miller-Bravais indices hkil = ( 1, 0, -1, 0) that define the (hkil)=(10-10) plane. The Miller-Bravais indices for the (hkil) plane perpendicular to the z axis are determined automatically inside the code (here: (-1 2 -1 0)).

Another example:

crystal_wz{              # e.g. (10-10) plane is perpendicular to x axis
   x_hkl = [ 1, 0, 0]    # hkil = ( 1, 0, -1, 0)
   y_hkl = [-1, 2, 0]    # hkil = (-1, 2, -1, 0)

This corresponds to the four-digit Miller-Bravais indices hkil = ( 1, 0, -1, 0) that define the (hkil)=(10-10) plane. The x axis of the simulation coordinate system is perpendicular to this plane. This corresponds to the four-digit Miller-Bravais indices hkil = (-1, 2, -1, 0) that define the (hkil)=(-12-10) plane. The y axis of the simulation coordinate system is perpendicular to this plane. The Miller-Bravais indices of the (hkil) plane perpendicular to the z axis are determined automatically inside the code (here: (0001)). Coincidently, the vector [0001] is pependicular to it. In this particular case, no rotation has to be applied to the crystal (rotation matrix = identity matrix).

crystal_wz{
   ...
   rotation_c_a_ratio_use_substrate = yes  # (default: yes)
   rotation_c_a_ratio = 1.63299            # c/a ratio

In wurtzite, the c/a ratio of the two lattice constants ‘c’ and ‘a’ is important. The ideal one, \(c/a=\sqrt{8/3}=1.63299...\), is not the one present in GaN, AlN or InN, i.e. in real materials. For the rotation of the crystal coordinate system to the simulation coordinate system, a specific c/a ratio has to be assumed. By default, we use the one of the substrate material. If you want to use the ideal c/a ratio, you have to specify rotation_c_a_ratio_use_substrate = no.

Additionally, one can specify a custom value for the c/a ratio. If no customized value is specified, rotation_c_a_ratio = sqrt(8/3) (default). The actually used rotation matrix is written to the log file.

x_hkl = [ ., ., .]
y_hkl = [ ., ., .]
z_hkl = [ ., ., .]

Exactly two of these three axes have to be specified, the third one is calculated internally.