关于lammps学习的一点汇总
LAMMPS手册-中文版讲解

LAMMPS手册-中文解析一、简介本部分大至介绍了LAMMPS的一些功能和缺陷。
1.什么是LAMMPS?LAMMPS是一个经典的分子动力学代码,他可以模拟液体中的粒子,固体和汽体的系综。
他可以采用不同的力场和边界条件来模拟全原子,聚合物,生物,金属,粒状和粗料化体系。
LAMMPS可以计算的体系小至几个粒子,大到上百万甚至是上亿个粒子。
LAMMPS可以在单个处理器的台式机和笔记本本上运行且有较高的计算效率,但是它是专门为并行计算机设计的。
他可以在任何一个按装了C++编译器和MPI的平台上运算,这其中当然包括分布式和共享式并行机和Beowulf型的集群机。
LAMMPS是一可以修改和扩展的计算程序,比如,可以加上一些新的力场,原子模型,边界条件和诊断功能等。
通常意义上来讲,LAMMPS是根据不同的边界条件和初始条件对通过短程和长程力相互作用的分子,原子和宏观粒子集合对它们的牛顿运动方程进行积分。
高效率计算的LAMMPS通过采用相邻清单来跟踪他们邻近的粒子。
这些清单是根据粒子间的短程互拆力的大小进行优化过的,目的是防止局部粒子密度过高。
在并行机上,LAMMPS采用的是空间分解技术来分配模拟的区域,把整个模拟空间分成较小的三维小空间,其中每一个小空间可以分配在一个处理器上。
各个处理器之间相互通信并且存储每一个小空间边界上的”ghost”原子的信息。
LAMMPS(并行情况)在模拟3维矩行盒子并且具有近均一密度的体系时效率最高。
2.LAMMPS的功能总体功能:可以串行和并行计算分布式MPI策略模拟空间的分解并行机制开源高移植性C++语言编写MPI和单处理器串行FFT的可选性(自定义)可以方便的为之扩展上新特征和功能只需一个输入脚本就可运行有定义和使用变量和方程完备语法规则在运行过程中循环的控制都有严格的规则只要一个输入脚本试就可以同时实现一个或多个模拟任务粒子和模拟的类型:(atom style命令)原子粗粒化粒子全原子聚合物,有机分子,蛋白质,DNA联合原子聚合物或有机分子金属粒子材料粗粒化介观模型延伸球形与椭圆形粒子点偶极粒子刚性粒子所有上面的杂化类型力场:(命令:pair style, bond style, angle style, dihedral style, improper style, kspace style)对相互作用势:L-J, Buckingham, Morse, Yukawa, soft, class2(COMPASS), tabulated.带点对相互作用势:Coulombic, point-dipole.多体作用势:EAM, Finnis/Sinclair EAM, modified EAM(MEAM), Stillinger-Weber, Tersoff, AIREBO, ReaxFF粗粒化作用势:DPD, GayBerne, Resquared, Colloidal, DLVO介观作用势:granular, Peridynamics键势能:harmonic, FENE, Morse, nonlinear, class2, quartic键角势能:harmonic, CHARMM, cosine, cosine/squared, class2(COMPASS)二面角势能:harmonic, CHARMM, multi-harmonic, helix, OPLS, class2(COMPASS) 不合理势能:harmonic, CVFF, class2(COMPASS)聚合物势能:all-atom, united-atom, bead-spring, breakable水势能:TIP3P,TIP4P,SPC隐式溶剂势能:hydrodynamic lubrication, Debye长程库伦与分散:Ewald, PPPM, Ewald/N(针对长程L-J作用)可以有与普适化力场如CHARMM,AMBER,OPLS,GROMACS相兼容的力场可以采用GPU加速的成对类型杂化势能函数:multiple pair, bond, angle, dihedral, improper potentials(多对势能处于更高的优先级)原子创建:(命令:read_data, lattice, create-atoms, delete-atoms, displace-atoms, replicate)从文件中读入各个原子的坐标在一个或多个晶格中创建原子删除几何或逻辑原子基团复制已存在的原子多次替换原子系综,约束条件,边界条件:(命令:fix)二维和三维体系正角或非正角模拟空间常NVE,NVT,NPT,NPH积分器原子基团与几何区域可选择不同的温度控制器有Nose/Hoover和Berendsen压力控制器来控制体系的压力(任一维度上)模拟合子的变形(扭曲与剪切)简谐(unbrella)束缚力刚体约束摇摆键与键角约束各种边界环境非平行太分子动力学NEMD各种附加边界条件和约束积分器:Velocity-verlet积分器Brown积分器rRESPA继承时间延化积分器刚体积分器共轭梯度或最束下降算法能量最小化器输出:(命令:dump, restart)热力学信息日志原子坐标,速度和其它原子量信息的文本dump文件二进制重启文件各原子量包括:能量,压力,中心对称参数,CAN等用户自定义系统宽度或各原子的计算信息每个原子的时间与空间平均系统宽量的时间平均原子图像,XYZ,XTC,DCD,CFG格式数据的前处理与后处理:包里提供了一系列的前处理与后处理工具另外,可以使用独立发行的工具组pizza.py, 它可以进行LAMMPS模拟的设置,分析,作图和可视化工作。
lammps分子动力学 能量 平衡

