使用open babel产生小分子多重构象的方法有两种:

1. 使用遗传算法(Genetic algorithm)进行构象搜索,属于系统式搜索最低能量构象的方法

obabel -L conformer 命令可以详细查看conformer插件的使用方法

以下命令可以为小分子产生30个小分子构象,然后使用 -writeconformers 参数将所有的构象写成输出结构文件:

obabel startingConformer.mol2 -O ga_conformers.sdf --conformer --nconf 30 --score rmsd --writeconformers

2. 使用Confab进行构象搜索,属于随机性搜索方法

obabel -L confab 命令可以查看confab的详细用法

obabel <inputfile> -O <outputfile> --confab [confab options]

以下为几个参数的用法信息

 --rcutoff <rmsd> RMSD cutoff (default 0.5 Angstrom)
 --ecutoff <energy> Energy cutoff (default 50.0 kcal/mol)
 --conf <#confs> Max number of conformers to test (default is 1 million)
--original Include the input conformation as the first conformer
--verbose Verbose - display information on torsions found

以下命令会产生至多10000个构象,并包含初始构象( --original ):

obabel TZD.sdf -O confs.sdf --confab --conf  --original

3. 使用confabreport format

obabel <inputfile> [-O <outputfile>] -o confabreport -xf <reference_file> [-xr <rmsd>]

obabel -L confabreport 输出帮助信息

Once a file containing conformers has been generated by Confab, the result can be compared to the original input structures or a set of reference structures using this output format. Conformers are matched with reference structures using the molecule title. For every conformer, there should be a reference structure (but not necessarily vice versa).

-f <filename> File containing reference structures
-r <rmsd>

RMSD cutoff (default 0.5 Angstrom)

The number of structures with conformers within this RMSD cutoff of the reference will be reported.

详细的使用方法就是如上,但是有的时候,你运行 obabel -L conformer 命令和 obabel -L confab 命令会报没有此插件的错误:

$ obabel -L --confab
--confab is not a recognized plugin type. Those with instances of sub-types loaded are:
charges
descriptors
fingerprints
forcefields
formats
loaders
ops

并且运行产生构象命令时发现只产生一个构象,出现这个错误的原因我在网上查了很久,终于解决了这个问题!

详细查看obabel的安装说明时,发现obabel安装需要以下几个条件:

libxml2 development headers are required to read/write CML files and other XML formats (the libxml2-dev package in Ubuntu)

zlib development libraries are required to support reading gzipped files (the zlib1g-dev package in Ubuntu)

Eigen version 2 is required if using the language bindings in the release. In addition, if it not present, some API classes (OBAlign, OBConformerSearch) and plugins (the QEq and QTPIE charge models, the conformer operation) will not be available.

Eigen may be available through your package manager (the libeigen2-dev package in Ubuntu). Alternatively, Eigen is available from http://eigen.tuxfamily.org. It doesn’t need to be compiled or installed. Just unzip it and specify its location when configuring cmake (see below) using -DEIGEN2_INCLUDE_DIR=whereever.

Cairo development libraries are required to support PNG depiction (the libcairo2-dev package in Ubuntu)

If using GCC 3.x to compile (and not GCC 4.x), then the Boost headers are required for certain formats (CML, Chemkin, Chemdraw CDX, MDL RXN and RSMI)

发现使用构象搜索功能时,需要安装Eigen2 or Eigen3,如果这两个软件没有安装,将用不了conformers和confab功能。

解决方法:

所以,要解决这个问题的关键,在于安装Eigen2 or Eigen3,下载地址在http://eigen.tuxfamily.org,我下载的是Eigen3

下载得到eigen-eigen-5a0156e40feb.tar.bz2

tar jxvf eigen-eigen-5a0156e40feb.tar.bz2  # 解压
mv eigen-eigen-5a0156e40feb <directory> # 移动解压后的文件夹到自己的目录

解压后的Eigen3就可以使用,无需安装。

得到Eigen3后,重新编译安装openbabel,

$ tar zxvf openbabel-2.4.1.tar.gz # 解压
$ cd openbabel-2.4.1
$ mkdir build
$ cd build
$ cmake .. -DCMAKE_INSTALL_PREFIX=<your openbabel installation directory> -DEIGEN3_INCLUDE_DIR=<your directory prefix>/eigen-eigen-5a0156e40feb
$ make -j2
$ make test
$ make install

添加环境变量后就可以使用。

