atomistics.workflows.quasiharmonic.get_tasks_for_quasi_harmonic_approximation

atomistics.workflows.quasiharmonic.get_tasks_for_quasi_harmonic_approximation#

atomistics.workflows.quasiharmonic.get_tasks_for_quasi_harmonic_approximation(structure: Atoms, vol_range: float | None = None, num_points: int | None = None, strain_lst: list[float] | None = None, displacement: float = 0.01, number_of_snapshots: int | None = None, interaction_range: float = 10.0) tuple[dict[str, dict[Any, Atoms]], dict[str, Any]][source]#

Generate structures for the QuasiHarmonicWorkflow.

Parameters:
  • structure (Atoms) – The input structure.

  • vol_range (float, optional) – The range of volume strain. Defaults to None.

  • num_points (int, optional) – The number of volume strain points. Defaults to None.

  • strain_lst (List[float], optional) – The list of volume strains. Defaults to None.

  • displacement (float, optional) – The displacement for finite difference calculation. Defaults to 0.01.

  • number_of_snapshots (int, optional) – The number of snapshots for each structure. Defaults to None.

  • interaction_range (float, optional) – The interaction range for supercell generation. Defaults to 10.0.

Returns:

A tuple containing the following:
  • phonopy_dict (dict): Dictionary of Phonopy objects for different strains.

  • repeat_vector (np.ndarray): Array representing the repeat vector for supercell generation.

  • structure_energy_dict (dict): Dictionary of structure energies for different strains.

  • structure_forces_dict (dict): Dictionary of structure forces for different strains.

Return type:

tuple[dict, np.ndarray, dict, dict]