1、PyMOL 用户指南目录一、 鼠标操作入门 4(这个数字是超链接,ctrl+左键)1. 启动 41) 通过鼠标 42) 通过命令行 42. PyMOL 窗口 41) Virewer 窗口 42) 外部 GUI 窗口 53. 下载 PDB 文件 54. 操控视图 61) 基本鼠标控制 62) 虚拟滚动球旋转 73) 移动截面 74) 改变旋转中心点 85) 简单回顾 9二、 命令行操作入门 91. 记录结果 92. 载入数据 93. 操控对象(Object )101) 原子选择 112) 对象和选择的着色 123) 对象和选择的 on/off124. 改变视点 135. 保存工作 131) 脚本
2、和日志文件 132) 图像文件 143) 会话文件 146. 命令行快捷键 141) 用 TAB 键完成命令 152) 用 TAB 键完成文件名 153) 自动推理 157. 其他命令和帮助 15注:页面背景和页脚的图像分别是 1GCL、111D 的 cartoon 显示三、 命令句法和原子选择 161. 语法 161) 选择表达 162) 原子选择命名 163) 单字选择符4) 属性选择符 185) 选择代数 206) 宏指令 212. 从 PyMOL 中读取 Python 22四、 卡通表示 231. 背景 231) 可达性 232) 美化和精确 232. 定制化 251) 卡通类型 25
3、2) 精美螺旋 283. 二级结构归属 29五、 光线追踪 301. 重要设置 302. 保存图片 31六、 立体效果 311. 支持的立体模式 312. 制作立体图片 313. 相关命令 31七、 动画 321. 概念 322. 重要命令 321) Load2) Mset3) Mdo4) Mmatrix3. 简单举例 334. 复杂举例 335. 预览 ray-traced 动画图片 341) Cache_frames2) mclear6. 保存动画 34八、 高级鼠标控制 341. 选择原子和键 342. “pk”原子选择的应用举例 353. “lb”和“rb”选择 354. 构象编辑 3
4、5九、 晶体应用 351. 晶体对称性 351) Load2) Symexp2. 电子密度图 361) Load2) Isomesh 和 isodot十、 汇编图形对象(CGO)和 Molscript ribbons 371. 简介 372. Molscript ribbons 371) Load2) Using Molscript3. 创建 CGOs 384. CGO 参考 38NOTES: 本教程以 PyMOL users guide 为蓝本翻译而来,并引用了其他资料。 本教程只介绍 PyMOL 在 windows 系统下的应用 本教程以 edu1.1 版本的 PyMOL 为准,大硬盘中有
5、此软件 本教程是 PyMOL 的入门教材,故相关问题只是简单介绍而没有深入讲解 如果你有疑问或者想深入研究,可通过输入命令 help,查看PyMOL 命令 ,登陆PyMOLwiki( http:/PyMOLwiki.org)或咨询他人等途径解决疑难 本教程极少的命令可能在你的 PyMOL 上运行不了,大多是版本问题 译者知识水平有限,可能有不当甚至谬误之处,敬请指正! 本教程不断更新,最新版以文件名和页眉的日期为准。一、 鼠标操作入门1. 启动1) 通过鼠标打开开始菜单,在程序或所有程序中找到 PyMOL 并单击。2) 通过命令行在 Windows 下,打开文件和脚本有多种命令选项。一般地,在
6、“运行”或“命令提示符”中输入:c:program filesdelano scientificPyMOLPyMOLwin.exe如果 PyMOL 没有按默认路径安装,那么就输入正确的驱动器名和路径。 2. PyMOL 窗口PyMOL 一般打开两个窗口:Viewer 窗口和外部(Tcl/TK)GUI 窗口。如下图所示:PyMOL 的两个窗口GUI 是图形用户界面(Graphical User Interface)的缩写,由菜单、按钮、正文框和其他小工具构成。PyMOL 默认有两个 GUI:内部 GUI 在 Viewer 窗口内显示;外部 GUI在它自己的窗口显示。之所以这样的原因既烦琐又专业,
7、但我们知道两个 GUI 最终会统一为一个界面。1) Viewer 窗口PyMOL 的 Viewer 是 PyMOL 系统的心脏。这是一个开放式图形语言(OpenGL)窗口,所有的 3D 图形在此展示,并且用户可直接操纵这些图形。PyMOL 的 Viewer 窗口和内部 GUI(默认)窗口内右边的内部 GUI 可使用户对特定对象(object)和特定原子选择(atom selection注意:原子选择是用户选择了的原子、残基、链、片段、对象等等,相对 object 而言)进行操作。从上到下,内部 GUI 包括对象列表、鼠标按钮配制矩阵、结构指示器和一套 VCR(动画控制) 。窗口底部还有一个命令
8、输入区。在 Viewer 窗口也能查看 PyMOL 的文本输出(text output) ,任何时候都可以按 ESC 在文本输出和图形模式间进行切换。Viewer 完全可以自己运行,它拥有 PyMOL 核心系统的全部功能。如果想这样的话,完全可去除命令和内部 GUI。通过标准菜单和控制,许多任务能更简单高效的完成。在外部 GUI可以找到绝大部分的功能选项。2) 外部 GUI 窗口默认的 Tcl/TK 外部 GUI默认状态下,外部 GUI 包括标准菜单栏、输出区、命令输入区和一系列按钮。外部 GUI 窗口的一个好处是能够对正文进行剪切和粘贴,而在 Viewer 中却没有此功能。另外,必须用Ctr
9、lX、CtrlC 和 CtrlV 进行剪切、复制和粘贴操作,因为在标准编辑菜单中没有这些功能。3. 下载 PDB 文件 通过外部 GUI 菜单:默认的外部 GUI 在 File 菜单有 Open 选项,可由此打开选择的文件。 通过命令:语法 load #载入本地存在的 PDB 文件fetch #直接从网上下载,不用加后缀例如 load test/dat/pept.pdbfetch pept载入 pdb 文件后的 PyMOL 4. 操控视图在 PyMOL 中,鼠标是主要的控制设备,键盘的修饰按键(SHIFT,CTRL,SHFIT+CTRL)在调整按钮操作时使用。为了有效使用 PyMOL,建议选择
10、带有三个按键的鼠标。1) 基本的鼠标控制鼠标的滚动轮的可当做中键使用。下表是基本的鼠标按钮和键盘结合的操作功能:键盘 鼠标左键 中键 右键旋转图像(虚拟滚动球 rotate)在 XY 上移动图像(translate 平移)在 Z 上移动图像(zoom 变焦)Shift 移动截面CtrlShift+Ctrl 回到旋转起始2) 虚拟滚动球旋转虚拟滚动球虚拟滚动球犹如在视野中有个可见的球。当你在屏幕点击拖拽时,好像你的手指按在了球上进行相似的操作。如果在球体外点击拖动,仅能在 Z 轴上做环形旋转;在球体上点击拖动就能在 XY 面上旋转。3) 移动截面截面是在分子前后想象中的平面。截面外的分子部分将会
11、被切除,从而显示出内部。在复杂或大分子中截面非常有用。截面示意图(hither 这边的近处的,yon 那边的远处的)PYMOL 的截面控制需要鼠标和键盘结合,如下图示:SHIFT+右键,当鼠标上下拖动时会调整前截面,左右拖动时调整后截面。截面的控制也可以对角线拖动改变截面的显示,如下图:对角移动截面改变可见的“wedge ”4) 改变旋转中心点观察分子图像时,常常需要改变旋转的中心点,快捷方式是“ctrl+shift+中键”点击目标原子。5) 简单回顾至此,应该能够完成如下任务: 载入 PDB。 旋转、平移、缩放图像。 调整前截面和后截面,以便更清楚地观察分子的切片图。 改变任何感兴趣的原子为
12、选旋转中心。二、 命令行操作入门此部分介绍典型常用的命令,命令语法的详细内容见PYMOL 命令 。PYMOL 语言是事件敏感的(case-sensitive ) ,但是前一个事件不能应用到当前的命令中,所以谨记一定要对下一个事件输入必要的命令。1. 记录结果当在 PYMOL 上操作时,如果想记录下完成的操作步骤,可创建一个日志文件(log-file ):语法log_open log-file-name例如PyMOL log_open log1.pml无论是输入的还是点击的命令都会记录在 log-file 中。文件扩展名是 “.pml”,这样可以把文件作为脚本在新会话中打开。输入 log_clo
13、se 命令可以停止记录,如果不输入此命令,日志文件会一直记录存盘直到关闭 PYMOL。如果仅想保存 PYMOL 当前的状态而不关心操作步骤,可创建一个会话文件(session-file) 。2. 载入数据从文件中载入 PDB,命令如下语法load data-file-name例如PyMOLload $PyMOL_path/test/dat/pept.pdb命令输入后,PYMOL 会打开读取“pept.pdb” ,创建并命名相应的对象,在 Viewer 中显示图像并在控制板中添加对象。默认状态下,PYMOL 会在文件读取后命名对象,当然也可以重命名对象:语法load data-file-name
14、,object-name注意一定要加入 pdb 格式,fetch 后面直接跟上object 名字例如PyMOLload $PyMOL_path/test/dat/pept.pdb #对象命名为“pept”#文件扩展名不会出现在对象名中PyMOLload $PyMOL_path/test/dat/pept.pdb,test #对象命名为“test”(“# ”是注释标志,在命令行中,# 后输入任何信息都不会被 PYMOL 读取)上面载入文件的命令是典型的 PYMOL 语法。load 是关键词,它要求 PYMOL 去执行一定的功能。data-file-name 和 object-name 是要 lo
15、ad 的参数,这些参数告诉 PYMOL 载入什么文件和命名文件。一般而言,参数对关键词来说仅提供运行命令需要的信息。3. 操控对象(manipulating object)对象的操控既可用鼠标,也可用命令。例如,改变默认的表示形式(representation )lines 到 sticks,首先删除 lines 然后显示 sticks:语法hide representationhide representation例如PyMOLhide lines #以 lines 显示的对象消失PyMOLshow sticks #以 sticks 显示的对象出现其他的表示形式还有 cartoon,ribb
16、ons,dots,spheres,meshes 和 surfaces 等(见“表示形式” ) 。当用命令 show 时,新的表示形式出现,但原来的表示形式不消失,非常恼人,可用下面的命令解决这个问题:语法as representation例如PyMOLas sticks #不论原来显示多少种表示形式,命令后只显示 sticks 一种在显示有配体存在的对象时,有时显示不出配体,可通过下面方法解决:例如fetch 1biw #载入对象 1biw,它有一个配体as cartoon #配体存在但却没被显示然后通过鼠标操作,点击内部 GUI 的 S 菜单 organic spheres,就可以看到配体了
17、。1) 原子选择原子选择(atom selections)可以操控分子中一部分原子或化学键。PyMOL 精于对原子或残基的选择、分组和命名。你可以只用一次选择,也可以重命名以便再次使用。例如你可以缩放(zoom )选择的 “on the fly”:语法zoom selection-expressions #选择原子进行缩放例如PyMOLzoom resi 1-10 #resi 是选择符#选择氨基酸残基#给出 PDB 序列号#“1-10” 是标识符Selection-expressions 可以是单个词也可以是长复杂句。一个 Object-name 也可能是selection-expressio
18、n。默认的 selection-expression 是 all,即当前载入的所有原子。如果命名选择,你将能够操作它任意次。对象(object)和选择(selection )的名字可以是大小写字母(A/a 到 Z/z) 、数字(0 到 9)和下划线(_) ,下面的字符是不可以的:! # $ % &* ( ) “ | select boy007,resi 1-10 #选择残基并命名为“boy007”然后使用这个名称:语法zoom selection-namehide representation,selection-nameshow representation,selection-name例如
19、PyMOLzoom boy007PyMOLhide everything,boy007PyMOLshow spheres,boy007当创建一个 selection-name 后,PYMOL 会在控制面板显示出,以便利用面板里的控制功能(见“PYMOL 命令”)。命名的选择(named-selection)如“boy007”和 PYMOL 的对象(object)是有本质区别的。当载入文件时 PYMOL 创建 object-name 用来盛放数据,而选择是指向一组数据的方式。为了区别 selection-names 和 object-names,在控制面板里 selection-names 用括
20、号括起来。当删除了 selection-name,在 object-name 下的数据仍然存在,但这些数据不再以 selection 组织起来。相反,当删除了 object,必须重新载入数据才能再进行相关操作。object name 就是我们载入的蛋白质数据,select-name 是用括号括起来的,是 object 蛋白质某些特性的残基、原子。语法delete selection-namedelete object-name例如PyMOL delete boy007 #boy007 消失,object 仍在PyMOL delete pept #“pept”里的所有原子和化学键都消失了2) 对
21、象和选择的着色你可以对 selections 和 objects 应用不同的颜色。在 settings/colors 菜单里有预定义的 color-names,也可以在控制面板里进行颜色选择。(更多颜色命令见“设置”部分)语法color color-name #整个 object 被着色color color-name,selection-expression #selection 被着色例如PyMOLcolor white PyMOLcolor orange,pept PyMOLcolor green,resi 50+35+56PyMOLcolor yellow,resi 24-35PyMO
22、Lcolor blue,boy007PyMOLcolor red,ss h PyMOLcolor red,ss s PyMOLcolor green,ss l+最后三个例子中 ss 是二级结构的选择符, h 表示 helix,s 表示 beta sheet,l+表示 loops 和非特定结构。3) 对象和选择的 on/offPYMOL 可同时呈现多个对象。disable 和 enable 命令可以消除对象的显示,但仍能够通过命令控制它的属性。语法enable object-name例如PyMOLload $PyMOL_path/test/dat/fc.pdbPyMOLload $PyMOL_p
23、ath/test/dat/pept.pdbPyMOLdisable pept #pept 完全从 viewer 中消失PyMOLcolor yellow,name c+o+n+ca #在 fc 和 pept 中的主链原子都被着为黄色,但是 pept 的原子仍然是不可见的。PyMOLenable pept #pept 原子可见了并显示为黄色通过 disable 命令可以删除命名选择时出现的粉红点(pink dots):语法 disable selection-name例如PyMOLselect bb,name c+o+n+ca #选中的原子在 viewer 中以 pink dots显示PyMOL
24、 disable bb #pink dots 消失,命名选择“bb”仍可见PyMOLcolor red,bb #仍然可以操控 “bb”4. 改变视点鼠标拖动分子往往是最简单的显示操纵方法,然而输入命令如 zoom 和 orient 却是一种不同的方式。Z oom(变焦)命令可使对象或选择在视野中央显示:如果对象或选择没显示在当前的视野,命令会使它显示;如果当前视野仅显示了一小部分,命令会使它充满视野。语法zoom selection-expression 当你想重新查看分子时,Orient 命令是十分有用的。它会调整对象或选择,使其最大维度水平显示,次最大维度垂直显示:语法orient sel
25、ection-expression 你可以保存定向(store orientation)并在后面的新会话中通过命令 view 调用(recall)它,保存定向仅是保存 viewer 中对象的视角(viewpoint),不保存它的表示形式(representation )。为了在新会话中调用,需要命名保存的定向。语法 view name,action #action 是 store 或 recall例如PyMOLview v1,store #当前视野被命名为 v1 并保存PyMOLview v1,recall #调用保存的 v1 定向PyMOLview v1 #recall 是默认的 view
26、语句,所以此命令行也是调用v1关键词 view 仅是在当前会话中保存定向,后面的章节将会讲述如何在不同会话中保存定向。5. 保存工作PyMOL 保存工作的种种过程:1. 在给出一系列命令前,启动进程把命令记录在纯文本日志中,并作为脚本使用。2. 在会话的任何时候,都可以创建一个会话文件保存程序的内存状态,供以后调用此状态。3. 创建图形文件保存 viewer 中的图像。1) 脚本和日志文件(Scripts and Log Files)PyMOL 的脚本只是个文本文件,如日志文件,它由被回车分隔的命令行组成。当 PyMOL载入脚本时,其中的命令就会被执行。PyMOL 脚本文件的扩展名是 “.pm
27、l”,虽然此扩展名不是严格要求的,但也是最好的选择。你可以把日志文件当脚本使用,也可以在文本编辑器如 emacs,jot 或 notepad 创建脚本。当在单独的窗口使用 PyMOL 时,打开文本编辑器往往十分有用,命令就可在这两个程序间复制粘贴。你可以输入命令 log_open log-file-name 或点击“File ”菜单的“log”创建新的日志文件。你也可以在“File”菜单选择“append(附加)”或“resume(重新开始)”,把命令行写入现有的日志文件中。如果点击“resume”,现有的日志文件是第一次作为脚本载入 PyMOL,随后的命令会写入此文件。一旦你创建了日志文件,
28、PyMOL 将会记录保存所有的命令信息,不论是输入的命令还是点击的按钮。但是,为了把分子的定向保存在日志文件中,需输入命令 get_view 或使用 GUI 按钮。在会话中 get_view 很方便,随后可编辑日志文件选择最好的定向。Windows 系统下,可以双击脚本图标,点击“File”菜单的“Run ”选项或者输入命令”打开一个脚本:语法scripe-file-name例如PyMOLmy_script.pml通过命令启动 PyMOL 时可同时打开目标脚本(在 “运行”或“命令提示符”中)语法PyMOL scipt-file-name例如(Windows)C:PyMOL.exe my_sc
29、ript.pml2) 图像文件当你想保存图片时,最好先光线追踪进行渲染来提高图片的质量。光线追踪(ray tracing)显示了在三维世界中光线是如何反射和影子是如何形成的。关键词 ray 要求PyMOL 在 viewer 中重绘(redraw)和显示图片(详情见 “光线追踪”部分)。保存图片到文件,可点击“File”中的“Save image”或输入 png 命令:语法png file-name例如PyMOLpng pep #图片 pep.png 被保存在 PyMOL 安装默认的文件夹中。PyMOLpng d:/boy/pep #图片 pep.png 被保存在 d 盘的 boy 文件夹里。P
30、ng 格式的图片还可通过 ImageMagick 等软件转换成其他格式。注意:图片的大小是随 viewer 窗口的大小而变化的。3) 会话文件(Session Files)如果想返回到 PyMOL 当前的状态,可通过创建会话文件实现(点击 File 菜单中的Save Session,命名以“.pse”为扩展名的文件)。PyMOL 的会话文件是对 PyMOL 存储状态的符号记录,包括载入或创建的对象、创建的选择和 viewer 中的显示。当打开保存的会话文件,PyMOL 会返回到保存的状态。因为一个会话文件代表了一个存储状态,所以打开一个会话文件意味着当前 PyMOL 存储的所有东西都会被清除并
31、被来自会话文件的存储状态替代。会话文件和日志文件或脚本有许多不同。日志文件必须在你想保存给出的命令前创建,而会话文件可以在任何时候创建。会话文件通过 File 菜单的 Open 选项调用,而日志文件被作为脚本通过 Run 选项启动。会话文件不能被人工编辑,而日志文件和脚本却可以。在 PyMOL 会话中,关键点上创建会话文件是个好主意,例如当你决定探讨(explore)多种选项时。通过这种方式,会话文件可被用来替代 PyMOL 没有的“undo”程序。你完全可以通过连续的会话文件存储 PyMOL 任意数量的状态,然后由此恢复到这些状态或有效地撤销你的操作。6. 命令行快捷键1) 用 TAB 键完
32、成命令输入命令的前几个字母然后按 Tab 键,PyMOL 就会自动完成命令或列出符合语法的命令表,例如:PyMOLsel #按 Tab 键就会出现下面的显示PyMOLselect如果不输入命令直接按 Tab 键,那么 PyMOL 会输出全部命令的列表。2) 用 TAB 键完成文件名一些要载入的文件有非常长的路径和文件名,当你按 Tab 键,PyMOL 会自动完成明确的路径和文件名,例如:PyMOLload cry#如果 cystal.pdb 存在于当前工作目录中,按 Tab 键就会产生下面的命令行PyMOLload cystal.pdb如果文件名含糊不清,PyMOL 就会自动匹配并输出目录中匹
33、配的文件名,然后选择一个输入。3) 自动推理在 PyMOL 命令中有一小部分的固定字符串,例如:PyMOLshow sticks 中,对 show 来说 sticks 就是一个固定的字符语句。因为跟在show 后的语句有限,所以当你仅输入几个缩写字母 PyMOL 就能识别,例如:PyMOLshow st 此命令和 show sticks 等效。关键词也可缩写,PyMOLsh st 同样奏效。注意:PyMOL 的命令语言在不断地增长和发展,所以在脚本中使用全长的命令和字符语句非常重要。否则,以后的命令可能使缩写变得含糊不清。例如当“shutoff”加入命令语句后,“sh st”就不会奏效了。7.
34、 其他命令和帮助此“入门”部分通过简单的例子介绍了常用的命令,在PyMOL 命令中有全部命令的详细介绍。在 PyMOL 中可输入 help 按回车查看全部关键词(keyword)的列表,如果想查看某个命令的帮助:语法help keyword例如PyMOLhelp loadPyMOL 将会在外部 GUI 脚本语言和 viewer 中显示命令指南。不必记住所有的关键词,输入 help 和关键词的前一个或几个字母,然后按 Tab 键,脚本语言就会显示可能的关键词列表。点击 viewer 再按 Esc 键会在分子图像和命令语言显示间来回切换。三、 命令语法和原子选择1. 语法典型的 PyMOL 命令总
35、是以指导 PyMOL 执行一定任务的关键词开始,以回车结束。 最简单的命令仅有关键词,如输入 quit 将会强制结束 PyMOL 会话,quit 后从不跟其他语句。 许多命令有默认语句,所以当你只输入关键词,PyMOL 就会默认剩下的语句。如zoom 的默认语句是选择( selection-expression)all,也就是说不用再输入 all 了。 有些关键词,需要部分语句,而其余语句被默认。如关键词 color 需要 colorname 语句,而默认语句是 all:语法Color color-nameColor color-name, selection-expression例如PyMO
36、Lcolor red #所有的显示被着为红色PyMOLcolor red,name ca #仅 C-alpha 原子被着为红色当输入一个命令有多个语句时,要用逗号隔开。一次输入多个命令时要用分号隔开。1) 选择表达(selection-expressions)selection-expressions 指 PyMOL 命令中语句的原子列表,描述了指定引用的一组原子,这些原子大多需要标识符(identifier )来完成指定。 如选择符(selector)resi 指定残基,标识符给出序列号;选择符 name 指定原子,标识符给出 PDB 中描述的名字(ca 代表 alpha 碳,cb代表 be
37、ta 碳)。只有一小部分 selection-expressions 不需要标识符,但大部分都要。PyMOL 应用逻辑算符增加 selection-expressions 的一般性和特殊性。选择符逻辑组合能变得很复杂,所以 PyMOL 能够识别以最少击键输入的缩略语和宏指令。这个部分讲述如何命名选择,然后讲述用缩略语和宏指令做选择的语法。2) 原子选择命名select 命令命名原子选择:语法select selection-name, selection-expression # selection-name 和 selection-expression 是 select 的两个语句,需用逗号
38、隔开例如PyMOLselect bb,name c+o+n+caPyMOLcolor red,bbPyMOLhide lines,bbPyMOLshow sticks,bbPyMOLzoom bb此例中,selection-expression 是属性选择符 name,它选择标识符 c+o+n+ca 完成指定。属性选择符和它的标识符在下面讨论。命名的原子选择(atom-selections)出现在控制面板的名称列表中,它们被括号括起来以区别于对象(objects ) 。控制面板的菜单选项对原子选择和对象是不同的,因为两者的功能有微小的差别。选择是建立在对象下的一组数据的指向,当删除对象,数据就
39、不再可用,任何指向这些数据的选择也都不再可用。但是当删除选择,数据仍然可用。Disable 对象是从viewer 显示中删除它,而 disable 选择仅是关闭 viewer 中高亮显示选择的粉红点。原子选择无论命名与否,都能跨越多个对象:PyMOLload fc.pdbPyMOLload pept.pdbPyMOLselect alpha_c,name ca #选择包括了两个对象中的原子PyMOLcolor red,name ca原子选择在分子结构改变后仍然奏效:PyMOLload pept.pdbPyMOLselect bb,name c+n+o+caPyMOLcount_atoms bb
40、 #bb 中数有 52 个原子PyMOLremove resi 5 #从对象中删除残基 5 中的所有原子PyMOLcount_atoms bb #现在 bb 中数有 48 个原子原子选择是静态的(static) ,选择所包含的原子仅仅是选择被定义时刻存在的原子,而不包括其他,即使是在选择范围内后来被载入的原子也不行:PyMOLload pept.pdbPyMOLselect 007,pept #创建选择“007”包括所有的原子PyMOLcount_atoms 007 #“007”中数有 107 个原子PyMOLh_add #PyMOL 在合适的位置加氢PyMOLcount_atoms 007
41、#“007”中数有 107 个原子PyMOLcount_atoms #而“pept”中却数有 200 个原子原子选择能够被后面的原子选择利用:PyMOLselect bb,name n #选择“bb”包含所有氮原子PyMOLselect cc,bb or name o #选择“cc”包含所有氮原子和氧原子注意:逻辑运算符“or” “and”的含义等同于代数中的“或” “且” 。3) 单字(single-word)选择符最简单的 selection-expression 是单字选择符,这些选择符没有标识符。单字选择符 缩略选择符 描述all * 当前载入 PyMOL 的所有原子none None
42、 没有原子,空选择hydro h. 当前载入 PyMOL 的所有氢原子hetatm Het 从 Protein Data Bank HETATM records 中载入的所有原子visible v. 至少有一种可见表示形式的 enabled 对象中的所有原子present pr. 当前状态下有确定坐标的所有原子(用于创建动画)选择符 none 在向 PyMOL 直接输入命令时不会出现,但在程序脚本中十分有用。单字选择符有缩略形式,一些缩略词后必须跟着圆点或空格,用来界定字符。缩略词和长字符等效,选择你自己喜欢的形式即可:PyMOLcolor blue,allPyMOLcolor blue,*
43、#所有原子变成蓝色PyMOLhide hydroPyMOLhide h. #所有的氢原子的表示形式被隐藏PyMOLshow cartoon,hetatm #PDB 输入文件中被定义为 HETATM 的PyMOLshow cartoon,het #所有原子显示为 cartoon4) 属性选择符PyMOL 能够读取 PDB,MOL/SDF,Macromodel,ChemPy Model 和 Tinker XYZ 格式的数据文件。这些格式文件的某些数据区允许 PyMOL 为原子指定属性。根据这些属性,你可以应用属性选择符和标识符对原子进行分组和选择:选择符对应于数据文件的这些数据区,标识符对应于匹配
44、的目标词或目标数字。在标识符列表中不同的项目仅用“+”连接,不要有空格,连续的选择用“-”连接:PyMOLselect boy,resi 1+2+3 #残基 1、2 和 3 被选择PyMOLselect 007,resi 1-10 #残基 1 到 10 被选择谨记在同一标识符后不可同时出现“+” “-”,如“select bad,resi 1-4+9”。对于空白数据区,标识符是一对空的双引号:PyMOLselect blank,ss “” #blank 包含非二级结构的所有原子大多数的属性选择符匹配它的标识符:属性选择符 缩略形式 标识符和举例symbol e. Chemical-symbol
45、-list单字母或双字母的化学元素符号PyMOLselect polar,symbol o+nname n. Atom-name-list蛋白和核酸中至多 4 字母的原子符号PyMOLselect carbons,name ca+cb+cgresn r. Residue-name-list3 字母的氨基酸符号PyMOLselect aas,resn asp+glu+asn+gln或至多 2 字母的核苷酸符号PyMOLselect bases,resn a+gresi i. Residue-identifier-list至多 4 位数的残基号PyMOLselect boy,resi 1+10+1
46、00+1000Residue-identifier-rangePyMOLselect boy,resi 1-10alt alt Alternate-conformation-identifier-list单字母PyMOLselect altconf,alt a+chain c. Chain-identifier-list单字母或有时是数字PyMOLselect 007,chain asegi s. Segment-identifier-list至多 4 字母PyMOLselect ligand,segi ligflag f. Flag-number从 0 到 31 的单整数PyMOLselec
47、t f1,flag 0numeric_type nt. Type-number单整数PyMOLselect f1,nt. 5Text_type tt. Type-string至多 4 字母PyMOLselect subset,text_type HA+HCId id External-index-number单整数PyMOLselect idno,id 23index idx. Internal-index-number单整数PyMOLselect intid,index 11Ss ss Secondary-structure-type单字母PyMOLselect allstrs,ss h+s
48、+l+其他的选择符对应于数字标识符:数字选择符 缩略形式 语句和举例b b Comparison-operator b-factor value实数PyMOLselect fuzzy,b10q q Comparison-operator occupancy-value实数PyMOLselect lowcharges,qselect doubles,fc.=-1partial_charge pc. Comparison-operator partial charge-value实数PyMOLselect hicharges,pc.15) 选择代数通过逻辑运算符的组合,选择更富有精确性或包含性,这些算符即布尔算符包括and,or 和 not,它们的含义和代数中的“且” “或 ”“非”同义。运算符:选择运算符和标识符列表如下。虚设的变量 s1 和 s2 代表 selection-expressions.运算符 缩略形式 效果not s1 ! s1 选择不在 s1 中的原子PyMOLselect sidechains,! bbs1 and s2 s1 & s2 选择 s1 和 s2 中共有的原子PyMOLselect far_bb,bb&farfrm_tens1 or s2 s1s2 选择 s1 和 s