Is there a way to save a protein-ligand complex as a PDB file in AutoDock?

I have completed my dockings of a ligand to a protein.  Is there a way to save a protein-ligand complex as a PDB file in AutoDock?

Extracting Dockings from DLG Files

AutoDock 4 writes out the coordinates of the atoms in the ligand (and any moving parts of the receptor, if you are doing a flexible sidechain docking). It does not write out the coordinates of the fixed part of the receptor.  Each docked conformation is written in PDBQT format in the DLG (docking log file).  (Note that AutoDock 3 writes in PDBQ format).  So if you did 10 dockings, there should be 10 different docked conformations in the DLG.

Each line of the PDBQT-formatted docked conformation is prefixed by the string "DOCKED: ", so it is possible to extract these lines from the DLG using a couple of simple UNIX commands.  You need to go to the UNIX/Linux/Cygwin/Mac OS X Terminal and change directory (cd) to the directory that contains your DLG, then type the following line at the command line and press < Return >  (substitute my_docking.dlg with the name of your DLG):

    grep '^DOCKED' my_docking.dlg | cut -c9- > my_docking.pdbqt

The grep command is a UNIX command that prints lines that match a pattern.  Here, the pattern is ^DOCKED, and the ^ or caret symbol (Shift-6 on most keyboards) means "at the start of the line", so this pattern matches all lines that begin with the prefix "DOCKED".  The | character (Shift-\ or Shift-backslash) is called a pipe, and it takes the output of the command on its left and feeds it into the input of the command on the right.  The cut command selects portions of each line, and the flag -c9- means "cut out all the characters after column 9', which has the effect of removing the "DOCKED: " prefix from the line.  The last part of the command, > my_docking.pdbqt, uses the > redirect command (Shift-. = greater-than symbol) to save the output into a new file called my_docking.pdbqt.

Converting from PDBQT to PDB

To convert from PDBQT format to PDB format, the simplest thing to do is to remove the charge (Q) and atom type (T) columns; this can be achieved using a simple UNIX command.  Make sure you are in the same directory where you created my_docking.pdbqt, and type:

    cut -c-66 my_docking.pdbqt > my_docking.pdb

This will create a PDB file, containing all of the docking results.  Each docking will appear as a single "MODEL", which is the PDB record usually used to denote an NMR model.  Each "MODEL" will contain the ligand and any moving parts of the receptor.  If you would like to view the models in this PDB file, you can go load the multi-model PDB file in a program like "PyMol"http://pymol.sourceforge.net/ and then click on the "Play" button to play through all the docked conformations.  Click the "Stop" button to halt the play-back, and click on the ">" and "<" buttons to step through the conformations one-at-a-time.  It is possible to load the PDB file of the receptor, too, to see how the ligand interacts.

Splitting a Multi-Model PDB File into Separate PDB Files

If you want to split the PDB file that contains all the docked conformations, my_docking.pdb, into separate PDB files each containing just one docking, then use these commands:

    set a=`grep ENDMDL my_docking.pdb | wc -l`
set b=`expr $a - 2`
csplit -k -s -n 3 -f my_docking. mydocking.pdb '/^ENDMDL/+1' '{'$b'}'
foreach f ( mydocking.[0-9][0-9][0-9] )
mv $f $f.pdb
end

For example, if there were 50 ENDMDL records in the file my_docking.pdb, these commands would create 50 separate PDB files numbered from 000 to 049, and they would be named my_docking.000.pdb, my_docking.001.pdb, my_docking.002.pdb and so on, all the way up to my_docking.049.pdb.

Creating a PDB File of the Complex

To create a single PDB file that contains a complex of both the the receptor and all the models of the docked ligand, you can use the following command to combine the PDB file of the receptor (receptor.pdb) and all the docked conformations of the ligand stored in 'my_docking.pdb':

    cat receptor.pdb my_docking.pdb | grep -v '^END   ' | grep -v '^END$' > complex.pdb

This uses the UNIX cat command which concatenates files together.  This command will create a new PDB file called complex.pdb.

To create a PDB file that contains a complex of both the receptor and a single ligand, then use the commands for splitting the multi-model docked PDB file, select the docked conformation of the ligand, and then use the following command to combine the PDB file of the receptor (receptor.pdb) and the docked conformation of the ligand; say we chose the ligand conformation in 'my_docking.042.pdb':

    cat receptor.pdb my_docking.042.pdb | grep -v '^END   ' | grep -v '^END$' > complex.pdb

This uses the UNIX cat command which concatenates files together, and the grep command with the -v flag which extracts all the lines except lines containing the END record.  This command then creates a new PDB file called complex.pdb, that contains the coordinates of the receptor, followed by all the models of the docked ligand stored in the PDB file my_docking.pdb.

http://autodock.scripps.edu/faqs-help/faq/is-there-a-way-to-save-a-protein-ligand-complex-as-a-pdb-file-in-autodock

