Skip to main content

Overview

The PHONON task computes harmonic phonons by:
  1. Building a Phonopy object with supercell displacements.
  2. Evaluating forces on each displaced supercell using the supplied calculator.
  3. Producing force constants, mesh DOS, thermal properties, and an automatic band structure.
The task is registered in Prefect as PHONON with a TASK_SOURCE + INPUTS cache policy.
phonopy must be installed separately. Install it with:
or follow the official instructions. The module will log a warning and fail at runtime if phonopy is not available.

Function signature

Parameters

ase.Atoms
required
Primitive (or conventional) unit cell for which phonons are computed.
ase.calculators.calculator.BaseCalculator
required
ASE-compatible calculator used to evaluate forces on displaced supercells.
list[int] | None
default:"None"
Supercell transformation matrix passed directly to Phonopy. When None and min_lengths is also None, Phonopy uses the primitive cell as the supercell. When None but min_lengths is set, the matrix is computed automatically.
number | tuple[number, number, number] | None
default:"None"
Minimum supercell dimension(s) in Å. When provided, supercell_matrix is set to diag(ceil(min_lengths / cell.lengths())). Ignored if supercell_matrix is given explicitly.
number
default:"1e-5"
Symmetry precision in Å passed to Phonopy for space-group detection.
number
default:"0.01"
Atomic displacement distance in Å used to generate finite-difference supercell configurations (Phonopy.generate_displacements).
dict
default:"{}"
Additional keyword arguments forwarded to the Phonopy constructor (e.g., is_symmetry, factor, primitive_matrix).
boolean
default:"false"
When True, symmetrizes force constants both generally and by space group after they are produced (phonon.symmetrize_force_constants() and phonon.symmetrize_force_constants_by_space_group()).
number
default:"0.0"
Minimum temperature (K) for the thermal property calculation.
number
default:"1000.0"
Maximum temperature (K) for the thermal property calculation.
number
default:"10.0"
Temperature step size (K) between t_min and t_max.
string | None
default:"None"
Directory path for writing output files. When set, the following files are saved:
  • <outdir>/band.yaml — band structure data.
  • <outdir>/phonopy.yaml — Phonopy object including force constants. When None, no files are written.

Return value

phonopy.Phonopy
A fully populated Phonopy object with force constants, mesh DOS, thermal properties, and band structure computed. Use the standard Phonopy API to extract further quantities:

Example