該用哪個結構起頭Which structure to start from
起始座標決定了你的結論能不能信,這不是細節。
01一句話只有一句
你選哪個 PDB,決定的是你在模擬哪一個反應步驟。
02Why should I care?我為什麼要讀這頁
因為這是這個專案到目前為止唯一一個換掉之後所有數字一起變好的變因。
事情是這樣發生的:用 Chai-1 預測的結構當起點,跑完 replica,看逐殘基的 top-8 接觸殘基在不同 replica 之間共享幾個 —— 答案是 0/8,Spearman ρ ≈ −0.03。零相關。跟丟骰子一樣。看到這種數字,第一直覺一定是「metric 壞了,換一個」。
換了起始結構。同一組分析、同一組 metric、同樣的建系統流程,改用 5F9R 晶體起頭:3/8 共享([450, 695, 765])、pairwise Jaccard 0.48、Spearman +0.77。
你沒有改分析,你改了座標檔。 元兇從頭到尾是起始結構。
用你熟的語言講:這相當於你發現吸附能算出來在不同 slab 上亂跳,花三天掃 ENCUT 和 k-mesh,最後發現問題是你用的 bulk 晶格常數是別人用不同泛函鬆弛出來的。起點的來源不對,後面每一個收斂測試都在測錯的東西。 差別在於,DFT 至少會給你一個明顯不合理的表面能;MD 會給你一組看起來很合理、只是每次都不一樣的數字。
03What這是什麼
四個你會反覆碰到的座標來源。先看它們含哪些分子成分,再看解析度。
| 來源 | 方法/解析度 | construct 突變 | sgRNA | target 股 | non-target 股 | 它捕捉的狀態 |
|---|---|---|---|---|---|---|
| 4OO8(Nishimasu 2014) | X-ray 2.50 Å | D10A/C80L/H840A/C574E | 98 nt | 23 nt 單股 | 不存在 | Cas9–sgRNA 抓著一段單股 DNA |
| 4UN3(Anders 2014) | X-ray 2.59 Å | H840A | 83 nt | 28 nt | 只有 12 nt(PAM 端的雙股) | PAM 辨識與雙股開始熔解 |
| 5F9R(Jiang 2016) | X-ray 3.40 Å | 無(催化活性型) | 118 nt | 30 nt | 30 nt 沉積,只有 19 nt(res 12–30)有座標 | 完整 R-loop,位移股落在 RuvC 活性中心附近 |
| 近年 cryo-EM | Pacesa 2022 一組 9 個結構(8 cryo-EM + 1 X-ray),解析度隨配對長度差很多;Bravo 2022 約 2.8–3.6 Å | 依結構而異,要逐一查 | 完整 | 完整雙股受質 | 有,但長度是刻意設計的變數,且在 checkpoint 態常常無序 | R-loop 逐步延伸的中間態;含 mismatch 的未活化態 |
這張表最重要的一欄是 non-target 股,第二重要的是 construct 突變。
- 4OO8 根本沒有位移股。 它的 DNA 只有一條 23 nt 的單股,所以 RuvC 的溝是空的。而且它的蛋白是四重突變體 D10A/C80L/H840A/C574E —— 兩個催化中心都被廢掉,另外兩個是為了結晶。
- 4UN3 只有 12 nt,而且是 PAM 端那一小段仍然配對的雙股。它捕捉的是「PAM 認出來了、雙股正要被撬開」,R-loop 還沒形成。文獻普遍把 4UN3 的 HNH 描述為未活化的 checkpoint 構形。它沉積 1495 個聚合物殘基、只建模 1426(缺 69),蛋白帶 H840A。
- 5F9R 是第一個把位移的 non-target 股放進模型的結構,而且它的 Cas9 沒有去活突變,這在起始結構裡難得。但「放進模型」不等於「看得見」,而且這兩件事在 5F9R 裡差得不小:那條 30 nt 的鏈只有 residues 12–30(19 個)有座標,PAM 遠端的 1 到 11 完全沒有;而 Jiang 等人自己寫的是 PAM 上游只有 9 個核苷酸有明確電子密度,並且位在 5′ 端的那個碘標記核苷酸看不到密度,據此判斷 PAM 遠端流動性很高。所以「有座標」的 19 個裡,還有一半是靠得住程度存疑的。代價還包括解析度掉到 3.40 Å,沉積的 1546 個聚合物殘基裡只有 1527 被建模。所以就算你選了最完整的結構,non-target 股仍有三分之一是你自己補的,而按這個站的規矩,補出來的東西不能拿來當證據。
- cryo-EM 補的是「路上」。 Pacesa 2022 刻意用互補長度不同的受質,把 R-loop 從短到長的過程串成一系列結構,看到 REC2 與 REC3 讓路、HNH 進入一個催化無能的 checkpoint 構形;Bravo 2022 則在有 mismatch 的情況下抓到 guide RNA–DNA duplex 呈現一種「線性」而非扭折的構形,那個構形阻止 Cas9 活化。兩件事要注意。其一,這些結構的核酸不是「完整的野生型受質」,而是為了停在某個中間態刻意設計的,直接拿來當 MD 起點時你繼承的是那個設計。其二,「這組結構的解析度」不是一個數字。 Pacesa 那一組裡最好的圖到 2.5 Å 級、部分配對的複合體才落在 3 到 4 Å,而且其中一個根本是 X-ray 不是 cryo-EM;引用時要指名你用的是哪一個 PDB/EMDB 條目,不要引一個區間。
- non-target 股在不在、有多長、有幾個 nt 真的有座標? 你要談 RuvC 溝、要談 eSpCas9 的握把,這一欄是零就直接出局;不是零也要看實際建模了幾個。
- HNH 在哪個構形? checkpoint 還是 primed。這決定你在模擬檢查點的哪一側。
- 缺了哪些殘基? SEQRES 與 ATOM 的差集就是你要自己補的部分,而補出來的東西不能拿來當證據。
- construct 帶了哪些突變? 大部分早期 Cas9 結構是去活體(D10A/H840A),因為活性酵素會把自己的受質切掉。你如果沒有把它們改回野生型就跑 MD,模擬的是一個死酵素;你如果改回去了,那 His840 附近的側鏈環境就是你自己建的,不是實驗量到的。兩條路都要在方法段講。
04Why為什麼重要
因為 MD 不會幫你跨越構形障礙,所以起始結構不是初始條件,它是你在模擬哪個狀態的定義。
專案的軌跡是 4 replica × 約 87 ns。HNH 從 checkpoint 轉到催化構形是一個接近 180 度的大幅轉動(見 Cas9 的 domain 架構),單分子實驗顯示這類構形轉換遠慢於 ns 尺度 —— 這裡我只敢講量級:它比你的軌跡長度慢很多個數量級,不會在 87 ns 裡自己發生。所以你的軌跡只會在起始構形所屬的那個盆地裡取樣。
這一點跟 DFT 的直覺剛好相反,值得停下來想一下。在 DFT 裡你丟一個歪掉的初始幾何進去,優化器會把它拉到最近的局部極小,起點的影響通常侷限在「掉進哪個 minimum」。在有限長度的 MD 裡,你連那個 minimum 的盆地都跳不出去 —— 起點不只決定你落在哪,它決定你只看得到哪。
推論很直接,而且對任何以平衡量排序變體的流程都是壞消息:如果你想比較 WT 與高保真變體,而你從 5F9R 這種「完整 R-loop、primed for cleavage」的狀態起跑,你已經把檢查點的答案寫進初始條件了。Off-target 與專一性 那頁講得很清楚:高保真變體(SpCas9-HF1 / eSpCas9(1.1) / HypaCas9)對 on/off-target 的結合親和力與 WT 差不多,差別在 HNH 構形檢查點的動力學。從檢查點的下游起跑,你看到的當然是「大家都差不多」。
05How怎麼做
拿到一個 PDB 之後,動手前的固定流程。
1. 先算差集,知道自己缺什麼。
比對 SEQRES 與 ATOM 記錄,列出所有沒有座標的殘基。核酸鏈要跟蛋白分開列。 5F9R 的 19 個缺口裡有 11 個全部集中在 non-target 股上,如果你只看總數、或只算蛋白,會以為這個結構幾乎沒缺 —— 實際上它缺的正好是你最想談的那條鏈。這份清單要進補充材料,因為它決定了後面哪些區段的結論不能講。
2. 決定補不補、怎麼補。
短的表面 loop 用 PDBFixer 或 Modeller 補通常可接受。核酸的缺口不算「短的表面 loop」 —— 一條單股 DNA 的末端沒有骨架約束,補出來的構形基本上是建模程式的預設值。補出來的區段必須在所有圖上標色,而且不進任何 domain 平均。 RMSF 那頁有現成的教訓:專案裡補上去的 non-target 股 5′ 端(res 1 到 11,也就是 5F9R 沒有座標的那 11 個核苷酸)RMSF 有 6 到 8 Å,晶體本體只有 3.9 Å。那個高數值反映的是「這裡本來就沒資料」。
3. 檢查編號沒有位移。
地標殘基自證:resid 10 應該是 Asp、840 是 His、863 是 Asn、983 是 His、1335 是 Arg。三十秒的事,省掉整批重跑。
4. 決定 protonation,特別是兩個 His。
HNH 的 His840 與 RuvC 的 His983 是催化殘基。它們的質子化狀態直接決定你在模擬哪一個化學步驟。 用 PROPKA 或 H++ 起草,但金屬配位環境附近的結果一定要人工複核 —— 這類工具對金屬位點的處理是出了名地不可靠。
5. 確認金屬離子。
去 PDB 條目的 ligand 欄位看有沒有 Mg²⁺,以及它在哪。沒有就得自己放,而放位是這一步最容易毀掉整個活性中心動力學的地方。如果你的研究問題不碰化學步驟,一個誠實的選擇是明說系統中不含催化金屬、結論僅限於構形層次。
6. 記錄一切。
PDB id、解析度、construct 帶了哪些突變以及你有沒有改回野生型、補了哪些殘基、用什麼補、protonation 怎麼定、金屬怎麼處理。這七項全部進方法段。缺一項,reviewer 就有一個你答不出來的問題。
成本現實: 5F9R 的完整 R-loop 三元複合體加顯式水盒是 535,265 atoms,菱形十二面體盒,跑在 H100 上,4 replica × 約 87 ns。這是這條 workflow 裡最貴的單一項目。而決定要不要花這筆錢的那個動作 —— 下載哪一個 PDB —— 成本是零。這個不對稱就是這一頁存在的理由。
06When什麼時候用
- 要模擬「已經抓好、準備切」的狀態 → 5F9R。三條鏈都在、蛋白沒有去活突變,但 non-target 股的 5′ 端 11 個核苷酸要自己補,那一段的結論不能講。
- 要模擬 PAM 辨識與初期解鏈 → 4UN3。它就是為這一步解出來的。
- 只關心蛋白內部動力學、完全不碰位移股 → apo 或 4OO8 可以,但任何跟 non-target 股有關的敘述一律不准出現。
- 要模擬 mismatch 辨識、off-target、或高保真變體的差異 → 從 cryo-EM 的 mismatch/中間態系列起頭(Bravo 2022、Pacesa 2022 那一類)。理由見上一節:你要的是檢查點上游那個盆地。
- 你的變體沒有任何實驗結構 → 只能走預測,但要先讀 結構預測能不能用,知道你付的是什麼代價。
- 做起始結構的 sensitivity check 時 → 刻意用兩個以上不同來源的起點跑同一套分析。這是專案已經做過而且回報最高的一次投資。
07When NOT什麼時候別用
-
不要用 4OO8 談任何跟 non-target 股有關的事。 為什麼會壞: 它的 DNA 只有一條 23 nt 單股,位移股根本不存在,RuvC 的溝裡填的是水和離子。你算出來的 groove 距離、groove 接觸、RuvC 溝的靜電環境,量的是一個不存在的東西 —— 而程式不會抱怨。怎麼看出它壞了: 建完系統就印出 DNA 鏈的數目與各自長度。只有一條,就是這個情況。
-
不要用預測結構當三元複合體生產 MD 的起點,然後報逐殘基結論。 為什麼會壞: 預測模型在介面上的信心最低(HNH pLDDT 62.9、target DNA 64 到 65),介面幾何有系統性偏差,每條 replica 會各自往不同方向鬆弛,收斂到互不相干的接觸模式。怎麼看出它壞了: 這個失敗有一個很乾淨的指紋 —— 跨 replica 的逐殘基共享度掉到隨機水準。專案量到的是 0/8 共享、ρ ≈ −0.03。診斷法:換一個晶體起點重跑同一套分析,如果共享度跳到 3/8、Jaccard 0.48、Spearman +0.77,那就確認了元兇是起始結構而不是 metric。
-
不要拿 5F9R 起頭去研究 off-target 辨識或高保真變體。 為什麼會壞: 5F9R 是完整 R-loop、primed for cleavage 的狀態,等於預設已經通過構形檢查點。而高保真變體的作用點就在那個檢查點上。從答案的下游起跑,你會系統性地看不到差異。怎麼看出它壞了: WT 與變體的所有平衡量都幾乎一樣。這不是「變體沒作用」的證據,這是「起點與問題不匹配」的證據 —— Off-target 與專一性 那頁已經獨立地告訴你這些變體的結合親和力本來就與 WT 差不多。
-
不要在 on-target 底物上跑 eSpCas9(1.1) 然後期待看到效應。 為什麼會壞: 它在 on-target 上本來就該是 null。專案實際跑出來也確實是 null。要看到效應,底物必須帶 mismatch。怎麼看出它壞了: 變體與 WT 的所有 metric 都落在彼此的誤差棒內 —— 這時候要檢查的是底物設計,不是 metric。
-
不要因為解析度數字比較小就選那個結構。 為什麼會壞: 4OO8 的 2.50 Å 比 5F9R 的 3.40 Å 漂亮,但 4OO8 沒有 R-loop。解析度衡量的是「已經在那裡的原子畫得多準」,不是「該在的東西在不在」。這個直覺陷阱對計算背景的人特別致命,因為我們習慣「數字小 = 收斂得好」。怎麼看出它壞了: 先列出你的研究問題需要哪些分子成分,再看哪個結構有。解析度只能當最後的 tie-breaker。
-
不要混用不同 PDB 的殘基編號做跨系統比較。 為什麼會壞: 缺失殘基不同,同一句「HNH 平均 RMSF」在兩個系統裡是在不同的殘基集合上算的,差異可能全部來自集合差異。怎麼看出它壞了: 印出每個 domain 實際選到的殘基數(HNH 應為 134)。對不上就先取交集再比。
-
不要用 3.40 Å 結構的側鏈朝向去支撐逐位點的結論。 為什麼會壞: 在 3.4 Å 下側鏈 rotamer 主要由建模程式與力場決定,不是由電子密度決定。你以為在報結構事實,其實在報建模預設值。怎麼看出它壞了: 用不同的建模流程重建同一個結構,看那條側鏈接觸還在不在。這也跟 Metric 可靠性 那頁對得上:逐位點距離的跨 replica CV 是 38% 到 46%,本來就在 noise tier。
-
不要沒查 construct 就直接建系統。 大部分早期 SpCas9 結構是為了不讓酵素切掉自己的受質而做成去活體:4OO8 帶 D10A/C80L/H840A/C574E、4UN3 帶 H840A。為什麼會壞: 你以為自己在模擬野生型,實際上 HNH 的催化 His 已經變成 Ala —— 而 HNH 檢查點正是你要研究的東西。反過來,如果你把它突變回去,那個 His 的側鏈朝向與周邊水合是你自己建的,不是實驗看到的,這時候任何「His840 到切位距離」的敘述都得標明是建模結果。怎麼看出它壞了: 建系統前先印出序列裡的 resid 10 與 840 是什麼殘基。是 Ala,你手上就是去活體。5F9R 在這一點上是例外(沉積條目沒有標註突變),這也是它值得當首選的理由之一。
08Project Lens跟我的 project 多相關
為什麼是五星: 因為它是專案裡因果證據最強的一項,而且成本是零。
所有其他嘗試 —— 換 metric、加長軌跡、換分析工具 —— 都沒有把逐殘基 top-8 接觸的跨 replica 共享度從 0/8 拉起來。只有換起始結構做到了:Chai-1 預測起始的 ρ ≈ −0.03(等於隨機)變成 5F9R 晶體起始的 3/8 共享、Jaccard 0.48、Spearman +0.77。在一個大部分變因都糾纏在一起的專案裡,這是少數幾個能乾淨歸因的對照。而做這個決定要花的算力是零 —— 它決定的卻是 4 replica × 87 ns × 535,265 atoms 的 H100 時數有沒有意義。在「便宜」是硬約束、可同時執行的 job 數有硬性上限的現實下,這種零成本高槓桿的決策不可能不是五星。
但要誠實:五星不代表它解決了問題。 換成 5F9R 之後,逐殘基仍然只有 3/8 共享、Jaccard 0.48。起始結構把「隨機」修成「有訊號但不夠強」,它沒有把逐殘基變成可用的打分軸。Metric 可靠性 那頁的結論原封不動:打分要用聚合量(BSA 的 CV 2.1%、總接觸 4.1%、target-DNA 接觸 9.4%、鹽橋 9.5%),不要用逐殘基或逐位點。起始結構是必要條件,不是充分條件。這個區分必須寫進 paper,否則 reviewer 會以為你在宣稱換了 PDB 就解決了可靠性問題。
具體怎麼用: 在 funnel 的 Gate 0 就把起始結構鎖死,整條 pipeline 的所有變體共用同一個 PDB、同一套補模與建系統流程、同一份 domain 定義檔。任何跨起點的比較都不准進入打分層,只能出現在 sensitivity 分析裡。另外保留一組刻意用不同起點跑的對照 —— 那組不是浪費,它是你回答「換個結構結論會不會翻」這一問時唯一的彈藥。
09Reviewer Thinkingreviewer 會問什麼
你為什麼選這個 PDB?如果換成另一個,結論會不會翻?點開看參考答案
這一問幾乎必問,而且你有比多數人更好的答案:我們實際換過。 同一套分析、同一組 metric,Chai-1 預測起始給出 0/8 共享、ρ ≈ −0.03;5F9R 晶體起始給出 3/8 共享、Jaccard 0.48、Spearman +0.77。生產結果全部建立在晶體起始上,而這組對照本身就是論文的一個結果,不是附錄。要補的誠實限制是:n = 2 個起點不夠,理想上要三個以上獨立來源。
5F9R 的 HNH 真的在催化構形嗎?點開看參考答案
不是,而且這件事有數字可以講,不必含糊。條目名稱是 primed for target DNA cleavage,位移股確實被安置在 RuvC 活性中心附近,HNH 也已經靠到 target 股切位旁 —— 但 Jiang 等人自己寫的是催化殘基 His840 離 scissile phosphate 約 10 Å,「比催化所需的距離稍遠」,並把原因歸給結晶時省略了二價金屬離子。拿 Palermo 的 GaMD 當尺對照:未活化態 His840 離切位約 30 Å、precatalytic 中間態約 15 Å、真正的催化態才 4 到 6 Å。所以 5F9R 落在中間態的下緣,正確的講法只到「pre-catalytic」,不宣稱任何化學步驟。如果你的論文要碰化學步驟,那需要另外的建模與 QM/MM,而且要說明是怎麼建的。
3.40 Å 的結構拿來做 all-atom MD,側鏈方向可信嗎?點開看參考答案
誠實回答:在 3.4 Å 下側鏈 rotamer 主要由建模與力場決定。所以我們的結論不建立在任何單一側鏈的朝向上,只建立在 domain 級與聚合接觸量上,那些量的跨 replica CV 落在 2% 到 10%。所有逐位點、逐側鏈的敘述我們一律標為定性,並且在圖說寫明。這個回答之所以站得住,是因為它跟我們自己的可靠性分析是一致的,不是臨時發明的擋箭牌。
你補了哪些殘基?用什麼補?補出來的部分有沒有影響結論?點開看參考答案
列出完整清單(SEQRES 減 ATOM),蛋白與核酸分開列,說明工具與參數,並且證明它們被排除在所有 domain 平均之外。以 5F9R 為例:沉積 1546 個聚合物殘基、建模 1527,19 個缺口裡有 11 個全在 non-target 股(該鏈只有 res 12–30 有座標)。具體證據:專案裡補出的那 11 個核苷酸的 RMSF 是 6 到 8 Å,晶體本體只有 3.9 Å —— 這個對比本身就說明了為什麼一定要排除。
你的 87 ns 足夠讓系統忘記起始結構嗎?點開看參考答案
不夠,而且我不打算假裝夠。HNH 的構形轉換比 87 ns 慢很多個數量級。所以我們的定位是「在給定狀態的盆地內取樣」,不是「探索構形空間」。這個定位反過來讓「選哪個起始結構」變成方法的一部分而不是前置作業 —— 這正是本文的論點之一。要跨越盆地,需要 enhanced sampling,那是另一筆預算。
10Common Mistakes最常犯的錯
- 先挑解析度最好的結構,再看它有什麼分子。 後果:選到 4OO8 這種沒有位移股的結構去談 RuvC 溝。正解:先列研究問題需要的成分,解析度當最後的 tie-breaker。
- 把預測結構直接當生產 MD 的起點。 後果:逐殘基結果掉到隨機水準(0/8、ρ ≈ −0.03),而且要跑完 4 條 replica 才看得出來。正解:生產一律用晶體起始,預測結構只放在不需要精確座標的層次。
- 用 5F9R 起頭去比較高保真變體與 WT。 後果:把檢查點的答案寫進初始條件,看到「大家都差不多」並誤以為是結論。正解:研究檢查點就從檢查點上游的結構起頭。
- 在 on-target 底物上測 eSpCas9(1.1)。 後果:得到 null,浪費整批 GPU 時數。正解:專一性變體必須用 mismatched 底物才會顯影。
- 把補模出來的區段留在圖裡與平均值裡。 後果:少數殘基把 domain 平均拉走,reviewer 一眼看穿。正解:標色、排除、在圖說寫明排除了哪些。
- 看到「non-target 股存在」就當它整條都有座標。 後果:拿補出來的核苷酸去算 groove 距離與接觸,量到的是建模預設值。正解:查每條鏈實際建模了幾個 residue(5F9R 的 non-target 股是 19/30),把沒座標的那一段標色排除。
- 沒查 construct 突變就建系統。 後果:以為在跑野生型,其實 D10A/H840A 都還在,或者不知不覺自己造了一個沒有實驗依據的活性中心。正解:建系統前印出 resid 10 與 840 的殘基身分,並把處理方式寫進方法段。
- 方法段只寫「we used PDB 5F9R」就結束。 後果:construct 突變、缺失殘基、protonation、金屬處理四件事全部無法複現。正解:七項紀錄一項不漏。
- 只用一個起始結構,然後宣稱結論穩健。 後果:最致命的一問沒有答案。正解:至少留一組不同起點的對照,即使它跑得比較短。
11Further Reading讀哪幾篇
12Summary三句話
4OO8、4UN3、5F9R 與近年的 cryo-EM 系列捕捉的是 Cas9 反應座標上不同的點,差別不在畫質而在含哪些分子成分、construct 有沒有被去活、以及 HNH 處於什麼構形,其中 5F9R 是第一個把位移的 non-target 股放進模型的結構,但連它也只有 30 nt 裡的 19 nt 真的有座標。因為 87 ns 的軌跡跨不過 HNH 那個接近 180 度的構形障礙,起始結構不是初始條件而是「你在模擬哪個狀態」的定義,所以研究檢查點就不能從檢查點下游的結構起跑。專案的直接證據是:同一套 metric 從 Chai-1 預測起始的 0/8 共享、ρ ≈ −0.03,換成 5F9R 晶體起始後變成 3/8 共享、Jaccard 0.48、Spearman +0.77,元兇是起始結構不是 metric,但這也只把逐殘基從隨機修成弱訊號,打分仍然必須用聚合量。