ScanEnumerator
- class openff.qcsubmit.workflow_components.ScanEnumerator(*, type='ScanEnumerator', torsion_scans=[], double_torsion_scans=[], improper_scans=[])[source]
This module will tag any matching substructures for scanning, useful for torsiondrive datasets.
- Parameters
type (Literal['ScanEnumerator']) –
torsion_scans (List[openff.qcsubmit.workflow_components.utils.Scan1D]) –
double_torsion_scans (List[openff.qcsubmit.workflow_components.utils.Scan2D]) –
improper_scans (List[openff.qcsubmit.workflow_components.utils.ImproperScan]) –
- Return type
None
- __init__(**data)
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
data (Any) –
- Return type
None
Methods
__init__
(**data)Create a new model by parsing and validating input data from keyword arguments.
add_double_torsion
(smarts1, smarts2[, ...])Add a targeted 2D torsion scan to the scan enumerator.
add_improper_torsion
(smarts, central_smarts)Add a targeted Improper torsion to the scan enumerator.
add_torsion_scan
(smarts[, scan_rage, ...])Add a targeted 1D torsion scan to the scan enumerator.
apply
(molecules, toolkit_registry[, ...])This is the main feature of the workflow component which should accept a molecule, perform the component action and then return any resulting molecules.
construct
([_fields_set])Creates a new model setting __dict__ and __fields_set__ from trusted or pre-validated data.
copy
(*[, include, exclude, update, deep])Duplicate a model, optionally choose which fields to include, exclude and change.
Returns a friendly description of the workflow component.
dict
(*[, include, exclude, by_alias, ...])Generate a dictionary representation of the model, optionally specifying which fields to include or exclude.
Returns a friendly description of why a molecule would fail to pass the component.
from_orm
(obj)info
()Returns a dictionary of the friendly descriptions of the class.
Check if any of the requested backend toolkits can be used.
json
(*[, include, exclude, by_alias, ...])Generate a JSON representation of the model, include and exclude arguments as per dict().
parse_file
(path, *[, content_type, ...])parse_obj
(obj)parse_raw
(b, *[, content_type, encoding, ...])Returns the runtime properties of the component such as parallel safe.
provenance
(toolkit_registry)This component calls the OFFTK to perform the task and logs information on the backend toolkit used.
schema
([by_alias, ref_template])schema_json
(*[, by_alias, ref_template])update_forward_refs
(**localns)Try to update ForwardRefs on fields based on this Model, globalns and localns.
validate
(value)Attributes
type
torsion_scans
double_torsion_scans
improper_scans
- classmethod description()[source]
Returns a friendly description of the workflow component.
- Return type
- classmethod fail_reason()[source]
Returns a friendly description of why a molecule would fail to pass the component.
- Return type
- classmethod properties()[source]
Returns the runtime properties of the component such as parallel safe.
- add_torsion_scan(smarts, scan_rage=None, scan_increment=15)[source]
Add a targeted 1D torsion scan to the scan enumerator.
- Parameters
smarts (str) – The numerically tagged SMARTs pattern that should be used to identify the torsion atoms.
scan_rage (Optional[Tuple[int, int]]) – The angle in degrees the torsion should be scanned between, from low to high
scan_increment (int) – The value in degrees between each grid point in the scan.
- Return type
None
- add_double_torsion(smarts1, smarts2, scan_range1=None, scan_range2=None, scan_increments=(15, 15))[source]
Add a targeted 2D torsion scan to the scan enumerator.
- Parameters
smarts1 (str) – The numerically tagged SMARTs pattern that should be used to identify the first torsion atoms.
smarts2 (str) – The numerically tagged SMARTs pattern that should be used to identify the second torsion atoms.
scan_range1 (Optional[Tuple[int, int]]) – The angle in degrees the first torsion should be scanned between, from low to high
scan_range2 (Optional[Tuple[int, int]]) – The angle in degrees the second torsion should be scanned between, from low to high
scan_increments (List[int]) – A list of the values in degrees between each grid point in the scans.
- Return type
None
- add_improper_torsion(smarts, central_smarts, scan_range=None, scan_increment=15)[source]
Add a targeted Improper torsion to the scan enumerator.
- Parameters
smarts (str) – The numerically tagged SMARTs pattern which describes the entire improper.
central_smarts (str) – The numerically tagged SMARTs pattern which identifies the central atom in the improper.
scan_range (Optional[Tuple[int, int]]) – The angles in degrees the improper should be scanned between, from low to high.
scan_increment (int) – The value in degrees between each grid point in the scan.
- Return type
None
- apply(molecules, toolkit_registry, processors=None, verbose=True)
This is the main feature of the workflow component which should accept a molecule, perform the component action and then return any resulting molecules.
- Parameters
molecules (List[openff.toolkit.topology.molecule.Molecule]) – The list of molecules to be processed by this component.
toolkit_registry (openff.toolkit.utils.toolkit_registry.ToolkitRegistry) – The openff.toolkit.utils.ToolkitRegistry which declares the available backend toolkits to be used.
processors (Optional[int]) – The number of processor the component can use to run the job in parallel across molecules, None will default to all cores.
verbose (bool) – If true a progress bar should be shown on screen.
- Returns
A component result class which handles collecting together molecules that pass and fail the component
- Return type
- provenance(toolkit_registry)
This component calls the OFFTK to perform the task and logs information on the backend toolkit used.
- Parameters
toolkit_registry (openff.toolkit.utils.toolkit_registry.ToolkitRegistry) – The openff.toolkit.utils.ToolkitRegistry which declares the available toolkits for the component.
- Returns
A dictionary containing the version information about the backend toolkit called to perform the task.
- Return type