Open Babel 分子格式转换工具
基本转换命令
obabel
直接跟着要转换的分子文件名称
-O
选项为输出文件名称。obabel
会自动识别文件扩展名。
#origin.xyz 转换为 transfer.mol2
obabel origin.xyz -O transfer.mol2
生成3D构像
生成3D构像一般用于smile等只有2D结构的文件,转换为3D带有空间结构的构像。
选项 --gen3d
obabel origin.smi -O transfer.mol2 --gen3D
文件切分
选项 -m
一般用于被转换的文件中有多个分子。转换后文件将这些分子单独保存
obabel origin.smi -O transfer.mol2 -m
切分后的分子文件名字以-O参数为基准,
例如上面这个命令,转换后的mol2文件会以transfer1.mol2
、transfer2.mol2
、transfer3.mol2
。。。进行重命名。
去除重复分子
选项 --unique
在做虚拟筛选过程中,不同商业库可能包含同一种分子,(同一个分子,不同代理商都在卖), 做虚拟筛选的结果可能有重复的分子存在。所以需要去除重复
当obabel发现重复分子就会删除这个分子。
合并文件
选项 -j / --join
obabel 后跟着要合并的文件,最后加一个-j
选项
obabel protein.pdb ligand.mol2 -O combine.pdb -j
加氢(谨慎使用)
选项 -h
表示加全氢,不考虑质子化状态
选项 -p <pH>
表示加指定pH的氢
为什么说慎重使用,这个方法加氢可能与专业软件所算的质子化状态不同(例如Schrodinger),
有版权的建议使用其LigPrep模块。
不建议使用obabel转换pdbqt
在使用vina进行虚拟筛选,配体的格式需要转换为pdbqt。
而obabel转换的pdbqt不能用,原子没有带电描述。
建议直接使用prepare_ligand.py脚本循环转换。
在转换格式的工具中,obabel本身很强大,但是很多情况下总是不尽人意。
例如小分子拆分,转换之后并不能以独立的分子名称重命名。RDkit获得分子的属性并输出会更好一点。
在输出pdb格式也是有一定的bug,Biopython处理的会更好一点。
在实验和项目过程中,学会多种工具配合使用。