pymol学习笔记.docx

上传人:b****8 文档编号:29986629 上传时间:2023-08-04 格式:DOCX 页数:88 大小:920.02KB
下载 相关 举报
pymol学习笔记.docx_第1页
第1页 / 共88页
pymol学习笔记.docx_第2页
第2页 / 共88页
pymol学习笔记.docx_第3页
第3页 / 共88页
pymol学习笔记.docx_第4页
第4页 / 共88页
pymol学习笔记.docx_第5页
第5页 / 共88页
点击查看更多>>
下载资源
资源描述

pymol学习笔记.docx

《pymol学习笔记.docx》由会员分享,可在线阅读,更多相关《pymol学习笔记.docx(88页珍藏版)》请在冰豆网上搜索。

pymol学习笔记.docx

pymol学习笔记

 

http:

//www.donkeyhome.org/protein/

 

Pymol学习笔记

(一):

简介&安装

 

Pymol是一个开放源码,由使用者赞助的分子三维结构显示软件,由WarrenLyfordDeLano编写,并且由DeLano

 

ScientificLLC负责商业发行。

 

Pymol被用来创作高品质的分子(特别是生物大分子如蛋白质)三维结构。

据软件作者宣称,在所有正式发表的科学论

 

文中的蛋白质结构图像中,有四分之一是使用Pymol来制作的。

 

Pymol名字的来源:

“Py表”示该软件基于python这个计算机语言,“Mol则”是英文分子(molucule)的缩写,表示该软件

 

用来显示分子结构。

 

由于实验需要,本人正在学习该软件,在这里把学习过程记录下来,希望对有需要的朋友有所帮助。

今天先来说说安装

 

吧。

 

自2006年8月1日起,DeLanoScientific对事先编译好的PyMOL执行程序(包括beta版)采取限定下载的措施。

目前,只

 

有付费用户可以取得。

不过源代码目前还是可以免费下载,供使用者编译。

如果你和我一样,不想为此花钱的话:

 

1.如果你是Windows用户,首先下载Pymol的源代码。

然后安装CygWin,并且确保正确安装以下模块:

 

C++(gccorg++packagename)

 

Python

 

OpenGL

 

PNG

 

然后在源代码目录里面依次运行:

 

2.如果你是Linux用户,首先确保以下东东已安装:

 

Python

 

Pmw

 

OpenGLdriver(我用的是NVdia)

 

libpng

 

Subversionclient(下载源代码需要)

 

然后下载Pymol的源代码

 

$mkdirpymol-src

 

$svncopymol-src

 

然后进入源代码目录

 

#cdpymol-src

 

开始依次编译

 

#pythonsetup.pyinstall

 

#pythonsetup2.pyinstall

 

拷贝执行脚本到某个$PATH,安装就搞定了

 

#cp./pymol/usr/bin

 

如果运行时得到错误信息"ImportError:

NomodulenamedPmw",那么你应该运行

 

#pythonsetup2.pyinstallpmw

 

如果你在使用Gentoo,请确保编译python时添加了tcl/tk支持,否则运行是会提示错误"ImportError:

Nomodule

 

named_tkinter"

 

#USE="tcltk"emergepython

 

好了,下面我们就可以进入Pymol的世界了。

 

Pymol学习笔记

(二):

基本的鼠标操作

 

这里主要介绍一下Pymol的基本操作,包括窗口菜单、加载文件、图像的基本鼠标操作等等。

 

当你打开Pymol后,你将会看到如下图所示的界面:

 

该界面分为2窗口,上面的外部GUI窗口(ExternalGUI)和下面的ViewerWindow。

ViewerWindow又分为左右两块,左边

 

用来显示结构图像的(Viewer),右边则是一个内部GUI窗口(InternalGUI)。

Viewer自身包含一个命令行(如图中左下方的

 

PyMOL>提示符),可以用来输入Pymol命令;在InernalGUI中则可以选定一些特定的对象并完成一些操作。

ExternalGUI

 

则包含一个标准菜单、一个输出区、一个命令行输入区以及右边的一些常用命令按钮。

请注意,标准的“复制、剪切和粘贴”操作

 

只能在ExternalGUI中完成,并且必须使用“Ctrl+C、Ctrl+X以及Ctrl+V”来完成,这也是这个所谓的外部GUI的最重要的优

 

点。

 

加载文件,有二种方法:

 

1.在ExternalGUI中选择File-Open

 

2.使用命令行:

 

load

 

例如我们现在从www.pdb.org上下载了一个离子通道蛋白的pdb文件(PENTAMERICLIGANDGATEDIONCHANNEL

 

FROMERWINIACHRYSANTHEMI),名字为2vl0.pdb,然后用pymol打开它:

 

