phonon_lifetime.pristine package#
Pristine system and modes.
- class phonon_lifetime.pristine.PristineMode(*, _system: PristineSystem, _omega: float, _primitive_vector: ndarray, _q_val: tuple[float, float, float])#
Bases:
NormalMode[PristineSystem]A normal mode of a pristine system.
- property omega: float#
The frequency of the mode.
- property primitive_vector: ndarray[tuple[int], dtype[complex128]]#
The primitive vector of the mode.
- property system: PristineSystem#
The system that this normal mode belongs to.
- property vector: ndarray[tuple[int, int], dtype[complex128]]#
The vector of the mode, an (n_atoms, 3) array.
- class phonon_lifetime.pristine.PristineModes(*, _system: PristineSystem, _omega: ndarray[Any, dtype[floating]], _modes: ndarray[Any, dtype[floating]], _q_vals: ndarray[Any, dtype[floating]])#
Bases:
NormalModes[PristineSystem]Result of a normal mode calculation for a phonon system.
- get_dispersion(branch: int) ndarray[Any, dtype[floating]]#
Get the dispersion for a given branch.
- get_mode(branch: int, q: int | tuple[int, int, int]) PristineMode#
Select the normal mode for a given branch and q point.
- property n_branch: int#
The number of branches in the calculation.
- property n_q: int#
The number of q points in the calculation.
- property omega: ndarray[tuple[int], dtype[floating]]#
A np.array of frequencies for each mode.
- property q_vals: ndarray[Any, dtype[floating]]#
The q values for each mode, shape (n_q, 3).
- property system: PristineSystem#
The system that this normal mode belongs to.
- class phonon_lifetime.pristine.PristineSystem(*, mass: float, primitive_cell: ndarray[tuple[int, int], dtype[floating]], n_repeats: tuple[int, int, int], spring_constant: tuple[float, float, float])#
Bases:
SystemRepresents a System of atoms.
- as_pristine() PristineSystem#
Return a new System with no defects.
- get_modes() PristineModes#
Get the normal modes of the system.
- property mass: float#
Mass of each atom in the system.
- property masses: ndarray[tuple[int], dtype[floating]]#
Mass of each atom in the system.
- property n_repeats: tuple[int, int, int]#
Number of repeats of the primitive cell in each direction (nx, ny, nz).
- 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 spring_constant: tuple[float, float, float]#
Spring constant for each direction (kx, ky, kz).
- phonon_lifetime.pristine.plot_dispersion_1d(result: PristineModes, branch: int, idx: tuple[int, int] = (0, 0), *, ax: Axes | None = None) tuple[Figure, Axes, Line2D]#
- phonon_lifetime.pristine.plot_dispersion_2d_xy(result: PristineModes, branch: int, idx: int = 0, *, ax: Axes | None = None) tuple[Figure, Axes, QuadMesh]#