系統學習LAMMPS系列三

2021-02-20 學術之友

    最近兩個月一直處於寫論文,改論文的狀態,今天上交了第五次修改的論文後,突然發現好久沒更文章了,實在是抱歉~

    我們先回顧一下LAMMPS腳本文件(俗稱in文件)的骨架結構:

1、基本模擬系統設置

2、初始模型構建(讀取模型數據)

3、定義原子間相互作用勢

4、系統系綜設定

5、原子某些信息計算設定

6、原子信息輸出

    這骨架中的前兩個部分我們已經在前面的文章中介紹過了,今天就剩下的幾個部分都講了吧。當我們設置好基本的模擬系統,並構建好相應的初始模型,我們就應該開始選取合適的原子相互作用勢函數,並規定模擬系統所處的環境(定義相應的系綜)。關於原子相互作用勢,前面有一期內容有專門講解,有興趣的同學可以查找看看,這裡主要講其在LAMMPS中的用法,這裡以我常用的eam/alloy勢為例:

pair_style        eam/alloy  #告訴LAMMPS勢函數的類型是eam/alloy

pair_coeff      * * xx/xx/xx/AlNi.eam.alloy Al Ni # * * 表示任意兩種原子的相互作用勢都是這種類型,xx/xx/xx/表示勢文件AlNi.eam.alloy的絕對路徑,勢文件AlNi.eam.alloy則是按照LAMMPS的規則將eam勢用表格的形式表示出來。常用的eam/alloy勢文件LAMMPS軟體包中就有,後面也會介紹一個網站,可是若是碰到一些不常見的,那各位只能自己寫代碼處理了,本人暫時沒寫過,這一點幫不了大家了~。不過一般你發現了適合你的eam勢函數,你可以直接與其作者聯繫,對方會很樂意提供給你使用的。我相信各位也有用LJ,meam或者是morse勢的,沒關係,稍微查看一下lammps的格式就好,當需要提供一些類似於eam勢的勢文件時,自己解決不了就直接找作者吧,不過有一點需要注意,當你嘗試運行時,若出現unknown pair style 的錯誤,例如你使用meam勢時,出現此類錯誤,只有兩種可能:1、格式不對;2、沒有安裝相應的meam包

    定義好原子間的相互作用勢之後,我們該根據我們模擬的內容來為我們的系統構建合適的環境,即為其選取合適的系綜,一般常用的系綜有NVT;NVE以及NPT,對此不熟悉的建議補充下熱力學知識。具體用法如下:

fix           1 all nve/nvt/npt 或者 fix       1 outer nve/nvt/npt # 1 表示給這個操作一個標籤;all 表示此次操作的對象為整個系統;outer表示此次操作的對象為outer這個區域;nve/nvt/npt就表示該操作賦予了對象nve,nvt或者npt的模擬環境。不過在這個操作之前我們一般要賦予每個原子速度(高斯分布),具體操作:

velocity  all create 300 123 mom yes rot yes # 這個命令就表示每個原子在300K條件下的速度滿足高斯分布 其中123是個隨機數,只要這個數是正數就行了,mom yes 和rot yes一般設置為yes,具體原因這裡不做解釋,感興趣的可以查看手冊。

    當我們給模擬的系統設置好相應的環境之後, 我們就應該考慮我們需要些什麼信息了,一般lammps會給你自動計算原子在不同時刻的坐標,這一點不用你額外操作,但是你想得到每個原子的勢能,這時候你就需要compute命令了具體用法如下:

compute      1 all pe/atom 或者 compute      1 outer pe/atom #與fix類似,這裡的1也是表示給此操作一個標籤;all 表示此次操作的對象為整個系統;outer表示此次操作的對象為outer這個區域;pe/atom表示要這個操作的功能是計算每個原子的勢能。

這裡提醒一點:compute 和fix 命令都是一個系列,有很多你想計算的信息都可以用compute命令來解決(例如msd),而且很多時候我們在設置好系綜後還要對我們的模擬系統進行其它操作(例如拉伸),這時候我們也用fix命令,以後我會在我的文章裡多多講解例子的,大家平時在使用lammps時一定要多多注意這兩個命令,特別是fix命令,至於compute命令,偶爾多看看就好,因為可能有很多你想知道信息都是lammps自動計算的熱力學信息,你只需要把它輸出來就好,這樣便需要我們的輸出命令了。

    一般常用的輸出命令有thermo_style; dump;具體用法如下:

thermo     10 #每10步輸出一次熱力學信息

thermo_style custom step pe press etotal #thermo_style一般要與thermo 命令連用,這裡custom表示後面輸出的信息是你需要的,不需要的不用寫(例如你還可以在後面加上 time;dt之類的),具體的熱力學信息這裡就不多說了,大家稍看下手冊就清楚了,只提醒一點,需要什麼就輸出什麼,別弄多了看得眼花。