lammps分子动力学能量平衡
摘要:
MMPS 分子动力学简介
MMPS 的应用范围
MMPS 能能量平衡计算
MMPS 与其他软件的结合使用
MMPS 的培训与学习资源
正文:
LAMMPS 分子动力学是一种经典的分子动力学软件,免费开源,广泛应用于模拟液态、固态或气态的粒子的系综。
它采用不同的力场和边界条件来模拟全原子,聚合物,生物,固态(金属、陶瓷,氧化物),粒状和粗料化体系。
LAMMPS 可以计算的体系小至几个粒子,大到上百万甚至是上亿。
LAMMPS 的应用范围非常广泛,它可以用于研究材料的力学性能、热力学性质、分子动力学过程等。
此外,LAMMPS 还可以进行能量平衡计算,为研究体系的稳定性和反应途径提供重要依据。
在实际应用中,LAMMPS 可以与其他软件(如Gaussian 量子化学软件)结合使用,以提高计算的准确性和可靠性。
通过与这些软件的结合,LAMMPS 能够更好地模拟化学反应过程,并预测材料的性质。
对于有兴趣学习和使用LAMMPS 的用户,可以通过参加培训课程或查阅相关学习资源来提高自己的技能。
一些专业的培训机构会定期举办LAMMPS 分子动力学计算、Gaussian 量子化学计算、REAXFF 反应力场开发等系列专
题培训,为广大用户提供学习机会。
总之,LAMMPS 分子动力学软件在材料科学、化学反应等领域具有广泛的应用前景。
lammps参数

lammps参数LAMMPS (Large-scale Atomic/Molecular Massively Parallel Simulator) 是一款高效且灵活的分子动力学模拟软件。
它可以用于模拟原子、分子和原子团聚体系统的动力学行为。
LAMMPS 是一个传统的分子动力学程序,它包括一系列功能丰富的模拟方法、模型和分子间相互作用势函数。
下面将介绍一些常见的 LAMMPS 参数及其参考内容。
1. 模拟系统:在 LAMMPS 中,通过设置输入文件中的 `units` 参数可以选择不同的长度、能量和时间单位。
通常情况下,LAMMPS 使用的是无量纲化单位来进行模拟。
单位设置为 `lj` 表示使用Lennard-Jones 单位。
关于单位设置的详细内容可以在LAMMPS 官方文档中的 "units" 一节中找到相关信息。
2. 动力学算法:LAMMPS 提供了多种动力学算法,如经典牛顿运动方程模拟(NVE)、NVT (能量守恒、体系与热浴恒温)、NPT (能量守恒、粒子数不变、体系与热浴和压力恒定) 等。
这些算法可以通过设置输入文件中的 `fix` 参数来实现。
更多关于 LAMMPS 动力学模拟算法的详细说明可以在官方文档的"fix" 一节中找到。
3. 分子结构和拓扑:在 LAMMPS 中,分子结构可以通过 `read_data` 命令或自定义脚本生成。
可以定义不同的分子类型、原子数目、电荷、键长、键角、二面角等信息。
此外,LAMMPS 还支持各种拓扑约束条件,如键长限制、键角限制、二面角限制等。
关于分子结构和拓扑设置的更多细节可以在 "read_data" 一节和相关命令的文档中找到。
4. 分子间相互作用势函数:LAMMPS 支持多种分子间相互作用势函数的使用。
常用的势函数包括 Lennard-Jones 势函数和 Coulomb 势函数。
学习lammps 对in文件的一个概述性心得

