计算化学公社

标题: 求助:怎么将2D的SDF文件小分子转3D [打印本页]

作者
Author:
yy_ds_yyds    时间: 2023-10-28 16:18
标题: 求助:怎么将2D的SDF文件小分子转3D
本帖最后由 yy_ds_yyds 于 2023-11-9 09:19 编辑

各位老师好。最近在学习虚拟筛选,下载到了小分子库的SDF文件,文件是2D的。我用openbabel对其进行转3D,但是转后的小分子不符合正常形态,一片混乱。有没有什么办法能够正确的批量将2D小分子sdf文件,转换成为3D小分子,用于后续小分子准备和虚拟筛选。
期待各位老师和同学给予帮助。


感谢各位老师给予的知道,问题已经解决。自己做了一个基于RDkit的python脚本分享给大家,可能脚本会存在一些问题,大家选择性使用。

作者
Author:
exity    时间: 2023-10-29 17:49
https://github.com/grimme-lab/xt ... structure-converter

xtb 的 2D to 3D 或许可以完成这个工作。
作者
Author:
yy_ds_yyds    时间: 2023-10-31 09:15
exity 发表于 2023-10-29 17:49
https://github.com/grimme-lab/xt ... structure-converter

xtb 的 2D to 3D 或许可以完成这个工作。

谢谢老师,我去学习一下。
作者
Author:
ShangChien    时间: 2023-10-31 12:19
本帖最后由 ShangChien 于 2023-10-31 12:38 编辑

rdkit还是很好用的:
  1. from rdkit import Chem
  2. from rdkit.Chem import rdDistGeom
  3. from pathlib import Path as P

  4. etkdg = rdDistGeom.ETKDGv3()

  5. m=Chem.MolFromMolFile(P('./2d.mol').as_posix())
  6. mh = Chem.AddHs(m)
  7. _cid=rdDistGeom.EmbedMultipleConfs(mh, numConfs=20, params=etkdg)
  8. Chem.MolToMolFile(mh,'3d.mol')
复制代码





欢迎光临 计算化学公社 (http://bbs.keinsci.com/) Powered by Discuz! X3.3