radtools.Crystal#
- class radtools.Crystal(lattice: Lattice = None, atoms=None, relative=True, standardize=True, **kwargs)[source]#
Crystal class.
It is a child of Lattice class.
Iterable over atoms. All attributes of the
Latticeare accessible directly from the crystal:>>> import radtools as rad >>> cub = rad.lattice_example("CUB") >>> crystal = rad.Crystal(cub) >>> crystal.pearson_symbol 'cP'
For the full description of the lattice attributes and methods see Lattice.
- Parameters:
- lattice
Lattice, optional Lattice of the crystal. If not provided, then orthonormal lattice is used ("CUB with \(a = 1\)).
- atomslist, optional
List of
Atomobjects.- relativebool, default True
Whether
atomspositions are in relative coordinates.- standardizebool, default True
Whether to standardize the lattice.
- **kwargs
Keyword arguments for
Latticeinitialization.
- lattice
- Attributes:
- atomslist
List of atoms of the crystal.
Methods:
add_atom([new_atom, relative])Add atom to the crystal.
converge_mag_dipdip_energy([start, step, ...])Converge magnetic dipole-dipole energy.
Detect primitive cell.
get_atom(name[, index, return_all])Return atom object of the crystal.
get_atom_coordinates(atom[, R, index, relative])Getter for the atom coordinates.
get_distance(atom1, atom2[, R, index1, ...])Getter for distance between the atom1 and atom2.
get_vector(atom1, atom2[, R, index1, ...])Getter for vector from atom1 to atom2.
lattice_points([relative, reciprocal, normalize])Compute lattice points
mag_dipdip_energy(na, nb, nc[, progress_bar])Computes magnetic dipole-dipole energy.
remove_atom(atom[, index])Remove atom from the crystal.
type([eps_rel])Identify the lattice type.
voronoi_cell([reciprocal, normalize])Computes Voronoi edges around (0,0,0) point.
Properties:
Length of the first lattice vector \(\vert\vec{a}_1\vert\).
First lattice vector \(\vec{a}_1\).
Second lattice vector \(\vec{a}_2\).
Third lattice vector \(\vec{a}_3\).
Angle between second and third lattice vector.
Length of the second lattice vector \(\vert\vec{a}_2\vert\).
First reciprocal lattice vector.
Second reciprocal lattice vector.
Third reciprocal lattice vector.
Angle between first and third lattice vector.
Length of the third lattice vector \(\vert\vec{a}_3\vert\).
Unit cell of the lattice.
Centring type.
Length of the first vector of the conventional cell.
First vector of the conventional cell.
Second vector of the conventional cell.
Third vector of the conventional cell.
Angle between second and third conventional lattice vector.
Length of the second vector of the conventional cell.
Angle between first and third conventional lattice vector.
Length of the third vector of the conventional cell.
Conventional cell.
Angle between first and second conventional lattice vector.
Return conventional cell parameters.
Volume of the conventional unit cell.
Crystal family.
Epsilon parameter.
Relative epsilon
Angle between first and second lattice vector.
Length of the first reciprocal lattice vector \(\vert\vec{b}_1\vert\).
Angle between second and third reciprocal lattice vector.
Length of the second reciprocal lattice vector \(\vert\vec{b}_2\vert\).
Angle between first and third reciprocal lattice vector.
Length of the third reciprocal lattice vector \(\vert\vec{b}_3\vert\).
Angle between first and second reciprocal lattice vector.
Instance of
Kpointswith the high symmetry points and path.Lattice of the crystal.
Human-readable name of the Bravais lattice type.
Return cell parameters.
Pearson symbol.
Reciprocal cell.
Volume of the reciprocal cell.
Return reciprocal cell parameters.
Volume of the unit cell.
Variation of the lattice, if any.