FittingData

class emmet.core.elasticity.FittingData(**data)

Bases: BaseModel

Data used to fit the elastic tensor.

Note, this only consists of the explicitly calculated primary data. With the data here, one can redo the fitting to regenerate the elastic data, e.g. using ElasticityDoc.from_deformations_and_stresses().

Parameters:
  • deformations (list[tuple[tuple[float, float, float], tuple[float, float, float], tuple[float, float, float]]])

  • strains (list[tuple[tuple[float, float, float], tuple[float, float, float], tuple[float, float, float]]])

  • cauchy_stresses (list[tuple[tuple[float, float, float], tuple[float, float, float], tuple[float, float, float]]])

  • second_pk_stresses (list[tuple[tuple[float, float, float], tuple[float, float, float], tuple[float, float, float]]])

  • deformation_tasks (list[Annotated[AlphaID | MPID, BeforeValidator(func=functools.partial(<function _fault_tolerant_id_serde at 0x7f75d76d4cc0>, padlen=8), json_schema_input_type=PydanticUndefined), PlainSerializer(func=functools.partial(<function _fault_tolerant_id_serde at 0x7f75d76d4cc0>, serialize=True, padlen=8), return_type=PydanticUndefined, when_used=always)]] | None)

  • deformation_dir_names (list[str] | None)

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

  • optimization_task (Annotated[AlphaID | MPID, BeforeValidator(func=functools.partial(<function _fault_tolerant_id_serde at 0x7f75d76d4cc0>, padlen=8), json_schema_input_type=PydanticUndefined), PlainSerializer(func=functools.partial(<function _fault_tolerant_id_serde at 0x7f75d76d4cc0>, serialize=True, padlen=8), return_type=PydanticUndefined, when_used=always)] | None)

  • optimization_dir_name (str | None)

  • num_total_strain_stress_states (int | None)

model_config: ClassVar[ConfigDict] = {}

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