DielectricProperties

class emmet.core.vasp.calculation.DielectricProperties(**data)

Bases: BaseModel

Store electronic response properties.

Note the units and tensor ranks: - Dielectric tensors are dimensionless (no units apply), and are 3x3 - Piezoelectric tensors are in C(oulomb)/m^2, and are 3x6 - Strain tensors, for each atom, are in eV/Å, and are 3x6 - Born charges, for each atom, are in units of the elementary charge, and are 3x3

For both Born charges and strain, the tensors are listed for each site in the structure. Thus one expects a list of 3x3 and 3x6 tensors, respectively.

Parameters:
  • born_charges (list[tuple[tuple[float, float, float], tuple[float, float, float], tuple[float, float, float]]] | None)

  • dielectric_ionic_tensor (tuple[tuple[float, float, float], tuple[float, float, float], tuple[float, float, float]] | None)

  • dielectric_tensor (tuple[tuple[float, float, float], tuple[float, float, float], tuple[float, float, float]] | None)

  • internal_strain_tensor (list[tuple[tuple[float, float, float, float, float, float], tuple[float, float, float, float, float, float], tuple[float, float, float, float, float, float]]] | None)

  • piezo_ionic_tensor (tuple[tuple[float, float, float, float, float, float], tuple[float, float, float, float, float, float], tuple[float, float, float, float, float, float]] | None)

  • piezo_tensor (tuple[tuple[float, float, float, float, float, float], tuple[float, float, float, float, float, float], tuple[float, float, float, float, float, float]] | None)

classmethod from_outcar(outcar)

Parse data from the OUTCAR.

Return type:

Self

Parameters:

outcar (Outcar | dict[str, Any])

Parameters

outcar : Outcar or its as_dict representation

model_config: ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].