学习lammps编写的第一个简单的例子。参考文献《单晶硅纳米级磨削过程的理论研究》。
一、in文件部分
# 金刚石半径4.5nm,晶格常数3.57# 单晶硅 x:15nm,y:15nm ,z:15nm#echo screen #输出调试、仿真到屏幕###设定基本参数units metal #金属类型dimension 3 #三维atom_style atomic #无键boundary f f f #非边界条件###生成原子/区域region box block -200 200 -200 200 -200 200 units box #box区域,长宽高1000的盒子。create_box 2 box #创建包含两种原子的盒子lattice diamond 3.57 #金刚石模型,晶格常数3.57region s1 sphere 60 -35 63 30 units box #区域名称s1 球形区域 球心坐标xyz 球半径4.5 单位与box相同region s2 block 0 100 -100 0 0 63 units box #区域名s2 长方体区域 xyz的最高最低坐标 单位同boxregion se intersect 2 s1 s2 #区域名 联合区域 联合数 联合s1 联合s2#create_box 2 se #原子类型数目 区域create_atoms 1 region se units box #原子类型 区域 单位###创建多层Silattice diamond 5.4region b1 block 0 120 0 88.23 39.2 58.82 units boxregion b2 block 0 120 0 88.23 19.60 39.2 units boxregion b3 block 0 120 0 88.23 0 19.60 units boxregion b4 union 3 b1 b2 b3create_atoms 2 region b4 units box###设置质量mass 1 12.0 #C质量12.0g/molmass 2 28.0 #Si质量28g/mol###分组group JGS type 1 #将第一类原子归为JGS类neighbor 2.0 bin #skin距离neigh_modify every 2 delay 10 check yes exclude group JGS JGS#在上一次构建list1后20个步长内不进行构建,延时后两个步长才开始构建,并且要满足当某个原子超过skin距离的一般。排除JGS group的相互作用。group Si type 2 #将2类原子归为JGS类group layer1 region b1 #将b1归为layer1类(牛顿层)group layer2 region b2 #恒温层group layer3 region b3 #固定边界层###设置作用势pair_style tersoff #按tersoff计算相互作用势pair_coeff * * SiC.tersoff C Si #两种原子类型,1C,2Si###设置计算方法compute mytemp layer2 temp/com #按temp/com计算恒温层温度#nve下驰豫velocity JGS set NULL 0.1667 NULL #JGS组vx设置为1,其余不设置velocity layer2 create 293 12345 dist gaussian #在293K温度下以12345随机种子赋予layer2,且原子速度按高斯分布fix 10 JGS nve/noforce #nve:保证系统中原子数量n、体系总体积v和体系总能量e保持不变。noforce:忽略原子力,不更新速度,更新位置。fix 20 layer1 nvefix 30 layer2 nvefix 31 layer2 temp/rescale 1 293 293 1.0 1.0 #基本原理是当温度超出设定温度时,通过缩放的方式调节温度使其达到设定值。fix_modify 31 temp mytempfix 40 layer3 nve/noforce###输出体系参数thermo 200 #每200步输出结果thermo_style custom step temp c_mytemp ke pe etotal enthalpy #自定义输出格式thermo_modify lost ignore###输出原子参数dump 3 JGS custom 500 velocity.txt vx vy vzdump 2 Si custom 1000 Force.txt id x y z fx fy fzdump 1 all custom 500 C.lammpsstrj id type x y z #dumpID 所有组 自定义输出形式 每一步输出一次 输出坐标xyztimestep 0.001run 60000 #run一个步长write_data C-Si.data #输出data文件write_restart C-Si.restart
二、ovito轨迹
三、数据处理
脚本自动化处理还没怎么学,自己手动拉excel将所有Si中所有原子的力求的和输出的受力—时间曲线。

