asm 查看 数据文件 修改 时间_更高效的GMX分段模拟方法:修改tpr文件
原標題:更高效的GMX分段模擬方法:修改tpr文件
■2020-11-01 22:42:18
在以前的一篇文章中, 我簡單說過基于GROMACS的分段模擬方法 [1] . 這種方法非常通用, 幾乎能完成任意的功能, 且無須修改源代碼, 但是運行效率比較差, 因為每次運行 mdrun 都要重新生成tpr文件. 對大分子來說, 使用 grompp 生成tpr還是很耗時的, 可能會成為運行的瓶頸部分.
最近重新思考了一下這個問題, 想到, 在拓撲和模擬參數不變, 只有坐標或速度改變的情況下, 我們沒有必要重新運行 grompp 生成tpr, 可以直接修改tpr中的坐標或速度, 然后使用修改過的tpr運行模擬. 這應該是不修改源代碼情況下能做到的最快方法了. 與此類似的另一種方法是直接修改cpt文件, 可以達到同樣的目的, 但適用情況有點不同.
tpr和cpt文件都是二進制文件, 格式比較復雜, 完全弄明白且自如地修改它們并不容易, 但如果只是修改其中的一部分, 就要簡單些.
對tpr的最簡單修改應該是修改原子坐標了. 在體系拓撲不變的情況下, 利用外部程序修改體系中部分原子的坐標, 然后使用 mdrun 直接運行修改后的tpr文件, 就可以將 mdrun 當做一個引擎, 達到自己的目的.
這種方法的一個簡單應用就是用GROMACS來做MC或對接, 剛性或柔性的都可以. 如果只是簡單地計算下單點的能量, 就是剛性的; 如果進行能量最小化, 那就是柔性的. 更復雜的能量, 或許可以使用先進行能量最小化再模擬一段時間的平均能量, 甚至可以使用基于MM-PBSA的自由能. 這些都是可行的, 理論上也沒有什么困難, 雖然效率可能不佳.
基于上面的想法, 我就嘗試寫了一個簡單的MC程序, 用來搜索能量最低的構型. 拿一個小肽和石墨烯的體系做測試, 發現確實可以找到能量很低的構型. 這說明拿 mdrun 作為模擬引擎來實現自己的MC程序確實可行, 而且也比較簡單, 只要關注MC移動部分就可以了, 能量計算, 構型優化都可以交由 mdrun 處理. 當然, 缺點在于效率可能不夠好. 但對于普通體系來說, 效率可能也就夠了, 沒有必要弄得最高.
待完善
1.直接讀取edr文件中的能量, 而不是log文件中的, 這樣可能速度更好 2.MC移動中除平移, 旋轉外, 增加其他操作, 如二面角改變 3.MC移動中監測移動的步長, 根據接受率調整步長, 使MC步驟更加高效 4.其他MC中常用的一些做法 5.試著修改tpr文件中的其他信息, 特別是拓撲相關的信息, 以期能夠在運行中增刪分子.
外部鏈接
[1] 基于GROMACS的分段模擬方法: 返回搜狐,查看更多
責任編輯:
總結
以上是生活随笔為你收集整理的asm 查看 数据文件 修改 时间_更高效的GMX分段模拟方法:修改tpr文件的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: des解密 given final_真相
- 下一篇: 野火 stm32f429 pcb_PCB