rxn.reaction_preprocessing.annotations.annotation_criterion.AnnotationCriterion

class rxn.reaction_preprocessing.annotations.annotation_criterion.AnnotationCriterion(additional_elements_to_consider=None, elements_not_to_consider=None)[source]

Bases: object

Determine what molecules need an annotation, independently of the molecules that have been annotated so far.

To do so, this class relies on whether the molecules contain (extended) transition metals or not.

Parameters
  • additional_elements_to_consider (Optional[Iterable[str]], default: None) –

  • elements_not_to_consider (Optional[Iterable[str]], default: None) –

__init__(additional_elements_to_consider=None, elements_not_to_consider=None)[source]
Parameters
  • additional_elements_to_consider (Optional[Iterable[str]], default: None) – elements for which to require an annotation, in addition to the extended transition metals.

  • elements_not_to_consider (Optional[Iterable[str]], default: None) – elements for which not to require an annotation, even if they are extended transition metals.

Methods

__init__([additional_elements_to_consider, ...])

type additional_elements_to_consider

Optional[Iterable[str]], default: None

elements_in_smiles(smiles)

param smiles

extended_transition_metal_numbers()

Atomic numbers for the extended transition metals.

extended_transition_metals()

Atomic symbols for the extended transition metals.

requires_annotation(smiles)

Whether a given SMILES string requires an annotation.

static extended_transition_metal_numbers()[source]

Atomic numbers for the extended transition metals.

Return type

Generator[int, None, None]

static extended_transition_metals()[source]

Atomic symbols for the extended transition metals.

Return type

Generator[str, None, None]

requires_annotation(smiles)[source]

Whether a given SMILES string requires an annotation.

Parameters

smiles (str) – molecule SMILES. Use dots for fragment bonds!

Return type

bool