资讯详情

薛定谔软件实战:从分子对接到虚拟筛选与自由能计算指南

📅 2026/10/5 18:41:16 | 华诺云谱 👁 阅读
薛定谔软件实战:从分子对接到虚拟筛选与自由能计算指南
看到“schrodinger 薛定谔”这个关键词很多人的第一反应是那只既死又活的猫。但我作为一个常年跑计算模拟的人脑子里闪过的其实是另一个东西Schrödinger Suite业内直接叫“薛定谔”一套做分子模拟、药物设计、材料科学的高通量计算平台。薛定谔方程是量子力学的基石而 Schrödinger 这家公司把这套物理模型做成了工程化软件让人可以直接在图形界面里做分子对接、虚拟筛选、自由能微扰计算算得上是药物发现领域绕不开的“重型装备”。这篇文章不聊量子力学科普就围绕我在实际项目里用 Schrödinger 套件做分子对接和虚拟筛选的经验展开。我会从最初的软件选型逻辑讲起一步一步把结构准备、Glide 对接参数、MM-GBSA 重打分、FEP 边界这些核心环节拆开再把实操中踩过的坑、总结的排查方法一并放出来。适合正在学计算化学、生物信息学或者刚拿到薛定谔 license 准备跑第一个真实课题的人参考。1. 先说清楚此薛定谔非彼薛定谔1.1 从量子力学的薛定谔到计算平台Schrödinger 这个名字源于物理学家 Erwin Schrödinger他提出的薛定谔方程描述了微观粒子的波函数演化。现代分子模拟的底层逻辑本质上还是解这个方程——不过不是解析解而是通过各种近似方法分子力学、半经验方法、从头算、DFT在计算机上逼近真实体系的能量和运动状态。Schrödinger 这家公司成立于1990年核心就是用物理模型去预测分子的性质和行为把学术圈里散落的算法工具包装成一套工业级工作流。很多人第一次接触“薛定谔”是在药企实习或者计算化学课程里打开 Maestro 界面看到一堆模块菜单。整套套件里最常见的几个模块是Glide分子对接、Prime蛋白结构预测与 MM-GBSA 重打分、LigPrep配体准备、Desmond分子动力学模拟、FEP自由能微扰、Canvas化学信息学与构效关系分析。它们不是独立的小工具而是共享同一套力场参数、同一套文件格式、同一个图形界面这意味着从受体准备到结果分析整个流程都是串起来的不太需要在不同软件之间玩“文件搬家”。1.2 谁在什么场景下会用到它我见过三类人会真正用到这套软件。第一类是药物研发团队的计算化学家他们拿它做靶点的虚拟筛选、先导化合物优化配合湿实验验证第二类是结构生物学出身的研究者手里有晶体结构或冷冻电镜结构想快速看这个靶点能装下什么形状的分子第三类是跟计算沾边的学生和跨界研究者比如做农药设计、材料筛选、甚至酶催化机理的人也会借用对接和动力学模拟来补充实验解释。这些场景有一个共同点核心需求都是“预测”。结晶一个蛋白可能花掉几个月合成一个化合物又需要时间和经费而计算可以通过打分函数先筛一遍把候选范围从百万级压到几十个。所以 Schrödinger 解决的不是“算出真相”而是“用较少资源找到最可能正确的方向”。这点非常重要后面所有参数选择、流程设计都是围绕它来的。2. 用 Schrödinger 搭一条分子对接流水线2.1 结构准备Protein Prep Wizard 和 LigPrep别跳过这一步我第一次用薛定谔跑对接的时候以为拿一个 PDB 结构直接 Glide 就能出结果结果对出来的打分烂得离谱。后来才明白PDB 文件里存的是实验解析的原子坐标但这个坐标系里其实缺了很多化学上必须的信息氢原子基本都没有组氨酸的质子化状态不明确Asp、Glu 等残基该带几个质子也没定活性口袋里可能还混着结晶缓冲液分子、金属离子、二聚体界面上的水。Protein Prep Wizard蛋白准备向导做的就是这些“补齐”工作。实际操作里我会依次做三件事。第一给蛋白加氢并分配正确的质子化状态第二用 Prime 补缺失的残基和侧链同时处理掉不合理的原子位置冲突第三做一轮能量最小化让整个结构在力场下达到一个稳定构象。这里要特别提醒最小化的原子位移限制不要设太大默认 0.3 Å 就够了否则会把活性位点压变形后面的对接全废。配体端的准备用 LigPrep。它会生成配体的 3D 构象计算特定 pH 下的质子化状态还能产生合理的立体异构体和环构象。这一步很多人不重视直接拿 2D 结构的 smiles 去对接结果发现 Glide 报错或者产出一堆高能构象。常见做法是设定 pH 7.0 ± 2.0让 Epik 模块按生理条件计算所有可电离基团的质子化状态再对每个输入结构生成最多 32 个低能 3D 构象。听起来简单但这一步直接决定后续对接能不能找到“对的姿势”。提示结构准备是整个流程的地基。模板结构里如果带着共晶配体Prep Wizard 默认会保留它不要盲目删掉。这个配体往往是网格生成的定位点也是判断对接结果是否合理的锚定参照。2.2 Glide 分子对接参数怎么选Glide 是 Schrödinger 的招牌对接工具它把配体放进受体结合口袋搜索所有可能的结合构象然后用 GlideScore 打分。具体用哪种精度取决于你要解决的问题。Glide 提供了三档模式HTVS高通量虚拟筛选、SP标准精度、XP超高精度。HTVS 最粗糙也最快适合动辄百万级的超大库初筛SP 是日常最常用的精度兼顾速度和可靠性XP 会对配体-受体之间的形状互补、疏水作用做更精细的惩罚和奖励但极其耗时适合对几十个命中做深度分析。网格生成这一步最容易被忽略。Glide 需要先定义一个受体网格Receptor Grid网格的中心通常放在共晶配体的质心上这样能保证结合口袋被完整覆盖。网格盒子的大小不需要贪大默认的 15 Å × 15 Å × 15 Å 一般够用盒子里还可以指定某些残基为柔性残基让侧链在对接时微调但每加一个柔性残基计算量会指数增加所以一般只对活性位点里最关键的几个残基开启。如果做一个小规模的筛选我的习惯是先用 SP 跑一遍把打分前 20% 的配体拿出来再用 XP 重新对接这两轮的结果综合起来决定下一步实验。很多人上来直接跑 XP一个配体跑十几分钟换来的是被噪声淹没的分数纯属浪费时间。2.3 打分函数怎么选、怎么看对接完成后你会在 Maestro 的结果表里看到一列 GlideScore。它表示的是配体结合到受体上时的一种“经验性评分”不是真实的结合自由能但数值越负说明预测的结合越强。它由好几项加在一起静电相互作用、范德华力、氢键、疏水接触、溶剂化效应、以及配体内部的应变能。理解“打分函数不是能量”这一点很重要。真实结合自由能要考虑熵、去溶剂化、蛋白构象变化这些在对接打分里要么是近似项要么根本没有。所以分数差 0.3 分根本不算差距我自己一般以 1 分以上作为筛选阈值。另一点是分数高更负不代表活性好因为打分函数可能被某些“表面友好”的分子误导比如分子太大、埋在口袋里强行填满空隙导致范德华项虚高。我见过不少人直接按 GlideScore 排序取前 50 个去做活性测试结果命中率惨淡。我的做法是先按分数看排名再逐个目视检查结合姿势——看配体有没有完全离开口袋、有没有严重的原子碰撞、极性基团有没有和水或缺电子区域形成合理相互作用。视觉检查能过滤掉 30% 到 50% 的“分数好看但姿势离谱”的候选。3. 进阶从虚拟筛选到结合自由能计算3.1 虚拟筛选流程设计与富集率如果你面对的化合物库有几万甚至上百万个分子那就不是一个个跑 Glide 的事了而是一个系统流程设计问题。我习惯的虚拟筛选管线分四步。第一步是预过滤。所有配体先过一遍物理化学性质过滤器比如分子量、AlogP、氢键供体/受体数量、可旋转键数参考类药五规则。再跑一遍 ADMET 预测把有明显毒性风险或透膜性差的分子提前踢掉。这一步能把库缩到原来的三分之一甚至更少。第二步是构象和异构体准备。用 LigPrep 批量生成 3D 结构。注意控制立体异构体数量没有手性中心的分子不要生成无谓的异构体否则后面对接时间直接翻倍。第三步是分级对接。所有化合物先跑 HTVS按分数保留前 20%30%剩下的跑 SPSP 结果里取前 1000 到 2000 个跑 XP。每一级都没有必要把上一级的全部结果都拿过来筛的就是“低分基本不值得细看”的思路。第四步是重打分和聚类。用 Prime MM-GBSA 对 XP 命中的前 200 个分子重新打分再对化学结构聚类选每一类里分数最高的一两个。这样最终留下的几十个化合物在结构和理化性质上都有代表性和差异避免 50 个命中全是同一个母核的不同尾巴。富集率是评价筛选流程优劣的关键指标。操作上可以准备一组已知活性化合物和一组诱饵分子混入候选库中跑一遍完整流程看看活性化合物是否比诱饵排在更前面。如果活性化合物大部分排在库的头部说明流程的富集能力靠谱如果活性化合物排名跟随机差不多那即使表面分数好看也说明你的受体结构或准备步骤有问题。3.2 Prime MM-GBSA 的批量重打分GlideScore 是快速筛选的机枪但到了决赛圈你会需要精度更高一点的评价。Prime MM-GBSA 计算的是配体结合前后的能量差综合了分子力学能量MM、连续溶剂化模型GBSA里的极性项和非极性项。它的核心优势在于部分考虑了溶剂化效应这是对接打分里处理得比较粗的部分。实际操作不复杂在 Glide 的结果列表里选中一批配体右键选择 Prime MM-GBSA设置力场用 OPLS4、溶剂模型用 VSGB其他保持默认然后提交任务。它会自动对每个配体做一个小规模的构象采样并给出一个 delta G bind 的估计值。通常可以把 Glide 的排名和 MM-GBSA 的排名做一个交叉验证两者都靠前的分子优先做实验。但这个手段也有明显的边界。它仍是一个“端态”计算忽略了配体结合过程中的熵效应与通路上的中间态因此它输出的数值适合做排序不适合当真实自由能解读。比如对比 A、B 两个类似物说“B 比 A 预估强 5 kcal/mol”是合理的但说“A 的结合自由能就是 -48.6 kcal/mol”就没有物理意义因为绝对数值受力场参数和模型简化影响太大。在我自己的流程里MM-GBSA 永远是“相对比较”工具绝不单独用它拍板一个化合物能不能进合成清单。3.3 FEP 的思路和适用边界如果项目推进到先导化合物优化阶段常见的问题是在某个核心骨架上我想把这个苯环换成吡啶把甲基换成乙基或者在这里加一个氟原子活性会变好还是变坏这时 MM-GBSA 的精度已经不够了就需要引入自由能微扰FEP。FEP 的核心思路是用一系列中间态连接两个结构高度相似的配体计算从一个配体“演化”到另一个配体过程中的自由能差值。因为两个分子结构接近很多误差会在求差的过程中相互抵消所以它预测的相对结合自由能精度可以做得非常高误差通常在 1 kcal/mol 以内远好于 MM-GBSA也更适合指导化学家往哪个方向修饰。但 FEP 不是拿来随便跑的。它的第一个硬性要求是配体之间结构足够相似最好是只在局部官能团上有差异如果你拿一个完全不同的骨架去做 FEP中间态很难收敛结果就失去了意义。第二个要求是计算资源充足每个配体需要搭一张合理的图哪些配体之间建微扰边每个边都要跑分子动力学模拟动辄需要 GPU 集群跑几天。第三个要求是你得有一个可靠的共晶结构或对接结构作为起点起点蛋白质构象如果不对后面一切都白搭。我自己项目里的分工是这样的初筛用 Glide中筛用 MM-GBSA最后的十来个类似物决定具体合成顺序时才上 FEP。这个三级递进既保证了效率也把最贵的计算留给了最重要的决策点不会出现“GPU 集群跑了一礼拜结果发现模拟的体系根本不是活性构象”这种惨剧。4. 实操中我踩过的坑4.1 别拿原始 PDB 直接对接我刚开始做激酶项目时直接从 PDB 下载了一个分辨率不错的晶体结构没有用 Prep Wizard 处理只是删掉了水分子和其他链就生成了网格开始对接。结果筛出来一个打分极高的化合物合成出来却完全没活性。事后回头检查才发现原始结构里 DFG 基序附近有一个关键残基的侧链密度不完整PDB 里存的坐标是扭曲的Prep Wizard 能自动检测并修正而我跳过了这一步。正确操作是每次下载 PDB 后先看序列信息和配体信息再用 Protein Prep Wizard 按默认流程走一遍重点观察 Log 窗口里有没有“missing residues”或“alternate conformations”提示。如果有缺失长度超过五六个残基的 loop看它离活性位点远不远远的话直接保持缺口不要强行建模近的话要考虑换一个更完整的结构因为模型补出来的 loop 不确定性很大对接结果可信度低。4.2 质子化状态和异构体的问题配体端最容易翻车的是异构体数量失控。有一次我想筛一个含有两个手性中心的母核LigPrep 跑完提醒我生成了 4 个立体异构体各 32 个构象总共 128 个文件对接时间直接翻了 16 倍。后来我学会了在有明确实验数据的前提下用 chiral 标记指定只有目标手性构型参与计算或者用 LigPrep 的“retain specified stereoisomers”功能把不需要的异构体删掉。另一件常被忽略的事是水分子的处理。有些活性位点里会有一个水分子它同时在蛋白和配体之间搭桥就好像两个陌生人之间的传话人处于关键的位置。准备受体时如果无条件删除所有水分子某些配体可能就少了一个重要的极性相互作用打分被低估。我的做法是保留所有太阳下看起来协调的水分子与蛋白极性残基距离在 3.0 Å 左右且不与非极性残基冲突的生成网格时再把它们当作受体的一部分参与打分。4.3 资源消耗与并行调优Schrödinger 的任务调度逻辑跟普通程序不太一样很多新手会误以为把所有 CPU 核心都填满就能加速。实际上单个 Glide 对接任务本身对多核利用有限提速的关键是“同时跑多个任务”。我习惯在 Linux 服务器上把配体库拆成几个子文件每个子文件单独提交一个 Glide 任务利用批处理脚本把它们并行调度起来。Desmond 和 FEP 则刚好相反它们强烈依赖 GPU 加速没有 GPU 的话跑一个 100 ns 的分子动力学模拟可能要等一周而用单张中端 GPU 能缩短到一天以内。所以如果你准备长期跑薛定谔的自由能计算别省 GPU如果只是跑对接和虚拟筛选CPU 就够用优先保证内存不要爆掉就行。许可证连接也是一个隐蔽的坑。Schrödinger 的 license 是网络浮动式的如果服务器网络不稳定或者 license 服务没启动启动 Maestro 或命令行工具时会一直卡在“could not checkout license”的报错。排查时先看 license 服务器日志再确认本机环境变量 SCHROD_LICENSE_FILE 是否指向正确的端口和地址通常都能解决。5. 常见问题速查现象可能原因处理方法Prep Wizard 报错缺少大量残基PDB 文件本身分辨率差或截断换用分辨率更高的结构或删除无序区域尽力补全关键残基Glide 网格生成失败共晶配体坐标不完整或原子类型冲突检查配体是否含金属离子或非标准残基编号必要时重新用 LigPrep 处理LigPrep 产出的构象太多立体异构体数量未限制指定手性构型控制每个结构的构象生成上限对接分数很好但结合姿势奇怪配体没进入口袋或原子碰撞严重用 Maestro 检查受力分布关掉不合理的柔性残基设置MM-GBSA 结果不收敛配体电荷设置不合理或结构构象过少重新检查配体质子化状态生成更多的初始构象FEP 自由能结果方差很大中间态不够密或者模拟时间不够增加两个相邻配体间的中间态数量延长平衡时长检查是否选了结构差异过大的配体对还有一个值得单独说的技巧批量任务报错时优先看 job 目录下的 write.log 文件。Schrödinger 的图形界面经常把错误吞掉只显示一个红色的 “Job failed”但具体的失败原因一定写在日志里。学会从日志的第一条 error 开始处理比反复重跑要有效得多。实际项目里我第一次排查一个批量对接任务失败的问题就是因为某个配体包含未被力场定义的卤素原子类型日志里一行 “cannot type atom” 瞬间让我定位到问题换了参数版本后整个队列就顺了。另外建议定期备份 Maestro 中构建好的自定义网格和结果视图。薛定谔的项目文件结构里除了 .mae 主文件还有配套的 .maegz、.log、.grd 等文件。只拷贝主文件回家换个机器继续看结果时经常发现结构缺失就是因为没有把同一目录下的附属文件一起打包。把这些文件统一放进一个项目文件夹里算是一个做了就会感谢自己的好习惯。这套软件不便宜学习曲线也不平缓但只要理顺了“准备结构—生成网格—分级对接—重打分—自由能计算”这条主线它就能成为决策效率的强杠杆。我个人这几年最深的体会是薛定谔的价值不在于帮你跑出更高的分数而在于逼着你想清楚每一步到底在算什么、误差在哪里、结论能支撑多大范围的判断。想明白这层软件选哪家、参数怎么调反而都是次要问题了。
📝

华诺云谱内容团队

资深建站顾问 · 行业研究员

10年+企业数字化服务经验,专注智能建站、SEO优化与品牌营销,持续输出建站技巧、行业洞察与营销干货,已帮助5000+企业实现数字化增长。

你可能需要的服务

订阅华诺云谱资讯周报

每周一封,精选建站技巧、SEO与营销干货,直达邮箱。已有 8,000+ 企业主订阅,助你少走弯路。

↑