schrodinger.application.canvas.topo_descriptors module¶
Module which computes constitutional and topological descriptors, walk and path counts, and connectivity indices.
Details of the descriptors implemented here are taken from: “Handbook of Molecular Descriptors” by Mannhols, Kubinyi and Timmerman “Molecular Descriptors for Chemoinformatics, Vol. I”, by Todeschini and Consonni
Copyright Schrodinger, LLC. All rights reserved.
-
class
schrodinger.application.canvas.topo_descriptors.
Descriptor
(func, cast_type, label, key)¶ Bases:
tuple
-
__add__
¶ Return self+value.
-
__class__
¶ alias of
builtins.type
-
__contains__
¶ Return key in self.
-
__delattr__
¶ Implement delattr(self, name).
-
__dir__
() → list¶ default dir() implementation
-
__eq__
¶ Return self==value.
-
__format__
()¶ default object formatter
-
__ge__
¶ Return self>=value.
-
__getattribute__
¶ Return getattr(self, name).
-
__getitem__
¶ Return self[key].
-
__getnewargs__
()¶ Return self as a plain tuple. Used by copy and pickle.
-
__gt__
¶ Return self>value.
-
__hash__
¶ Return hash(self).
-
__init__
¶ Initialize self. See help(type(self)) for accurate signature.
-
__init_subclass__
()¶ This method is called when a class is subclassed.
The default implementation does nothing. It may be overridden to extend subclasses.
-
__iter__
¶ Implement iter(self).
-
__le__
¶ Return self<=value.
-
__len__
¶ Return len(self).
-
__lt__
¶ Return self<value.
-
__module__
= 'schrodinger.application.canvas.topo_descriptors'¶
-
__mul__
¶ Return self*value.n
-
__ne__
¶ Return self!=value.
-
static
__new__
(_cls, func, cast_type, label, key)¶ Create new instance of Descriptor(func, cast_type, label, key)
-
__reduce__
()¶ helper for pickle
-
__reduce_ex__
()¶ helper for pickle
-
__repr__
()¶ Return a nicely formatted representation string
-
__rmul__
¶ Return self*value.
-
__setattr__
¶ Implement setattr(self, name, value).
-
__sizeof__
() → int¶ size of object in memory, in bytes
-
__slots__
= ()¶
-
__str__
¶ Return str(self).
-
__subclasshook__
()¶ Abstract classes can override this to customize issubclass().
This is invoked early on by abc.ABCMeta.__subclasscheck__(). It should return True, False or NotImplemented. If it returns NotImplemented, the normal algorithm is used. Otherwise, it overrides the normal algorithm (and the outcome is cached).
-
cast_type
¶ Alias for field number 1
-
count
(value) → integer -- return number of occurrences of value¶
-
func
¶ Alias for field number 0
-
index
(value[, start[, stop]]) → integer -- return first index of value.¶ Raises ValueError if the value is not present.
-
key
¶ Alias for field number 3
-
label
¶ Alias for field number 2
-
-
exception
schrodinger.application.canvas.topo_descriptors.
TopoError
¶ Bases:
Exception
Error raised when unable to calculate topological descriptor
-
__cause__
¶ exception cause
-
__class__
¶ alias of
builtins.type
-
__context__
¶ exception context
-
__delattr__
¶ Implement delattr(self, name).
-
__dict__
= mappingproxy({'__module__': 'schrodinger.application.canvas.topo_descriptors', '__doc__': '\n Error raised when unable to calculate topological descriptor\n ', '__weakref__': <attribute '__weakref__' of 'TopoError' objects>})¶
-
__dir__
() → list¶ default dir() implementation
-
__eq__
¶ Return self==value.
-
__format__
()¶ default object formatter
-
__ge__
¶ Return self>=value.
-
__getattribute__
¶ Return getattr(self, name).
-
__gt__
¶ Return self>value.
-
__hash__
¶ Return hash(self).
-
__init__
¶ Initialize self. See help(type(self)) for accurate signature.
-
__init_subclass__
()¶ This method is called when a class is subclassed.
The default implementation does nothing. It may be overridden to extend subclasses.
-
__le__
¶ Return self<=value.
-
__lt__
¶ Return self<value.
-
__module__
= 'schrodinger.application.canvas.topo_descriptors'¶
-
__ne__
¶ Return self!=value.
-
__new__
()¶ Create and return a new object. See help(type) for accurate signature.
-
__reduce__
()¶ helper for pickle
-
__reduce_ex__
()¶ helper for pickle
-
__repr__
¶ Return repr(self).
-
__setattr__
¶ Implement setattr(self, name, value).
-
__setstate__
()¶
-
__sizeof__
() → int¶ size of object in memory, in bytes
-
__str__
¶ Return str(self).
-
__subclasshook__
()¶ Abstract classes can override this to customize issubclass().
This is invoked early on by abc.ABCMeta.__subclasscheck__(). It should return True, False or NotImplemented. If it returns NotImplemented, the normal algorithm is used. Otherwise, it overrides the normal algorithm (and the outcome is cached).
-
__suppress_context__
¶
-
__traceback__
¶
-
__weakref__
¶ list of weak references to the object (if defined)
-
args
¶
-
with_traceback
()¶ Exception.with_traceback(tb) – set self.__traceback__ to tb and return self.
-
-
schrodinger.application.canvas.topo_descriptors.
cached_topo_descriptor
(func, self, *args, **kwargs)¶ Decorator to extract previously calculated descriptor value from cached descriptors dictionary. If not available, the descriptor is calculated and stored for future reference.
-
class
schrodinger.application.canvas.topo_descriptors.
TopologicalDescriptors
(default_descriptor_value=None)¶ Bases:
object
-
__init__
(default_descriptor_value=None)¶ Initializes valid topological descriptors, and creates an empty cached property dictionary.
-
allDescriptorFullLabels
()¶ Returns all topological descriptor labels as label-key string
Returns: list of all descriptors as “Label (Key)” strings Return type: list of str
-
calculateTopologicalDescriptors
(st, descriptor_strings)¶ Calculates a set of topological descriptors for a given structure.
Parameters: - st (
structure.Structure
) – structure to consider - descriptor_strings (list of str) – list of descriptors to calculate
Returns: Structure copy appended with successful descriptor properties
Return type: structure.Structure
- st (
-
m2ioPropertyName
(descriptor)¶ Create descriptor m2io property name for a Descriptor.
Parameters: descriptor ( Descriptor
) – descriptor entryReturns: m2io formatted descriptor property name Return type: str
-
__class__
¶ alias of
builtins.type
-
__delattr__
¶ Implement delattr(self, name).
-
__dict__
= mappingproxy({'__module__': 'schrodinger.application.canvas.topo_descriptors', '__init__': <function TopologicalDescriptors.__init__>, 'allDescriptorFullLabels': <function TopologicalDescriptors.allDescriptorFullLabels>, 'calculateTopologicalDescriptors': <function TopologicalDescriptors.calculateTopologicalDescriptors>, 'm2ioPropertyName': <function TopologicalDescriptors.m2ioPropertyName>, '_extractSingleStructure': <function TopologicalDescriptors._extractSingleStructure>, '_findDescriptorEntry': <function TopologicalDescriptors._findDescriptorEntry>, '_makeFullLabel': <function TopologicalDescriptors._makeFullLabel>, '_evaluateDescriptor': <function TopologicalDescriptors._evaluateDescriptor>, '_getDescriptorEntries': <function TopologicalDescriptors._getDescriptorEntries>, '_assertMultipleHeavyAtoms': <function TopologicalDescriptors._assertMultipleHeavyAtoms>, '_assertPathLength': <function TopologicalDescriptors._assertPathLength>, '_getFirstZagrebIndex': <function TopologicalDescriptors._getFirstZagrebIndex>, '_getFirstZagrebValenceIndex': <function TopologicalDescriptors._getFirstZagrebValenceIndex>, '_getSecondZagrebIndex': <function TopologicalDescriptors._getSecondZagrebIndex>, '_getSecondZagrebValenceIndex': <function TopologicalDescriptors._getSecondZagrebValenceIndex>, '_getPolarityNumber': <function TopologicalDescriptors._getPolarityNumber>, '_getSimpleTopologicalIndex': <function TopologicalDescriptors._getSimpleTopologicalIndex>, '_getHarmonicTopologicalIndex': <function TopologicalDescriptors._getHarmonicTopologicalIndex>, '_getGeometricTopologicalIndex': <function TopologicalDescriptors._getGeometricTopologicalIndex>, '_getTotalStructureConnectivityIndex': <function TopologicalDescriptors._getTotalStructureConnectivityIndex>, '_wienerOperator': <function TopologicalDescriptors._wienerOperator>, '_getWienerIndex': <function TopologicalDescriptors._getWienerIndex>, '_getMeanWienerIndex': <function TopologicalDescriptors._getMeanWienerIndex>, '_getXuIndex': <function TopologicalDescriptors._getXuIndex>, '_getQuadraticIndex': <function TopologicalDescriptors._getQuadraticIndex>, '_getRadialCentricInformationIndex': <function TopologicalDescriptors._getRadialCentricInformationIndex>, '_getMeanSquareDistanceIndex': <function TopologicalDescriptors._getMeanSquareDistanceIndex>, '_getSuperpendenticIndex': <function TopologicalDescriptors._getSuperpendenticIndex>, '_getHararyIndex': <function TopologicalDescriptors._getHararyIndex>, '_getLogPRSIndex': <function TopologicalDescriptors._getLogPRSIndex>, '_getPoglianiIndex': <function TopologicalDescriptors._getPoglianiIndex>, '_baseSchultzIndex': <function TopologicalDescriptors._baseSchultzIndex>, '_getSchultzMolecularTopologicalIndex': <function TopologicalDescriptors._getSchultzMolecularTopologicalIndex>, '_getSchultzMolecularTopologicalValenceIndex': <function TopologicalDescriptors._getSchultzMolecularTopologicalValenceIndex>, '_getMeanDistanceDegreeDeviation': <function TopologicalDescriptors._getMeanDistanceDegreeDeviation>, '_getRamificationIndex': <function TopologicalDescriptors._getRamificationIndex>, '_baseGutmanIndex': <function TopologicalDescriptors._baseGutmanIndex>, '_getGutmanMolecularTopologicalIndex': <function TopologicalDescriptors._getGutmanMolecularTopologicalIndex>, '_getGutmanMolecularTopologicalValenceIndex': <function TopologicalDescriptors._getGutmanMolecularTopologicalValenceIndex>, '_getAverageDistanceDegree': <function TopologicalDescriptors._getAverageDistanceDegree>, '_getUnipolarity': <function TopologicalDescriptors._getUnipolarity>, '_getCentralization': <function TopologicalDescriptors._getCentralization>, '_getVariation': <function TopologicalDescriptors._getVariation>, '_getMolecularElectrotopologicalVariation': <function TopologicalDescriptors._getMolecularElectrotopologicalVariation>, '_getMaximalElectrotopologicalPositiveVariation': <function TopologicalDescriptors._getMaximalElectrotopologicalPositiveVariation>, '_getMaximalElectrotopologicalNegativeVariation': <function TopologicalDescriptors._getMaximalElectrotopologicalNegativeVariation>, '_getEccentricConnectivityIndex': <function TopologicalDescriptors._getEccentricConnectivityIndex>, '_getEccentricity': <function TopologicalDescriptors._getEccentricity>, '_getAverageEccentricity': <function TopologicalDescriptors._getAverageEccentricity>, '_getEccentric': <function TopologicalDescriptors._getEccentric>, '_getValenceConnectivityIndex': <function TopologicalDescriptors._getValenceConnectivityIndex>, '_getMeanValenceConnectivityIndex': <function TopologicalDescriptors._getMeanValenceConnectivityIndex>, '_getQuasiWienerIndex': <function TopologicalDescriptors._getQuasiWienerIndex>, '_getFirstMoharIndex': <function TopologicalDescriptors._getFirstMoharIndex>, '_getSecondMoharIndex': <function TopologicalDescriptors._getSecondMoharIndex>, '_getSpanningTreeNumber': <function TopologicalDescriptors._getSpanningTreeNumber>, '_getBenzeneLikelinessIndex': <function TopologicalDescriptors._getBenzeneLikelinessIndex>, '_getTopologicalChargeIndex': <function TopologicalDescriptors._getTopologicalChargeIndex>, '_getMeanTopologicalChargeIndex': <function TopologicalDescriptors._getMeanTopologicalChargeIndex>, '_getGlobalTopologicalChargeIndex': <function TopologicalDescriptors._getGlobalTopologicalChargeIndex>, '_getHyperDistancePathIndex': <function TopologicalDescriptors._getHyperDistancePathIndex>, '_getReciprocalHyperDistancePathIndex': <function TopologicalDescriptors._getReciprocalHyperDistancePathIndex>, '_getSquareReciprocalDistanceSumIndex': <function TopologicalDescriptors._getSquareReciprocalDistanceSumIndex>, '_getModifiedRandicIndex': <function TopologicalDescriptors._getModifiedRandicIndex>, '_getBalabanCentricIndex': <function TopologicalDescriptors._getBalabanCentricIndex>, '_getLoppingCentricInformationIndex': <function TopologicalDescriptors._getLoppingCentricInformationIndex>, '_getKierHallElectronegativitySum': <function TopologicalDescriptors._getKierHallElectronegativitySum>, '_getTopologicalDistanceSum': <function TopologicalDescriptors._getTopologicalDistanceSum>, '_getBaryszWeinerTypeIndex': <function TopologicalDescriptors._getBaryszWeinerTypeIndex>, '_getElectronegativityWienerTypeIndex': <function TopologicalDescriptors._getElectronegativityWienerTypeIndex>, '_getMassWienerTypeIndex': <function TopologicalDescriptors._getMassWienerTypeIndex>, '_getVDWVolumeWienerTypeIndex': <function TopologicalDescriptors._getVDWVolumeWienerTypeIndex>, '_getPolarizabilityWienerTypeIndex': <function TopologicalDescriptors._getPolarizabilityWienerTypeIndex>, '_getBaryszIndex': <function TopologicalDescriptors._getBaryszIndex>, '_getElectronegativityBalabanTypeIndex': <function TopologicalDescriptors._getElectronegativityBalabanTypeIndex>, '_getMassBalabanTypeIndex': <function TopologicalDescriptors._getMassBalabanTypeIndex>, '_getVDWVolumeBalabanTypeIndex': <function TopologicalDescriptors._getVDWVolumeBalabanTypeIndex>, '_getPolarizabilityBalabanTypeIndex': <function TopologicalDescriptors._getPolarizabilityBalabanTypeIndex>, '_getTopologicalDiameter': <function TopologicalDescriptors._getTopologicalDiameter>, '_getTopologicalRadius': <function TopologicalDescriptors._getTopologicalRadius>, '_getPetitjeanShapeIndex': <function TopologicalDescriptors._getPetitjeanShapeIndex>, '_getBalabanDistanceConnectivityIndex': <function TopologicalDescriptors._getBalabanDistanceConnectivityIndex>, '_getSolvationConnectivityIndex': <function TopologicalDescriptors._getSolvationConnectivityIndex>, '_getConnectivityIndex': <function TopologicalDescriptors._getConnectivityIndex>, '_getMeanConnectivityIndex': <function TopologicalDescriptors._getMeanConnectivityIndex>, '_getRDCHIIndex': <function TopologicalDescriptors._getRDCHIIndex>, '_getRDSQIndex': <function TopologicalDescriptors._getRDSQIndex>, '_getKierAlphaModifiedShapeIndex': <function TopologicalDescriptors._getKierAlphaModifiedShapeIndex>, '_getKierMolecularFlexibilityIndex': <function TopologicalDescriptors._getKierMolecularFlexibilityIndex>, '_getMolecularPathWalkIndex': <function TopologicalDescriptors._getMolecularPathWalkIndex>, '_getEStateIndex': <function TopologicalDescriptors._getEStateIndex>, '_getChiralAtomCount': <function TopologicalDescriptors._getChiralAtomCount>, '_getRingCount': <function TopologicalDescriptors._getRingCount>, '_getAtomCount': <function TopologicalDescriptors._getAtomCount>, '_getBondCount': <function TopologicalDescriptors._getBondCount>, '_getRingAtomCount': <function TopologicalDescriptors._getRingAtomCount>, '_getRingBondCount': <function TopologicalDescriptors._getRingBondCount>, '_getNumberRingSystems': <function TopologicalDescriptors._getNumberRingSystems>, '_getNormalizedNumberRingSystems': <function TopologicalDescriptors._getNormalizedNumberRingSystems>, '_getRingFusionDegree': <function TopologicalDescriptors._getRingFusionDegree>, '_getTotalRingSize': <function TopologicalDescriptors._getTotalRingSize>, '_getRingPerimeter': <function TopologicalDescriptors._getRingPerimeter>, '_getRingBridges': <function TopologicalDescriptors._getRingBridges>, '_getMolecularCyclizedDegree': <function TopologicalDescriptors._getMolecularCyclizedDegree>, '_getRingFusionDensity': <function TopologicalDescriptors._getRingFusionDensity>, '_getRingComplexityIndex': <function TopologicalDescriptors._getRingComplexityIndex>, '_getTotalVDWSurfaceArea': <function TopologicalDescriptors._getTotalVDWSurfaceArea>, '_getPVSAMolarRefractivity': <function TopologicalDescriptors._getPVSAMolarRefractivity>, '_getPVSAlogP': <function TopologicalDescriptors._getPVSAlogP>, '_getPVSAPartialCharges': <function TopologicalDescriptors._getPVSAPartialCharges>, '_getHeavyStructure': <function TopologicalDescriptors._getHeavyStructure>, '_getFullStructure': <function TopologicalDescriptors._getFullStructure>, '_getChmMol': <function TopologicalDescriptors._getChmMol>, '_getHydrogenCount': <function TopologicalDescriptors._getHydrogenCount>, '_getAtomIndices': <function TopologicalDescriptors._getAtomIndices>, '_getAtomPairs': <function TopologicalDescriptors._getAtomPairs>, '_getBondIndices': <function TopologicalDescriptors._getBondIndices>, '_getAdjacencyMatrix': <function TopologicalDescriptors._getAdjacencyMatrix>, '_getVertexDegree': <function TopologicalDescriptors._getVertexDegree>, '_getSimpleValenceVertexDegree': <function TopologicalDescriptors._getSimpleValenceVertexDegree>, '_getValenceVertexDegree': <function TopologicalDescriptors._getValenceVertexDegree>, '_getConnectivityGraph': <function TopologicalDescriptors._getConnectivityGraph>, '_getDistanceMatrix': <function TopologicalDescriptors._getDistanceMatrix>, '_getReciprocalDistanceMatrix': <function TopologicalDescriptors._getReciprocalDistanceMatrix>, '_getReciprocalSquareDistanceMatrix': <function TopologicalDescriptors._getReciprocalSquareDistanceMatrix>, '_getVertexDistanceDegree': <function TopologicalDescriptors._getVertexDistanceDegree>, '_getAtomEccentricity': <function TopologicalDescriptors._getAtomEccentricity>, '_getDistanceCount': <function TopologicalDescriptors._getDistanceCount>, '_getReciprocalDistanceSum': <function TopologicalDescriptors._getReciprocalDistanceSum>, '_getConnectivityPaths': <function TopologicalDescriptors._getConnectivityPaths>, '_getCyclomaticNumber': <function TopologicalDescriptors._getCyclomaticNumber>, '_getIntrinsicStates': <function TopologicalDescriptors._getIntrinsicStates>, '_getFieldEffects': <function TopologicalDescriptors._getFieldEffects>, '_getLaplacianEigenvalues': <function TopologicalDescriptors._getLaplacianEigenvalues>, '_getChargeTermMatrix': <function TopologicalDescriptors._getChargeTermMatrix>, '_getAromaticBonds': <function TopologicalDescriptors._getAromaticBonds>, '_getConventionalBondOrder': <function TopologicalDescriptors._getConventionalBondOrder>, '_getMultigraphDistanceMatrix': <function TopologicalDescriptors._getMultigraphDistanceMatrix>, '_getBaryszDistanceMatrix': <function TopologicalDescriptors._getBaryszDistanceMatrix>, '_getElectronegativityDistanceMatrix': <function TopologicalDescriptors._getElectronegativityDistanceMatrix>, '_getMassDistanceMatrix': <function TopologicalDescriptors._getMassDistanceMatrix>, '_getVDWVolumeDistanceMatrix': <function TopologicalDescriptors._getVDWVolumeDistanceMatrix>, '_getPolarizabilityDistanceMatrix': <function TopologicalDescriptors._getPolarizabilityDistanceMatrix>, '_getAtomicWalkCounts': <function TopologicalDescriptors._getAtomicWalkCounts>, '_getVDWSurfaceArea': <function TopologicalDescriptors._getVDWSurfaceArea>, '_balbanOperator': <function TopologicalDescriptors._balbanOperator>, '_centricIndexSum': <function TopologicalDescriptors._centricIndexSum>, '_generalizedConnectivityIndex': <function TopologicalDescriptors._generalizedConnectivityIndex>, '_propertyRangeVDWSurfaceArea': <function TopologicalDescriptors._propertyRangeVDWSurfaceArea>, '__dict__': <attribute '__dict__' of 'TopologicalDescriptors' objects>, '__weakref__': <attribute '__weakref__' of 'TopologicalDescriptors' objects>, '__doc__': None})¶
-
__dir__
() → list¶ default dir() implementation
-
__eq__
¶ Return self==value.
-
__format__
()¶ default object formatter
-
__ge__
¶ Return self>=value.
-
__getattribute__
¶ Return getattr(self, name).
-
__gt__
¶ Return self>value.
-
__hash__
¶ Return hash(self).
-
__init_subclass__
()¶ This method is called when a class is subclassed.
The default implementation does nothing. It may be overridden to extend subclasses.
-
__le__
¶ Return self<=value.
-
__lt__
¶ Return self<value.
-
__module__
= 'schrodinger.application.canvas.topo_descriptors'¶
-
__ne__
¶ Return self!=value.
-
__new__
()¶ Create and return a new object. See help(type) for accurate signature.
-
__reduce__
()¶ helper for pickle
-
__reduce_ex__
()¶ helper for pickle
-
__repr__
¶ Return repr(self).
-
__setattr__
¶ Implement setattr(self, name, value).
-
__sizeof__
() → int¶ size of object in memory, in bytes
-
__str__
¶ Return str(self).
-
__subclasshook__
()¶ Abstract classes can override this to customize issubclass().
This is invoked early on by abc.ABCMeta.__subclasscheck__(). It should return True, False or NotImplemented. If it returns NotImplemented, the normal algorithm is used. Otherwise, it overrides the normal algorithm (and the outcome is cached).
-
__weakref__
¶ list of weak references to the object (if defined)
-
-
schrodinger.application.canvas.topo_descriptors.
check_canvas_license
()¶ Check that a CANVAS_FULL license is available to use
-
schrodinger.application.canvas.topo_descriptors.
matrix_reciprocal
(matrix)¶ Returns a matrix whose elements are the reciprocal of each of the elements of the original matrix. The diagonal of the matrix must be zeros, and the routine assumes that no other zeros exist in the matrix.