使用Jmol编辑Jmol/PDB文件

来自Proteopedia

跳转到:航行,搜索

这个Jmol.jar应用程序可用于编辑PDB文件例如,您可以更改原子序列号、链的名称、更改序列号等。A类命令脚本文件可以根据下面概述的原则,使用纯文本编辑器.

目录

确定自己和所做的更改

谁做了哪些更改?

在您公开任何编辑过的PDB文件之前,例如将其上传到Proteopedia,请插入备注行,列出您的姓名和专业隶属关系,并总结您所做的更改。插入REMARK行最容易作为最后一步,使用纯文本编辑器.

使用独特的PDB文件名

不要给你的PDB文件起一个容易与网站上发布的版本混淆的名字PDB公司例如1D66.pdb。使用一个明确表示已修改的名称,例如1D66_chains_renamed.pdb。

将PDB文件放入变量中

首先,运行Jmol.jar Java应用程序,并加载任何PDB文件。如果您将PDB文件保存到磁盘(例如,从下载RCSB公司。组织),将其拖放到Jmol图形窗口中。或者,直接从PDB公司:

load=1d66#=和4个字符之间没有空格PDB代码.
注:“#”和行尾(或分号)之间的任何内容都是注释。

加载PDB文件并显示分子后:

mypdb=getproperty(“文件内容”)

我的个人发展银行是Jmol脚本上下文中的一个变量,它现在对整个PDB文件(包括标头)有一个长字符串(包括换行符),未经修改。

逐行编辑

通常最容易逐行遍历PDB文件。那么,让我们定义一个新变量:

mypdblines=mypdb.lines

现在,mypdblines公司是一个数组,每个元素有一个PDB行。因此,您可以逐行循环:

对于(i=1;i<=mypdblines.length;i++){mypdblines[i]…#用这个做点什么}

Jmol有大量的命令用于查找和编辑行。例如,要仅在以“ATOM…”开头的行上操作,

如果(mypdblines[i].fund(“^ATOM”,“”)。。。

第二个参数“”表示第一个参数应解释为正则表达式,其中“^”表示“行首”。

Jmol中用于字符串操作的大多数内置函数列在Jmol文档的本节.

由于PDB格式具有固定的列位置,因此您可以更改列22中的链名称:

如果((mypdblines[i])[22][23]=“G”){(mypdblines[i])[22][23]=“D”;}

(atom属性“chain”在Jmol中不可写,“resno”和“seqcode”也不可写。因此,不能简单地为这些属性分配新值。)

编写包含编辑行的PDB文件

完成后,您可以这样编写PDB文件:

写入var mypdblines“someFileName.pdb”

“Var”表示您正在将变量的内容写入磁盘文件。

需要注意的是,您可能会考虑使用另一个命令,写入“someFileName.pdb”,写入一个没有原始头的文件(并且只包含当前选定的原子)。通过使用变量mypdblines公司,保留标题并写入所有原子。

在标题中保存密钥信息

自定义信息可以插入mypdblines公司.

Jmol使用PDB文件的第一行来识别PDB格式,因此不要将自定义行放在第一行。不仅是Jmol,而且PyMOL公司奇梅拉可能还有其他流行的分子可视化应用程序(包括第一眼)很高兴忽略PDB文件中不以可识别的记录名称(如REMARK或ATOM)开头的行。(FirstGlance将以“!”开头的行识别为来自ConSurf服务器的自定义信息。)

方法#1

例如,如果Jmol已经计算了您希望在输出PDB文件中可用的内容(无需重新计算),则可以在mypdblines公司这样地:

标题转录/DNA 06-MAR-92 1D66@以“@”开头的行中的自定义信息。GAL4识别标题DNA:蛋白质/DNA复合物的结构

甚至可以将Jmol脚本(可能用于定义函数,或指定自定义变量值[变量不保存在PDB或PNGJ文件中])放在后面使用。例如,可以将其插入mypdblines公司:

@#Jmol脚本。@myvar=12.6@函数f1()@ {@打印参数(_A)@ }@#结束Jmol脚本。

在加载已保存的PDB或PNGJ文件(其标题中包含此内容)后,您可以拖放到脚本文件中,该脚本文件(i)将@行提取到变量中,(ii)删除每行的前导“@”,然后(iii)使用“脚本内联@变量".

方法#2

如果您希望文件更接近PDB格式标准(这样可以防止将这些文件读入其他软件时出现潜在问题),则任何额外的自定义行都应该以PDB关键字开头备注事实上,Jmol设计用于读取和应用文件中嵌入的任何Jmol脚本,当一行以备注jmolscript:(如中所述本页). 您必须将整个命令脚本放在这一行中,但文件中也支持多行这样的命令。以上面的例子为例,这看起来像是:

备注jmolscript:myvar=12.6;函数f1(){打印参数}

编写包含编辑行的PNGJ文件

PNGJ文件包含写入PNGJ时Jmol显示的场景的PNG(便携式网络图形)静态图像,以及用Jmol再现场景的完整信息。当您拖动PNGJ文件并将其放入Jmol的图形窗口时,场景以交互形式显示,可以使用Jmol命令旋转、缩放和进一步修改。

除了PDB文件之外,您还可以使用自定义的PDB行和自定义的头来保存PNGJ文件,尽管这稍微复杂一些。与PDB文件不同,您不能从变量中保存PNGJ文件。因此,这里有一种有效的脚本方法,只使用3个命令:

#根据需要在此行之前自定义mypdbline。zap#删除所有原子和定义的原子集。保留变量和函数。load var mypdblines#加载包含在变量中的PDB文件数据,包括可选修改的头。#根据需要渲染、着色、居中、定向和缩放。写一些文件名.pngj

PNGJ文件将包含所有自定义PDB行以及保存时的视图。它不包括保存时定义的变量或函数。如果需要其中任何一个,请在自定义标题@行中定义它们,并编写脚本以如上所述使用它们,或者使用备注jmolscript:行中包含这些变量的定义。

PDB文件编辑服务器?

PDB-工具Web,用户界面pdb工具Python包。

对于那些可能有兴趣编写服务器来修改PDB文件的人来说,JmolData.jar是在没有图形窗口的情况下运行的Jmol的变体。它非常适合这类操作。詹姆·普里卢斯基在Proteopedia.org中使用它在小旋转后生成一系列图像文件。然后,使用网络服务器中的其他免费软件(ImageMagick.org)将它们组装成一个多GIF电影。请参阅Proteopedia中任何JSmol框下的链接“导出动画图像”。组织与Prilusky合作,埃里克·马茨修改了这些服务器例程,以便在第一眼。Jmol(焦耳)。组织(具有简化的用户界面)。在JSmol下,单击“保存Powerpoint的图像或动画”。

如果您知道任何PDB文件编辑服务器,请在此处链接它们!

个人工具