phonon_lifetime.defect package#
Representation of defect systems.
- class phonon_lifetime.defect.MassDefect(*, defects: list[tuple[str | None, float, int]])#
Bases:
objectA mass defect in the system.
- defects: list[tuple[str | None, float, int]]#
- class phonon_lifetime.defect.MassDefectMode(*, omega: float, vector: ndarray[tuple[int, int], dtype[complex128]], system: S)#
Bases:
CanonicalMode[MassDefectSystem]A normal mode of a system with a mass defect.
- class phonon_lifetime.defect.MassDefectModes(*, _system: MassDefectSystem, _omega: ndarray[Any, dtype[floating]], _modes: ndarray[Any, dtype[complex128]])#
Bases:
NormalModes[MassDefectSystem]Result of a normal mode calculation for a mass defect system.
- property n_modes: int#
The number of modes in the calculation.
- property omega: ndarray[tuple[int], dtype[floating]]#
A np.array of frequencies for each mode.
- property system: MassDefectSystem#
The system that this normal mode belongs to.
- property vectors: ndarray[tuple[int, int], dtype[complex128]]#
The vector of the mode, an (n_modes, n_atoms * 3) array.
- class phonon_lifetime.defect.MassDefectSystem(*, pristine: PristineSystem, defect: MassDefect)#
Bases:
SystemRepresents a system with a mass defect.
- as_pristine() PristineSystem#
Return a new System with no defects.
- property defect: MassDefect#
The mass defect in the system.
- get_modes() MassDefectModes#
Get the normal modes of the system.
- property masses: ndarray[tuple[int], dtype[floating]]#
Mass of every atom in the system.
- property n_primitive_atoms: int#
Number of atoms in the primitive cell.
- property n_repeats: tuple[int, int, int]#
Number of repeats of the primitive cell in each direction (nx, ny, nz).
- property primitive_atom_fractions: ndarray[tuple[int, int], dtype[floating]]#
The positions of the atoms as a fraction of the primitive cell.
primitive_atom_positions[i] is the position (x, y, z) of the i’th atom in the primitive cell.
- property primitive_cell: ndarray[tuple[int, int], dtype[floating]]#
Primitive cell lattice vectors.
primitive_cell[i] is the vector (x, y, z) for the i’th lattice vector of the primitive cell.
- property strain_tensor: ndarray[tuple[int, int, Literal[3], Literal[3]], dtype[float64]]#
Strain tensor matrix for the system.
strain_tensor[i, j, alpha, beta] is the force constant between the i’th and j’th atom in the system, for each pair of cartesian directions (alpha, beta).
- property symbols: list[str]#
Chemical symbol of every atom in the system.
- class phonon_lifetime.defect.VacancyDefect(*, defects: list[int])#
Bases:
objectA vacancy defect in the system.
- defects: list[int]#
- class phonon_lifetime.defect.VacancyMode(*, omega: float, vector: ndarray[tuple[int, int], dtype[complex128]], system: S)#
Bases:
CanonicalMode[VacancySystem]A normal mode of a vacancy defect system.
- class phonon_lifetime.defect.VacancyModes(*, _system: VacancySystem, _omega: ndarray[Any, dtype[floating]], _modes: ndarray[tuple[int, int], dtype[complex128]])#
Bases:
NormalModes[VacancySystem]Result of a normal mode calculation for a phonon system.
- property n_modes: int#
The number of modes in the calculation.
- property omega: ndarray[tuple[int], dtype[floating]]#
A np.array of frequencies for each mode.
- property system: VacancySystem#
The system that this normal mode belongs to.
- property vectors: ndarray[tuple[int, int], dtype[complex128]]#
The vector of the mode, an (n_modes, n_atoms * 3) array.
- class phonon_lifetime.defect.VacancySystem(*, pristine: PristineSystem, defect: VacancyDefect)#
Bases:
SystemRepresents a system with a vacancy.
- as_pristine() PristineSystem#
Return a new System with no defects.
- property defect: VacancyDefect#
The vacancy defect in the system.
- get_modes() VacancyModes#
Get the normal modes of the system.
- property masses: ndarray[tuple[int], dtype[floating]]#
Mass of every atom in the system.
- property n_primitive_atoms: int#
Number of atoms in the primitive cell.
- property n_repeats: tuple[int, int, int]#
Number of repeats of the primitive cell in each direction (nx, ny, nz).
- property primitive_atom_fractions: ndarray[tuple[int, int], dtype[floating]]#
The positions of the atoms as a fraction of the primitive cell.
primitive_atom_positions[i] is the position (x, y, z) of the i’th atom in the primitive cell.
- property primitive_cell: ndarray[tuple[int, int], dtype[floating]]#
Primitive cell lattice vectors.
primitive_cell[i] is the vector (x, y, z) for the i’th lattice vector of the primitive cell.
- property strain_tensor: ndarray[tuple[int, int, Literal[3], Literal[3]], dtype[float64]]#
Strain tensor matrix for the system.
strain_tensor[i, j, alpha, beta] is the force constant between the i’th and j’th atom in the system, for each pair of cartesian directions (alpha, beta).
- property symbols: list[str]#
Chemical symbol of every atom in the system.