load2vl0

 

该蛋白质的结构就被显示出来啦,如下图:

 

基本的图像操作:

 

是不是觉得上面的那个三维结构图看起来乱七八糟的阿,那是因为蛋白质分子都是由成千上万个原子组成的,而Pymol打开pdb

 

文件时是默认把所有的原子都显示在那个小小的Viewer窗口里面的,当然看起来就很乱了。

这时候就需要我们对这个图像进行

 

一些操作,来得到漂亮的清晰的蛋白质三维结构图。

 

先说说鼠标吧。

 

任意旋转图像:

对准图像的任意处点住鼠标左键然后移动鼠标。

 

放大/缩小图像:

对准图像的任意处点住鼠标右键然后移动鼠标:

向上是缩小,向下则是放大。

 

移动图像:

对准图像的任意处点住鼠标中键或者滚轮,然后移动鼠标。

 

设定图像旋转中心:

Ctrl+Shift+鼠标中键或滚轮。

 

移动剪切平面:

Shift+鼠标右键。

鼠标上下移动:

调整前剪切平面(离你近的);鼠标左右移动:

调整后剪切平面

 

(离你远的)。

 

最后一项“移动剪切平面”有点不容易理解,需要多试几次。

配合下面的示意图你会发现Pymol的这项设定其实很方便。

 

今天没时间了,明天还要出远门,就学到这里吧,用下面这个图作为结束,其实就是用cartoon的形式显示了上面的那个蛋白质,

 

不过还比较难看。

 

Pymol学习笔记(三):

基础Pymol命令

 

这里主要介绍一下Pymol的一些基本命令操作。

就像Linux一样,要想更好的操作Pymol,掌握一些常用的命令是必不

 

可少的。

Pymol是区分大小写的,不过目前为止Pymol还是只用小写,所以记住,所有的命令都是使用小写字母的。

 

当你开始用Pymol来完成一个项目时,你也许想会让Pymol自动保存你所有输入过的命令,以方便日后你再次读取并修

 

改。

这个可以通过创建一个log文件来达到,该文件的后缀名应为.pml,记住,Pymol像Linux一样支持Tab键命令补全:

 

Pymol>log_openlog-file-name.pml

 

如果你想终止记录,只需要键入:

 

Pymol>log_close

 

好了,现在载入pdb文件(继续前用的pdb文件):

 

Pymol>load2vlo.pdb

 

现在Pymol就创建了一个叫2vlo的对象,你可以在内部GUI窗口里面看见这个项目的名字。

但是你也可以自己定义该项目的

 

名字(如test):

 

Pymol>load2vlo.pdb,test

 

下面说说如何来操作你新建的对象。

 

首先:

 

Pymol>showrepresentation

 

Pymol>hiderepresentation

 

其中representation可以为:

cartoon,ribbon,dots,spheres,surface和mesh。

 

使用这2个命令可以让Pymol以不同的方式显示蛋白质结构。

 

例如当我们键入:

 

Pymol>hidelines

 

Pymol>showribbon

 

我们将得到如下结果:

 

也许你已经注意到结构中有2个一模一样的蛋白质分子,只是方向不同而已,那么如何让Pymol只显示当中的一个分子呢?

 

先输入如下命令:

 

Pymol>labelall,chains

 

这个命令的作用是让Pymol给蛋白质结构中的“链”编号,你会发现,第一个分子由“链”A-E组成,第二个则由好了,如果我们想把一个蛋白质分子去掉,那么只要把“链”A-E或者F-J去掉即可:

 

F-J组成。

 

 

Pymol>hideribbon,chainf+g+h+i+j

 

上面的东东还可以这样完成:

 

Pymol>selecttest,chainf+g+h+i+j

 

Pymol>hideribbon,test

 

上面的第一句命令的作用是选择“链”F-J,并命名为test,然后在第二句命令中隐藏它。

这样做的好处是,一旦你选择并命名了

 

某个目标,你可以在后面随时对它进行各种操作。

并且你在右边的控制面板里面也可以看到你选定的目标,并可以对其进行操

 

作。

 

比如你可以:

 

Pymol>hideeverything,test

 

Pymol>showcartoon,test

 

这样你会得到:

 

说到这里就提到了Pymol的一个比较重要的东东,就是选择并命名目标,它的基本语法就是:

 

Pymol>selectselection-name,selection-expression

 

其中名字可以由字母[A/a-Z/z],数字[0-9]已经下划线[_]组成,但是要避免使用:

 

!

@#$%^&*()'"[]{}\|~`<>?

/

 

