RDKit 生成小分子构象库教程:从PDB文件开始
RDKit可以使用OpenBabel或RDKit自带的MolConverter工具将PDB文件转换为分子结构,并使用RDKit的ConformerGenerator工具生成小分子构象库。
以下是使用RDKit生成小分子构象库的示例代码:
from rdkit import Chem
from rdkit.Chem import AllChem
# 读取PDB文件并转换为分子结构
mol = Chem.MolFromPDBFile('input.pdb')
mol = Chem.RemoveHs(mol)
# 生成小分子构象库
params = AllChem.ETKDGv3()
params.numThreads = 0 # 使用所有可用的线程
params.useSmallRingTorsions = True # 启用小环扭曲角度采样
params.randomSeed = 0 # 随机种子
params.pruneRmsThresh = 0.5 # 剪枝阈值
params.numConfs = 1000 # 生成的构象数目
AllChem.EmbedMultipleConfs(mol, numConfs=params.numConfs, params=params)
# 保存小分子构象库
writer = Chem.SDWriter('output.sdf')
for conf in mol.GetConformers():
writer.write(mol, confId=conf.GetId())
writer.close()
此代码将生成一个包含1000个构象的小分子构象库,并将其保存为SDF文件。可以通过修改params.numConfs参数来控制生成的构象数目。
原文地址: https://www.cveoy.top/t/topic/fYMZ 著作权归作者所有。请勿转载和采集!