LAMMPS软件与分子模拟的实现_第1页
LAMMPS软件与分子模拟的实现_第2页
LAMMPS软件与分子模拟的实现_第3页
LAMMPS软件与分子模拟的实现_第4页
LAMMPS软件与分子模拟的实现_第5页
已阅读5页,还剩39页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

补充内容Lammps与分子动力学常用模拟软件Lammps功能和原理经典范例当前1页,总共44页。1.常用的MD模拟软件NAMD:免费

主要针对与生物和化学软材料体系,程序设计水平高,计算效率高。有很好的分析辅助软件VMD。AMBER

主要针对生物体系,也适当兼容一般化学分子。有很好的内置势能模型,自定义新模型和新分子很方便,有很完善的维护网站。计算效率不高运算速度慢。CHARMM

主要针对生物体系,也包含部分化学体系。势能模型更新很快自定义新模型比较方便。计算效率低。当前2页,总共44页。GROMACS免费

主要针对生物体系,也适当照顾一般化学体系。算法好,计算效率高。界面友好,维护服务好。TINKER免费

一般性分子动力学软件,对生物体系略有偏重。优点

支持多种模型。仍在开发中,某些方面还不完善。DL-POLY

一般性分子模拟软件,界面友好,计算效率高。维护服务很好。MaterialsStudio当前3页,总共44页。LAMMPS免费

一般性分子模拟软件。

兼容当前大多数的势能模型,编程水平高,计算效率高。可以模拟软材料和固体物理系统。

MaterialsExplorer

立足于Windows平台的多功能分子动力学软件。拥有强大的分子动力学计算及MonteCarlo软件包,是结合应用领域来研究材料工程的有力工具。MaterialsExplorer可以用来研究有机物、高聚物、生物大分子、金属、陶瓷材料、半导体等晶体、非晶体、溶液,流体,液体和气体相变、膨胀、压缩系数、抗张强度、缺陷等。MaterialsExplorer软件中包含2Body,3Body,EAM,AMBER等63个力场可供用户选择。MaterialsExplorer软件拥有完美的图形界面,方便使用者操作。当前4页,总共44页。2.Lammps功能和原理Lammps初识Lammps的功能Lammps的原理Lammps的特点Lammps的应用当前5页,总共44页。Lammps初识Lammps程序是一个经典分子动力学计算程序。全称Large-scaleAtomic/MolecularMassivelyParallelSimulator官方网址:/

国内交流论坛:当前6页,总共44页。Lammps的功能能(features)一般意义(并行化,可扩充,脚本化输入,接口化编译)专门意义(能建模原子类型,有什么力场,有那些原子操作,如何设置系综/边界/约束,积分方法,输出控制,前后图形处理,以及具有一些什么特色功能)不能(non-features)-非图形化界面,不能自动建立分子结构模型和分配力场参数,不具有复杂的分析的手段,不能可视化输出结果补救:Pizza.py工具包,用于建模和分析以及可视化,但是功能不够强大。必须一些其他前后处理软件(几何建模,物理建模,可视化分析)结合使用,接口方法。当前7页,总共44页。Lammps的基本原理编写、输入模拟程序运行模拟可视化结果分析输出结果当前8页,总共44页。Lammps输入文件的主要组成部分InitializationAtomdefinitionSettingsRunasimulation后面的两个部分可以按照需要多次重复。当前9页,总共44页。Lammps软件目前的特点从势场角度看:建模软物质(生物分子,聚合物),固态材料(金属,半导体),以及粗粒子和介观材料。更一般的说是lammps程序是用来建模原子/介观/连续尺度物质以及其在热、力学、化学条件下的性质的模拟软件,因此是系统化方法。Lammps程序运行环境:单CPU和多CPU,采用的是消息响应和模拟域的空间分解并行机制。Lammps程序代码共享和模块化设计,具有功能易于扩充的特性。新版采用C/C++语言书写,周期性发布,以日期为为准,不断更新一些bug和增加一些功能。脚本语言应用开发。美国能源部下属的圣地亚国家实验室发布,主要作者:StevePlimpton,AidanThompson,andPaulCrozier网上邮件组可以解决和及时交流当前10页,总共44页。Lammps软件入门明确自己的问题和方向,选择正确的工具要做的是什么问题,属于物理,化学,力学,材料,还是都有?能否具体到希望要作出什么结果?实验和理论上是否有相似的研究?再看问题是否适合lammps程序?是否有别的程序可以替代选择或者联合选择?计算环境搭建可行性分析现有计算机条件:

