Torsiondrive calculations#

Stuff

Torsiondrive Record#

Stuff

Torsiondrive Dataset#

Stuff

Torsiondrive QCPortal API#

class TorsiondriveRecord(client=None, *, id, record_type='torsiondrive', is_service, properties=None, extras={}, status, manager_name=None, created_on, modified_on, owner_user=None, owner_group=None, compute_history=None, task=None, service=None, comments=None, native_files=None, specification, initial_molecules_ids=None, initial_molecules=None, optimizations=None, minimum_optimizations=None)[source]#

Bases: BaseRecord

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

Raises ValidationError if the input data cannot be parsed to form a valid model.

Parameters:
  • id (int)

  • record_type (Literal['torsiondrive'])

  • is_service (bool)

  • properties (Dict[str, Any] | None)

  • extras (Dict[str, Any])

  • status (RecordStatusEnum)

  • manager_name (str | None)

  • created_on (datetime)

  • modified_on (datetime)

  • owner_user (str | None)

  • owner_group (str | None)

  • compute_history (List[ComputeHistory] | None)

  • task (RecordTask | None)

  • service (RecordService | None)

  • comments (List[RecordComment] | None)

  • native_files (Dict[str, NativeFile] | None)

  • specification (TorsiondriveSpecification)

  • initial_molecules_ids (List[int] | None)

  • initial_molecules (List[Molecule] | None)

  • optimizations (List[TorsiondriveOptimization] | None)

  • minimum_optimizations (Dict[str, int] | None)

field record_type: Literal['torsiondrive'] = 'torsiondrive'#
field specification: TorsiondriveSpecification [Required]#
field initial_molecules_ids_: List[int] | None = None (alias 'initial_molecules_ids')#
field initial_molecules_: List[Molecule] | None = None (alias 'initial_molecules')#
field optimizations_: List[TorsiondriveOptimization] | None = None (alias 'optimizations')#
field minimum_optimizations_: Dict[str, int] | None = None (alias 'minimum_optimizations')#
propagate_client(client)[source]#

Propagates a client and related information to this record to any fields within this record that need it

This is expected to be called from derived class propagate_client functions as well

property initial_molecules: List[Molecule]#
property optimizations: Dict[str, List[OptimizationRecord]]#
property minimum_optimizations: Dict[Tuple[float, ...], OptimizationRecord]#
property final_energies: Dict[Tuple[float, ...], float]#
model Config#

Bases: object

allow_mutation = True#
extra = 'forbid'#
validate_assignment = True#
property children_errors: List[BaseRecord]#

Returns errored child records

property children_status: Dict[RecordStatusEnum, int]#

Returns a dictionary of the status of all children of this record

property comments: List[RecordComment] | None#
property compute_history: List[ComputeHistory]#
property error: Dict[str, Any] | None#
fetch_children(include=None, force_fetch=False)#

Fetches all children of this record recursively

Parameters:
  • include (Iterable[str] | None)

  • force_fetch (bool)

classmethod fetch_children_multi(records, include=None, force_fetch=False)#

Fetches all children of the given records

This tries to work efficiently, fetching larger batches of children that can span multiple records

Parameters:
  • records (Iterable[BaseRecord | None])

  • include (Iterable[str] | None)

  • force_fetch (bool)

classmethod get_subclass(record_type)#

Obtain a subclass of this class given its record_type

Parameters:

record_type (str)

Return type:

Type[BaseRecord]

get_waiting_reason()#
Return type:

Dict[str, Any]

property native_files: Dict[str, NativeFile] | None#
property offline: bool#
property provenance: Provenance | None#
property service: RecordService | None#
property stderr: str | None#
property stdout: str | None#
sync_to_cache(detach=False)#

Syncs this record to the cache

If detach is True, then the record will be removed from the cache

Parameters:

detach (bool)

property task: RecordTask | None#
field id: int [Required]#
field is_service: bool [Required]#
field properties: Dict[str, Any] | None = None#
field extras: Dict[str, Any] = {}#
Validated by:
  • _validate_extras

field status: RecordStatusEnum [Required]#
field manager_name: str | None = None#
field created_on: datetime [Required]#
field modified_on: datetime [Required]#
field owner_user: str | None = None#
field owner_group: str | None = None#
field compute_history_: List[ComputeHistory] | None = None (alias 'compute_history')#
field task_: RecordTask | None = None (alias 'task')#
field service_: RecordService | None = None (alias 'service')#
field comments_: List[RecordComment] | None = None (alias 'comments')#
field native_files_: Dict[str, NativeFile] | None = None (alias 'native_files')#
class TorsiondriveSpecification(*, program='torsiondrive', optimization_specification, keywords)[source]#

Bases: BaseModel

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

Raises ValidationError if the input data cannot be parsed to form a valid model.

Parameters:
model Config[source]#

Bases: object

extra = 'forbid'#
field program: ConstrainedStrValue = 'torsiondrive'#
field optimization_specification: OptimizationSpecification [Required]#
field keywords: TorsiondriveKeywords [Required]#