1.简介
Desmond是由D. E. Shaw Research开发的显性溶剂分子动力学程序。Desmond是从头开始创建的,重点是准确性、速度和可扩展性。它支持现代分子动力学程序中许多最受欢迎的功能,包括:
- 在GPU上高度可扩展的并行执行
- 使用立方体、正方体和三棱体模拟盒进行具有周期性边界条件的显式溶剂模拟。截断的八面体和菱形十二面体通过它们的三棱体类似物支持
- 使用u系列算法,提高了计算静电相互作用的精度。
- 支持各向同性、半各向同性和各向异性的压力耦合
- NVE、NVT、NPT、NPAT、NPγT组合与Langevin或Nosé-Hoover恒温器,以及Langevin或Martyna-Tobias-Klein恒温器的组合
- 使用多时间步长的方法对运动方程进行交折整合,RESPA
- 消除了许多数值误差的来源,允许使用单精度算术进行准确和快速的计算
- 精确执行约束条件以消除高频运动,从而允许更大的时间步长
- 高效的压力计算
- 准确的检查点机制,用于继续或恢复模拟工作
- 使用Desmond插件查看VMD的轨迹
问题的解决往往涉及到使用各种建模技术,因此将Desmond整合到用于药物开发的薛定谔分子建模套件中,可以增强两者的效用。这种协同作用的例子包括:
- 蛋白质制备工作流程面板、LigPrep(配体结构)和Epik(配体质子化状态)制备工具可用于确保提供给Desmond的结构在化学上是正确的。这种细致的系统准备通常代表了启动分子动力学模拟前的关键步骤。
- Prime可以用来创建同源模型,用于模拟和修复蛋白质结构。
- Glide可以用来在蛋白质结合点内生成相关的姿势,用于模拟。而Desmond则可以用来热弛豫、细化和取样与对接姿势有关的构象。
- 在用Glide进行对接计算之前,Desmond可以用来对蛋白质结构进行采样。
- AutoQSAR可以用来从模拟的结果中产生统计模型。
- SiteMap可用于从模拟结果中识别潜在的结合点。
Schrödinger提供了一系列直接利用Desmond能力的应用:
- FEP+利用自由能扰动理论的能力,产生一系列同源配体与蛋白质受体的精确相对结合自由能。更多信息请参见FEP+用户手册-内容。
- WaterMap分析专门设计的Desmond模拟,以描述蛋白质结合点中水的热力学特性。更多信息请参见WaterMap用户手册。
- 材料科学套件使用Desmond模拟分析材料的体质特性,如热物理特性、弹性常数、应力/应变关系、扩散系数、粘度、持久性长度。更多信息请参见材料科学套件中的Bulk Properties。
- 材料科学套件还提供了准备结构和运行复杂的模拟序列的工具,包括粗粒度的模拟。更多信息请参见材料科学套件中的分子动力学。
Desmond的描述以及性能数据已作为ACM/IEEE 2006年超级计算会议(SC06)会议记录的一部分发表[1]。在开发Desmond的同时,D.E. Shaw研究部引入并扩展了一些科学算法,包括新的并行化策略和数值技术,其中一些已经发表[2-5]。
如果你发表了使用Desmond的工作,请使用我们引用页面上显示的引用。
关于安装信息,请看安装指南--内容。
2.计算概述
Desmond工作应该从准备好的结构开始。对于蛋白质,我们建议用蛋白质制备向导来制备(详见《蛋白质制备指南-内容》)。对于其他类型的分子,如配体,分子应该有一个相当好的Lewis结构(尽管有一些内置功能可以调整不正确的或不理想的Lewis结构)。
如果您有 MacroModel,您可以通过使用 OPLS4(或 OPLS_2005)力场在溶剂设置为 None 的情况下进行当前能量计算(可从应用程序菜单的 MacroModel 子菜单中获取)来对结构进行快速检查。如果计算成功,几乎可以肯定Desmond及其相关工具也能够处理这个结构。如果该结构有问题,Maestro和MacroModel通常会提供有用的诊断,说明可能出了什么问题。
在Desmond分子动力学模拟的基础上进行研究,通常需要经过几个阶段,包括模拟设置、放松系统(这可能只是一个最小化)、运行模拟、查看轨迹和分析结果。模拟设置见《为Desmond模拟建立模型系统》,基本的Desmond最小化、分子动力学、模拟退火、复制交换和元动力学任务见《从Maestro运行Desmond模拟》。检查结果,包括查看轨迹和分析结果,在分析Desmond 模拟中描述。
自由能量扰动(FEP)模拟也可以用Desmond运行,但由于计算的复杂性,这些工作的处理和支持方式不同。关于FEP模拟的更多信息,请看FEP+用户手册-内容。
从Maestro运行的Desmond模拟的基本概要如下:
- 将感兴趣的系统的结构文件导入Maestro。
- 用蛋白质制备向导准备好结构进行模拟。这一步包括去除离子和分子(这是结晶的假象),设置正确的键序,添加氢,必要时填充缺失的侧链或整个残基,调整各种基团的方向,改变残基质子化状态以优化氢键网络,然后仔细检查结构。
- 如果你的系统是一个膜蛋白,将蛋白嵌入膜中。这一步和接下来的两步都在系统生成器面板中进行。
- 生成一个用于模拟的溶解系统。
- 分配正或负的反离子以中和系统,并引入额外的离子以设置所需的离子强度(必要时)。
- 通过最小化或选择面板选项在模拟前弛豫模型系统。
- 在Desmond的一个常规面板中设置模拟参数,用于分子动力学、模拟退火或复制交换。
- 运行模拟。
- 使用轨迹浏览器和其他分析工具分析你的结果。
注意:尽管你可以在Windows和Mac主机上准备和提交Desmond作业,但你只能在Linux主机上运行它们。
作业是在作业控制设施下运行的,它管理启动作业、传输文件、检查状态等细节。关于这个设施的更多信息和它的运作方式,以及作业设置对话框的细节,请参见作业控制指南 - 内容。
3.构建模型系统
对水性生物系统进行模拟需要准备生物分子,如蛋白质和配体,加入反离子以中和系统,选择模拟箱的大小,使用明确的溶剂分子溶解溶质,以及将蛋白质与膜双层对齐(如果使用)。如果必须手动操作,这个过程往往是乏味的。Maestro提供了所有这些任务的工具。
用于Desmond模拟的蛋白质和配体结构必须是完整的、具有合理几何形状的全原子三维结构。在模拟中使用的蛋白质和配体结构的制备可以通过蛋白质制备向导和LigPrep完成。蛋白质制备向导可以纠正结构缺陷,添加氢原子,分配键序,并可以有选择地分配同构化和电离状态,优化氢键网络。欲了解更多信息,请参见《蛋白质制备指南--内容》。LigPrep在必要时进行二维到三维的转换,添加氢原子,根据要求生成同位素、电离状态、环形构象和立体异构体,并产生最小化的三维结构。更多信息请参见LigPrep用户手册-内容。
一旦你准备好了蛋白质和配体的结构,你就可以进行建立一个模型系统的剩余任务,该系统可以包括蛋白质、配体、显性溶剂、膜和反离子。系统生成器使这一过程自动化,大大减少了所需的工作量。你可以在系统生成器面板上设置并运行一个系统生成器作业,也可以通过命令行(参见从命令行建立Desmond模型系统)。System Builder作业可以在Linux、Mac或Windows平台上运行。
要打开这个面板,请执行以下操作之一。
- Click the Tasks button and browse to Classical Simulation → System Setup
- Click the Tasks button and browse to Desmond → System Builder
- Click the Tasks button and browse to Biologics → Molecular Dynamics → System Setup
- Click the Tasks button and browse to Materials → Classical Mechanics → More MD Tasks → System Builder
在你开始在此面板工作之前,在工作区显示溶质。
4.从maestro运行Desmond模拟
Desmond面板使您能够设置和运行Desmond的主要任务:分子动力学、最小化、模拟退火、复制交换和元动力学工作。这些面板的设计是为了使设置这些类型的工作尽可能简单,并提供最常见的模拟控制。面板中提供的默认值代表了准确性和性能之间的良好平衡,对于大多数工作来说,无需改变就足够了。如果要对模拟参数进行更多控制,可以在Desmond - 高级选项对话框中进行设置。定制的力场可以在模拟中使用;现有的定制力场的位置在偏好面板中设置。Desmond面板(及相关工具)可从经典模拟下的任务工具中获得;轨迹查看器可从项目表中使用作业的输出条目打开。
除了设置模拟,你还可以使用这些面板从之前中断的模拟所产生的检查点文件中重新启动模拟。在这种情况下,面板会进入只读状态,在这种状态下,大部分控制都是由读取的信息设置的,不能更改。
所有从这些面板运行的工作都需要先在系统生成器面板中建立一个模型系统--详见为Desmond模拟建立模型系统。
Desmond模拟是在一个单一的图形处理器(GPU)上运行。如果主机有一个以上的GPU,作业驱动会自动选择GPU。一个模拟只能选择一个GPU,因为多于一个GPU的扩展性很差。对图形处理器的要求在支持平台网页上给出。你还必须设置主机文件,以识别具有合适图形处理器的主机上的GPU,使用pgpu设置--参见主机文件的信息。还有几篇关于Desmond使用GPU的知识库文章。
Desmond模拟也可以从命令行运行--参见从命令行运行Desmond模拟。
关于个别面板的细节,请看该面板的帮助。
- Desmond — Minimization Panel
- Molecular Dynamics Panel
- Simulated Annealing Panel
- Replica Exchange Panel
- Metadynamics Panel
5.模型系统的弛豫
系统的弛豫是MD模拟的一个重要部分,因为刚建立的系统可能有很大程度的应变。只有当系统被松弛后,才能进行模拟,在给定的温度和压力下,系统的特性才能被分析出来。
NPT组合的默认松弛过程的阶段是:
1.在10K温度下用布朗动力学在NVT集合中进行模拟,时间步长较小,溶质非氢原子受到限制。
2.在NVT集合中使用Langevin恒温器进行模拟:
模拟时间为12ps
温度为10K
一个快速的温度松弛常数
每1ps进行一次速度重采样
非氢溶质原子受到限制
3.使用Langevin恒温器和Langevin静止器在NPT集合中进行模拟:
模拟时间为12ps
温度为10K,压力为1大气压
快速温度松弛常数
一个慢速压力松弛常数
每1ps进行一次速度重采样
非氢溶质原子受到限制
4.使用Langevin恒温器和Langevin静止器在NPT集合中进行模拟:
模拟时间为12ps
温度为300K,压力为1大气压
快速温度松弛常数
一个慢速压力松弛常数
每1ps的进行重新取样
非氢溶质原子受到限制
5.使用朗格文恒温器和朗格文静压器在NPT集合中进行模拟。
仿真时间为24ps
温度为300K,压力为1大气压
快速温度松弛常数
正常压力松弛常数
这个协议也用于NPAT和NPγT组合。一个类似的协议也用于NVT集合。
协议文件可以在$SCHRODINGER/mmshare-vversion/data/desmond找到。该程序遵循与NPT类似的模式。
6.含膜模型系统的弛豫
对含有膜的系统的模拟需要一些特殊的考虑。这是因为目前几乎所有存在的全原子膜势模型,在模拟纯膜时,在几十纳秒的时间尺度上都不能保持适当的表面积。如果非脂质成分占了膜区域的很大一部分(如相对少量的脂质中的蛋白质),这个问题就不那么明显了,可能不需要特别处理。在这种情况下,半各向异性的NPT集合可能工作得很好。然而,如果模拟的膜是纯的或只包含一个小的溶质(如配体大小),下面的实际方法可能是有用的。
弛豫新建立的蛋白质-膜系统可能是困难的。特别是,蛋白质间水渗透高于脂质可能是有问题的,需要非常长的模拟来纠正。在所有的Desmond面板(分子动力学面板、模拟退火面板、复制交换面板、元动力学面板)中,或者通过在命令行中运行脚本 relax_membrane.py(见 relax_membrane.py:弛豫含膜系统),可以得到一个应该减少或消除这种问题的弛豫协议。
当膜系统被加载到其中一个面板时,它会自动检测到膜的存在,并将默认的集合改为NPγT,并在模拟选项前选择放松膜模型系统。这确保了在模拟前进行膜弛豫协议:在工作文件夹中写出的.msj文件包括模拟前的膜松弛协议。默认情况下,使用分布中的松弛协议。你可以通过在松弛协议文本框中输入文件名,或点击浏览找到文件来指定一个不同的协议。
默认的膜弛豫协议中的阶段在下面给出。默认的恒温器(Nosé-Hoover)和静止器(Martyna-Tobias-Klein)在整个过程中都被使用,因为它适合于该组合。从第2阶段到第4阶段,应用一个高斯偏置力,使水不渗透到膜中。这个偏置力不应用于晶体水,以保持其相对于蛋白质的位置。
1.在NVT集合中使用布朗动力学进行模拟:
仿真时间为50ps
温度为10K
对溶质的约束力常数为50 kcal mol-1 Å-2
2.使用布朗动力学在NVT集合中模拟:
模拟时间为50ps
温度为10K
溶质的力常数为50 kcal mol-1 Å-2。
仿真时间为20ps
温度为100K
压力为1000bar
对溶质和膜重原子的约束力常数为50 kcal mol-1 Å-2
3.在NPγT集合中进行模拟:
仿真时间为100ps
温度为100K
压力为1000bar
对溶质重原子的约束力常数为10 kcal mol-1 Å-2。
以2千卡摩尔-1 Å-2的力常数约束膜N和P原子在Z方向上。
4.在NPγT集合中进行模拟:
仿真时间为150ps
从100K的温度加热到300K
压力为100bar
对溶质重原子的约束力常数为10 kcal mol-1 Å-2。
在Z方向上对膜的N和P原子的约束力常数为2千卡摩尔-1 Å-2
约束力逐渐减少到0
5.在NVT集合中进行模拟:
仿真时间为50ps
温度为300K
对蛋白质骨架和配体重原子的约束,力常数为5 kcal mol-1 Å-2
6.在NVT集合中进行模拟:
仿真时间为50ps
温度为300K
没有约束条件
7.分析Desmond模拟
您可以用几种方法来分析Desmond模拟。有些分析可以在任何分子动力学模拟上进行,有些则只能在特定类型的模拟上进行。
- 要以电影形式播放轨迹,提取快照,并进行交互式分析,请使用轨迹播放器。
- 要对轨迹进行聚类,请使用轨迹框架聚类面板。
- 要检查集合属性,如势能、温度或压力,请使用模拟质量分析面板。
- 要测量基于几何和能量的属性,如RMSD、RMSF、氢键或库仑能,请使用 "Review Energy Plots "面板或 "Plot Computed Values Over Time "面板。
- 如果你进行了蛋白质-配体系统的分子动力学模拟,使用模拟相互作用图面板来分析蛋白质-配体系统的特定属性。
- 你可以用 "径向分布函数 "面板计算径向分布函数
- 如果你进行了元动力学模拟,你可以用元动力学分析面板对其进行分析
- 如果你进行了复制交换模拟,可以用复制交换动力学审查面板进行分析。
8.Desmond文件
8.1输入文件
从Maestro提交的Desmond模拟有三个输入文件:复合模型系统文件,multisim作业文件,以及前端配置文件。
下面简要介绍这些文件,并提供其他主题的链接,以提供更多细节。
复合模型系统(CMS)文件-这是一个包含输入复合模型系统的结构文件。它通常由系统生成器生成(见为Desmond模拟建立模型系统)。如果该文件是从Maestro中写入的,它被命名为jobname-in.cms。更多信息请看复合模型系统(CMS)文件。
MultiSim Job (MSJ)文件-该文件命名为jobname.msj文件是模块化的,它由一系列模拟阶段组成,每个阶段都包含一个关键词和数值设置列表。详见multisim作业文件,以及A Sample multisim作业文件的例子。
前端配置(config)文件-该文件名为jobname.cfg,描述了Desmond后端应该执行的计算的性质。有两种类型的配置文件,"前端 "配置文件和 "后端 "配置文件。前端配置文件由Maestro编写,包含执行模拟的参数,如时间步长、总时间、温度和压力,还有轨迹帧的写入频率。详见《Desmond配置文件》。后端配置文件(-in.cfg和-out.cfg)在作业过程中写入,并与模拟结果一起返回。
当从Maestro运行作业时,你通常不需要关心这些文件。如果你想从命令行运行作业,你可以把它们写出来。首先在面板中进行所有的设置,并在作业设置对话框中进行主机设置,然后点击作业设置按钮箭头,选择写入。
.cms、.msj和.cfg文件被写入,还有一个运行作业的脚本。
8.2输出文件
从Maestro运行的Desmond模拟会产生一些输出文件。(严格来说,这个模拟实际上是一个MultiSim作业,它作为后台运行实际的Desmond代码;输出文件是MultiSim输出文件。更多信息请参见使用multisim运行模拟)。模拟作业会返回以下文件。
- 压缩的multisim阶段(.tgz)--在.msj文件中指定的每个完成阶段的数据和文件被归档并压缩在一个.tgz文件中,其名称为jobname_stagenum-out.tgz。该档案包含与特定阶段有关的文件,包括:
后台配置文件(-in.cfg, -out.cfg)
后台日志文件(.log)
CMS结构文件。-in.cms,当前阶段的输入结构(第一帧); -out.cms,当前阶段的输出结构(最后一帧,用于下一阶段的输入)
检查点文件(.cpt)
能量文件(.ee)。
模拟box细节(-simbox.dat)
轨迹目录,包含该步骤的轨迹。
- 能量文件(.ene)--能量文件列出了每个时间步骤的各种能量:系统的总能量或守恒能量(E),它是势能(E_p)、动能(E_k)和与扩展粒子恒温器相关的能量(E_x)的总和;E_c是质心运动的动能(应该是零,因为它应该被定期移除);E_f是与速度韦莱积分器的力修正相关的能量项,它确保能量的更好守恒。它还列出了压力(P)、体积(V)和温度(T)。
- 日志文件(.log)-有两种类型的日志文件:multisim日志文件和后台日志文件。后台日志文件可以在压缩的阶段档案中为每个阶段找到,它列出了用于该特定阶段的配置和模拟时间细节,如化学时间、步骤和ns/day。multisim日志文件在主作业目录中,包含启动命令、.msj文件中的阶段列表、每个阶段的启动和完成时间,以及所花的时间,还有主机名称和作业名称。multisim日志文件给出了作业的整体进度信息,而后端日志文件则给出了单个阶段的信息。
- 检查点文件(.cpt)--这些文件对于重新启动作业至关重要。它们包含时间、原子速度、模拟箱细节、压力和温度设置以及其他基本参数,以便从写入检查点文件的时间开始重新启动模拟。(参见关于从前端配置文件中控制检查点的信息)。
- 轨迹目录(_trj)- 主生产阶段的轨迹目录(文件夹)jobname_trj被复制到作业目录。轨迹的信息包含在作业的输出结构(CMS)文件中,jobname-out.cms,它可以从Maestro访问轨迹。各个阶段的轨迹可以在压缩的阶段档案中找到。
8.3复合模型系统文件
系统生成器将模拟系统写入一个扩展名为-out.cms的复合模型系统文件中。复合模型系统文件是多结构的Maestro文件,适用于用Desmond启动MD模拟。准备好的模型系统最多可以包含六个组件,每个组件都作为一个单独的条目存储在CMS文件中。
- 完整的系统
- 溶质(通常包含蛋白质-配体复合物)
- 膜(用于含脂质的系统)
- 阳性离子
- 负离子
- 水
系统生成器也将力场参数写入CMS文件中。因此,它不是简单的Maestro文件,尽管它使用Maestro格式。材料科学套件中的无序系统生成器面板也会生成CMS文件,通过运行系统生成器作为工作的一部分。
CMS文件可以由Maestro以常规方式读取,额外的力场数据和结构一样被读入。Maestro中的这些条目可以作为Desmond模拟的输入,可以使用Desmond的面板进行MD模拟(分子动力学面板、模拟退火面板、复制交换面板、元动力学面板),也可以使用材料科学应用面板,模拟用于计算系统的特性。
模拟结束后,会写一个CMS文件作为结构输出,扩展名为-out.cms.这个CMS文件包含了轨迹的最后一帧的结构,同时也包含了轨迹的位置信息。这个输出的CMS文件可用于分析或进一步模拟。
9.VMD读Desmond轨迹
VMD是一个用于可视化分子动力学模拟的强大程序,可从伊利诺伊大学厄巴纳-香槟分校的理论和计算生物物理学组获得。作为VMD的一部分,提供了一个Desmond的插件,使得VMD可以读写Maestro文件和读取Desmond轨迹。输出的Maestro文件适合用于建立模型系统,然后可以用来运行Desmond。
本章包含了将CMS文件和Desmond轨迹读入VMD,以及从VMD写入Maestro文件的信息。有关安装信息,请参见为Desmond安装VMD。
要启动VMD,请输入以下命令。
将会打开两个窗口:VMD主窗口和VMD版本OpenGL显示。前者可用于控制VMD,后者可用于显示分子系统和查看轨迹。VMD有大量的文档,可以从VMD主窗口的帮助菜单中获得。
将CMS文件和Desmond轨迹读入VMD中
从VMD编写Maestro文件
9.1将CMS文件和Desmond轨迹读入VMD中
本节介绍如何将Maestro CMS文件和Desmond轨迹读入VMD。要在VMD中查看Desmond轨迹,首先必须读入Desmond模拟的输出结构CMS文件。这个文件通常被命名为jobname-out.cms。目前不支持查看来自Desmond FEP模拟的轨迹。
要读入一个CMS文件:
1.从VMD主窗口的File菜单中选择New Molecule。
Molecule File Browser(分子文件浏览器)面板打开。
2.点击Browse。
一个文件选择器打开。
3.导航并选择来自Desmond模拟的输出.cms文件,然后点击OK。
文件选择器关闭。
4.在分子文件浏览器面板中,将文件类型设置为Maestro文件(无时间步长)Maestro File (no timesteps)。
5.点击Load。
您刚刚在VMD中创建了一个分子列表,在VMD主窗口中应该出现一个新的行,与您刚刚读入的CMS文件相对应。
要读入这个系统的轨迹:
1.确保刚刚读入的CMS文件的那一行是唯一被突出显示的。
2.在VMD主窗口的File菜单中选择 Load Data into Molecule 中。
Molecule文件浏览器面板打开。
3.点击Browse。
一个文件选择器打开。
4.从Desmond模拟中导航到轨迹目录。
5.选择文件clickme.dtr并点击OK。
文件选择器关闭。在分子文件浏览器中,文件类型现在应该被列为Desmond trajectory。
6.点击Load。
轨迹应该加载到VMD并自动开始播放。
9.2从VMD编写Maestro文件
你可以从VMD中把单个配置导出到Maestro文件中。这可能是一个有用的方法,可以将各种程序产生的配置转换为能在Maestro中运行的格式。
要从VMD中导出Maestro文件:
1.在VMD的主窗口中选择要输出的分子。
2.从文件菜单中选择保存坐标。
保存轨迹 "面板打开。
3.将文件类型设为mae。
4.点击保存。
5.在文件名文本框中,编辑目录,并将新文件的名称附加到目录中。
这是一个普通的Maestro文件,其扩展名应该是.mae。
6.单击OK。