airsspy.jf.documents#

Output document models for AIRSS jobflow jobs.

Defines pydantic models following the atomate2 TaskDoc pattern. One AirssJobDoc contains N AirssResultDoc entries, supporting multi-structure jobs (e.g., 50 random structures per search job).

Module Contents#

Classes#

RelaxOutcome

Outcome of a single structure relaxation.

AirssResultDoc

Single relaxed structure result from an AIRSS job.

AirssJobDoc

Output document from any AIRSS job (search or relax).

API#

class airsspy.jf.documents.RelaxOutcome[source]#

Bases: str, enum.Enum

Outcome of a single structure relaxation.

Initialization

Initialize self. See help(type(self)) for accurate signature.

FINISHED#

‘finished’

TIMEDOUT#

‘timedout’

ERRORED#

‘errored’

FAILED#

‘failed’

UNDETERMINED#

‘undetermined’

CYCLE_EXCEEDED#

‘cycle_exceeded’

class airsspy.jf.documents.AirssResultDoc(/, **data: Any)[source]#

Bases: pydantic.BaseModel

Single relaxed structure result from an AIRSS job.

Initialization

Create a new model by parsing and validating input data from keyword arguments.

Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.

self is explicitly positional-only to allow self as a field name.

struct_name: str#

None

seed_name: str#

None

project_name: str#

None

structure: Optional[pymatgen.core.Structure]#

None

initial_structure: Optional[pymatgen.core.Structure]#

None

energy: Optional[float]#

None

energy_per_atom: Optional[float]#

None

volume: Optional[float]#

None

pressure: Optional[float]#

None

spin: float#

0.0

mod_spin: float#

0.0

symmetry: Optional[str]#

None

formula: Optional[str]#

None

reduced_formula: Optional[str]#

None

natoms: Optional[int]#

None

res_content: Optional[str]#

None

parallel_efficiency: Optional[float]#

None

total_time: Optional[float]#

None

relax_status: airsspy.jf.documents.RelaxOutcome#

None

error_message: Optional[str]#

None

rem_lines: Optional[list[str]]#

None

class airsspy.jf.documents.AirssJobDoc(/, **data: Any)[source]#

Bases: pydantic.BaseModel

Output document from any AIRSS job (search or relax).

Contains N results from a single job execution. For AirssSearchMaker, this holds N randomly-generated-then-relaxed structures. For AirssRelaxMaker, this holds N pre-existing-now-relaxed structures.

Initialization

Create a new model by parsing and validating input data from keyword arguments.

Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.

self is explicitly positional-only to allow self as a field name.

project_name: str#

None

seed_name: str#

None

job_type: str#

‘search’

seed_content: Optional[str]#

None

seed_hash: Optional[str]#

None

param_content: Optional[str]#

None

results: list[airsspy.jf.documents.AirssResultDoc]#

‘Field(…)’

n_structures: int#

0

n_finished: int#

0

n_errored: int#

0

n_failed: int#

0

n_timedout: int#

0

created_on: Optional[datetime.datetime]#

None