OEAlignmentOptions

class OEAlignmentOptions

This class represents OEAlignmentOptions and stores the following parameters which are used when performing molecule alignment.

Property

Get method

Set method

re-generating 2D coordinates

GetClearCoords

SetClearCoords

adding depiction hydrogens

GetAddDepictionHydrogens

SetAddDepictionHydrogens

starting from the 2D coords of the reference molecule

GetFixedCoords

SetFixedCoords

max number of allowed atom pair clushes

GetMaxAllowedAtomPairClashes

SetMaxAllowedAtomPairClashes

max number of bond rotations

GetMaxBondRotations

SetMaxBondRotations

max number of pattern matches

GetMaxPatternMatches

SetMaxPatternMatches

RMSD cutoff

GetRMSDCutoff

SetRMSDCutoff

rotation around bonds

GetRotateAroundBonds

SetRotateAroundBonds

suppressing hydrogens

GetSuppressHydrogens

SetSuppressHydrogens

See also

Constructors

OEAlignmentOptions() -> OEAlignmentOptions

Default constructor that initializes an OEAlignmentOptions object with the following properties:

Property

Default value

re-generating 2D coordinates

true

adding depiction hydrogens

true

starting from the 2D coordinates of the reference molecule

false

max number of allowed atom pair clushes

0 (means an alignment is rejected if there is any atom clash)

max number of bond rotations

\(2^{16} = 65536\) (max allowed number is \(2^{31}\))

max number of pattern matches

0 (means no limit)

RMSD cutoff

0.1

rotation around bonds

true

suppressing hydrogens

true

OEAlignmentOptions(rotateBonds: bool, clearcoords: bool,
                   suppressH: bool) -> OEAlignmentOptions

Creates an OEAlignmentOptions object with the specified parameters.

rotatebonds

See the OEAlignmentOptions.SetRotateAroundBonds method.

clearcoords

See the OEAlignmentOptions.SetClearCoords method.

suppressH

See the OEAlignmentOptions.SetSuppressHydrogens method.

By default, the RMSD cutoff is 0.1 (see the OEAlignmentOptions.SetRMSDCutoff method) and maximum number of bond rotations is \(2^{16} = 65536\) (see the OEAlignmentOptions.SetMaxBondRotations method).

OEAlignmentOptions(arg2: OEAlignmentOptions) -> OEAlignmentOptions

Copy constructor.

GetAddDepictionHydrogens

GetAddDepictionHydrogens() -> bool

Returns whether the depiction hydrogens are kept/added during the molecule alignment.

GetClearCoords

GetClearCoords() -> bool

Returns whether the 2D coordinates of the fit molecule will be re-calculated prior to the alignment process.

GetFixedCoords

GetFixedCoords() -> bool

Returns whether the OEPrepareAlignedDepiction function can start the alignment process by copying over the coordinates of the reference molecule to the fit molecule.

GetMaxAllowedAtomPairClashes

GetMaxAllowedAtomPairClashes() -> int

Returns the maximum number of atom pair clashes allowed in fix coordinate mode.

GetMaxBondRotations

GetMaxBondRotations() -> int

Returns the maximum number of bond rotations performed during the alignment process.

The default value for maximum number of bond rotations is \(2^{16} = 65536\). This means that by default only the first 16 single bonds of the fit molecule will be rotated to maximize molecule alignment. The max allowed number is \(2^{31}\) that allows the rotate 31 bonds independently to find the best alignment.

GetMaxPatternMatches

GetMaxPatternMatches() -> int

Returns the maximum number of matches utilized to performed molecule alignments.

GetRMSDCutoff

GetRMSDCutoff() -> float

Returns the RMSD cutoff value used to identify acceptable alignments.

GetRotateAroundBonds

GetRotateAroundBonds() -> bool

Returns whether rotation around the bonds of the fit molecule is allowed.

GetSuppressHydrogens

GetSuppressHydrogens() -> bool

Returns whether the explicit hydrogens are suppressed in the fit molecule prior to the alignment process.