写在开头:1.尽量列举了大部分(几乎)的命令2.带星号命令非常重要,大家在看mannual中命令的解释的时候可以重点先看带星号的3.非斜命令是运行一个常用模拟所必备的4.命令顺序为一个基本的脚本文件命令顺序,骨架如此5.我主要是做金属的,所以其他方向的希望有一个借鉴作用,大同小异6.对于初学者切不可认为in文件就是这个固定顺序,其实正常模拟过程中做平衡、以及随后的运行在某些阶段都会重复使用某一段命令,比如fix 1 …run;fix 2 …run ………,以及作循环,等等等7.本文的目的旨在让初学者对in文件有一个总体的把握,希望对新手入门有帮助8.括号里为这个命令的默认值,我列举的是在使用过程中比较关心的默认值9.纯属个人学习心得,希望大家多多指点讨论10.复制的时候希望能留下足迹,如果觉得哪里有问题,随时回来讨论!方便其他人学习!11.对in文件通俗点的理解就像洗衣服,洗衣机就是lammps的主程序,这个in文件就是在设定怎么洗衣服----------------------------------Initialization基本模拟系统设置-------------------------units (lj) ** 单位系统boundary (ppp) ** 边界条件atom_style (atomic) ** 粒子类型atom_modify * 粒子类型调整,,,凡是后面带一个modify的,都是对头命令的补充修改newton (on)processorsdimension (3) * 维数------------------------------Atom definition---这一组命令主要用来构建模拟模型的---------------lattice ** 晶格参数region ** 选择一个区域create_box ** 创建一个盒子create_atoms ** 创建原子group, ** 给原子分组delete_atoms,** 删除某些原子delete_bonds,displace_atoms,* 移动某些原子replicate* 将已经构建的模型在三维重复复制放大read_data***这个命令就是用来读取其他软件建的模型的read_restart* 以之前运行的结果作为这次计算的初始构型---------------------------------------Potencial---定义粒子相互作用势------------------------------ pair_style** 势函数类型pair_coeff,** 势函数文件名(一般这个文件放在与此in文件的同一个目录下)pair_modify**此后的13命令对做高分子及无机非的模拟的需要额外关注pair_writebond_stylebond_coeff,angle_styleangle_coeff,dihedral_styledihedral_coeff,improper_styleimproper_coeff,kspace_style,kspace_modifydielectric,special_bonds----------------------------------------Seting--------------------------------------------- neighbor, ** 截断半径相关的设置neigh_modify, **timestep,** 模拟的步长compute, *** !定义计算,一般我们需要的输出数据就需要这个命令来定义uncompute * 取消某个compute设置variable**这个命令可以多次使用,定义一个变量reset_timestep, ** 步长计数器清零,有多个run命令的需注意这个run_style, 配套run的,不一定需要compute_modify *配套compute的---------------------------------------- Minimize------------------------------------------- 结构优化,注意和热力学平衡区分开来minimize,**min_style, **min_modify **---------------------------------------------Fix------------------------------------------- fix*** 这个命令相当重要多的不说,看手册unfix 取消某个fix设置fix_modify,------------------------------------------Output------------------------------------------ dump, ** 输出数据,输出的为单个原子的信息,可视化就用它undump,* 取消某个dump设置thermo, ** 输出全局数据,比如温度,压强,长度,总能量等thermo_style,* 配套thermo的thermo_modify,*(后面的都是输出一些数据类型,我一般没怎么用,具体需要的可以单独自己了解)dump image,dump_modify,dump movie,restart, *输出restart文件,对应前面read-restart,data文件只有原子坐标,restart含有部分计算信息write_data, *将当前模型输出为一个data文件,对应之前的read-data,write_dump,write_restart*------------------------------------------Run a simulation---------------------------------------- run, ***这个命令出现之后,模拟才开始进行计算,前面的都是在设置计算过程change_box, *neb prd,rerun,temper-------------------------------------------Others--------------------------------------------这些命令主要可以实现循环以及逻辑判断,通过他们,可以向更复杂的模拟过程前进clear,*log, *echo,if, *include,jump, *label, *next, *print, *shell,。
vasp与lammps学习资料2020年

