```6.2.3.  MILLER INDEX OPTION, [M]

[M]  This option allows you to choose Miller indices defining net plane
normal vectors which determine the direction of net plane stacking used
to build the lattice section. Here Miller indices can be given in
different forms depending on the lattice type, see below. If
BALSAC/LATTICE is started from scratch in an interactive session
(without a structure input file) this option shows an explanatory text

========== MILLER INDEX OPTION ====================================

Define Miller indices for directions of net plane stacking to build
the lattice section.  Simple cubic,  Bravais,  and 4-index notation
are available depending on the lattice type.

Miller indices  (H K L /   0   0   0 ) :
===================================================================

asking for Miller indices given as integer triples or

========== MILLER INDEX OPTION ====================================

Define Miller indices for directions of net plane stacking to build
the lattice section.  Simple cubic,  Bravais,  and 4-index notation
are available depending on the lattice type.

Miller indices  (L M N Q /   0   0   0   0 ) :
===================================================================

for Miller indices given as integer quadruples in hexagonal lattices
where 4-index notation is used depending on the type of lattice chosen
in the previous lattice option, see below and Sec. 6.2.1. After correct
input BALSAC moves to the section option, see Sec. 6.2.3.

Selecting [M] from the main option menu of BALSAC/LATTICE shows the
prompt

========== MILLER INDEX OPTION ====================================

Miller indices  (H K L / hold kold lold ) :
===================================================================

asking for three (integer) numbers h, k, l to define new Miller indices
where hold, kold, lold are the present values. The indices are defined
with respect to

- simple cubic reciprocal lattice vectors for cubic lattices chosen by
lattice type options [A], [B], [C], [E], [F], [G], [H], see
Sec. 6.2.1.

- Bravais reciprocal lattice vectors for cubic lattices chosen by
lattice type options [L], [M], [O], [P], [Q], see Sec. 6.2.1.

- Bravais reciprocal lattice vectors for all other lattice types.
Note that Miller index input will be different for lattice type
options [N], [R], [S], see below and Sec. 6.2.1.

For hexagonal lattices using 4-index notation of Miller indices (lattice
type options [N], [R], [S]) the above prompt is replaced by

========== MILLER INDEX OPTION ====================================

Miller indices  (L M N Q /   lold mold nold qold ) :
===================================================================

asking for four (integer) numbers to define new Miller indices where
lold, mold, nold, qold are the present values. The indices l, m, n, q
are connected with the standard Bravais lattice Miller indices h, k, l
by

( l, m, n, q ) = ( h,  k-h,  -k,  l )           .

The 4-index input is checked for consistency ( l+m+n = 0 ). In case of
error a warning

WARNING: indices inconsistent  ( l  m'  n  q ) used instead

** Press [C], L-click to continue **

is issued and revised indices where m' = -(l+n) (shown in the warning)
will be used for input. Note that Miller indices used in internal
computations are always determined from indices l, n, q only.

After Miller indices have been given BALSAC returns to the
BALSAC/LATTICE main option menu. For dummy input h,k,l = 0,0,0
(l,m,n,q = 0,0,0,0) the index prompt is cancelled keeping the previous
Miller index values and returning to the BALSAC/LATTICE main option

Note that the above definition of the 4-index notation refers to a
strict definition of reciprocal lattice vectors by vector products of
R1, R2, R3 where G1, G2 form an angle of 120 degrees (R1, R2 form an
angle of 60 degrees), see Sec. 5.3. An alternative description of the
hexagonal lattice starts from lattice vectors R1', R2', R3' where R1',
R2' form an angle of 120 degrees and as a consequence G1' and G2' form
an angle of 60 degrees. This corresponds in effect to a transformation

G1' = G1 + G2         G2' = G2          G3' = G3

and lattice planes (h k l) would be expressed by (h' k' l') with

h'= h      k'= k - h      l' = l

As a consequence, the 4-index notation ( L', M', N', Q' ) would read

( L', M', N', Q' ) = (h', k', -h'-k', l')

which is identical to definitions used in a number of surface science
papers and books (cp. "Low-Energy Electron Diffraction" by Van Hove et
al. as referenced below). However, in this program we use the former
definition for internal consistency of BALSAC.

For cubic lattices an internal transformation is used to connect between
Bravais (fcc or bcc) and simple cubic (sc) Miller indices where

a)  (h,k,l)    <-->  (h',k',l')
fcc                 sc

h'     -1.0   1.0   1.0     h      h      0.0   0.5   0.5     h'
k'  =   1.0  -1.0   1.0  x  k      k  =   0.5   0.0   0.5  x  k'
l'      1.0   1.0  -1.0     l      l      0.5   0.5   0.0     l'

b)  (h,k,l)    <-->  (h',k',l')
bcc                 sc

h'      0.0   1.0   1.0     h      h     -0.5   0.5   0.5     h'
k' =    1.0   0.0   1.0  x  k      k  =   0.5  -0.5   0.5  x  k'
l'      1.0   1.0   0.0     l      l      0.5   0.5  -0.5     l'

If for given simple cubic (h',k',l') indices the fcc or bcc indices
(h,k,l) are non-integer they will be multiplied by 2 to yield integer
values.