ValidationDoc
- class emmet.core.vasp.validation_legacy.ValidationDoc(**data)
Bases:
EmmetBaseModelValidation 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:
- 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].