LAMMPS分子动力学模拟技术与应用课程内容一、LAMMPS基础1分子动力学模拟入门理论——掌握lammps的in文件中各命令的意义1.1系综理论1.2主要算法介绍1.3积分步长的选取1.4温度和压力控制1.5周期性边界条件1.6分子动力学模拟流程二、LAMMPS入门学习2LAMMPS入门操作基础2.1Linux命令入门基础——熟练掌握LAMMPS所用的Linux命令2.2LAMMPS中一些安装包的介绍——为以后创建自己体系进行选择性安装2.3LAMMPS的linux版串行和并行及GPU版编译安装——掌握LAMMPS的编译方法,针对自己体系编译可执行文件。
2.4LAMMPS的in文件结构格式、基本语法及常用命令讲解、data文件格式。
2.5LAMMPS实例讲解。
实例操作:在linux系统编译安装自己的LAMMPS可执行程序。
三、LAMMPS进阶学习MMPS各种参数计算3.1颗粒模拟3.2可视化快照3.3弹性常数模拟3.4计算热导率3.5计算粘度3.6计算均方位移3.7计算径向分布函数3.8计算扩散系数3.9计算能量数据3.10Lammps常见错误及解决途径实例操作:学员结合自己的科研方向,选择运行契合自己研究方向的例子四、Lammps的建模4LAMMPS建模——掌握基本操作流程4.1掌握lattice命令建立晶体模型4.2Packmol建模语法学习及实操4.3Material Studio建模学习及实操4.4VMD建模学习及实操实例操作:把上述实操模型转换成lammps的data文件五、从examples的简单例子,到完成自己的科研课题5通过examples中的例子,理解要模拟对象的物理意义5.1运行examples\flow到建立水分子在石墨烯片层(碳纳米管)内的流动模拟5.2运行examples\shear到石墨烯力学性质模拟5.3运行examples\friction到金属/合金的摩擦模拟5.4特殊结构的模拟建模(C60系列模型)实例操作:学员探索由简单例子到自己科研课题的模拟过程六、环氧树脂在二氧化硅表面吸附建模(CVFF力场)6环氧树脂在二氧化硅表面吸附吸能的影响模拟过程6.1创建构型文件6.2建立输入脚本6.3运行能量最小化及体系的预松弛6.4压缩盒子达到指定的密度(针对不同研究体系掌握压缩方法的不同,并掌握判断方法和依据)6.5模拟步骤:包括能量最小化-NVT 平衡-NPT 平衡-对研究目标的性质进行长时间轨迹平衡-输出研究所关心的性质。
LAMMPS手册-中文版讲解