硬件水平决定模拟的规模是否有相关的支持:软件环境团队学习的重要:交流是非常重要学习一点分子动力学基础物理学基础:原子论,量子论,简单的数学材料学基础:结构化材料,晶体理论统计力学基础:热力学知识,统计分布专业基础:热流热导分析,应力分析,辐射损伤分析,蛋白质计算机基础:程序学习和改进,编程和硬件识别当前11页,总共44页。如何利用好Lammps手册?求人不如求己准备一份纸版,一份电子版放置在桌面。养成良好的学习习惯几个章节必须看(1-1,2,3;2-2,3,5,6,7;3-1,2,3;4-all)读做例子有感觉(melt,crack,shear)错误信息自己找(完美的错误提示信息)随手整理做记录命令学习(工具体现)命令名称:基本上告诉你意义书写格式:脚本语言的特色格式选项说明:严格遵守,最好理解含义范例书写:有助于自己写脚本注意事项:特别的地方相关命令:命令分类学习,比如输入有那些方式,势函数定义有哪几类?当前12页,总共44页。Lammps常见命令unitdimensionnewtonprocessorsboundaryatomstyleatommodifyatomtype选择单位系统,L-J、real、metal2Dor3D?默认是3D边界条件:周期性边界or自由边界?定义你的模拟体系中的原子属性告诉lammps在你的模拟中使用何种力场?pair_style,bond_style,angle_style,dihedral_style,improper_style当前13页,总共44页。Lammps软件的应用应用步骤—程序安装安装平台环境(考虑不同的操作系统,是否并行计算)简单易行的安装Windows下:命令行执行方式Linux下:编译选择项几个关键点:编译器的选择;并行库的位置,相关库的位置应用步骤--实例学习输入脚本格式书写:3-1节内容,积木式搭建分块命令学习方法:

几何模型构建:atom_style,boundary,dimension,unitscreate_atoms,create_box,lattice,read_data,read_restart,region,replicate

物理模型构建:angle_coeff,angle_style,bond_coeff,bond_style,dielectric,dihedral_coeff

过程模型构建:Fix:isanyoperationthatisappliedtothesystemduringtimesteppingorminimization.Examplesincludeupdatingofatompositionsandvelocitiesduetotimeintegration,controllingtemperature,applyingconstraintforcestoatoms,enforcingboundaryconditions,computingdiagnostics,etc.

输出模型构建:compute过程计算量,热力学输出量(全局量),局部表征量(单个原子、组原子)当前14页,总共44页。3.经典范例使用L-J势模拟裂纹的扩展使用EAM势模拟Ni的剪切行为Cu、Ni等金属的凝固过程模拟表面能计算当前15页,总共44页。A.使用L-J势模拟裂纹的扩展裂纹lowerupperleftupperleftlowerxy当前16页,总共44页。Lammps计算输入文件#2dLJcracksimulation(问题的基本初始化)dimension 2#2维分子动力学模拟boundary ssp#x,y方向不存在周期边界条件,z方向周期边界条件。atom_style atomic#原子类型(金属)Neighbor0.3bin#建近邻表参数(rc+0.3)bin表示为近邻表类型。neigh_modifydelay5#间隔多少载荷步重新形成近邻表当前17页,总共44页。Lammps计算输入文件#creategeometry创建初始几何构形Latticehex0.93#指定晶格类型(二维hex)和晶格常数Regionboxblock0100040-0.250.25#定义一个区域create_box 5box#在指定区域建立一个simulationbox,5表示原子类型的种类数create_atoms1box#在simulationbox中创建类型为1的原子(原子位置初始化)Mass11.0Mass21.0Mass31.0Mass41.0Mass51.0#指定单个原子的质量当前18页,总共44页。Lammps计算输入文件#LJpotentials(指定原子作用势)pair_style lj/cut2.5#指定lj势,截断半径为2.5pair_coeff**1.01.02.5#指定lj势参数#definegroups(便于加载)Region1blockINFINFINF1.25INFINFGrouplowerregion1#定义lower组(便于施加外加速度)Region2blockINFINF38.75INFINFINFGroupupperregion2#定义upper组(便于施加外加速度)Groupboundaryunionlowerupper#定义总边界组Groupmobilesubtractallboundary#定义可动原子组(便于统计温度)当前19页,总共44页。Lammps计算输入文件region leftupperblockINF2020INFINFINFregion leftlowerblockINF20INF20INFINFgroup leftupperregionleftuppergroup leftlowerregionleftlower#定义左上、左下原子组(便于指定裂纹的存在)set groupleftuppertype2set groupleftlowertype3set grouplowertype4set groupuppertype5#指定原子类型(便于指定裂纹的存在)当前20页,总共44页。Lammps计算输入文件#initialvelocities初始化速度compute newmobiletemp#定义温度的计算(可动区域内统计平均)computenew2mobilestress/atom

