matcalc._phonon3 module
Calculator for phonon-phonon interaction and related properties.
- class Phonon3Calc(calculator: Calculator | str, *, fc2_supercell: ArrayLike = ((2, 0, 0), (0, 2, 0), (0, 0, 2)), fc3_supercell: ArrayLike = ((2, 0, 0), (0, 2, 0), (0, 0, 2)), mesh_numbers: ArrayLike = (20, 20, 20), disp_kwargs: dict[str, Any] | None = None, thermal_conductivity_kwargs: dict | None = None, relax_structure: bool = True, relax_calc_kwargs: dict | None = None, fmax: float = 0.1, optimizer: str = 'FIRE', t_min: float = 0, t_max: float = 1000, t_step: float = 10, write_phonon3: bool | str | Path = False, write_kappa: bool = False)[source]
Bases:
PropCalcClass for calculating thermal conductivity using third-order force constants.
This class integrates with the Phono3py library to compute thermal conductivity based on third-order force constants (FC3). It includes capabilities for optional structure relaxation, displacement generation, and force calculations on supercells. Results include the thermal conductivity as a function of temperature and other intermediate configurations used in the calculation.
- t_min, t_max, t_step
Temperature grid for κ(T) (K).
Initializes the class for thermal conductivity calculation and structure relaxation utilizing third-order force constants (fc3). The class provides configurable parameters for the relaxation process, supercell settings, thermal conductivity calculation, and file output management.
- Parameters:
calculator – ASE calculator or universal model name string.
fc2_supercell – Phonon (FC2) supercell matrix.
fc3_supercell – FC3 supercell matrix.
mesh_numbers – q-point mesh shape.
disp_kwargs – Kwargs for
Phono3py.generate_displacements.thermal_conductivity_kwargs – Kwargs for
run_thermal_conductivity.relax_structure – Relax input before building phono3py.
relax_calc_kwargs – Kwargs for
RelaxCalc.fmax – Force tolerance for relaxation (eV/Å).
optimizer – ASE optimizer for relaxation.
t_min – Minimum temperature for κ (K).
t_max – Maximum temperature for κ (K).
t_step – Temperature step (K).
write_phonon3 – Save path, True for default YAML, or False.
write_kappa – Pass
write_kappato phono3py RTA.
- calc(structure: Structure | Atoms | dict[str, Any]) dict[source]
Performs thermal conductivity calculations using the Phono3py library.
This method processes a given atomic structure and calculates its thermal conductivity through third-order force constants (FC3) computations. The process involves optional relaxation of the input structure, generation of displacements, and force calculations corresponding to the supercell structures. The results include computed thermal conductivity over specified temperatures, along with intermediate Phono3py configurations.
- Parameters:
structure – Pymatgen structure, ASE atoms, or dict with structure keys.
- Returns:
Dict with
phonon3(Phono3py),temperatures, andthermal_conductivity(spatially averaged κ in W/m·K where defined; NaN if unavailable). See phono3py RTA documentation for details.