如果你要删除你选定的目标或者整个对象,你可以:

 

Pymol>deleteselection-name

 

Pymol>deleteobject-name

 

下面讲讲如何给对象以及目标改变颜色。

预定义的颜色名字可以在外部GUI窗口的Settings-Colors中找到:

 

Pymol>colorcolor-name

 

Pymol>colorcolor-name,selection-expression

 

比如我们可以:

 

Pymol>colorred,ssh

 

Pymol>coloryellow,sss

 

Pymol>colorgreen,ssl+""

 

其中“ss代”表secondarystructure,“h代”表Helix,“s代”表Betasheet,l+""代表Loop和所以其他结构。

 

这3句的作用分别是把所有的Helix变成红色;把所有的Betasheet变成黄色;把所有的Loop以及其他部分变成绿色,于是我

 

们得到:

 

Pymol可以同时打开多个pdb文件:

 

Pymol>loadobject-name-1.pdb

 

Pymol>loadobject-name-2.pdb

 

如果你想暂时关闭/打开某个对象,可以这样:

 

Pymol>disableobject-name-1

 

Pymol>enableobject-name-1

 

你也可以用disable命令去除最后一个选择的目标上出现的粉红色的小点,但是该命令并不会使你选定的目标不可见。

 

Pymol>disableselection-name

 

使用鼠标通常是改变图像视角的最方便的办法,不过命令如zoom,orient等等有时候使用起来也是很有用的,它们提供

 

了另一种改变图像视角的办法。

 

放大选定目标:

 

Pymol>zoomselection-name

 

定向选定目标,可以使选定目标最大的尺寸水平显示,次大的尺寸竖直显示:

 

Pymol>orientselection-name

 

你也可以用view命令保存你目前的视角,注意,该命令只保存视角,并不保存你的对象显示方式:

 

Pymol>viewkey,action

 

其中“key是”你随便给当前视角定的名字,“action可”以为:

store或者recall。

如果不加任何“action,”则默认为recall:

 

Pymol>viewv1,store

 

Pymol>viewv1,recall

 

Pymol>viewv1

 

说了这么多,最后说说如何保存文件吧。

Pymol有3个层面的保存方式,下面来分别说说。

 

1.使用log_open命令把你所有使用过的命令记录为一个文本文档:

 

Pymol>log_openscript-file-name

 

这样以后当你再次调用该文档时,Pymol将执行上面的所有命令:

 

Pymol>@script-file-name

 

不过注意,如果你想记录当前视角,则必须使用get_view命令。

 

你可以选择外部GUI窗口中的File-Append/Resume/CloseLog来分别暂停记录/恢复记录/停止记录该文档。

 

你可以随时编辑该文档。

 

在linux下,该文档的默认保存目录为当前用户的home目录。

 

2.如果你想下次打开Pymol时直接回到当前所在的状态,那么你可以选择外部GUI窗口里面的File-SaveSession,

 

创建一个会话文件(.pse)。

 

该会话文件和上面提到的文档文件的区别在于,首先文档文件可以编辑,但会话文件不可以;记录文档文件前必须先

 

运行log_open命令,而会话文件可以随时创建;最后文档文件以文档形式运行(@),而打开会话文件则必须选择

 

外部GUI窗口中的File-Open。

 

什么时候需要创建会话文件呢?

比如当你在某时有多个选择时,

 

意时只需要重新打开该会话文件即可。

也就是说创建会话文件起到了

 

你可以保存当前状态,然后一一尝试这些选择,不满

 

“undo”的作用,这正是Pymol所缺少的。

希望

 

 

开发者能赶快加入该功能,那么这个会话文件好像就没什么大用了,呵呵。

 

3.如果你觉得当前显示窗口里面显示的结构图像已经满足你的要求了,你可以把它保存为图片。

在这之前你可以使用ray命令来优化你的图像,它可以使你的图像具有三维的反射及阴影特效:

 

Pymol>ray

 

Pymol>pngyour_path/image_name

 

最后就用该命令导出的图片结束这次笔记吧。

 

Pymol学习笔记(四):

Pymol命令的语法与目标选择的表达

 

上次介绍一些Pymol的基本命令。

现在来具体说说Pymol命令的语法,还有在选择操作目标应该如果表达。

个人觉得这

 

部分内容对学习Pymol来说是至关重要的。

 

从上次讲的一些例子中不难看出,Pymol的命令都是由关键词(keyword)加上一些变量(argument)组成,格式如下:

 

Pymol>keywordargument

 

其中关键词(keyword)当然是必须的,而变量则不是必须的,比如退出命令quit就不需要附加变量:

 

Pymol>quit

 