autodock 结果pdb的生成的更多相关文章

  1. C#输出到Release VS中Release模式下生成去掉生成pdb文件

    Release 与 Debug 的区别就不多说了, 简单来说 Release 优化过, 性能高一些. Debug 为方便调试. 默认情况下是 Debug, 那如何改成 Release 呢? 项目上右键 ...

  2. pdb文件 小结

    .pdb文件,是VS生成的用于调试的符号文件(program database),保存着调试的信息.在VS的工程属性,C/C++,调试信息格式,设置/Zi,那么VS就会在构建项目时创建PDB文件. 在 ...

  3. PDB文件详解

    原文地址:http://blog.csdn.net/feihe0755/article/details/54233714 PDB文件的介绍 PDB(Program Data Base),意即程序的基本 ...

  4. VS PDB文件

    转 PDB文件 PDB(Program Data Base),意即程序的基本数据,是VS编译链接时生成的文件.DPB文件主要存储了VS调试程序时所需要的基本信息,主要包括源文件名.变量名.函数名.FP ...

  5. VS生成Map文件

    一.右键项目属性->链接器->启用增量链接:关闭,选择  否 (/INCREMENTAL:NO) 二.右键项目属性->链接器->调试-> 生成调试信息:是 (/DEBUG ...

  6. .net开发过程中Bin目录下面几种文件格式的解释

    在.NET开发中,我们经常会在bin目录下面看到这些类型的文件: .pdb..xsd..vshost.exe..exe..exe.config..vshost.exe.config 项目发布的时候,往 ...

  7. VS2010环境下C++工程相关问题汇总

    1.链接其他库调试时产生告警: warning LNK4099: 未找到 PDB“vc100.pdb” 解决方案:属性 -> C/C++ -> 输出文件 -> 程序数据库文件名 -& ...

  8. 如何用VS调试不属于解决方案的EXE和DLL程序

    如果你手里有一个现成的EXE, 以及EXE相关联PDB文件, 还有相关联的CPP文件和H文件. 你如何用VS调试? (当然你可以选择WinDbg.不过这里就讨论VS) 你或许想问我干嘛不从一开始就用V ...

  9. windows下捕获dump之Google breakpad_client的理解

    breakpad是Google开源的一套跨平台工具,用于dump的处理.很全的一套东西,我这里只简单涉及breakpad客户端,不涉及纯文本符号生成,不涉及dump解析. 一.使用 最简单的是使用进程 ...

随机推荐

  1. ios-UIWebView中js和oc代码的互调

    webview是ios中显示远程数据的网页控件,webview能显示的内容很多,MP4.文本.pdf等等: 关于js和oc代码的互相调用 1:oc中调用js代码; >>oc中调用js代码很 ...

  2. 遗传学详解及Matlab算法实现

    遗传学算法概述 从之前转载的博客<非常好的理解遗传算法的例子>中可以知道,遗传学算法主要有6个步骤: 1. 个体编码 2. 初始群体 3. 适应度计算 4. 选择运算 5. 交叉运算 6. ...

  3. ThinkDev.Logging-Queue模块介绍

    Queue,ThinkDev.Logging对内存级队列的封装. 主要针对需要简单进程内内存级队列提供支持,应用无需关心存储及线程. 配置例子: <!-- 队列对象 --> <Que ...

  4. 每年六一儿童节,牛客都会准备一些小礼物去看望孤儿院的小朋友,今年亦是如此。HF作为牛客的资深元老,自然也准备了一些小游戏。其中,有个游戏是这样的:首先,让小朋友们围成一个大圈。然后,他随机指定一个数m,让编号为0的小朋友开始报数。每次喊到m-1的那个小朋友要出列唱首歌,然后可以在礼品箱中任意的挑选礼物,并且不再回到圈中,从他的下一个小朋友开始,继续0...m-1报数....这样下去....直到剩下

    // test20.cpp : 定义控制台应用程序的入口点. // #include "stdafx.h" #include<iostream> #include< ...

  5. hdu 1301 Jungle Roads 最小生成树

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1301 The Head Elder of the tropical island of Lagrish ...

  6. Sqli-labs less 25

    Less-25 本关主要为or and过滤,如何绕过or和and过滤.一般性提供以下几种思路: 大小写变形 Or,OR,oR 编码,hex,urlencode 添加注释/*or*/ 利用符号 and= ...

  7. 如何开发一个自己的 RubyGem?

    「如何测试你的 RubyGem?」的前导文章 什么是 RubyGem RubyGem 是 Ruby 语言的标准源码打包格式. 大家一直都在用gem这个命令,但是很少有人知道这个东西是怎么来的,这里我从 ...

  8. hdu 2571 命运(递推,请小心)

    题目 //不能广搜,会超内存//可以用dp思想模拟//map 后来保存的是 保存由前面推来的最大的幸运总值的点//下标从1开始,不然倍数会有问题 //AC 代码: AC代码 //不能广搜,会超内存 / ...

  9. Oracle MySQL

    http://blog.jobbole.com/46510/ http://blackproof.iteye.com/blog/1570456 http://blog.csdn.net/yzsind/ ...

  10. ***ECharts图表入门和最佳实践

    ECharts数据图表系统? 5分钟上手! [ECharts简介] ECharts开源来自百度商业前端数据可视化团队,基于html5 Canvas,是一个纯Javascript图表库,提供直观,生动, ...