RMSDRoot-Mean-Square Deviation
整個結構跟參考結構差多遠,一條隨時間變化的曲線。
01一句話只有一句
每一幀跟參考結構整體差多遠,畫成一條隨時間的曲線。
02Why should I care?我為什麼要讀這頁
因為這是你打開一條新軌跡的第一個動作,也是最容易被誤當成「收斂證明」的一個數字。
你在 VASP 裡判斷結構鬆弛完了沒,看的是 EDIFFG:給正值就是相鄰兩離子步的能量變化要小於它,給負值(實務上更常用)就是每個原子的受力都要小於它的絕對值。那是一個有定義的判準:力小於門檻,你就真的停在一個局域極小點附近。MD 沒有這種東西。你在跑的不是最佳化,是取樣;「收斂」的意思不是「某一點的梯度變小」,而是「你抽到的分布不再變化」。可是一條 RMSD 曲線只是一個純量隨時間的軌跡,它原則上無法證明分布收斂 —— 但這個領域長年拿它當替代品。
這頁的目的就是讓你在寫 methods 的時候,不會寫出「RMSD 在 20 ns 後達到 plateau,顯示系統已收斂」這種話。因為在你自己的系統上,protein RMSD 跨 4 條獨立 replica 的 CV 是 12.2%,介面 iRMSD 更高到 23.9%。同一個系統、同樣的設定、只換亂數種子,四條曲線停在 2.3 到 3.0 Å 之間四個不同的高度,其中三條平得很漂亮、剩下一條尾段還在往上爬。如果你當初只跑了那三條裡的任何一條,你會理直氣壯地宣告收斂。
03What這是什麼
先做最佳疊合(superposition,通常用 Kabsch 演算法把整體平移與轉動移除),再算:
它是 3N 維構形空間裡的一個歐氏距離,被壓成一個純量。這句話包含了它全部的優點與全部的缺點:壓縮是有損的。兩個完全不同的結構可以有一模一樣的 RMSD 值,就像兩個不同的檔案可以有一樣的檔案大小。
三個選擇決定這個數字的意義,而且三個都必須寫進 methods:
- fit selection(拿哪些原子做疊合) 與 measure selection(拿哪些原子算偏差)。它們不必是同一組,而且分開才有用。用整個蛋白疊合、只量 HNH,你得到的是 HNH 相對於分子其餘部分的剛體位移;用 HNH 自己疊合、量 HNH,你得到的是 HNH 的內部形變。兩個數字可以差好幾倍,講的是兩件事。
- 參考結構是誰。 晶體結構、第一幀、production 的平均結構、或前一幀(給你 dRMSD/dt),四種選擇各自回答不同問題。
- 原子集合。 Cα、backbone、全部重原子、含氫,數字依序變大。核酸沒有 Cα,選 P 還是 C1' 要寫清楚。
iRMSD(interface RMSD) 是介面版本:先用 10 Å 截止選出介面殘基,只對這些殘基的骨架做疊合與計算。它是 CAPRI 評估 docking 模型品質的標準指標之一,也是你在 protein–DNA 系統裡最常想報的那個 RMSD —— 因為介面才是你在乎的地方。
RMSD 是結構距離,不是物理量。它沒有對應的實驗 observable,沒有能量單位,也沒有守恆律。它的價值全部來自診斷,不來自物理。
04Why為什麼重要
它量到的東西比多數人以為的少。RMSD 沒有告訴你能量、沒有告訴你速率、沒有告訴你哪個交互作用重要。它告訴你的只有一件事:這一幀離參考有多遠。
但這一件事在實務上非常值錢,因為 MD 的失敗模式大多是災難性的、而且肉眼可見的:某個 domain 飛掉、DNA 一股滑脫、蛋白開始解摺、週期性邊界處理錯了讓分子被切成兩半、restraint 忘記關掉。這些事情全部會在 RMSD 曲線上留下無法忽視的痕跡 —— 突跳、單調攀升、或是一個永遠不下來的高原。
用你熟的話講:RMSD 是煙霧偵測器。它能可靠地告訴你房子失火了,但它評不了這頓飯好不好吃。你不會因為煙霧偵測器沒響就宣稱菜色優秀,可是 MD 論文裡「RMSD 平了所以模擬是可信的」這種句子滿地都是。
還有一件事值得先講清楚,因為它常被反過來用:RMSD 不是力場被校準的對象。 打開 ff14SB 那篇論文,它的驗證標的是相對構形能量對 QM 的誤差(壓到 1.0 kcal/mol 以下,比 ff99SB 改善 35%)與 NMR 的 χ1 耦合常數,不是「模擬結構對晶體結構的 RMSD」。RMSD 在文獻裡的位置是事後的健康檢查,不是擬合目標。所以當你看到一個「正常」的 RMSD,你既沒有確認生物學結論,也沒有確認力場在你這個系統上真的準 —— 你只確認了沒出大事。這個區別跟你在 DFT 裡拿晶格常數誤差驗證贗勢是同一件事:晶格常數對得上,不代表你算的吸附能就對。
05How怎麼做
最小工作流(每條軌跡都跑,成本是秒到分鐘等級):
- 全域 backbone RMSD,參考用晶體結構(你的是 5F9R),fit 與 measure 同一組。這是煙霧偵測器。
- 分 domain 的 RMSD,fit 在一個相對剛性的核心(例如 RuvC 加 REC 核心),measure 逐 domain。這張圖會直接把 HNH 的擺動秀出來。
- iRMSD,10 Å 介面殘基骨架。這是你真正在乎的那個。
- 三者都每條 replica 各一條曲線疊在同一張圖上,不要畫平均曲線。
工具與寫法:
gmx rms -s ref.tpr -f traj.xtc -fit rot+trans -o rmsd.xvg。用-n給 index 檔可以分開指定 fit group 與 output group(互動選擇時它會先問「疊合用哪組」再問「計算用哪組」—— 這兩問就是 fit / measure 的分離,很多人隨手兩次都選 Protein 就跳過了)。- MDAnalysis:
MDAnalysis.analysis.rms.RMSD(u, ref, select='backbone and segid PROT', groupselections=['segid HNH', 'segid DNA'])。select是 fit set,groupselections裡每一組都會在用select疊合之後各自算 RMSD。這正是「fit 在核心、量在 domain」的標準寫法,也是這個工具最被低估的功能。 - mdtraj:
md.rmsd(traj, ref, atom_indices=...)的atom_indices同時用於疊合與計算。要分離就先traj.superpose(ref, atom_indices=fit_set),再自己對 measure set 算偏差。
丟掉多少 equilibration,不要用目測。 pymbar.timeseries.detect_equilibration 之類的做法會用統計判準(最大化有效不相關樣本數)自動切點,比「我看它 20 ns 就平了」可防守得多。這是免費的可信度加分。
報告清單(缺一項 reviewer 就有話講): 參考結構是誰、fit selection、measure selection、原子集合、丟掉多少前段、幾條獨立 replica、以及跨 replica 的 mean ± SD 或 CV。
06When什麼時候用
- 每一條 production 軌跡跑完的第一件事。 這是最便宜的系統健康檢查,沒有例外。
- 決定 production 從哪裡開始算。 配合統計判準,不要目測。
- 偵測明確的大尺度事件:domain 脫離、DNA 股滑脫、解摺、建模區段爆走。
- 當你有一個明確的「終點構形」要度量接近程度時。 例如把 HNH docked 的晶體構形當參考、只量 HNH。但如果你真的在追這件事,HNH 距離是更直接、更好解釋的座標。
- 附在 SI 裡當作「我的系統沒爆炸」的標準證據。 這是它最恰當的最終歸宿。
07When NOT什麼時候別用
-
不要用 RMSD plateau 當收斂證據。 為什麼會壞:plateau 只證明「在這段時間內沒發生大事」。系統完全可以穩穩地卡在單一 basin 裡,而你需要的那個構形轉變在別的 basin。Palermo 等人做 Cas9 的 HNH 構形活化就是這樣:非偏壓 MD 到不了那個轉變,得上 enhanced sampling。怎麼看出它壞了:把多條獨立 replica 的曲線疊在同一張圖上。你自己的數據就是最好的示範 —— protein RMSD 跨 4 條 replica 的 CV 是 12.2%,四條停在 2.3 到 3.0 Å 之間不同的高度,三條平、一條尾段還在爬。若只跑一條,你永遠不會發現這件事。
-
不要用 RMSD 排序變體。 為什麼會壞:介面 iRMSD 跨 replica 的 CV 是 23.9%,屬於 noise tier。你想偵測的變體間差異幾乎一定小於這個雜訊。更根本的問題是 RMSD 沒有方向性 —— 兩個變體可以有相同的 RMSD 卻往完全相反的方向偏離參考,排序把它們判成一樣。怎麼看出它壞了:先算同一個變體內部跨 replica 的 SD,再看變體之間的差值。差值沒有明顯大於 SD,這個排序就不存在。
-
不要在沒說明 fit / measure 分離的情況下報 domain RMSD。 為什麼會壞:HNH 是整台機器上最會擺的部分。用全蛋白疊合量到的 HNH RMSD,主要成分是它整塊在動,不是它自己在變形。讀者無從分辨你講的是哪一個,而這兩件事的生物學意義完全不同。怎麼看出它壞了:兩種算法都跑一次,如果數字差很多(在 Cas9 上一定會),那你就必須明說你用的是哪一種。
-
不要跨系統或跨 paper 比較絕對值。 為什麼會壞:RMSD 對系統大小有系統性依賴(分子越大,低頻集體運動的數目與振幅都越大,平方平均被一起抬高;這個效應大到有人專門提出按殘基數正規化的版本來補救),也隨力場、水模型、溫度、軌跡長度、原子集合系統性移動。怎麼看出它壞了:把同一條軌跡分別用 Cα、backbone、全重原子算三次,三個數字就不一樣了 —— 連自己跟自己都不可比,何況跨 paper。
-
含大量建模補出區段時,不要報全域 RMSD。 為什麼會壞:平方平均會被最大的幾個偏差主導。你系統裡有 11 個核苷酸屬於這一類 —— 5F9R 的 non-target 股 res 1 到 11 在晶體裡完全沒有電子密度(該鏈 30 nt 只有 19 個被 model 出來),是你自己補建的;它們的 RMSF 有 6 到 8 Å,而有實驗座標的本體只有 3.9 Å。這幾個殘基會把整條全域 RMSD 曲線扛在肩上。怎麼看出它壞了:把它們排除後重算,若曲線整個掉下來一截,你原本量的就是那幾個殘基的建模不確定性。
-
不要把 RMSD 當反應座標去投影自由能。 為什麼會壞:從 3N 維壓到 1 維是多對一映射,不同 basin 的構形會落在同一個 RMSD 值上而被疊在一起,投影出來的 PMF 會出現不存在的 barrier、也會把真的 barrier 抹平。怎麼看出它壞了:拿同一條軌跡做 PCA,看在 PC1–PC2 平面上分得開的 basin 是不是在 RMSD 軸上重疊。要反應座標就用物理座標或 tICA/PCA,不要用 RMSD。
「RMSD 在 X ns 後達到 plateau,顯示系統已達平衡。」這句話在單條軌跡上沒有任何統計內容。它成立的前提是「若沒收斂,RMSD 一定不會平」—— 而這個前提是錯的。改寫成「RMSD 在 X ns 後未再出現大尺度躍遷,我們以此界定 production 起點;收斂性另以跨 4 條獨立 replica 的 CV 評估(見 SI)」,同樣的資料,可信度差一個量級。
08Project Lens跟我的 project 多相關
為什麼不是更低(不是一星或兩星): 因為它是進入這條 pipeline 的強制閘門,而且這個閘門很貴。你的 5F9R 完整三元系統是 535,265 個原子、4 條 replica、每條約 87 ns,跑在資料中心級 GPU 上;而共用叢集上同時可跑的 job 數有硬性上限。在這種算力現實下,最不能接受的事情是「跑完才發現系統早就壞了」。RMSD 是秒級成本、又能一眼掃掉大多數災難性失敗模式的檢查。它抓不到的(質子化指派錯、恆溫器耦合不當、力場選錯)另有別的關卡,但它抓得到的那一類,沒有更便宜的辦法。它不值錢,但它省下來的是 GPU 時數。
為什麼不是四星或五星: 因為它自己的可靠性數據已經把它擋在打分層之外。protein RMSD 的 CV 12.2% 是 marginal,介面 iRMSD 的 23.9% 直接是 noise —— 兩者都遠差於總 protein–DNA 接觸的 4.1% 與 BSA 的 2.1%。更關鍵的是方向性問題:這個 project 的核心結論是專一性由 HNH 構形檢查點的動力學決定,而不是平衡結合強度。RMSD 是一個平衡結構的距離,它連「哪個構形」都分不清楚(多對一映射),更不可能量到「跨越門檻有多難」。
具體怎麼用: QC 層與 SI,不進打分層。標準配置是三張圖 —— 全域 backbone、分 domain(fit 在核心)、iRMSD,每張都疊四條 replica 的曲線並標出 CV。在正文只寫一句「系統在 production 期間未出現大尺度結構失穩」,把數字放 SI。要打分,去聚合接觸數或介面埋藏面積。
09Reviewer Thinkingreviewer 會問什麼
你怎麼決定丟掉多少 equilibration?是目測 RMSD 曲線嗎?點開看參考答案
如果答案是目測,這一問就會滾成三問。可防守的回答是:用統計判準自動決定切點(例如 pymbar.timeseries.detect_equilibration 這類最大化有效樣本數的做法),並在 SI 給出每條 replica 各自的切點。同時做一個穩健性檢查:多丟 20% 再算一次主要結論,若結論翻轉,那結論本來就不穩。這是十分鐘的事,但幾乎沒人報。
你的 fit selection 是什麼?你報的 HNH RMSD 是相對誰量的?點開看參考答案
必須明講。用全蛋白疊合量到的是 HNH 相對整體的剛體位移,用 HNH 自身疊合量到的是它的內部形變。正確做法是兩個都報、兩張圖並排,並說明結論建立在哪一個上。在 Cas9 上這個區分特別要命,因為 HNH 正是全域 RMSF 最高(apo 1.86 Å,完整三元 1.61 Å)的那個 domain —— 它的「高 RMSD」有很大一部分本來就是整塊在擺。
RMSD 已經 plateau,你憑什麼說取樣夠?點開看參考答案
誠實的答案是:單靠 RMSD 說不了。 正確回答的形狀是「我們不以 RMSD plateau 主張收斂;收斂性由跨 4 條獨立 replica 的可重現性評估,聚合量 CV 在 2 到 10%(BSA 2.1%、總接觸 4.1%、鹽橋 9.5%),逐殘基與 DNA 層級的量 CV 在 24% 以上,因此我們的結論只建立在前者。」先自己說出限制,比被問出來好。
你的四條 replica RMSD 曲線疊起來長什麼樣?可以看嗎?點開看參考答案
這一問是在測你有沒有藏東西。要能直接給圖。如果四條曲線 plateau 在明顯不同的高度(在你的系統上 CV 12.2%,就是會),那就大方承認並解釋:這正是為什麼打分軸選在聚合接觸數而不是 RMSD。把弱點主動放在論證結構裡,比讓 reviewer 挖出來強得多。
為什麼你不用 RMSD 當變體排序的分數?它不是最標準的嗎?點開看參考答案
標準不等於適用。RMSD 是多對一映射(不同構形同一個值)、沒有方向性(往哪邊偏都一樣)、沒有能量單位(不能接到任何實驗 observable),而且在你的介面上 CV 高達 23.9%。四個理由任何一個單獨都足以否決它當 ranker。標準是「大家都報」,不是「大家都拿它排序」。
10Common Mistakes最常犯的錯
- 只畫平均 RMSD 曲線。 後果:如果四條 replica 分別停在不同高度(甚至有一條是雙峰),平均曲線會長得非常漂亮而且完全在說謊。正解:疊四條原始曲線,另外報 CV。
- 只用第一幀當參考。 後果:你量到的是「離起點多遠」,等於把 equilibration 的漂移算成結構變化,同時完全看不出模型跟實驗結構的偏差。正解:至少同時報「對晶體結構」與「對 production 平均結構」兩條。
- fit set 與 measure set 用同一組卻宣稱在講 domain 運動。 後果:剛體位移與內部形變混為一談。正解:分離兩者,兩種都報。
- 把氫、水、離子、建模補出的末端算進 RMSD。 後果:數字被最柔軟、最沒有實驗約束的部分主導。正解:主圖用重原子骨架且排除無實驗座標區段,並在圖說寫明排除了哪些殘基。
- 用 RMSD 當 free energy 的反應座標。 後果:不同 basin 疊在同一個投影值上,PMF 出現假 barrier。正解:用 PCA/tICA 或物理座標。
- 比較 WT 與變體時換了參考結構。 後果:差異全部來自參考不同。正解:兩者都對同一個參考(通常是 WT 的晶體結構)疊合與計算,並在 SI 放疊合定義。
11Further Reading讀哪幾篇
12Summary三句話
RMSD 把每一幀與參考結構的整體差距壓成一個純量,它是結構距離而不是物理量,而且壓縮過程是有損的。它最誠實的用途是 QC 與界定 equilibration,因為在你自己的系統上 protein RMSD 跨 4 條 replica 的 CV 是 12.2%、介面 iRMSD 更高到 23.9%,兩者都不夠格當打分軸。真正決定這條曲線意義的是三個你必須寫進 methods 的選擇:fit selection、measure selection、以及參考結構是誰。