aiida_phonopy.data.force_constants
#
Module defining the class for force constants data.
Module Contents#
Classes#
Self-contained class for force constants data and non-analytical constants. |
- class aiida_phonopy.data.force_constants.ForceConstantsData(structure: aiida.orm.StructureData | None = None, phonopy_atoms: phonopy.structure.cells.PhonopyAtoms | None = None, supercell_matrix: list | None = None, primitive_matrix: list | None = None, symprec: float = 1e-05, is_symmetry: bool = True, distinguish_kinds: bool = True, **kwargs)[source]#
Bases:
aiida_phonopy.data.raw.RawData
Self-contained class for force constants data and non-analytical constants.
It stores also the structure information (unitcell, supercell, …), for a complete transferable data type.
- get_phonopy_instance(**kwargs)[source]#
Return a
Phonopy
object with force and nac parameters (if set).- Parameters:
kwargs –
see
aiida_phonopy.data.preprocess.PreProcessData.get_phonopy_instance()
* symmetrize_nac: whether or not to symmetrize the nac parametersusing point group symmetry; bool, defaults to self.is_symmetry
- factor_nac: factor for non-analytical corrections;
float, defaults to Hartree*Bohr
- set_force_constants(force_constants: list | numpy.ndarray)[source]#
Set force constants matrix.
- Parameters:
force_constants – array of force constants matrix in compact or full format
type – (n_patom = atoms in primitive cell, n_satom = atoms in supercell) * Compact format: (n_patom, n_satom, 3, 3) * Full format: (n_satom, n_satom, 3, 3)
- Raises:
TypeError: if the format is not of the correct type
ValueError: if the format is not compatible
RuntimeError: if the displacement dataset was not initialize in input