dump      1 all custom 100  outer.xyz id type x y z c_1#1同樣表示為此操作的一個標識 all表示操作對象為系統內所有原子, all也可以換為局部區域outer,100表示每100步輸出一次,outer.xyz為輸出信息所在的文件名(不需要提前創建),id type x y z 則為相應的原子信息,當然還有很多其它的原子信息(例如fx,fz,fy,vx,vy,vz),與thermo_style類似,稍看手冊便知。這裡主要提一下c_1,表示通過標識為1的compute的操作所得到的單個原子的信息(不是單個原子的不行)在這裡被輸出,同理,若你compute的命令是計算體系的信息,則c_1就加載thermo_style custom 後面。

最後我們用run命令來運行:

run       10000#運行10000步,根據自己的要求以及步長來定步數

    好了,lammps的輸入腳本文件總體介紹就到這結束了,介紹的不算很詳細,畢竟lammps功能太強大了,有很多命令小編我可能永遠涉及不到,我的目的也只是想讓各位使用lammps進行計算任務的新手能更快入門,更快熟悉lammps這個軟體,今後我也會專門詳解一些例子,幫助大家更好的使用這個軟體,謝謝各位支持。

勢函數網站(不全):http://www.ctcms.nist.gov/potentials/

相關焦點

  • LAMMPS學習系列
    hard way系列,感覺做的很好,對我學習VASP很有幫助,由於國內用的LAMMPS的人遠遠沒有用VASP多,所以LAMMPS學習的資料也是很零碎,沒有一個系統的學習資料,唯一一個權威的資料就是LAMMPS手冊(儘管這個是一個非常重要的資料,但對初學者來說,特別是英文不好的人來說,這與天書無異~),所以當時也想弄個類似的學習LAMMPS系列,幫助有需要的同學系統的學習LAMMPS
  • LAMMPS分子動力學核心技術實戰培訓班
    6,運動方程/邊界/截斷/長程作用/系綜/控溫控壓等一系列基本概念介紹7,力場(經驗勢函數):如何針對不同系統選用不同的勢函數,此部分為分子動力學的核心。三、Lammps建模與進階1,學習data文件的結構以及編寫方法和注意事項2,學習有序晶體結構的建模方法3,學習用VMD、packmol、Moltemplate、MS軟體、topotool命令來建立涉及水、碳管、石墨烯、高分子鏈、複合系統等無序體系的初始構型,並導出lammps能用的data文件的方法。
  • [lammps第十四講]lammps輸出RDF(徑向分布函數)詳解及示例教程
    大家好,小編最近的課題需要輸出RDF(徑向分布函數),小編就去lammps官網及網絡查找了如何用lammps輸出RDF,小編就把自己學到的用法在這裡跟大家分享
  • 原創 | 系統學習LAMMPS系列一
    好久沒更新我的學習筆記了,不知不覺都到6月中旬了,是時候整理一波學習筆記了。學習和運用LAMMPS這麼久,經常會看到有人問,有沒有xxx計算例子。但是據我觀察,網上有很多例子,但是大部分都是存在各種各樣的問題,用來學習和熟悉LAMMPS還可以,但是想真正用來解決問題還遠遠不夠。
  • 《跟隨霄,LAMMPS源碼學習03》LAMMPS::create()
    偽代碼如下[lammps.cpp]:void LAMMPS::create(){  comm = new CommBrick(this);  neighbor = new Neighbor(this);  domain = new Domain(this);  atom = new Atom(this
  • lammps的restart重啟動相關命令
    restart作用restart命令是lammps提供的重啟動命令,用於重啟lammps計算。這樣可以省去一些共有的計算,從而節省計算時間,特別是對於比較大的體系。restart命令restart相關的命令有三個:restart, write_restart, read_restart。還有一個相關的腳本在lammps的tools目錄下restart2data,可以用來將二進位的restart文件轉換成可識別的文文文件,即data file文件,可以由read_data讀入。
  • LAMMPS入門介紹及學習方法
    第二個文件就是相互作用勢文件(由相應的勢函數生成),這是整個分子動力學流程的核心,因為它決定了你構建的體系中原子如何運動.相互作用勢在這裡如果認真的介紹起來,那我估計還要寫半天.在此,先簡單點說,就是用它來描述單個原子在一堆原子中的力場中的運動情況(基於牛頓定律多體情況嘛),LAMMPS軟體包中的potential包裡面全是勢文件,但是不全,往後的文章我會細講,這裡提一點,即現在不是所有體系都有相應的勢函數(這也是lammps
  • 開源軟體-分子動力學-LAMMPS
    : 實例操作:在linux系統編譯安裝自己的LAMMPS可執行程序,並運行一個例子。VMD、OVITO建模學習及實操(用於建模\模型及軌跡文件顯示分析處理等): 實例操作:把上述實操模型轉換成lammps的data文件第三天 從examples的簡單例子學起5   通過examples
  • LAMMPS學習系列(42)
    之前介紹過一種循環執行in文件的例子:LAMMPS學習系列(16)今天簡單介紹個in文件中局部循環的例子
  • LAMMPS學習系列(27)
    改寫shear例子的in文件我們現在將之前介紹的shear例子中的in文件按照我們自己的思路改寫一下:1.模擬系統初始化
  • 為什麼要學LAMMPS分子動力學?零基礎入門 需要多久?
    材料人特邀科技顧問餘老師開展本培訓班,旨在幫助學員在較短的時間內對分子動力學理論以及LAMMPS使用進行有效的掌握。Lammps計算軟體從入門到應用進行培訓,精心設計多個材料模擬體系和場景,覆蓋當前多個材料理論研究熱點,有助於大家快速掌握並切入自己的研究主題,迅速提高理論研究水平。
  • 分子動力學LAMMPS材料計算課程
    LAMMPS是目前基於力場最權威的分子動力學計算模擬程序包,支持在各種系綜下,模擬計算上百萬原子和分子體系(氣態、液態、固態),在Linux系統下運行,具有很高的並行效率。一次系統全面的分子動力學知識的學習機會;一次豐富實用的分子動力學計算案例講解及實操機會;免費獲取直播課程中培訓資料及錄像;MedeA平臺軟體全模塊的一個月免費試用;中國科技雲·超算雲2000核時的免費試用;聯繫人:張小姐郵箱:zym@tri-ibiotech.com電話:18930358213
  • LAMMPS的NPT/NVT系綜命令詳解
    (註:NVT中N代表系統的原子數、V代表系統的體積、T代表系統的溫度,因此NVT就代表恆原子數恆溫恆體積的系綜,具體的積分迭代形式可以查閱相關的分子動力學模擬專著)控溫器(thermostatting)和控壓器(barostatting)通過添加一些動態變量來實現,這些動態變量與粒子速度(控溫)和模擬區域的尺寸(控壓)相關聯。
  • 人工智慧PM系列文章(三)AI工程化的系統思維框架
    本篇文章從三個關鍵階段介紹一下我理解的AI工程化的系統思維框架。每個人理解的工程化以及在每個不同業務類型公司中工程化的流程一定是不同的,但至少你可以參考這樣的思維模式進行自己的修煉。AI工程化的概念實際上在中國沒太多人提及,而我通過調研大量文獻後發現產品經理更需要系統的理解和掌握AI工程化的流程和實踐能力。反觀技術人員,他們每天要學習各種國外頂級期刊的論文,要掌握最新的框架和語言,但產品經理需要的是積累工程化的經驗,並逐漸形成自己的一套「打法」,包括看待問題的視角、切入點。
  • 互聯、簡化、學習——「社交型」配電系統「養成」的關鍵三步
    「「電梯裡向領導匯報項目預算,可能開口的前三句話,就決定了是否被批准。「除非你選擇與世隔絕,否則社交便是生活中不可缺少的部分。但在如今這個高速時代,社交也被限制在有限的時間裡,「語言要通,廢話要少,懂得要多「,似乎是讓社交變得簡單流暢並心情愉悅的三要素。
  • 互聯、簡化、學習——「社交型「配電系統「養成」的關鍵三步
    「  「電梯裡向領導匯報項目預算,可能開口的前三句話,就決定了是否被批准。「  除非你選擇與世隔絕,否則社交便是生活中不可缺少的部分。但在如今這個高速時代,社交也被限制在有限的時間裡,「語言要通,廢話要少,懂得要多「,似乎是讓社交變得簡單流暢並心情愉悅的三要素。
  • ...關於印發《貴港市教育系統學習黃大年同志先進事跡系列活動方案...
    各縣、市、區教育局,局機關各科室、二層機構,市直各學校:經黨組同意,現將《貴港市教育系統學習黃大年同志先進事跡系列活動方案》印發給你們,請認真抓好落實。具體活動方案如下:    一、參加活動對象全市教育系統幹部職工、全體師生    二、活動內容學習黃大年同志先進事跡系列活動包括「十個一」活動內容:一是組織全體師生觀看一場電影或者視頻,二是開展一次主題班會,三是參觀一次黃大年愛國主義教育基地,
  • 河南省寶豐縣衛健系統讀書協會正式成立,「三創一評」 系列活動
    【河南經濟論壇訊】(通訊員 高銘)為促進全民閱讀活動深入開展,進一步推動學習型機關建設,努力打造書香機關、文化機關、活力機關、魅力機關。7月6日上午,河南省寶豐縣衛健委組織召開衛健系統讀書協會成立暨「三創一評」活動動員大會,正式成立了衛健系統讀書協會。縣讀書協會常務副會長韓富安,副會長朱如傑,副會長兼秘書長王長河,常務副秘書長婁彥召,副秘書長楊新民、郟永安、丁國強出席會議。
  • 【質粒分享】GAL4酵母三雜交系統,pBridge,pGADT7系列
    質粒分享又來了啦~酵母三雜交系統
  • 呂生榮:如何系統學習營銷學
    最近有些朋友看到我以前分享《財商思維》的文章,裡面第一個點就是提營銷學,就找我提問:如何學習營銷?那麼今天我就分享一下到底應該如何系統學習營銷學?營銷學,我在早期有分享過一些點,實踐營銷案例是比較適合入門的人學習,因為你從中可以得到很多的框架和啟發,作為基礎入門鋪墊。但是如果想系統學習,就需要從以下幾個角度進行系統學習。