ValidationDoc

class emmet.core.vasp.validation_legacy.ValidationDoc(**data)

Bases: EmmetBaseModel

Validation document for a VASP calculation

Parameters:
  • builder_meta (EmmetMeta | None)

  • task_id (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)])

  • valid (bool)

  • last_updated (Annotated[datetime, BeforeValidator(func=~emmet.core.utils.convert_datetime, json_schema_input_type=PydanticUndefined)])

  • reasons (list[DeprecationMessage | str] | None)

  • warnings (list[str])

  • data (ValidationDataDict | None)

  • nelements (int | None)

  • symmetry_number (int | None)

  • chemsys (str | None)

  • formula_pretty (str | None)

  • extra_data (Any)

classmethod from_task_doc(task_doc, kpts_tolerance=SETTINGS.VASP_KPTS_TOLERANCE, kspacing_tolerance=SETTINGS.VASP_KSPACING_TOLERANCE, input_sets=SETTINGS.VASP_DEFAULT_INPUT_SETS, LDAU_fields=SETTINGS.VASP_CHECKED_LDAU_FIELDS, max_allowed_scf_gradient=SETTINGS.VASP_MAX_SCF_GRADIENT, max_magmoms=SETTINGS.VASP_MAX_MAGMOM, potcar_stats=None)

Determines if a calculation is valid based on expected input parameters from a pymatgen inputset

Return type:

ValidationDoc

Parameters:
  • task_doc (CoreTaskDoc | TaskDoc | TaskDocument)

  • kpts_tolerance (float)

  • kspacing_tolerance (float)

  • input_sets (dict[str, ImportString])

  • LDAU_fields (list[str])

  • max_allowed_scf_gradient (float)

  • max_magmoms (dict[str, float])

  • potcar_stats (dict[CalcType, dict[str, str]] | None)

Args:

task_doc: the task document to process kpts_tolerance: the tolerance to allow kpts to lag behind the input set settings kspacing_tolerance: the tolerance to allow kspacing to lag behind the input set settings input_sets: a dictionary of task_types -> pymatgen input set for validation pseudo_dir: directory of pseudopotential directory to ensure correct hashes LDAU_fields: LDAU fields to check for consistency max_allowed_scf_gradient: maximum uphill gradient allowed for SCF steps after the

initial equillibriation period

potcar_stats: Dictionary of potcar stat data. Mapping is calculation type -> potcar symbol -> hash value.

model_config: ClassVar[ConfigDict] = {'extra': 'allow'}

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