Skip to content

SMARTS Pattern Configuration

Provides definitions for various sets of SMARTS patterns used in to find and match specific atom types. Additionally, it includes a helper function for remapping atom types for easier lookups.

AVAILABLE_ATOM_TYPES module-attribute

AVAILABLE_ATOM_TYPES = {name: ifor (i, name) in enumerate(_Atom_Type_Names)}

Type: dict[str, int]: A dictionary mapping atom type names (strings) to unique integer identifiers.

SmartsPatternRegistry

Bases: Enum

A registry of SMARTS patterns for atom typing.

Each atom type is represented by a string key and a SMARTS pattern. See the definitions below for further details, and follow the links for the corresponding SMARTS patterns.

HBOND_ACCEPTOR class-attribute instance-attribute

HBOND_ACCEPTOR = HBOND_ACCEPTOR_SMARTS

Hydrogen bond acceptor SMARTS patterns. See definitions for details.

XBOND_ACCEPTOR class-attribute instance-attribute

XBOND_ACCEPTOR = {None: HBOND_ACCEPTOR_SMARTS, '': '[Xx]'}

Halogen bond acceptor SMARTS patterns. See definitions for details. Note that we provide a nonsensical string to avoid duplicate entries in the Enum.

XBOND_DONOR class-attribute instance-attribute

XBOND_DONOR = {'donor': SMARTS_STR_XBD}

Halogen bond donor SMARTS patterns. See definitions for details.

WEAK_HBOND_ACCEPTOR class-attribute instance-attribute

WEAK_HBOND_ACCEPTOR = {None: HBOND_ACCEPTOR_SMARTS, 'c-x halogens': SMARTS_STR_XBD}

Weak hydrogen bond acceptor SMARTS patterns. In addition to the standard hydrogen bond acceptor SMARTS patterns, this also includes halogen bond acceptor SMARTS patterns.

WEAK_HBOND_DONOR class-attribute instance-attribute

WEAK_HBOND_DONOR = {'donor': SMARTS_STR_WHBD}

Weak hydrogen bond donor SMARTS patterns. See definitions for details.

POS_IONISABLE class-attribute instance-attribute

POS_IONISABLE = POSITIVELY_IOINISABLE_SMARTS

Positively ionisable SMARTS patterns. See definitions for details.

NEG_IONISABLE class-attribute instance-attribute

NEG_IONISABLE = {'O acidic group': SMARTS_STR_NI_O_ACIDIC_GRP, 'anions': SMARTS_STR_NI_ANIONS}

Negatively ionisable SMARTS patterns. It includes two types of patterns: acidic oxygen and anions.

HYDROPHOBE class-attribute instance-attribute

HYDROPHOBE = {'hydrophobe': SMARTS_STR_HYDROPHOBIC}

Hydrophobic SMARTS patterns. See definitions for details.

CARBONYL_OXYGEN class-attribute instance-attribute

CARBONYL_OXYGEN = {'oxygen': SMARTS_STR_CARBONYL_OXYGEN}

Carbonyl oxygen SMARTS patterns. See definitions for details.

CARBONYL_CARBON class-attribute instance-attribute

CARBONYL_CARBON = {'carbon': SMARTS_STR_CARBONYL_CARBON}

Carbonyl carbon SMARTS patterns. See definitions for details.

AROMATIC class-attribute instance-attribute

AROMATIC = AROMATIC_SMARTS

Aromatic SMARTS patterns. See definitions for details.