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[MPID | AlphaID, BeforeValidator(func=~emmet.core.types.typing._fault_tolerant_id_serde, json_schema_input_type=PydanticUndefined), PlainSerializer(func=~emmet.core.types.typing.<lambda>, 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[MPID | AlphaID, BeforeValidator(func=~emmet.core.types.typing._fault_tolerant_id_serde, json_schema_input_type=PydanticUndefined), PlainSerializer(func=~emmet.core.types.typing.<lambda>, 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].