Cells
This module provides the Brillouin zone container.
BrillouinZoneMeshes.Cells.Cell
โ Typestruct Cell{T, DIM}
Container storing information of Brillouin zone. Including lattice vector, reciprocal lattice vector and their inverse; volume of unit cell and reciprocal unit cell; G vectors for extended Brillouin zone.
Lattice parameters lattice
are given by a $3ร3$ matrix with floating point values, where $๐$, $๐$, and $๐$ are given as columns.
Parameters:
T
: type of dataDIM
: dimension of the Brillouin zone
Members:
lattice
: lattice vectorrecip_lattice
: reciprocal lattice vectorinv_lattice
: inverse of lattice vectorinv_recip_lattice
: inverse of reciprocal lattice vectorcell_volume
: volume of lattice unit cellrecip_cell_volume
: volume of reciprocal lattice unit cellatoms
: list of integers representing atom typespositions
: # positions[i] is the location of atoms[i] in fract. coordsatom_groups
`: atoms[i] == atoms[j] for all i, j in atom_group[ฮฑ]G_vector
: a list of G vectors in extended Brillouin zonesymmetry
: symmetry of the Brillouin zone
BrillouinZoneMeshes.Cells._compute_inverse_lattice
โ MethodCompute the inverse of the lattice. Require lattice to be square matrix
BrillouinZoneMeshes.Cells._compute_recip_lattice
โ MethodCompute the reciprocal lattice. We use the convention that the reciprocal lattice is the set of G vectors such that G โ R โ 2ฯ โค for all R in the lattice.
BrillouinZoneMeshes.Cells.default_symmetries
โ MethodDefault logic to determine the symmetry operations to be used in the model.
BrillouinZoneMeshes.Cells.get_latvec
โ MethodReturn I-th lattice vector of lattice. Lattice vectors are specified column-wise in lattice::Matrix.
BrillouinZoneMeshes.Cells.standard_cell
โ Methodfunction standard_cell(;
dtype=Float64,
lattice::AbstractMatrix,
atoms::AbstractVector=[1,],
positions::AbstractVector{<:AbstractVector}=[zeros(dtype, size(lattice, 1)),],
primitive=true,
correct_symmetry=true,
# magnetic_moments=[],
tol_symmetry=PointSymmetry.SYMMETRY_TOLERANCE,
G_vector=nothing)
Returns a Cell
object with crystallographic conventional cell according to the International Table of Crystallography Vol A (ITA) in case primitive=false
. If primitive=true
the primitive lattice is returned in the convention of the reference work of Cracknell, Davies, Miller, and Love (CDML). Of note this has minor differences to the primitive setting choice made in the ITA.