Hello, I'm trying to construct a pharmacophore model from a ref_mol and then generate embedding of a test_mol that matches the pharmacophore model features. I attempted:
#Loading and specifying ref_mold and test_mol: mols = Chem.SDMolSupplier('PCM.sdf', sanitize=True, removeHs=False, strictParsing=True) ref_mol = mols[0] test_mol = mols[1] #Constucting pharmacophore model from specific features of ref_mol: fdefName = os.path.join(RDConfig.RDDataDir,'BaseFeatures.fdef') feat_fact = ChemicalFeatures.BuildFeatureFactory(fdefName) feats = feat_fact.GetFeaturesForMol(ref_mol) ph_feats = [] ph_feats.append(feats[0]) ph_feats.append(feats[1]) ph_feats.append(feats[3]) ph_feats.append(feats[4]) ph = Pharmacophore.Pharmacophore( ph_feats ) #Testing whether the test_mol matches the pharmacophore: match,mList = EmbedLib.MatchPharmacophoreToMol(test_mol, feat_fact, ph) #Getting the AtomMatch: AtomMatch = [] num_match = len(mList) for i in range(num_match): num_feat = len(mList[i]) for j in range(num_feat): AtomMatch.append( mList[i][j].GetAtomIds() ) #Embedding the test_mol based on the pharmacophore matching: bm,embeds,nFail = EmbedLib.EmbedPharmacophore(test_mol,AtomMatch,ph) However, although the test_mol matches the pharmacophore model, I receive an error "could not smooth bounds matrix" on the last step. I wonder if my code is the correct way for what's intended which is to check whether a test_mol matches the pharmacophore model and then generate a conformation (or just a rigid-transformation) that satisfy the model. Thank you
_______________________________________________ Rdkit-discuss mailing list Rdkit-discuss@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/rdkit-discuss