LAMMPS手册-中文解析一、简介本部分大至介绍了LAMMPS的一些功能和缺陷.1.什么是LAMMPS?LAMMPS是一个经典的分子动力学代码,他可以模拟液体中的粒子,固体和汽体的系综。
他可以采用不同的力场和边界条件来模拟全原子,聚合物,生物,金属,粒状和粗料化体系。
LAMMPS可以计算的体系小至几个粒子,大到上百万甚至是上亿个粒子。
LAMMPS可以在单个处理器的台式机和笔记本本上运行且有较高的计算效率,但是它是专门为并行计算机设计的.他可以在任何一个按装了C++编译器和MPI的平台上运算,这其中当然包括分布式和共享式并行机和Beowulf型的集群机。
LAMMPS是一可以修改和扩展的计算程序,比如,可以加上一些新的力场,原子模型,边界条件和诊断功能等。
通常意义上来讲,LAMMPS是根据不同的边界条件和初始条件对通过短程和长程力相互作用的分子,原子和宏观粒子集合对它们的牛顿运动方程进行积分。
高效率计算的LAMMPS通过采用相邻清单来跟踪他们邻近的粒子。
这些清单是根据粒子间的短程互拆力的大小进行优化过的,目的是防止局部粒子密度过高。
在并行机上,LAMMPS采用的是空间分解技术来分配模拟的区域,把整个模拟空间分成较小的三维小空间,其中每一个小空间可以分配在一个处理器上.各个处理器之间相互通信并且存储每一个小空间边界上的”ghost”原子的信息。
LAMMPS(并行情况)在模拟3维矩行盒子并且具有近均一密度的体系时效率最高。
2.LAMMPS的功能总体功能:可以串行和并行计算分布式MPI策略模拟空间的分解并行机制开源高移植性C++语言编写MPI和单处理器串行FFT的可选性(自定义)可以方便的为之扩展上新特征和功能只需一个输入脚本就可运行有定义和使用变量和方程完备语法规则在运行过程中循环的控制都有严格的规则只要一个输入脚本试就可以同时实现一个或多个模拟任务粒子和模拟的类型:(atom style命令)原子粗粒化粒子全原子聚合物,有机分子,蛋白质,DNA联合原子聚合物或有机分子金属粒子材料粗粒化介观模型延伸球形与椭圆形粒子点偶极粒子刚性粒子所有上面的杂化类型力场:(命令:pair style,bond style, angle style, dihedral style, improper style,kspace style)对相互作用势:L-J, Buckingham,Morse,Yukawa,soft,class2(COMPASS), tabulated.带点对相互作用势:Coulombic,point-dipole。
LAMMPS手册-中文版讲解

