Hi guys, Can anyone give me some advices to improve the efficiency of the embedding code? See example below:
import time from rdkit import Chem from rdkit.Chem import AllChem suppl = Chem.SDMolSupplier('cid831548.sdf') # medium size molecule (10 heavy atoms) for mol in suppl: mh = Chem.AddHs(mol, addCoords=True) # embedding start = time.time() AllChem.EmbedMultipleConfs(mh, numConfs=5000, maxAttempts=100, pruneRmsThresh=0.5, randomSeed=1, numThreads=0, enforceChirality=True, useExpTorsionAnglePrefs=True, useBasicKnowledge=True) cids = [conf.GetId() for conf in mh.GetConformers()] end = time.time() print("time eclipsed: ", end - start) The results: numConfs=1000, time eclipsed: 10 seconds numConfs=5000, time eclipsed: 66 seconds numConfs=10000, time eclipsed: 176 seconds I need to request a lot more than 10000 conformers per molecule and have a lot of molecules to process. I also wish to compute conformer energies and hopefully can do optimization (both are time consuming). So need to make my code as efficient as possible. Thank you! Best, Leon
_______________________________________________ Rdkit-discuss mailing list Rdkit-discuss@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/rdkit-discuss