使用openbabel进行小分子底物构象搜索的更多相关文章

  1. 百度小程序-接入自然搜索-API提交Url-c#开发

    开发百度小程序后,接下来,人们最想做的是让百度更多的录入自家内容.因为小程序资源被索引后,才可能在搜索结果中展现. 百度也提供了小程序的自然搜索提交入口.一共有两种方式: 第一种是用已有的H5网站资源 ...

  2. nyist oj 19 擅长排列的小明(dfs搜索+STL)

    擅长排列的小明 时间限制:1000 ms  |  内存限制:65535 KB 难度:4 描写叙述 小明十分聪明.并且十分擅长排列计算.比方给小明一个数字5,他能立马给出1-5按字典序的全排列,假设你想 ...

  3. Html 小插件5 百度搜索代码2

    网页添加百度搜索框代码大全 ★ 用法:在下面选择合适的样式,复制代码到网页中相应位置粘贴即可. ★ 样式一(200×30)代码: <iframe id="baiduframe" ...

  4. linux 小技巧(磁盘空间搜索)

    这里记录一些linux 管理中可能会用到的又容易忘的一些小技巧. linux磁盘写入失败,提示磁盘空间不足.一般都会用df -h 或者df -i看是不是磁盘空间不足或者是inode空间不足.发生这种情 ...

  5. 前端基础之BOM和DOM和三个小示例(计时器、搜索框、select联动)

    一.BOM和DOM JavaScript分为 ECMAScript,DOM,BOM. BOM(Browser Object Model)是指浏览器对象模型,它使 JavaScript 有能力与浏览器进 ...

  6. 第一期chrome浏览器的小技巧------《提高搜索效率》

    !!! 这次的技巧是:利用chrome提供的设置 提高你的搜索效率 !!! 我们经常遇到问题,搜索的时候很不方便 比如你在百度上搜索一个东西的时候正好没有搜到,那么你想找到这个东西的话,很明显要到其他 ...

  7. lucene.net 3.0.3、结合盘古分词进行搜索的小例子(转)

    lucene.net 3.0.3.结合盘古分词进行搜索的小例子(分页功能)   添加:2013-12-25 更新:2013-12-26 新增分页功能. 更新:2013-12-27 新增按分类查询功能, ...

  8. Win10无法使用小娜搜索本地应用问题的解决方案

    小娜介绍 win10的Cortana小娜是一个功能非常强大的语音和搜索助手,用户可以通过小娜助手搜索任意的文件和应用软件,不过有用户发现win10的小娜搜索不到已安装的本地软件,那么win10小娜助手 ...

  9. 微信小程序----搜索框input回车搜索事件

    在微信小程序里的搜索框,按软键盘回车键触发搜索事件. <input type="text"  placeholder="搜索" value="{ ...

随机推荐

  1. CentOS7 vsftpd 安装及配置

    0x:卸载vsftpd [root@localhost ~]# yum remove vsftpd [root@localhost ~]# find / -name "vsftpd*&quo ...

  2. robot framework ——关键字run keyword if 如何在一个条件下接多个执行语句,以及如何写复杂条件句

    曾一度疯狂搜索run keyword if 的用法,帖子是挺多的,可惜,没有一个我想要的.现在我终于把我想要的用法,收集好了,在此总结下. 1.曾经天真的以为  run keyword if +条件 ...

  3. PHP利用反射根据类名反向寻找类所在文件

    有时候分析源码时,会被博大精深的层层代码搞得晕头转向,不知道类是定义在哪个文件里的,有时候IDE所提供的方法声明未必准确.在这种情况下,我们可以利用反射找到类所在的文件. 在你发现实例化类的地方(例如 ...

  4. [No000012E]WPF(6/7):概念绑定

    WPF 的体系结构,标记扩展,依赖属性,逻辑树/可视化树,布局,转换等.今天,我们将讨论 WPF 最重要的一部分——绑定.WPF 带来了优秀的数据绑定方式,可以让我们绑定数据对象,这样每次对象发生更改 ...

  5. [No0000112]ComputerInfo,C#获取计算机信息(cpu使用率,内存占用率,硬盘,网络信息)

    github地址:https://github.com/charygao/SmsComputerMonitor 软件用于实时监控当前系统资源等情况,并调用接口,当资源被超额占用时,发送警报到个人手机: ...

  6. java工程师学习计划

  7. mysql缓存分析流程

  8. [administrative][CentOS][NetworkManager] 万恶的NetworkManager到底怎么用

    这好像是第三次不得不去学会NetworkManager的用法,可是它真的很难用.社区里无人不吐槽. 然而,还是要用! 这次从redhat的文档入手,也许可以成功 --! https://access. ...

  9. python找出数组中第二大的数

    #!usr/bin/env python #encoding:utf-8 ''''' __Author__:沂水寒城 功能:找出数组中第2大的数字 ''' def find_Second_large_ ...

  10. eclipse几种常见问题的解决

    build项目时出现卡死现象的解决方案 场景:在使用使用Eclipse编辑文件保存时或者build项目时,经常出现卡死现象,此时即便杀死eclipse进程重启还是依然出现这种现象. 原因:eclips ...