当然更多的命令通常是需要加变量的,比如放大命令zoom,但是你会发现即使你不加任何变量该命令也可以被执行,这是因为

 

Pymol的许多命令有一个默认变量,下面两个命令的作用是一样的,其中的目标选择all就是zoom的默认变量:

 

Pymol>zoom

 

Pymol>zoomall

 

还有些命令可以带多个参数,比如加色命令color,它的用法如下:

 

Pymol>colorcolor-name

 

Pymol>colorcolor-name,selection-expression

 

第一个color虽然只带一个变量"color-name",但其实它包含了第二个默认变量all,所以它的作用是把整个结构变成"color-name"

 

的颜色。

 

第二个color带两个变量,和第一个的区别就是把默认的目标选择变量all变成了"selection-expression",也就是说只有被这个

 

变量选中的部分才会被变成"color-name"定义的颜色。

 

要注意的是,如果一个命令带多个变量,则这些变量之间必须用逗号","隔开。

 

通过这个例子,大家可以发现,有些变量本身是很简单的,比如"color-name",就是一个颜色名字而已,没什么复杂的。

另一些

 

则不一样,比如"selection-expression",它可以很简单,也可以非常的复杂。

这个东东,我称之为选择表达,对Pymol命令的

 

使用非常重要,所以下面要详细的讲一下。

 

选择表达(selection-expression)表示的实际就是一些被选中的部分,它们可以是一些个原子,一些个Helix,一些个Betasheet,

 

或者它们的混合物。

你可以给你的选择表达起个名字,以便可以多次使用它们。

名字可以由大小写字母,数字以及下划线[_]组

 

成,但是因避免使用下列符号:

 

!

@#$%^&*()'"[]{}\|~`<>?

/

 

选择表达由所谓的"selector"加上"identifier"组成,其中"selector"定义了某类属性,而"identifier"则在该类属性下需要被选择的部

 

分。

如下例:

 

Pymol>selecttest,namec+o+n+ca

 

其中"name"就是一个selector,它表示在pdb文件中描述的原子的名字;"c+o+n+ca"则是对应的"indentifier",它表示我们要选

 

择pdb文件中名字叫"ca+cb"的原子(ca代表alphacarbon,cb代表betacarbon)。

整个语句的作用就是选择上诉的原子

 

并命名为"test",这样我们可以在后面继续使用它。

 

下表列出了大多数的selector:

 

Selector

简写

Identifier及例子

chemical-symbol-list

symbol

e.

周期表中的元素符号

Pymol>selectpolar,symbolo+n

atom-name-list

name

n.

pdb文件中的原子名字

Pymol>selectcarbons,nameca+cb+cg+cd

residue-name-list

resn

r.

氨基酸的名字

Pymol>selectaas,resnasp+glu+asn+gln

residue-identifier-list

pdb文件中基团的编号

resi

i.

Pymol>selectmults10,resi1+10+100

residue-identifier-range

Pymol>selectnterm,resi1-10

alt

alt

alternate-conformation-identifier-list

一些单字母的列表,选择具有

2种构型的氨基酸

 

chainc.

 

segis.

 

flagf.

 

numeric_typent.

 

text_typett.

 

idid

 

indexidx.

 

ssss

 

下表是另一些Selector,有关比较的:

 

Selector简写

 

bb

 

qq

 

Pymol>selectaltconf,alta+b

 

chain-identifier-list

一些单字母或数字的列表

Pymol>selectfirstch,chaina

 

segment-identifier-list

一些字母(最多4位)的列表

Pymol>selectligand,segilig

 

flag-nummer

一个整数(0-31)

Pymol>selectf1,flag0

 

type-nummer

一个整数

Pymol>selecttype1,nt.5

 

type-string

一些字母(最多4位)的列表

Pymol>selectsubset,tt.HA+HC

 

external-index-number

一个整数

Pymol>selectidno,id23

 

internal-index-number

一个整数

Pymol>selectintid,index23

 

secondary-structure-type

代表该类结构的单字母

Pymol>selectallstrs,ssh+s+l+""

 

Identifier及例子

 

comparison-operatorb-factor-value

一个实数,用来比较b-factor

Pymol>selectfuzzy,b>12

 

comparison-operatoroccupancy-value

一个实数,用来比较occupancy

Pymol>selectlowcharges,q>0.5

 

comparison-operatorformalcharge-value

formal_charge

fc.

一个整数,用来比较formalcharge

Pymol>selectdoubles,fc.=-1

comparison-operatorpartialcharge-value

partial_charge

pc.

一个实数,用来比较partialcharge

Pymol>selecthicharges,pc.>-1

另外有一些Selector

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 医学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1