OETautomerOptions

class OETautomerOptions

This class is used for setting options during tautomer enumeration with OEEnumerateTautomers.

By default, OEEnumerateTautomers will return the “canonical” tautomer, regardless of the tautomer submitted to the function. This “canonical” tautomer is extremely useful for efficient and reliable tautomer cheminformatics, such as database searching. The OETautomerOptions::SetRankTautomers method can be used to make OEEnumerateTautomers generate a tautomer more “reasonable” for depiction for chemists.

Constructors

OETautomerOptions(unsigned int maxGenerated=4096, bool rank=true, bool warts=false,
                  unsigned int level=0, bool carbonHybrid=true,
                  bool saveStereo=false, unsigned int maxZoneSize=35,
                  unsigned int maxTautomericAtoms = 70, float maxTime = 120,
                  bool kekule = false, bool clearCoords = false,
                  unsigned int hybridLevel = OEHybridizationLevel::EnolEnamine,
                  unsigned int maxToReturn = 256,
                  unsigned int racemicType = OERacemicType::LocalSampled)

Default constructor.

OETautomerOptions(const OETautomerOptions &rhs)

Copy constructor.

operator=

OETautomerOptions &operator=(const OETautomerOptions &rhs)

Assignment operator.

GetApplyWarts

bool GetApplyWarts() const

Returns setting for warts application of {title}_1, {title}_2, etc., on tautomers.

GetCarbonHybridization

bool GetCarbonHybridization() const

Returns setting for whether or not carbon hybridization changes are allowed. Allowing sp2-sp3 changes of carbon atoms can significantly increase computation time.

GetClearCoordinates

bool GetClearCoordinates() const

Returns whether input coordinates are cleared. The default value is false.

GetHybridizationLevel

unsigned int GetHybridizationLevel() const

Returns setting for the level of hybridization changes allowed when carbon hybridization is allowed. Allowing carbon hybridization significantly increase computation time. The returned value is from the OEHybridizationLevel namespace.

See also

GetKekule

bool GetKekule() const

Returns setting for whether or not generated tautomers are kekule or have aromaticity perceived.

GetLevel

unsigned int GetLevel() const

Returns level for tautomerization. Higher levels allow less likely atomic transitions to occur.

GetMaxSearchTime

float GetMaxSearchTime() const

Returns the maximum search time in seconds allowed for a molecule.

GetMaxTautomericAtoms

unsigned int GetMaxTautomericAtoms() const

Returns the maximum number of tautomeric atoms allowed in a molecule. The default value is 70.

GetMaxTautomersGenerated

unsigned int GetMaxTautomersGenerated() const

Returns setting for maximum number of tautomers that may be generated for each input molecule.

GetMaxTautomersToReturn

unsigned int GetMaxTautomersToReturn() const

Returns setting for maximum number of tautomers that may be returned for each input molecule.

GetMaxZoneSize

unsigned int GetMaxZoneSize() const

Returns setting for maximum number of atoms allowed in a continuous tautomerization zone. The default zone size is 35.

GetRacemicType

unsigned int GetRacemicType() const

Returns setting for the way to handle loss of stereocenters, if the OETautomerOptions::GetSaveStereo method returns false. If the OETautomerOptions::GetSaveStereo method returns true, this option is irrelevant. The returned value is from the OERacemicType namespace. The default value is OERacemicType::LocalSampled.

GetRankTautomers

bool GetRankTautomers() const

Returns setting for whether or not tautomers are ranked and ordered before being returned. By default, this is false, i.e., the canonical tautomer is returned as the first molecule in the iterator. As opposed to the most “reasonable” tautomer being returned first.

GetSaveStereo

bool GetSaveStereo() const

Returns setting for whether atoms and bonds with labeled stereochemistry are fixed or allowed to participate in tautomerization.

SetApplyWarts

void SetApplyWarts(bool warts)

Sets whether warts of {title}_1, {title}_2, etc., are added to tautomers.

SetCarbonHybridization

void SetCarbonHybridization(bool carbonHybrid)

Sets whether carbon hybridization changes are allowed. Allowing sp2-sp3 changes of carbon atoms can significantly increase computation time.

SetClearCoordinates

void SetClearCoordinates(bool clear_coordinates)

Sets whether input coordinates are cleared from generated tautomers.

SetHybridizationLevel

void SetHybridizationLevel(unsigned int level)

Sets level of hybridization changes allowed for carbon atoms if the OETautomerOptions::GetCarbonHybridization method returns true. If the OETautomerOptions::GetCarbonHybridization method returns false, this option is irrelevant.

level

This value has to be from the OEHybridizationLevel namespace.

Note

The level of hybridization can have significantly impact on the computation time.

SetKekule

void SetKekule(bool kekule)

Sets whether tautomers are returned in kekule format or have aromaticity perceived.

SetLevel

void SetLevel(unsigned int level)

Sets level for tautomerization. Higher levels allow less likely atomic transitions to occur.

SetMaxSearchTime

void SetMaxSearchTime(float maxSearchTime)

Sets the maximum search time in seconds allowed for a molecule.

SetMaxTautomericAtoms

void SetMaxTautomericAtoms(unsigned int maxTautomerAtoms)

Sets the maximum number of tautomeric atoms allowed in a molecule.

SetMaxTautomersGenerated

void SetMaxTautomersGenerated(unsigned int max)

Sets the maximum number of tautomers that may be generated per input molecule.

SetMaxTautomersToReturn

void SetMaxTautomersToReturn(unsigned int max)

Sets the maximum number of tautomers that may be returned per input molecule.

SetMaxZoneSize

void SetMaxZoneSize(unsigned int maxZoneSize)

Sets the maximum number of atoms allowed in a continuous tautomerization zone.

SetRacemicType

void SetRacemicType(unsigned int racemicType)

Sets the racemic type for loss of stereocenters if the OETautomerOptions::GetSaveStereo method returns false. If the OETautomerOptions::GetSaveStereo method returns true, this option is irrelevant.

racemicType

This value has to be from the OERacemicType namespace.

SetRankTautomers

void SetRankTautomers(bool rank)

Sets whether or not tautomers are ranked and ordered before being returned. Setting this argument to true will cause the most “reasonable” tautomer to be returned as the first tautomer, opposed to the “canonical” tautomer being returned first.

The “canonical” tautomer may or may not be a suitable representative tautomer for depiction. To fill this role, the SetRankTautomers(true) provides “reasonable” tautomer forms for any input molecule.

SetSaveStereo

void SetSaveStereo(bool saveStereo)

Sets whether atoms and bonds with labeled stereochemistry are fixed or allowed to participate in tautomerization.