Bravais lattices#

For the full reference see Lattice

Bravais lattice notation follows Setyawan and Curtarolo [1].

For each type of Bravais lattice a class defined, for some classes there are several variations of lattice, each of which are treated under same class (see Lattice.variation).

For each type and variation a predefined example of the lattice is available. It could be accessed in a following way:

>>> import radtools as rad
>>> cubic_example = rad.lattice_example("cub")
>>> cubic_example.variation
'CUB'

Each Bravais Lattice is created by the parameters \(a\), \(b\), \(c\), \(\alpha\), \(\beta\), \(\gamma\), which corresponds to the conventional lattice. However, attributes of the class a, b, c, alpha, beta, gamma return parameters of the primitive lattice. Conventional lattice may be accessed through the attributes conv_cell, conv_a, conv_b, conv_c, conv_alpha, conv_beta, conv_gamma .

Creation#

Bravais lattice can be created by the instantiation of corresponding class. For the predefined bravais lattice examples one may use lattice_example() function.

From the set of lattice parameters (\(a\), \(c\), \(c\), \(\alpha\), \(\beta\), \(\gamma\)) or unit cell (interpreted as primitive cell) one may create the bravais lattice with bravais_lattice_from_param() and bravais_lattice_from_cell().

Cubic lattice system#

Predefined examples: cub, fcc, bcc.

Tetragonal lattice system#

Predefined examples: tet, bct1, bct2.

Orthorhombic lattice system#

Predefined examples: orc, orcf1, orcf2, orcf3, orci, orcc.

Hexagonal lattice system#

Predefined examples: hex.

Rhombohedral lattice system#

Predefined examples: rhl1, rhl2

Monoclinic lattice system#

Predefined examples: mcl, mclc1, mclc2, mclc3, mclc4, mclc5.

Triclinic lattice system#

Predefined examples: tri1a, tri1b, tri2a, tri2b.

References#