TorsionIndexer

class openff.qcsubmit.workflow_components.TorsionIndexer(*, torsions={}, double_torsions={}, impropers={})[source]

A class to keep track of the torsions highlighted for scanning, with methods for combining and deduplication.

Parameters
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(torsion1, torsion2, ...)

Add a double torsion to the indexer if this central bond combination has not been tagged and the torsion pair are symmetry unique.

add_improper(central_atom, improper, ...[, ...])

Add an improper torsion to the indexer if its central atom is not already covered and the improper is symmetry unique.

add_torsion(torsion, symmetry_group[, ...])

Add a single torsion to the torsion indexer if this central bond has not already been tagged and the torsion is symmetry unique.

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.

dict(*[, include, exclude, by_alias, ...])

Generate a dictionary representation of the model, optionally specifying which fields to include or exclude.

from_orm(obj)

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, ...])

schema([by_alias, ref_template])

schema_json(*[, by_alias, ref_template])

update(torsion_indexer[, reorder_mapping])

Update the current torsion indexer with another.

update_forward_refs(**localns)

Try to update ForwardRefs on fields based on this Model, globalns and localns.

validate(value)

Attributes

double_torsion_groups

Return a list of all of the currently covered pairs of torsion symmetry groups.

get_dihedrals

Return a list of all of the dihedrals tagged making it easy to loop over.

improper_groups

Return a list of all of the currently covered improper torsion symmetry groups.

n_double_torsions

Return the number of double torsions highlighted.

n_impropers

Return the number of imporpers highlighted.

n_torsions

Return the number of torsions highlighted.

torsion_groups

Return a list of all of the currently covered torsion symmetry groups.

torsions

double_torsions

impropers

property get_dihedrals: List[Union[openff.qcsubmit.workflow_components.utils.SingleTorsion, openff.qcsubmit.workflow_components.utils.DoubleTorsion, openff.qcsubmit.workflow_components.utils.ImproperTorsion]]

Return a list of all of the dihedrals tagged making it easy to loop over.

property torsion_groups: List[Tuple[int, int]]

Return a list of all of the currently covered torsion symmetry groups. Note this only includes central bond atoms.

property double_torsion_groups: List[Tuple[Tuple[int, int], Tuple[int, int]]]

Return a list of all of the currently covered pairs of torsion symmetry groups.

property improper_groups: List[Tuple[int, int, int, int]]

Return a list of all of the currently covered improper torsion symmetry groups.

add_torsion(torsion, symmetry_group, scan_range=None, scan_increment=[15], overwrite=False)[source]

Add a single torsion to the torsion indexer if this central bond has not already been tagged and the torsion is symmetry unique.

Parameters
Return type

None

add_double_torsion(torsion1, torsion2, symmetry_group1, symmetry_group2, scan_range1=None, scan_range2=None, scan_increment=[15, 15], overwrite=False)[source]

Add a double torsion to the indexer if this central bond combination has not been tagged and the torsion pair are symmetry unique.

Parameters
Return type

None

add_improper(central_atom, improper, symmetry_group, scan_range=None, scan_increment=[15], overwrite=False)[source]

Add an improper torsion to the indexer if its central atom is not already covered and the improper is symmetry unique.

Parameters
Return type

None

update(torsion_indexer, reorder_mapping=None)[source]

Update the current torsion indexer with another.

Parameters
Return type

None

property n_torsions: int

Return the number of torsions highlighted.

property n_double_torsions: int

Return the number of double torsions highlighted.

property n_impropers: int

Return the number of imporpers highlighted.