phonon_lifetime package#
An Example project.
- class phonon_lifetime.StrainSystem(cell: C, strain: ndarray[tuple[int, int, Literal[3], Literal[3]], dtype[floating]], strain_repeats: tuple[int, int, int])#
Bases:
GenericRepresents a system for phonon calculations.
- property cell: C#
Get the cell of the system.
- property strain: ndarray[tuple[int, int, Literal[3], Literal[3]], dtype[floating]]#
Get the strain of the system.
- property strain_repeats: tuple[int, int, int]#
Get the strain repeats of the system.
Subpackages#
- phonon_lifetime.cell package
- phonon_lifetime.defect package
- phonon_lifetime.phonon package
BodyCenteredCubicPointCubicPointDispersionPathDispersionPathPhononsDispersionPathPointDispersionSegmentDispersionSegmentPhononsFaceCenteredCubicPointGammaPhononGammaPhononsHexagonalPointMeshPhononMeshPhononsPhononPhononsanimate_phonon_1d_x()animate_phonon_xy()animate_phonon_xyz()as_gamma_phonon()as_gamma_phonons()as_supercell_phonon()as_supercell_phonons()get_dispersion_path()get_dispersion_segment()get_displacement()get_gamma_phonon()get_gamma_phonons()get_mesh_phonon()get_mesh_phonons()get_phonon()get_phonons()plot_dispersion_path()plot_dispersion_segment()plot_phonon_1d_x()plot_phonon_xy()plot_phonon_xyz()
- phonon_lifetime.system package
Submodules#
phonon_lifetime.lifetimes module#
- phonon_lifetime.lifetimes.calculate_finite_time_rates(pristine: GammaPhonons, defects: GammaPhonons, *, t: float) ndarray[tuple[int], dtype[float64]]#
Calculate the finite-time decay rates of the pristine states after time t.
- phonon_lifetime.lifetimes.calculate_survival_probabilities(pristine: GammaPhonons, defects: GammaPhonons, *, times: ndarray[tuple[int], dtype[float64]]) ndarray[tuple[int], dtype[float64]]#
Get the survival probability of each pristine state after a time t.
returns an array of shape (n_pristine, n_times) where each element is the probability that the pristine state has not decayed after time t.
- phonon_lifetime.lifetimes.calculate_survival_probability(pristine: GammaPhonon, defects: GammaPhonons, *, times: ndarray[tuple[int], dtype[float64]]) ndarray[tuple[int], dtype[float64]]#
Get the survival probability of a pristine state after a time t.
returns an array of shape (n_times) where each element is the probability that the pristine state has not decayed after time t.
- phonon_lifetime.lifetimes.get_first_order_scatter(pristine: GammaPhonons, defects: GammaPhonons) ndarray[tuple[int, int], dtype[complex128]]#
Calculate the first-order scattering matrix element <p_k|V|p_i>.
- phonon_lifetime.lifetimes.get_state_overlap(pristine: GammaPhonon, defects: GammaPhonons) ndarray[tuple[int], dtype[complex128]]#
Calculate the overlap matrix S_ki = <d_k | p_i>.
- phonon_lifetime.lifetimes.get_state_overlap_matrix(pristine: GammaPhonons, defects: GammaPhonons) ndarray[tuple[int, int], dtype[complex128]]#
Calculate the overlap matrix S_ki = <d_k | p_i>.
- phonon_lifetime.lifetimes.plot_first_order_scatter(pristine: GammaPhonons, defects: GammaPhonons, pristine_idx: int, *, ax: Axes | None = None) tuple[Figure, Axes, Line2D]#
Plot the first-order scattering matrix element <p_k|V|p_i> against the defect frequencies.
for a pristine state |psi_i>, the first-order scattering with a defect mode k is given by $S_(omega_k)^i = |<bar{psi}_k|V|psi_i>|^2$ where omega_k is the frequency of the defect mode k.
- phonon_lifetime.lifetimes.plot_first_order_scatter_against_qx(pristine: MeshPhonons, defects: GammaPhonons, pristine_idx: int, *, ax: Axes | None = None) tuple[Figure, Axes, Line2D]#
Plot the first-order scattering matrix element <p_k|V|p_i> against the pristine q.
for a pristine state |psi_i>, the first-order scattering with a defect mode k is given by $S_(omega_k)^i = |<bar{psi}_k|V|psi_i>|^2$ where omega_k is the frequency of the defect mode k.
- phonon_lifetime.lifetimes.plot_overlap_weights(pristine: GammaPhonon, defects: GammaPhonons, *, ax: Axes | None = None) tuple[Figure, Axes, Line2D]#
Plot the overlap weights of a pristine state with the defect states against the defect frequencies.
for a pristine state |psi_i>, the overlap weight with a defect mode k is given by $W_(omega_k)^i = |<bar{psi}_k|psi_i>|^2$ where omega_k is the frequency of the defect mode k.
- phonon_lifetime.lifetimes.plot_survival_probability(pristine: GammaPhonon, defects: GammaPhonons, times: ndarray[tuple[int], dtype[float64]], *, ax: Axes | None = None) tuple[Figure, Axes, Line2D]#
Plot the survival probabilities of the pristine states after time t.
phonon_lifetime.wannier module#
- phonon_lifetime.wannier.plot_wannier_vector(phonons: GammaPhonons, idx: int = 0, *, ax: Axes | None = None) tuple[Figure, Axes]#
Plot the Wannier vectors of the system.