#定义原子应力的计算(整个区域)Velocitymobilecreate0.01887723tempnew#按指定的温度(0.01)计算方法,初始化原子的速度Velocityupperset0.00.30.0#upper原子组y方向的速度为0.3Velocitymobilerampvy0.00.3y1.2538.75sumyes#mobile原子的速初始度从0到0.3线性变化#fixes施加约束fix 1allnve#nve系综的积分算法fix 2boundarysetforceNULL0.00.0#边界boundary上力条件,钢化原子,便于加载!!当前21页,总共44页。Lammps计算输入文件#run运行计算timestep 0.003#时间间隔步Thermo200#每200步输出热动力学统计量thermo_modifytempnew#计算温度通过new指示的方法计算neigh_modifyexcludetype23#原子2,3之间作用取消(也就是通过不使他们在近邻表中出现实现)Dump1allatom500dump.crack#每隔500步将原子信息写入文件dump.crackDump2mobilecustom500dump2.cracktagxyzc_new2[2]run 5000#进行5000步的模拟当前22页,总共44页。B.使用EAM势模拟Ni的剪切行为Z‘xY’<100><010><001><011><011>yz当前23页,总共44页。#3dmetalshearsimulation3维金属剪切模拟Unitsmetal#采用金属材料单位boundary ssp#施加z方向的周期边界条件atom_style atomic#定义原子之间的相互作用(没有键键作用)Latticefcc3.52#指定晶格为fcc,晶格常数3.52埃Regionboxblock016.0010.002.828427#定义区域box(x上下限,y上下限,z上下限)create_box3box#在box区域内创建包含3种原子类型的simulationboxLammps计算输入文件当前24页,总共44页。Lammps计算输入文件Latticefcc3.52orientx100orienty011orientz&0-11origin0.500#指定晶格类型、晶格常数、x,y,z坐标的晶向#&续行符、晶胞的起始点(0.5表示半个晶格常数)create_atoms1box#在box区域内建立类型为1的原子pair_style eam#定义原子之间作用势为嵌入原子势pair_coeff**Ni_u3.eam#指定嵌入势参数文件当前25页,总共44页。Lammps计算输入文件neighbor 0.3bin#指定原子近邻列表参数rc+r1中的r1neigh_modifydelay5#指定近邻表更新频率region lowerblockINFINFINF0.9INFINFregion upperblockINFINF6.1INFINFINFgroup lowerregionlowergroup upperregionuppergroup boundaryunionlowerupper#指定边界组,用于施加边界条件group mobilesubtractallboundary#指定可动部分组,用于计算温度当前26页,总共44页。Lammps计算输入文件set grouplowertype2set groupuppertype3#设置原子类型lower为2,upper为3Computenew3dmobiletemp#设定温度计算new3dComputenew2dmobiletemp/partial011#设定温度计算new2d,忽略x方向速度computenew1dallstress/atom

#设定原子应力计算当前27页,总共44页。Velocitymobilecreate300.05812775tempnew3d#初始化mobile区域原子的速度#使new3d方法计算的温度为300k??Fix1allnve#使系综为nve系综,同时确定了方程的积分方法Fix2boundarysetforce0.00.00.0#使边界上原子x,y,z方向的受力均为0Fix3mobiletemp/rescale10300.0300.010.01.0#使用直接调温法,每10步准备调一次#如果在300+-10k内不调#如调的话要求其范围在300+-1k之内fix_modify3tempnew3d#fix3调温时采用new3d的计算方案Lammps计算输入文件当前28页,总共44页。Lammps计算输入文件#以下为弛豫过程thermo 25#每25步在屏幕上打印热动力学统计量thermo_modifytempnew3d#输出的温度按new3d方案计算timestep 0.001#时间步长为0.001psrun 100#弛豫100个载荷步当前29页,总共44页。Lammps计算输入文件#以下为剪切加载velocity upperset1.000#上边界原子施加x方向的速度velocity mobilerampvx0.01.0y1.48.6sumyes#在y[1.4,8.6]区域定义0,1之间的vx插值速度#该速度累加到弛豫的速度上Unfix3#释放弛豫时候的温度约束3fix 3mobiletemp/rescale10300.0300.010.01.0#重新施加温度调控约束3fix_modify3tempnew2d#温度的计算采用new2d计算方案当前30页,总共44页。Lammps计算输入文件#以下为剪切计算Dump1allcustom100dump.sheartagtype&xyzc_new2[4]#每100步输出,c_new1d[4]为new1d计算的原子应力thermo 100thermo_modify tempnew2d#每次输出屏幕上的温度按new2d方案计算reset_timestep 0#重新设当前为第0步run 3000#剪切计算3000步当前31页,总共44页。C.熔化、凝固过程模拟:ArCuAl对于Cu,建立8×8×5的FFC晶格体系,充分弛豫后利用Nose-Hove

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论