Irreps¶
- spgrep_modulation.irreps.project_eigenmode_representation(eigenmode_representation, primitive, primitive_symmetry, primitive_qpoint, method='Neto', rtol=1e-05, atol=1e-06)[source]¶
Decompose representation matrices by eigenmodes into irreps.
- Parameters
eigenmode_representation (array, (order, num_atoms, 3, num_atoms, 3)) – Representation matrices formed by phonon eigenmodes
primitive (phonopy.structure.cells.Primitive) – phonopy’s primitive object
primitive_symmetry (phonopy.structure.symmetry.Symmetry) – phonopy’s Symmetry object for primitive cell
primitive_qpoint (array, (3, )) – q vector in
primitive
’s dual basis vectorsmethod (str, 'Neto' or 'random') – ‘Neto’: construct irreps from a fixed chain of subgroups of little co-group ‘random’: construct irreps by numerically diagonalizing a random matrix commute with regular representation
rtol (float) – Relative tolerance for comparing float values
atol (float) – Absolute tolerance to distinguish difference eigenvalues
- Returns
all_basis (list) –
all_basis[i]
is list of independent basis vectors with (dim, num_atoms, 3) formingirreps[i]
. Note: phase chosen to be consistent with definition of phonopy’s dynamical matrixirreps (list of irrep, (little_order, dim, dim))
mapping_little_group (array[int], (order, )) – list of indices for little group.
- spgrep_modulation.irreps.get_eigenmode_representation(primitive, primitive_symmetry, primitive_qpoint)[source]¶
Compute representation matrix for eigenmodes.
\[\Gamma_{\kappa'\mu'; \kappa\mu}^{\mathbf{q}}(g) := \exp \left( -i \mathbf{R}_{g} \mathbf{q} \cdot \mathbf{h}_{g}(\kappa) \right) [\mathbf{R}_{g}]_{\mu'\mu} \delta_{ g\kappa, \kappa' }\]
- Parameters
primitive (phonopy.structure.cells.Primitive) – phonopy’s primitive object
primitive_symmetry (phonopy.structure.symmetry.Symmetry) – phonopy’s Symmetry object for primitive cell
primitive_qpoint (array, (3, )) – q vector in
primitive
’s dual basis vectors- Returns
rep – Representation matrices
- Return type
array, (order, num_atoms, 3, num_atoms, 3)