LAMMPS手册-中文解析一、简介本部分大至介绍了LAMMPS的一些功能和缺陷。
1.什么是LAMMPS?LAMMPS是一个经典的分子动力学代码,他可以模拟液体中的粒子,固体和汽体的系综.他可以采用不同的力场和边界条件来模拟全原子,聚合物,生物,金属,粒状和粗料化体系。
LAMMPS可以计算的体系小至几个粒子,大到上百万甚至是上亿个粒子.LAMMPS可以在单个处理器的台式机和笔记本本上运行且有较高的计算效率,但是它是专门为并行计算机设计的。
他可以在任何一个按装了C++编译器和MPI的平台上运算,这其中当然包括分布式和共享式并行机和Beowulf型的集群机.LAMMPS是一可以修改和扩展的计算程序,比如,可以加上一些新的力场,原子模型,边界条件和诊断功能等。
通常意义上来讲,LAMMPS是根据不同的边界条件和初始条件对通过短程和长程力相互作用的分子,原子和宏观粒子集合对它们的牛顿运动方程进行积分。
高效率计算的LAMMPS通过采用相邻清单来跟踪他们邻近的粒子。
这些清单是根据粒子间的短程互拆力的大小进行优化过的,目的是防止局部粒子密度过高。
在并行机上,LAMMPS采用的是空间分解技术来分配模拟的区域,把整个模拟空间分成较小的三维小空间,其中每一个小空间可以分配在一个处理器上。
各个处理器之间相互通信并且存储每一个小空间边界上的"ghost”原子的信息。
LAMMPS(并行情况)在模拟3维矩行盒子并且具有近均一密度的体系时效率最高。
2.LAMMPS的功能总体功能:可以串行和并行计算分布式MPI策略模拟空间的分解并行机制开源高移植性C++语言编写MPI和单处理器串行FFT的可选性(自定义)可以方便的为之扩展上新特征和功能只需一个输入脚本就可运行有定义和使用变量和方程完备语法规则在运行过程中循环的控制都有严格的规则只要一个输入脚本试就可以同时实现一个或多个模拟任务粒子和模拟的类型:(atom style命令)原子粗粒化粒子全原子聚合物,有机分子,蛋白质,DNA联合原子聚合物或有机分子金属粒子材料粗粒化介观模型延伸球形与椭圆形粒子点偶极粒子刚性粒子所有上面的杂化类型力场:(命令:pair style,bond style,angle style, dihedral style,improper style, kspace style) 对相互作用势:L—J, Buckingham,Morse, Yukawa,soft, class2(COMPASS), tabulated.带点对相互作用势:Coulombic, point—dipole.多体作用势:EAM,Finnis/Sinclair EAM, modified EAM(MEAM), Stillinger-Weber, Tersoff, AIREBO, ReaxFF粗粒化作用势:DPD, GayBerne, Resquared,Colloidal, DLVO介观作用势:granular, Peridynamics键势能:harmonic,FENE, Morse,nonlinear,class2, quartic键角势能:harmonic, CHARMM, cosine,cosine/squared,class2(COMPASS)二面角势能:harmonic, CHARMM, multi-harmonic,helix, OPLS, class2(COMPASS) 不合理势能:harmonic,CVFF, class2(COMPASS)聚合物势能:all-atom, united—atom, bead—spring, breakable水势能:TIP3P,TIP4P,SPC隐式溶剂势能:hydrodynamic lubrication, Debye长程库伦与分散:Ewald, PPPM,Ewald/N(针对长程L-J作用)可以有与普适化力场如CHARMM,AMBER,OPLS,GROMACS相兼容的力场可以采用GPU加速的成对类型杂化势能函数:multiple pair, bond,angle, dihedral,improper potentials(多对势能处于更高的优先级)原子创建:(命令:read_data, lattice, create-atoms,delete-atoms, displace—atoms,replicate)从文件中读入各个原子的坐标在一个或多个晶格中创建原子删除几何或逻辑原子基团复制已存在的原子多次替换原子系综,约束条件,边界条件:(命令:fix)二维和三维体系正角或非正角模拟空间常NVE,NVT,NPT,NPH积分器原子基团与几何区域可选择不同的温度控制器有Nose/Hoover和Berendsen压力控制器来控制体系的压力(任一维度上)模拟合子的变形(扭曲与剪切)简谐(unbrella)束缚力刚体约束摇摆键与键角约束各种边界环境非平行太分子动力学NEMD各种附加边界条件和约束积分器:Velocity-verlet积分器Brown积分器rRESPA继承时间延化积分器刚体积分器共轭梯度或最束下降算法能量最小化器输出:(命令:dump, restart)热力学信息日志原子坐标,速度和其它原子量信息的文本dump文件二进制重启文件各原子量包括:能量,压力,中心对称参数,CAN等用户自定义系统宽度或各原子的计算信息每个原子的时间与空间平均系统宽量的时间平均原子图像,XYZ,XTC,DCD,CFG格式数据的前处理与后处理:包里提供了一系列的前处理与后处理工具另外,可以使用独立发行的工具组pizza。
notepad lammps语法

