def GetGeometric(mol): """ ################################################################# Wrapper for Geometrical descriptors ################################################################# """ filename='temp' ChargeCoordinates=_ReadCoordinates(filename) res={} res['W3DH']=Calculate3DWienerWithH(ChargeCoordinates) res['W3D']=Calculate3DWienerWithoutH(ChargeCoordinates) res['Petitj3D']=CalculatePetitjean3DIndex(ChargeCoordinates) res['GeDi']=CalculateGemetricalDiameter(ChargeCoordinates) res['grav']=CalculateGravitational3D1(mol,ChargeCoordinates) res['rygr']=CalculateRadiusofGyration(mol,ChargeCoordinates) res['Harary3D']=CalculateHarary3D(ChargeCoordinates) res['AGDD']=CalculateAverageGeometricalDistanceDegree(ChargeCoordinates) res['SEig']=CalculateAbsEigenvalueSumOnGeometricMatrix(ChargeCoordinates) res['SPAN']=CalculateSPANR(mol,ChargeCoordinates) res['ASPAN']=CalculateAverageSPANR(mol,ChargeCoordinates) res['MEcc']=CalculateMolecularEccentricity(mol,ChargeCoordinates) #res.update(CalculatePrincipalMomentofInertia(mol,ChargeCoordinates)) #res.update(CalculateRatioPMI(mol,ChargeCoordinates)) return res
def GetMoRSEUnweighted(mol): """ ################################################################# Obtain all unweighted 3D-Morse descriptors . ################################################################# """ filename = 'temp' ChargeCoordinates = _ReadCoordinates(filename) result = CalculateUnweightMoRSE(ChargeCoordinates) return result
def GetMoRSESandersonElectronegativity(mol): """ ################################################################# Obtain all 3D-Morse descriptors baed on Sanderson Electronegativity schems. ################################################################# """ filename = 'temp' ChargeCoordinates = _ReadCoordinates(filename) result = CalculateSandersonElectronegativityMoRSE(ChargeCoordinates) return result
def GetMoRSEVDWVolume(mol): """ ################################################################# Obtain all 3D-Morse descriptors baed on VDW Volume schems. ################################################################# """ filename = 'temp' ChargeCoordinates = _ReadCoordinates(filename) result = CalculateVDWVolumeMoRSE(ChargeCoordinates) return result
def GetMoRSEPolarizability(mol): """ ################################################################# Obtain all 3D-Morse descriptors baed on polarizability schems. ################################################################# """ filename = 'temp' ChargeCoordinates = _ReadCoordinates(filename) result = CalculatePolarizabilityMoRSE(ChargeCoordinates) return result
def GetMoRSEAtomicNumber(mol): """ ################################################################# Obtain all 3D-Morse descriptors baed on atomic number schems. ################################################################# """ filename = 'temp' ChargeCoordinates = _ReadCoordinates(filename) result = CalculateAtomicNumberMoRSE(mol, ChargeCoordinates) return result
def GetMoRSEMass(mol): """ ################################################################# Obtain all 3D-Morse descriptors baed on mass schems. ################################################################# """ filename = 'temp' ChargeCoordinates = _ReadCoordinates(filename) result = CalculateMassMoRSE(mol, ChargeCoordinates) return result
def GetRDFUnweighed(mol): """ ################################################################# Obtain all Unweighed radial distribution function descriptors. ################################################################# """ filename = 'temp' ChargeCoordinates = _ReadCoordinates(filename) result = CalculateUnweightRDF(ChargeCoordinates) return result
def GetRDFSandersonElectronegativity(mol): """ ################################################################# Obtain all radial distribution function descriptors based onSanderson Electronegativity schems. ################################################################# """ filename = 'temp' ChargeCoordinates = _ReadCoordinates(filename) result = CalculateSandersonElectronegativityRDF(ChargeCoordinates) return result
def GetRDFPolarizability(mol): """ ################################################################# Obtain all radial distribution function descriptors based on Polarizability schems. ################################################################# """ filename = 'temp' ChargeCoordinates = _ReadCoordinates(filename) result = CalculatePolarizabilityRDF(ChargeCoordinates) return result
def GetRDFMass(mol): """ ################################################################# Obtain all radial distribution function descriptors based on Mass schems. ################################################################# """ filename = 'temp' ChargeCoordinates = _ReadCoordinates(filename) result = CalculateMassRDF(mol, ChargeCoordinates) return result
def GetRDFVDWVolume(mol): """ ################################################################# Obtain all radial distribution function descriptors based on VDW Volume schems. ################################################################# """ filename = 'temp' ChargeCoordinates = _ReadCoordinates(filename) result = CalculateVDWVolumeRDF(ChargeCoordinates) return result
def GetMoRSE(mol): """ ################################################################# Obtain all 3D-Morse descriptors baed on different weighted schems. ################################################################# """ result = {} filename = 'temp' ChargeCoordinates = _ReadCoordinates(filename) result.update(CalculateUnweightMoRSE(ChargeCoordinates)) result.update(CalculateChargeMoRSE(ChargeCoordinates)) result.update(CalculateMassMoRSE(mol, ChargeCoordinates)) result.update(CalculateAtomicNumberMoRSE(mol, ChargeCoordinates)) result.update(CalculatePolarizabilityMoRSE(ChargeCoordinates)) result.update(CalculateSandersonElectronegativityMoRSE(ChargeCoordinates)) result.update(CalculateVDWVolumeMoRSE(ChargeCoordinates)) return result
def GetAtomCoordinateMatrix(): """ ################################################################# Get the atom coordinate matrix ################################################################# """ ChargeCoordinates = _ReadCoordinates(_filename) nAtom = len(ChargeCoordinates) CoordinateMatrix = scipy.zeros([nAtom, 3]) AtomLabel = [] for i, j in enumerate(ChargeCoordinates): CoordinateMatrix[i, :] = [j[1], j[2], j[3]] AtomLabel.append(j[0]) return scipy.matrix(CoordinateMatrix), AtomLabel
def GetRDF(mol): """ ################################################################# Obtain all radial distribution function descriptors based on different weighted schems. ################################################################# """ result = {} filename = 'temp' ChargeCoordinates = _ReadCoordinates(filename) result.update(CalculateUnweightRDF(ChargeCoordinates)) result.update(CalculateChargeRDF(ChargeCoordinates)) result.update(CalculateMassRDF(mol, ChargeCoordinates)) result.update(CalculatePolarizabilityRDF(ChargeCoordinates)) result.update(CalculateSandersonElectronegativityRDF(ChargeCoordinates)) result.update(CalculateVDWVolumeRDF(ChargeCoordinates)) return result
def GetChargeSA(RadiusProbe=1.5, n_sphere_point=960): """ ################################################################# Get the list form for all atoms in a molecule. It includes the atom symbol, charge and partial solvent-accessible surface areas. Note that this is list form whose element is still list form of each atom. ################################################################# """ ChargeCoordinates = _ReadCoordinates(filename) atoms = GetAtomClassList(ChargeCoordinates) FASA = asa.calculate_asa(atoms, RadiusProbe, n_sphere_point) res = [] for i in range(len(FASA)): res.append([ChargeCoordinates[i][0], ChargeCoordinates[i][4], FASA[i]]) return res
result.update(CalculateChargeMoRSE(ChargeCoordinates)) result.update(CalculateMassMoRSE(mol, ChargeCoordinates)) result.update(CalculateAtomicNumberMoRSE(mol, ChargeCoordinates)) result.update(CalculatePolarizabilityMoRSE(ChargeCoordinates)) result.update(CalculateSandersonElectronegativityMoRSE(ChargeCoordinates)) result.update(CalculateVDWVolumeMoRSE(ChargeCoordinates)) return result def _GetHTMLDoc(): """ ################################################################# Write HTML documentation for this module. ################################################################# """ import pydoc pydoc.writedoc('morse') ############################################################################ if __name__ == "__main__": from GeoOpt import GetARCFile mol = 'C1C=CCCS1' inputmol = pybel.readstring('smi', mol) GetARCFile(inputmol) #filename='temp' ChargeCoordinates = _ReadCoordinates() print CalculateVDWVolumeMoRSE(ChargeCoordinates) print len(GetMoRSE(inputmol))
result.update(CalculatePolarizabilityRDF(ChargeCoordinates)) result.update(CalculateSandersonElectronegativityRDF(ChargeCoordinates)) result.update(CalculateVDWVolumeRDF(ChargeCoordinates)) return result def _GetHTMLDoc(): """ ################################################################# Write HTML documentation for this module. ################################################################# """ import pydoc pydoc.writedoc('rdf') ############################################################################ if __name__ == "__main__": import pybel from GeoOpt import GetARCFile mol = 'C1C=CCCS1' inputmol = pybel.readstring('smi', mol) GetARCFile(inputmol) filename = 'temp' ChargeCoordinates = _ReadCoordinates(filename) res = CalculateVDWVolumeRDF(ChargeCoordinates) print res print len(GetRDF(inputmol))