1、由新的位置计算系统的势能,得到各原子的受力及加速度。反复循环,就可以得到系统中原子的运动轨迹并输出相关的热力学数据。分子动力学模拟?:解牛顿运动方程的过程优势:把整个原子作为一个质点进行模拟,减少了自由度的计算,加大了可计算的体系的空间和时间尺度,简化数据处理和分析。二、Lammps软件的基本介绍Lammps?Large-scaleAtomic/MolecularMassivelyParallelSimulator大规模原子/分子并行模拟器 简单的来说,Lammps就是一个可根植于Windows和Linux系统的经典分子动力学代码;根据不同的边界条件和初始条件对相互作用的分子,原子,宏观粒子集
2、合进行牛顿运动方程积分,并输出相关的热力学数据。优点:u免费开源的代码;可以根据需要修改、扩展计算程序(C+)u可对固、液、气三种状态的物质进行模拟u能模拟多种模型体系(原子,聚合物,有机分子,粒子材料)u模拟体系可达上百万个粒子(计算资源)u方便的并行计算模拟流程:三、Lammps模拟的相关命令一般而言,一个Lammps工作目录需要包含以下几个文件;Lammps执行程序脚本文件(in文件)势函数文件(eam.alloy,tersoff,sw)data文件(体系的初始构型)MPI并行文件(多核运行计算)脚本文件的内容及书写格式In文件结构一般分为4个部分:Initialization,Atom
3、definition,Settings,Runasimulation(1)Initialization模拟体系之前,一些参数必须要被设置.相关的命令有:units,dimension,boundary,atom_style等.(2)Atomdefinitionlammps提供3种方式定义原子:按照晶格的方式创建原子,相关命令:lattice,region,create_box,create_atoms.通过read_data或read_restart命令从data或restart文件读入(可包含出原子坐标之外的一些信息)已经设置好的原子可以用replicate命令复制以生成一个更大规模的模拟体
4、系.(3)settings原子信息定义好后,要定义一系列的设置:力场系数、模拟参数、输出选项等.力场系数可以通过这些命令定义:pair_style,pair_coeff,bond_coeff,angle_coeff等。各种模拟参数由这些命令设置:neighbor,group,timestep,reset_timestep,run_style,min_style.fix命令是lammps中很重要的一个命令,它包括很多子命令,对体系施加一系列的约束条件,选择系综等等.设定lammps进行各种计算:compute,variable.输出选项由thermo,dump,restart命令设置.(4)Ru
5、nasimulation使用run命令开始一个分子动力学模拟;用minimize命令来实施能量最小化(molecularstatics)unitsSyntax:unitsstylestyle=ljorrealormetalorsiorcgsorelectronExamples:unitsljunitsmetaldimension Syntax:dimensionNN=2or3Examples:dimension3atom_styleSyntax:atom_stylestyleargsstyle=atomicorbodyorchargeordipoleorelectronorfullormole
6、cularorperiorsphereortriorhybridExamples:atom_styleatomicatom_stylefullInitializationboundaryFixedboundary(f)Freeboundary(s)Periodicboundary(p)柔性边界(m):允许边界上的粒子有微小移动以反映内层粒子的作用力施加到它们身上的情况Syntax:boundaryxyzx,y,z=porsorform,oneortwolettersExamples:boundaryppfboundarypfspboundarysffm边界条件不同,模拟所得到的结果会有所不同,
7、应根据实际模拟的问题和选用的系综来选取合适的边界条件Al块体结构latticefcc4.0495#定义晶格类型regionboxblock010010010#定义模拟盒子的大小create_box1box#创建模拟盒子create_atoms1box#在模拟盒子中创建原子lammps内部搭建模型NaCl结构latticecustom$xa11.00.00.0a20.01.00.0a30.00.01.0&basis0.00.00.0basis0.50.50.0basis0.50.00.5basis0.00.50.5&basis0.50.50.5basis0.00.00.5basis0.00.50
8、.0basis0.50.00.0regionboxblock050505create_box2boxcreate_atoms2boxbasis11basis21basis31basis41&basis52basis62basis72basis82AtomdefinitionLAMMPS 2013 data file for alcucouple#注释行注释行 61968 atoms#总原子数总原子数 2 atom types#原子类型原子类型 0.000000000 68.760400000 xlo xhi#模拟盒子模拟盒子x方向尺寸方向尺寸 0.000000000 68.760400000
9、ylo yhi#模拟盒子模拟盒子y方向尺寸方向尺寸 0.000000000 186.420900000 zlo zhi#模拟盒子模拟盒子z方向尺寸方向尺寸Masses#关键字:定义原子质量关键字:定义原子质量 1 26.982000#定义第一种原子质量定义第一种原子质量 2 63.546001#定义第二种原子质量定义第二种原子质量Atoms#关键字:定义原子坐标关键字:定义原子坐标 1 1 0.000000000 0.000000000 33.825999948#原子坐标原子坐标:原子编号原子编号 原子类型原子类型 x坐标坐标 y坐标坐标 z坐标坐标 2 1 0.000000000 0.000
10、000000 102.667499948 3 1 2.022364706 2.022364706 33.825999948 4 1 2.022364706 2.022364706 102.667499948 5 1 0.000000000 2.022364706 35.850749948 6 2 2.022364706 0.000000000 35.850749948 7 2 0.000000000 0.000000000 37.875499948 8 2 2.022364706 2.022364706 37.875499948 9 2 0.000000000 2.022364706 39.9
11、00249948 10 2 2.022364706 0.000000000 39.900249948外部搭建模型不同的atom_style,data文件格式不尽相同定义原子坐标的格式atomicatom-IDatom-typexyzchargeatom-IDatom-typeqxyzfullatom-IDmolecule-IDatom-typeqxyzhybridatom-IDatom-typexyzsub-style1sub-style2.bonds=#ofbondsinsystemangles=#ofanglesinsystemdihedrals=#ofdihedralsinsystemi
12、mpropers=#ofimpropersinsystembond types=#ofbondtypesinsystemangle types=#ofangletypesinsystemdihedral types=#ofdihedraltypesinsystemimproper types=#ofimpropertypesinsystem不管采用什么途径,只要data文件格式符合要求,lammps就可以读入Materialsstudio结合msi2lmp写入data文件u在MS搭建好模型u在Modules中选择Discover模块,将Forcefield设置为cvffuCalculate之后
13、将构型文件Export,保存为*.car*.cor类型u直接export保存为*.car*.cor类型u将保存的两个文件*.car和*.mdf复制到msi2lmp的工作路径u在msi2lmp路径下执行./msi2lmp.exe*-classI-frccvffdata.*settings力场参数(势函数的调用)pair_stylepair_coeffExamples:pair_styleeam/alloypair_coeff*AlCu.eam.alloyAlCupair_styleeam/alloypair_coeff*AlCu.eam.alloyAlAlAlCupair_styleeam/al
14、loypair_coeff*AlCu.eam.alloyCuAlpair_styleeampair_coeff11Al.eampair_styleeampair_coeff22Cu.eampair_styleeam/alloypair_coeff*AlCu.eam.alloyCuneighbor neighborcutoffdistance=forcecutoff+skindistanceSyntax:neighborskinstyleskin=extradistancebeyondforcecutoff(distanceunits)style=binornsqormultiExamples:
15、neighbor0.3binneighbor2.0nsq三种算法(处理器分配的原子数)bin:N/Pnsq:(N/P)2默认值2.0binforunits=realormetal,skin=2.0Angstromsregion,groupregionboxblockINFINFINFINFINFINFunitsboxregionalblockINFINFINFINFINF102.6674999480unitsboxregionwallalblockINFINFINFINFINF3.454749948unitsboxregioncublockINFINFINFINF105.4974998710INFunitsboxregionwallcublockINFINFINFINF161.5253498710INFunitsboxgroupAltype1groupCutype2groupboxregionboxgroupalregionalgroupcuregioncugroupwallalregionwallalgroupwallcuregionwallcugroupwallunionwallalwallcugroupmobilesubtractboxwallgroupmobilealsubtractalwa
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1