SetAddDepictionHydrogens

SetAddDepictionHydrogens(a: bool) -> None

Sets whether depiction hydrogens are kept/added during alignment.

SetClearCoords

SetClearCoords(c: bool) -> None

Sets whether the 2D coordinates of the fit molecule will be re-calculated prior to the alignment process by calling the OEPrepareDepiction function.

SetFixedCoords

SetFixedCoords(f: bool) -> None

Sets whether the OEPrepareAlignedDepiction function can start the alignment process by copying over the coordinates of the reference molecule to the fit molecule based on the provided match.

If the alignment process based of ‘fixed’ coordinates can not be performed or it is unsuccessful i.e. no alignment is found without atom clashes than the OEPrepareAlignedDepiction function falls back to maximizing the overlap between the fit and the reference 2D molecules by rotating around single bonds. See also OEAlignmentOptions.SetMaxAllowedAtomPairClashes method that can be used to allow some atom clashes.

The alignment process based on ‘fixed’ coordinates currently can only be performed if:

  • neither the reference nor the fit molecule have more than one component

  • there is no partial ring match i.e. if a ring atom of the fit molecule is matched for alignment than all of the atom of the same ring systems have to be matched for alignment

SetMaxAllowedAtomPairClashes

SetMaxAllowedAtomPairClashes(m: int) -> None

Sets the number of atom pair clashes allowed after the ‘fixed’ coordinates alignment process (see OEAlignmentOptions.SetFixedCoords method). The default value is 0, i.e. no atom clashes are allowed. If the number of clashes exceeds this limit the alignment is rejected and process falls back to maximizing the overlap between the fit and the reference 2D molecules by rotating around single bonds.

SetMaxBondRotations

SetMaxBondRotations(m: int) -> None

Sets the maximum number of bond rotations performed during the alignment process.

maxrotations

The zero value means that there is no limit. Upon reaching this limit, the alignment process terminates and returns the best alignment identified up to that point.

Hint

The default value for maximum number of bond rotations is \(2^{16} = 65536\). This means that by default only the first 16 single bonds of the fit molecule will be rotated to maximize molecule alignment.

It is recommended to use this parameter in the following cases:

  • if the fit molecule being aligned has a large number of rotatable bonds

  • if the match that determines the atoms of the fit molecule that will be aligned to the atoms of the reference molecule has a large number of rotatable bonds

SetMaxPatternMatches

SetMaxPatternMatches(m: int) -> None

Sets the maximum number of matches utilized to perform molecule alignments.

maxmatches

The zero value means that there is no limit. If the molecule alignment is based on more than one matches, then upon reaching this limit, the alignment process terminates and returns the best alignment identified up to that point.

Hint

It is recommended to use this parameter in the following cases:

  • if the alignment is based on substructure or maximum common substructure matches and the reference or/and fit molecules are highly symmetrical i.e. a large number of matches returned by the substructure or maximum common substructure search algorithms, respectively.

SetRMSDCutoff

SetRMSDCutoff(r: float) -> None

Sets the RMSD cutoff value used to identify acceptable alignments.

rmsdcutoff

This number has to be non-negative number. The alignment procedure terminates when the rmsdcutoff between the fit and the reference molecule is below this limit and there is no internal clash detected between the atoms of the fit molecule.

SetRotateAroundBonds

SetRotateAroundBonds(r: bool) -> None

Sets whether rotation around the bonds of the fit molecule is allowed.

rotatebonds

If ‘true’, then bond of the fit molecule will be rotated to find the best alignment between molecules. If ‘false’, then only 2D rotation and translation of the fit molecule is allowed (i.e. no rotations around bonds) in order to align it to the reference molecule

SetSuppressHydrogens

SetSuppressHydrogens(s: bool) -> None

Sets whether the explicit hydrogens are suppressed in the fit molecule prior to the alignment process. Only hydrogens that are necessary to faithfully represent tetrahedral stereochemistry will be kept.