httk.atomistic.cell module¶
-
class
httk.atomistic.cell.
Cell
(basis, lattice_system, orientation=1)[source]¶ Bases:
httk.core.httkobject.HttkObject
Represents a cell (e.g., a unitcell, but also possibly just the basis vectors of a non-periodic system)
(The ability to represent the cell for a non-periodic system is also the reason this class is not called Lattice.)
-
classmethod
create
(cell=None, basis=None, metric=None, niggli_matrix=None, a=None, b=None, c=None, alpha=None, beta=None, gamma=None, lengths=None, angles=None, cosangles=None, scale=None, scaling=None, volume=None, periodicity=None, nonperiodic_vecs=None, orientation=1, hall=None, lattice_system=None, eps=0)[source]¶ Create a new cell object,
cell: any one of the following:
- a 3x3 array with (in rows) the three basis vectors of the cell (a non-periodic system should conventionally use an identity matrix)
- a dict with a single key ‘niggli_matrix’ with a 3x2 array with the Niggli Matrix representation of the cell
- a dict with 6 keys, ‘a’, ‘b’, ‘c’, ‘alpha’, ‘beta’, ‘gamma’ giving the cell parameters as floats
- scaling: free form input parsed for a scale.
- positive value = multiply basis vectors by this value negative value = rescale basis vectors so that cell volume becomes abs(value).
scale: set to non-None to multiply all cell vectors with this factor
volume: set to non-None if the basis vectors only give directions, and the volume of the cell should be this value (overrides scale)
- periodicity: free form input parsed for periodicity
- sequence: True/False for each basis vector being periodic integer: number of non-periodic basis vectors
hall: giving the hall symbol makes it possible to determine the lattice system without numerical inaccuracy
lattice_system: any one of: ‘cubic’, ‘hexagonal’, ‘tetragonal’, ‘orthorhombic’, ‘trigonal’, ‘triclinic’, ‘monoclinic’, ‘unknown’
-
normalization_longestvec_scale
¶ Get the factor with which a normalized version of this cell needs to be multiplied to reproduce this cell.
I.e. self = (normalization_scale)*self.get_normalized()
-
normalization_scale
¶
-
volume
¶
-
classmethod