lammps教程:group命令详解
生活随笔
收集整理的這篇文章主要介紹了
lammps教程:group命令详解
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
lammps教程:group命令詳解
- (1)配合region使用,把某一區域的原子歸入到一個組中。
- (2)配合type命令,可以將多種類型的原子歸為一組
- (3)配合原子id可將特定的原子歸入到一組
在lammps模擬過程中,group基本上是每次都會用到的一個命令。從命令關鍵字上也能猜出來,group就是對原子進行分組的意思。
被group后的原子會被分配一個group-ID,這個group-ID被用到fix、compute、dump等命令中。
例如fix命令中的第二個參數就是group-ID:
fix ID group-ID style_name keyword value ... fix 1 water npt temp 300.0 300.0 100.0 iso 0.0 0.0 1000.0即使不對原子進行分組,lammps也會設置一個默認的原子組:all,也就是把所有的原子全部劃分到all組內。
例如對系統所有原子進行溫度初始化,可以使用下面的語句,其中all就是默認的group-ID:
velocity all create 300.0 4928459常用的分組方式有以下幾種:
(1)配合region使用,把某一區域的原子歸入到一個組中。
例如在納米銅的拉伸時,需要一端固定,另一端施加一定的速度進行拉伸,這就需要把Cu原子劃分為三個組:
left:固定組
right:速度加載組
mobile:中間組
group命令配合union關鍵字可實現兩個組的合并,例如left和right組合并為boundary組,可以寫為:
group boundary union left right配合substract關鍵字可實現減法操作,所有原子減去boundary原子即為中間moible原子,可以寫為:
group mobile subtract all boundaryCu拉伸建模全部代碼如下:
#模型基本設置 units metal dimension 3 boundary p s p neighbor 0.3 bin neigh_modify delay 0 timestep 0.001 #設置晶格參數,生成box lattice fcc 3.61 region box block 0 20 0 5 0 5 create_box 3 box create_atoms 1 box #設置Cu原子質量 mass 1 64 mass 2 64 mass 3 64 #設置left和right區域,以此region設置group region left block INF 2 INF INF INF INF group left region left set group left type 2 region right block 18 INF INF INF INF INF group right region right set group right type 3 #group組加減操作 group boundary union left right group mobile subtract all boundary #保存模型數據 write_data Cu.data(2)配合type命令,可以將多種類型的原子歸為一組
#將原子類型為3和4的原子全部歸入到water組
group water type 3 4(3)配合原子id可將特定的原子歸入到一組
#原子id為10、25、50的三個原子歸入到sub組 group sub id 10 25 50 #原子id從500到1000的全部原子歸入到sub組 group sub id 500:1000 #原子id為100、110、120...10000的原子歸入到sub組 group sub id 100:10000:10 #原子id小于或等于150的原子歸入到sub組 group sub id <= 150需要注意的是,lammps最多支持32個group(包含all組),如果定義的組過多,可將不再使用的組刪除:
group boundary deletegroup命令在模擬過程中使用比較頻繁,靈活掌握以上幾種應用基本上能夠滿足要求,更多的設置方式可以查看lammps手冊。
更多lammps教程和案例請關注微信公眾號:lammps加油站
總結
以上是生活随笔為你收集整理的lammps教程:group命令详解的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 前端学习(3076):vue+eleme
- 下一篇: android 分享小程序到微信,微信小