基础Pymol命令 这里主要介绍一下Pymol的一些基本命令操作。就像Linux一样,要想更好的操作Pymol,掌握一些常用的命令是必不可少的。 Pymol是区分大小写的,不过目前为止Pymol还是只用小写,所以记住,所有的命令都是使用小写字母的。
当你开始用Pymol来完成一个项目时,你也许想会让Pymol自动保存你所有输入过的命令,以方便日后你再次读取并修改。这个可以通过创建一个log文件来达到,该文件的后缀名应为.pml,记住,Pymol像Linux一样支持Tab键命令补全:
Pymol> log_open log-file-name.pml
如果你想终止记录,只需要键入:
Pymol> log_close
好了,现在载入pdb文件(继续前用的pdb文件):
Pymol> load 2vlo.pdb
现在Pymol就创建了一个叫2vlo的对象,你可以在内部GUI窗口里面看见这个项目的名字。但是你也可以自己定义该项目的名字(如test):
Pymol> load 2vlo.pdb, test
下面说说如何来操作你新建的对象。
首先: Pymol> show representation
Pymol> hide representation 其中representation可以为:cartoon, ribbon,
dots, spheres, surface和mesh。
使用这2个命令可以让Pymol以不同的方式显示蛋白质结构。 例如当我们键入: Pymol> hide lines
Pymol> show ribbon
也许你已经注意到结构中有2个一模一样的蛋白质分子,只是方向不同而已,那么如何让Pymol只显示当中的一个分子呢?首先输入如下命令:
Pymol> label all, chains
这个命令的作用是让Pymol给蛋白质结构中的“链”编号,你会发现,第一个分子由“链”A-E组成,第二个则由F-J组成。
好了,如果我们想把一个蛋白质分子去掉,那么只要把“链”A-E或者F-J去掉即可: Pymol> hide ribbon, chain
f+g+h+i+j
上面的东东还可以这样完成:
Pymol> select test, chain
f+g+h+i+j
Pymol> hide ribbon, test
上面的第一句命令的作用是选择“链”F-J,并命名为test,然后在第二句命令中隐藏它。这样做的好处是,一旦你选择并命名了某个目标,你可以在后面随时对它进行各种操作。并且你在右边的控制面板里面也可以看到你选定的目标,并可以对其进行操作。
比如你可以: Pymol> hide everything,
test
Pymol> show cartoon, test 说到这里就提到了Pymol的一个比较重要的东东,就是选择并命名目标,它的基本语法就是:
Pymol> select selection-name,
selection-expression
其中名字可以由字母[A/a-Z/z],数字[0-9]已经下划线[_]组成,但是要避免使用:
! @ # $ % ^ & * ( ) ' " [ ] { }
| ~ ` < > ? /
如果你要删除你选定的目标或者整个对象,你可以:
Pymol> delete selection-name
Pymol> delete object-name 下面讲讲如何给对象以及目标改变颜色。预定义的颜色名字可以在外部GUI窗口的Settings -
Colors中找到:
Pymol> color color-name
Pymol> color color-name, selection-expression 比如我们可以:
Pymol> color red, ss h
Pymol> color yellow, ss s Pymol> color green, ss l+"" 其中“ss”代表secondary structure,“h”代表Helix,“s”代表Beta
sheet,l+""代表Loop和所以其他结构。
这3句的作用分别是把所有的Helix变成红色;把所有的Beta sheet变成黄色;把所有的Loop以及其他部分变成绿色,于是我们得到: Pymol可以同时打开多个pdb文件:
Pymol> load object-name-1.pdb
Pymol> load object-name-2.pdb 如果你想暂时关闭/打开某个对象,可以这样:
Pymol> disable object-name-1
Pymol> enable object-name-1 你也可以用disable命令去除最后一个选择的目标上出现的粉红色的小点,但是该命令并不会使你选定的目标不可见。
Pymol> disable selection-name
使用鼠标通常是改变图像视角的最方便的办法,不过命令如zoom,orient等等有时候使用起来也是很有用的,它们提供了另一种改变图像视角的办法。
放大选定目标:
Pymol> zoom selection-name
定向选定目标,可以使选定目标最大的尺寸水平显示,次大的尺寸竖直显示::
Pymol> orient selection-name
你也可以用view命令保存你目前的视角,注意,该命令只保存视角,并不保存你的对象显示方式:
Pymol> view key, action
其中“key”是你随便给当前视角定的名字,“action”可以为:store或者recall。如果不加任何“action”,则默认为recall:
Pymol> view v1, store
Pymol> view v1, recall Pymol> view v1
说了这么多,最后说说如何保存文件吧。Pymol有3个层面的保存方式,下面来分别说说。
Pymol命令的语法与目标选择的表达 上次介绍一些Pymol的基本命令。现在来具体说说Pymol命令的语法,还有在选择操作目标应该如果表达。个人觉得这部分内容对学习Pymol来说是至关重要的。
从上次讲的一些例子中不难看出,Pymol的命令都是由关键词(keyword)加上一些变量(argument)组成,格式如下:
Pymol> keyword argument
其中关键词(keyword)当然是必须的,而变量则不是必须的,比如退出命令quit就不需要附加变量:
Pymol> quit
当然更多的命令通常是需要加变量的,比如放大命令zoom,但是你会发现即使你不加任何变量该命令也可以被执行,这是因为Pymol的许多命令有一个默认变量,下面两个命令的作用是一样的,其中的目标选择all就是zoom的默认变量:
Pymol> zoom
Pymol> zoom all 还有些命令可以带多个参数,比如加色命令color,它的用法如下:
Pymol> color color-name
Pymol> color color-name, selection-expression
第一个color虽然只带一个变量"color-name",但其实它包含了第二个默认变量all,所以它的作用是把整个结构变成"color-name"的颜色。
第二个color带两个变量,和第一个的区别就是把默认的目标选择变量all变成了"selection-expression",也就是说只有被这个变量选中的部分才会被变成"color-name"定义的颜色。 要注意的是,如果一个命令带多个变量,则这些变量之间必须用逗号","隔开。
通过这个例子,大家可以发现,有些变量本身是很简单的,比如"color-name",就是一个颜色名字而已,没什么复杂的。另一些则不一样,比如"selection-expression",它可以很简单,也可以非常的复杂。这个东东,我称之为选择表达,对Pymol命令的使用非常重要,所以下面要详细的讲一下。
选择表达(selection-expression)表示的实际就是一些被选中的部分,它们可以是一些个原子,一些个Helix,一些个Beta
sheet,或者它们的混合物。你可以给你的选择表达起个名字,以便可以多次使用它们。名字可以由大小写字母,数字以及下划线[_]组成,但是因避免使用下列符号:
! @ # $ % ^ & * ( ) ' " [ ] { }
| ~ ` < > ? /
选择表达由所谓的"selector"加上"identifier"组成,其中"selector"定义了某类属性,而"identifier"则在该类属性下需要被选择的部分。如下例:
Pymol> select test, name
c+o+n+ca
其中"name"就是一个selector,它表示在pdb文件中描述的原子的名字;"c+o+n+ca"则是对应的"indentifier",它表示我们要选择pdb文件中名字叫"ca+cb"的原子(ca代表alpha carbon,cb代表beta carbon)。整个语句的作用就是选择上诉的原子并命名为"test",这样我们可以在后面继续使用它。
下表列出了大多数的selector:
下表是另一些Selector,有关比较的:
另外有一些Selector是不需要Identifier的,它们被列在下表中:
在Identifier中用到的原子以及氨基酸的命名规则可以在下面的网址中找到:
http://www./docs.html 在选择表达中,selector还可以配合逻辑操作子(logical
operator)使用,这样我们可以表达更加复杂的选择。这些操作子被列于下表中:
这些逻辑选择还可以组合使用。比如你想选择chain b,但是不选择其中的residue 88:
Pymol> select chain b and (not
resi 88)
在使用多重逻辑选择时,为了让Pymol正确处理顺序,请使用括号,这样最里层括号里面的内容将会被最先处理,以此类推。
好了,目标选择就先说到这里。其实关于目标选择还有所谓的“宏”可以用,可以简化表达式,准备下次说说。 |
|