内容发布更新时间 : 2024/11/14 23:57:25星期一 下面是文章的全部内容请认真阅读。
s1 gap X 选择那些原子,其van der Waals半径至少和s1的van s1 gap X der Waals半径相差X Pymol> select farfrm_ten, resi 10 gap 5 选择以s1中任何原子为中心,X为半径,所包括的所有s1 around X s1 a. X 原子 Pymol> select near_ten, resi 10 around 5 选择以s1中任何原子为中心,X为半径,然后把s1扩s1 expand X s1 e. X 展至该新的范围所包含的所有原子 Pymol> select near_ten_x, near10 expand 3 s1 within X s1 w. X 选择以s2为中心,X为半径,并包含在s1中的原子 of s2 of s2 Pymol> select bbnearten, bb w. 4 of resi 10 byres s1 br. s1 把选择扩展到全部residue Pymol> select complete_res, br. bbnear10 把选择扩展到全部object Pymol> select near_obj, bo. near_res 选择直接和s1相连的原子 Pymol> select vicinos, nbr. resi 10 byobject s1 bo. s1 neighbor s1 nbr. s1 这些逻辑选择还可以组合使用。比如你想选择chain b,但是不选择其中的residue 88:
Pymol> select chain b and (not resi 88)
在使用多重逻辑选择时,为了让Pymol正确处理顺序,请使用括号,这样最里层括号里面的内容将会被最先处理,以此类推。
好了,目标选择就先说到这里。其实关于目标选择还有所谓的“宏”可以用,可以简化表达式,准备下次说说。 by Wei Lü - www.donkeyhome.org
PyMOL用法(教程三)
Pymol的选择宏
上次具体讲了如何在Pymol中怎么用selection-expression选取目标,其实在某些情况下,还可以用Pymol提供的宏来选择操作目标。使用这个选择宏往往可以是一个原本很复杂的表达变得简单紧凑。
例如我们想选择2vlo这个pdb文件中的\中的第100个基团的α炭原子,如果用selection-expression来表达的话是这样: Pymol> select chain a and resi 100 and ca 如果用宏的,可以这样: Pymol> select a/100/ca
是不是觉得简单了很多。好了,下面就来详细讲讲这个宏吧。
因为这个宏是用来选择目标的,所以我称之为选择宏,它用斜杠\来定义Identifier,并且它使用上次介绍过的逻辑操作子\。 一个完整的,按顺序的选择宏的表达如下:
/object-name/segi-identifier/chain-identifier/resi-identifier/name-identifier
之所以说选择宏是有顺序的,是因为Pymol就是靠顺序判断每个斜杠后面的东东都是什么东东。
如果再细分一下的话,其实这个选择宏有2种写法,一个是带开头的斜杠,另一个是不带开头斜杠。区别是: 如果不以斜杠开头,那么Pymol则认为你的表达式的最后一项就是选择宏的末尾的最后一项,也就是name-identifier。例如: Pymol> show lines, a/100/ca Pymol> show lines, 100/ca 如过以斜杠开头,那么Pymol就认为你是从选择宏的表达式的顶端开始的,也就是从/object-name开始的。例如: Pymol> zoom /2vl0//a/100/ca Pymol> zoom /2vl0//a/100
细心的读者肯定发现了上面的例子中有两道斜杠中间什么内容也没有,不会是写错了吧?当然不是,其实在这种情况下Pymol会默认选择这个两道斜杠中被省略的Identifier列表中的全部元素,也就是说被省略的部分被Pymol当作了一个通配符。例如上例中我要选择全部的\,所以我就把它给省略不写了,呵呵,方便吧。
在举些例子来说明一下: Pymol> color green, a/142/
斜杠后面的\被省略了,所以第142号基团的素有原子都会变成绿色。
Pymol> shwo cartoon, a//
a斜杠后面的\以及最后斜杠后面的\被省略了,所以整个a链将以cartoon的方式被显示。
Pymol> zoom /2vl0//b
2个斜杠间的\被省略,所以所有的b链将被放大。 最后总结一下,Pymol的选择宏必须至少包含一个斜杠\,以此来和Pymol的\区分;并且不能包含空格,因为Pymol是把宏作为一个词来读取的;还有就是其实Pymol在执行宏的时候首先是把它翻译成正常的\,然后再执行的。
关于cartoon
cartoon经常被用来显示一个蛋白质的总体结构,看起来也很漂亮。这次就来说说它的具体用法。
不久前本人刚搞定了一个Glucosyltransferase的结构,所以下面所有的例子都用来它来说明。
cartoon的命令格式如下:
Pymol> cartoon type, (selection) 总结一下cartoon的显示类型: automatic:默认的显示方式
loop
tube: 比loop粗点
putty: 这个比较有趣,按照R-factor来显示,越高越粗
oval
rectangle