LAMMPS(Large-scale Atomic/Molecular Massively Parallel Simulator)是一种用于分子动力学模拟的开源软件,其语法结构复杂而灵活,能够满足多种复杂的模拟需求。
在该软件中,用户可以通过输入合适的命令或脚本文件来实现各种功能,包括分子模拟、力场建立、能量最小化等。
以下是关于LAMMPS语法的详细讲解:1. 基本结构在LAMMPS语法中,通常包含以下几个基本结构:a. 命令行输入b. 脚本文件输入c. 注释命令行输入是用户直接在命令行中输入LAMMPS命令来进行模拟,而脚本文件输入则是将LAMMPS命令写入一个脚本文件中,通过执行该文件来实现模拟。
注释则是用于解释LAMMPS命令的文本,不会被软件执行。
2. 命令格式LAMMPS的命令格式通常为:命令关键字参数,其中命令是指LAMMPS的具体功能,关键字是该功能的具体参数,参数则是关键字所需的具体数值或选项。
可以使用命令“p本人r_style lj/cut 2.5”来设置LJ势的截断距离为2.5。
3. 常用命令在LAMMPS中,有许多常用的命令,包括但不限于以下几类:a. 模拟控制命令b. 分子定义命令c. 力场设置命令d. 输出控制命令模拟控制命令用于控制模拟的时间步长、总步数、随机数种子等参数,分子定义命令用于定义分子结构、原子属性等信息,力场设置命令用于选择和设置力场模型,输出控制命令用于控制模拟结果的输出格式和频率。
4. 示例下面以一个简单的粒子模拟为例,介绍LAMMPS的语法使用方法:a. 定义模拟系统的基本信息,如维度、原子种类、原子位置等;b. 选择合适的分子力场模型,并设置其参数;c. 设置模拟的时间步长和总步数;d. 执行模拟并输出结果。
通过上述示例,可以看出,在LAMMPS中,用户可以通过简单的命令和脚本文件完成各种复杂的分子模拟任务。
LAMMPS是一款功能强大、灵活多样的分子动力学模拟软件,其语法结构严谨,使用方法多样。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
不管采用什么途径,只要data文件格式符合要求,lammps就可以读入 Materials studio结合msi2lmp写入data文件 在MS搭建好模型 在Modules中选择Discover模块,将Forcefield设置为cvff
Calculate之后将构型文件Export,保存为*.car *.cor类型
方程中包含了所有的原子核及电子的哈密度量和波函数
密度泛函理论:
H ( (r )) E ( (r ))
用电子密度代替电子坐标,减少自由的计算
分子动力学模拟 ? :解牛顿运动方程的过程
Fi (t ) a i (t ) 利用 mi ,先由各个原子的位置计算系统的势能,
得到各个原子所受的力及加速度,然后计算各原子在经过△T之后
不同的atom_style, data文件格式不尽相同
定义原子坐标的格式
atomic charge full hybrid atom-ID atom-type x y z atom-ID atom-type q x y z atom-ID molecule-ID atom-type q x y z atom-ID atom-type x y z sub-style1 sub-style2 ….
的位置及速度;由新的位置计算系统的势能,得到各原子的受力及
加速度。反复循环,就可以得到系统中原子的运动轨迹并输出相关
的热力学数据。
优势: 把整个原子作为一个质点进行模拟,减少了自由度的计算, 加大了可计算的体系的空间和时间尺度,简化数据处理和 分析。
二、Lammps软件的基本介绍
Lammps?
Large-scale Atomic/Molecular Massively Parallel Simulator
大规模原子/分子并行模拟器 简单的来说,Lammps就是一个可根植于Windows和Linux系统 的经典分子动力学代码;根据不同的边界条件和初始条件对相互 作用的分子,原子,宏观粒子集合进行牛顿运动方程积分,并输 出相关的热力学数据。
优点: 免费开源的代码;可以根据需要修改、扩展计算程序(C++) 可对固、液、气三种状态的物质进行模拟 能模拟多种模型体系(原子,聚合物,有机分子,粒子材料) 模拟体系可达上百万个粒子(计算资源) 方便的并行计算
(4)Run a simulation 使用run命令开始一个分子动力学模拟; 用minimize命令来实施能量最小化(molecular statics)
Initialization units Syntax: units style style = lj or real or metal or si or cgs or electron Examples: units lj units metal dimension Syntax: dimension N N = 2 or 3 Examples: dimension 3
In文件结构 一般分为4个部分:Initialization, Atom definition, Settings, Run a simulation
(1) Initialization
模拟体系之前, 一些参数必须要被设置. 相关的命令有:units, dimension, boundary, atom_style 等.
直接export保存为*.car *.cor类型 将保存的两个文件**.car和**.mdf 复制到msi2lmp的工作路径 在msi2lmp路径下执行 ./msi2lmp.exe ** -class I -frc cvff > data.**
settings
力场参数(势函数的调用) pair_style pair_coeff Examples: pair_style eam/alloy pair_coeff * * AlCu.eam.alloy Al Cu pair_style eam/alloy pair_coeff * * AlCu.eam.alloy Al Al Al Cu pair_style pair_coeff pair_style pair_coeff eam 1 1 Al.eam eam 2 2 Cu.eam pair_style eam/alloy pair_coeff * * AlCu.eam.alloy Cu Al
#关键字:定义原子质量 #定义第一种原子质量 #定义第二种原子质量 #关键字:定义原子坐标
1 2 3 4 5 6 7 8 9 10
1 1 1 1 1 2 2 2 2 2
0.000000000 0.000000000 2.022364706 2.022364706 0.000000000 2.022364706 0.000000000 2.022364706 0.000000000 2.022364706
模拟流程:
三、Lammps模拟的相关命令
一般而言,一个Lammps工作目录需要包含以下几个文件;
La件(in文件)
势函数文件(…eam.alloy , …tersoff, …sw)
data文件(体系的初始构型)
MPI并行文件(多核运行计算)
脚本文件的内容及书写格式
boundary Fixed boundary (f)
Free boundary (s)
柔性边界 (m): 允许边界上的粒子有微小 移动以反映内层粒子的作用力施加到它 们身上的情况
Periodic boundary (p)
Syntax: boundary x y z x, y, z = p or s or f or m, one or two letters Examples: boundary p p f boundary p fs p boundary s f fm 边界条件不同,模拟所得到的结果会有所不同,应根据实际模拟的 问题和选用的系综来选取合适的边界条件
pair_style eam/alloy pair_coeff * * AlCu.eam.alloy Cu
neighbor neighbor cutoff distance = force cutoff + skin distance Syntax: neighbor skin style skin = extra distance beyond force cutoff (distance units) style = bin or nsq or multi Examples: neighbor 0.3 bin neighbor 2.0 nsq 三种算法(处理器分配的原子数) bin: N/P nsq: (N/P)^2 默认值 2.0 bin for units = real or metal, skin = 2.0 Angstroms
0.000000000 33.825999948 #原子坐标:原子编号 原子类型 x坐标 y坐标 z坐标 0.000000000 102.667499948 2.022364706 33.825999948 2.022364706 102.667499948 2.022364706 35.850749948 0.000000000 35.850749948 0.000000000 37.875499948 2.022364706 37.875499948 2.022364706 39.900249948 0.000000000 39.900249948
(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命令设置.
外部搭建模型
LAMMPS 2013 data file for alcucouple 61968 atoms #总原子数 #注释行
2 atom types
#原子类型
#模拟盒子x方向尺寸 #模拟盒子y方向尺寸 #模拟盒子z方向尺寸
0.000000000 68.760400000 xlo xhi 0.000000000 68.760400000 ylo yhi 0.000000000 186.420900000 zlo zhi Masses 1 26.982000 2 63.546001 Atoms
atom_style Syntax: atom_style style args style = atomic or body or charge or dipole or electron or full or molecular or peri or sphere or tri or hybrid Examples: atom_style atomic atom_style full
bonds = # of bonds in system angles = # of angles in system dihedrals = # of dihedrals in system impropers = # of impropers in system bond types = # of bond types in system angle types = # of angle types in system dihedral types = # of dihedral types in system improper types = # of improper types in system