CTEDocument¶
- class atomate2.common.schemas.cte.CTEDocument(*, nsites=None, elements=None, nelements=None, composition=None, composition_reduced=None, formula_pretty=None, formula_anonymous=None, chemsys=None, volume=None, density=None, density_atomic=None, symmetry=None, structure=None, supercell_matrix=None, temperatures=None, mesh=None, elastic_tensor=None, min_frequency=None, tol_imaginary_modes=None, phonon_job_dir=None, results=None)[source]¶
Bases:
StructureMetadataThermal expansion from mode Grueneisen tensors and the elastic tensor.
- Parameters:
nsites (int | None)
elements (list[Annotated[ElementTypeVar, BeforeValidator(func=~emmet.core.types.pymatgen_types.element_adapter.<lambda>, json_schema_input_type=PydanticUndefined), WrapSerializer(func=~emmet.core.types.pymatgen_types.element_adapter.<lambda>, return_type=str, when_used=always)]] | None)
nelements (int | None)
composition (Annotated[CompositionTypeVar, BeforeValidator(func=~emmet.core.types.pymatgen_types.composition_adapter.<lambda>, json_schema_input_type=PydanticUndefined), WrapSerializer(func=~emmet.core.types.pymatgen_types.composition_adapter.<lambda>, return_type=dict[str, float], when_used=always)] | None)
composition_reduced (Annotated[CompositionTypeVar, BeforeValidator(func=~emmet.core.types.pymatgen_types.composition_adapter.<lambda>, json_schema_input_type=PydanticUndefined), WrapSerializer(func=~emmet.core.types.pymatgen_types.composition_adapter.<lambda>, return_type=dict[str, float], when_used=always)] | None)
formula_pretty (str | None)
formula_anonymous (str | None)
chemsys (str | None)
volume (float | None)
density (float | None)
density_atomic (float | None)
symmetry (SymmetryData | None)
structure (Structure | None)
supercell_matrix (tuple[tuple[float, float, float], tuple[float, float, float], tuple[float, float, float]] | None)
elastic_tensor (tuple[tuple[float, float, float, float, float, float], tuple[float, float, float, float, float, float], tuple[float, float, float, float, float, float], tuple[float, float, float, float, float, float], tuple[float, float, float, float, float, float], tuple[float, float, float, float, float, float]] | None)
min_frequency (float | None)
tol_imaginary_modes (float | None)
phonon_job_dir (str | None)
- classmethod from_force_constants(phonopy_yaml, force_constant_files, elastic_tensor, structure, temperatures, mesh, tol_imaginary_modes, min_frequency, symprec)[source]¶
Compute the thermal expansion from second- and third-order force constants.
phono3py gives the frequencies and mode Grueneisen tensors on the q-point mesh. Only time reversal symmetry is used to reduce the mesh. The non-analytical term correction is applied to the dynamical matrix when the phonopy yaml file holds the Born charges and the dielectric tensor. Only the third-order force constants enter the strain derivative of the dynamical matrix. The results of each fit are written to gruneisen_<method>.hdf5 in the current directory.
- Parameters:
phonopy_yaml (str or Path) – phonopy.yaml of the pheasy fit, with the unit cell, the supercell matrix and the Born charges.
force_constant_files (Mapping) – For each fit method, “cocktail” or “one-shot”, the files with the second- and third-order force constants.
elastic_tensor (MatrixVoigt) – Elastic tensor in GPa and Voigt notation.
structure (Structure) – Structure of the elastic calculation. Its lattice must match the unit cell in phonopy_yaml, so that both tensors are in the same frame.
temperatures (Sequence[float]) – Temperatures in K, not negative.
mesh (tuple[int, int, int] or float) – q-point mesh, or a q-point density used as kppa in pymatgen’s Kpoints.automatic_density for the unit cell.
tol_imaginary_modes (float) – If a frequency on the mesh is below -tol_imaginary_modes in THz, a warning is raised and the thermal expansion of that fit is not computed.
min_frequency (float) – Modes below this frequency in THz are left out.
symprec (float) – Symmetry precision passed to phono3py.
- Return type:
- model_config = {}¶
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].