lammps各种命令讲解Word下载.docx

上传人:b****5 文档编号:17467473 上传时间:2022-12-01 格式:DOCX 页数:25 大小:142.26KB
下载 相关 举报
lammps各种命令讲解Word下载.docx_第1页
第1页 / 共25页
lammps各种命令讲解Word下载.docx_第2页
第2页 / 共25页
lammps各种命令讲解Word下载.docx_第3页
第3页 / 共25页
lammps各种命令讲解Word下载.docx_第4页
第4页 / 共25页
lammps各种命令讲解Word下载.docx_第5页
第5页 / 共25页
点击查看更多>>
下载资源
资源描述

lammps各种命令讲解Word下载.docx

《lammps各种命令讲解Word下载.docx》由会员分享,可在线阅读,更多相关《lammps各种命令讲解Word下载.docx(25页珍藏版)》请在冰豆网上搜索。

lammps各种命令讲解Word下载.docx

(5)一行中第一个词是命令名,后续的词是相关的参数.

(6)双引号内的文字空格被整体地当作一个参数,其中的#或$就没有前面说的作用了.

1.3Inputscriptstructure

lammps的输入文件一般分为4个部分Initialization,Atomdefinition,Settings,Runasimulation

后面的两个部分可以按照需要多次重复.Rememberthatalmostallthecommandsneedonlybeusedifanon-defaultvalueisdesired.

(1)Initialization

在你的模拟体系定义之前,一些参数必须要被设置.相关的命令有:

units,dimension,newton,processors,boundary,atom_style,atom_modify.

units:

选择单位系统,lammps提供了lj、real、metal三种单位系统

dimension:

2d模拟还是3d模拟,默认是3d

boundary:

边界条件:

周期性边界or自由边界

atom_style:

定义你的模拟体系中的原子属性,注意这个style要区分后面设置力场参数时命令里提到的atomtype

还有,这些命令告诉lammps在你的模拟中使用何种力场:

pair_style,bond_style,angle_style,dihedral_style,improper_style.

(2)Atomdefinition

lammps提供3种方式定义原子:

①通过read_data或read_restart命令从data或restart文件读入,这些文件可以包含分子拓扑结构信息.

②按照晶格的方式创建原子(不包含分子拓扑信息),你会用到这几个命令:

lattice,region,create_box,create_atoms.

③已经设置好的原子可以用replicate命令复制以生成一个更大规模的模拟体系.

(3)Settings

原子和分子的拓扑信息定义好后,你要制定一系列的设置:

力场系数、模拟参数、输出选项等等.

力场系数可以通过这些命令定义:

pair_coeff,bond_coeff,angle_coeff,dihedral_coeff,improper_coeff,kspace_style,dielectric,special_bonds.注意,其实力场系数也可以在data文件中制定,详见read_data命令介绍.

各种模拟参数由这些命令设置:

neighbor,neigh_modify,group,timestep,reset_timestep,run_style,min_style,min_modify.

我觉得fix命令是lammps中很重要的一个命令,它包括很多子命令,可以施加一系列的边界条件、时间积分、诊断选项等等.

模拟过程中通过下面的命令制定lammps进行各种计算:

compute,compute_modify,variable.

输出选项由thermo,dump,restart命令设置.

(4)Runasimulation

使用run命令开始一个分子动力学模拟,用minimize命令来实施能量最小化(molecularstatics),使用temper命令来进行paralleltempering(replica-exchange)simulation.

1.4Commandslistedbycategory

这一节分门别类地列出了lammps的所有命令.注意有些命令的有些选项是特定的lammpspackage的一部分,也就是说只有在编译lammps的时候包括了这些packages,这些命令才能被使用.默认情况下编译lammps并不包括所有的packages.这些依赖关系在相关命令的详细介绍中Restrictions部分中列出了.

Initialization:

atom_modify,atom_style,boundary,dimension,newton,processors,units

Atomdefinition:

create_atoms,create_box,lattice,read_data,read_restart,region,replicate

Forcefields:

angle_coeff,angle_style,bond_coeff,bond_style,dielectric,dihedral_coeff,dihedral_style,improper_coeff,improper_style,kspace_modify,kspace_style,pair_coeff,pair_modify,pair_style,pair_write,special_bonds

Settings:

communicate,dipole,group,mass,min_modify,min_style,neigh_modify,neighbor,reset_timestep,run_style,set,shape,timestep,velocity

Fixes:

fix,fix_modify,unfix

Computes:

compute,compute_modify,uncompute

Output:

dump,dump_modify,restart,thermo,thermo_modify,thermo_style,undump,write_restart

Actions:

delete_atoms,delete_bonds,displace_atoms,displace_box,minimize,run,temper

Miscellaneous:

clear,echo,if,include,jump,label,log,next,print,shell,variable

作者:

御剑江湖

一、各种文件的介绍:

1infile:

建立该文件以便程序的写入

2logfile:

写入状态信息(iftheswitchisused?

3screenfile决定结果的是否进行屏幕输出

4varnamefile定义一个变量,name指变量名,可为字母也可为字符串,形式$x/${abc}

二、屏幕输出:

结果显示在屏幕上,同时在logfile中。

开始前LAMMPS计算出所需的存储空间,运行中每隔几个时步显示一次热力学状态,直至输出最终状态。

Looptimeof49.002on2procsfor2004atoms该部分显示了几个大类的计算时间

Pairtime(%)=35.0495(71.5267)

Bondtime(%)=0.092046(0.187841)

Kspcetime(%)=6.42073(13.103)

Neightime(%)=2.73485(5.5811)

Commtime(%)=1.50291(3.06703)

Outpttime(%)=0.013799(0.0281601)

Othertime(%)=2.13669(4.36041)

Nlocal:

1002ave,1015max,989min每个处理器中特定原子的数目

Histogram:

1000000001

Nghost:

8720ave,8724max,8716min

1000000001

Neighs:

354141ave,361422max,346860min

Total#ofneighbors=708282

Aveneighs/atom=353.434

Avespecialneighs/atom=2.34032

Numberofreneighborings=42

Dangerousreneighborings=2

当运用了能量最小化命令进行能量最小化时,还将出现如下所示语句:

Minimizationstats:

Einitial,next−to−last,final=−0.895962−2.94193−2.94342(显示初终能量以及next-to-last循环的能量)

Gradient2−norminit/final=1920.7820.9992(给出能量梯度,即所有原子的受力)

Gradientinf−norminit/final=304.2839.612162-form是力向量的长度,inf-form是最大构成?

Iterations=36循环次数

Forceevaluations=177对力进行评定的次数

当程序中有kspace_stylelong−rangeCoulombicssolve,将会显示以下语句:

FFTtime(%ofKspce)=0.200313(8.34477)完成3dFFT计算的时间及在总时间中占的百分比

FFTGflps3d1d−only=2.310749.19989

每秒执行的浮点指令次数(flops)为5N*log(2N),N为3维晶体中的节点数

The3drateiswithcommunication;

the1drateiswithout(justthe1dFFTs).

在GPU(图形处理单元)上的运行

三、指令系统介绍(*)

一般来说指令的顺序并不重要,胆在以下几种情况中必须注意:

1LAMMPS并不是全部读完所有指令才执行,而是读一行执行一次,因此下面的两组语句是不同的:

timestep0.5以下的两个模拟其步长均为0.5fmsec

run100第一个模拟采用缺省值步长为1fmsec

run100第二个采用步长为0.5fmsec

2某些指令只在其他指令之后才生效,如要得到系统温度必须先进行各种定义

3若A指令在B之前,B可以引用A定义的变量

四、语法规则

在LAMMPS中要区分大小写,一般指令名称用小写字母,文件及用户定义ID

Strings用大写。

LAMMPS对每行语句的语法要求如下:

1当语句太长一行放不下时,在语句一行结束的时候输入字符“”表示下一行的语句接着上一行继续。

2在#之后输入的字符认为是评论语句,是无用的,但有例外

3紧跟在$后定义变量(之前讲过)

4单词间用空格隔开

5第一个词为指令名,接下来的字母全都为自变量(arguments)

6Ifyouwanttextwithspacestobetreatedasasingleargument,itcanbeenclosedindoublequotes

五、输入的语句结构

一个普通的LAMMPS程序通常由以下四部分组成:

1初始化

2原子定义

3设定

4进行模拟

初始化阶段:

设定所需参数,相关各项命令,引入所需的力场参数

相关命令介绍:

1unitscommand

语句形式:

unitsstyle

·

style=ljorrealormetalorsiorcgsorelectron

Examples:

unitsmetal

unitslj

该语句定义了单元类型,除了LJ类型,其他物理常量来自于某网,定义实际单元的热能=4.184J。

而在LJ类型中,所有变量都是无单位的(参考陈义龙的论文)实际量换算成简化单位量有系列公式。

以下列出了换算关系及其它各种类型中所使用的标准单位。

Thiscommandcannotbeusedafterthesimulationboxisdefinedbyaread_dataorcreate_boxcommand.

缺省状态默认为LJ类型

2语句形式:

dimensionN

N=2or3例如:

dimension2

一般缺省为3d模拟,2d模拟的话要在建立simulationbox之前进行设定(其余省略)

COMMANDSLISTEDBYCATEGORY

以下列出的LAMMPS命令以按类分好,其分类情况如下:

初始化指令:

atom_modify,atom_style,boundary,dimension,newton,processors,units

原子定义指令:

create_atoms,create_box,lattice,read_data,read_restart,region,replicate

力场指令:

angle_coeff,angle_style,bond_coeff,bond_style,dielectric,dihedral_coeff,dihedral_style,improper_coeff,improper_style,kspace_modify,kspace_style,pair_coeff,pair_modify,pair_style,pair_write,special_bonds

设定指令:

communicate,dipole,group,mass,min_modify,min_style,neigh_modify,neighbor,reset_timestep,run_style,set,shape,timestep,velocity

FIXESfix,fix_modify,unfix

Computes:

Output:

dump,dump_modify,restart,thermo,thermo_modify,thermo_style,undump,write_restart

Actions:

delete_atoms,delete_bonds,displace_atoms,displace_box,minimize,prd,run,temper

Miscellaneous:

clear,echo,if,include,jump,label,log,next,print,shell,variable

六howtodiscussions()

重启一个模拟。

有3种方法继续长的LAMMPS程序。

在同一个程序中可多次使用运行命令。

每次运行都会接着上一条运行指令(runcommand)进行。

Binaryfile使用restartcommand将binaryfiles存入硬盘中,之后用read-restart命令可将binaryfile读出。

或者可转为textdatafiles,经read-data命令读出。

restart2data

涉及到的命令:

1runcommand

syntax

runNkeywordvalues……(N=#oftimesteps;

zeroormorekeyword/valuepairsmaybeappended;

keyword=uptoorstartorstoporpreorpostorevery)

run10000#运行10000步;

N=0意味着直接把现系统的热力学值输出

run1000000upto#从当前开始一直运行至upto所指定的数值(该语句意为运行至步止)

run100start0stop1000

run1000prenopostyes

run100000start0stop1000000every1000"

printProteinRg=$r"

run100000every1000NULL

(补充说明fix指令:

Syntax:

fixIDgroup−IDstyleargs

ID=user−assignednameforthefixID是用户自己定义的名字,便于通过fix定义

group−ID=IDofthegroupofatomstoapplythefixto

style=oneofalonglistofpossiblestylenames(seebelow)

args=argumentsusedbyaparticularstyle

fix1allnve

fix3allnvttemp300.0300.00.01

fixminetopsetforce0.0NULL0.0

fix指令的用途是对一组原子进行定义,可以用于更新原子的位置、速度、控制温度、加常力、施加边界条件等。

当两个或更多fix在同一过程中作用时,根据程序中的先后顺序执行fix指令。

Fix指令可通过unfix指令来消除,形式为unfixfix-ID)

对于run100start0stop1000这个语句来说,主要与fix语句配合使用。

fix1allnvt200.0300.01.0这两个指令的功能是在接下来的1000步运行中,每

run1000步的温度都要从200度升到300度

fix1allnvt200.0300.01.0对于左侧的一组指令,温度随着从0到10000步的执行

run1000start0stop10000逐渐升至300.0度,是一个发生在整个过程的渐变行为

run1000start0stop10000

...

run1000start0stop10000(共10个)

至于preandpost大概是这样的,preno的意思是跳过初始设定阶段,如果以下的计算是承接之前运行命令的话(意思是采用之前的参数)但是如果该run指令是第一个指令是,该设定会被忽略。

注意:

当两次运行指令之间使用了修改设定值的命令时(比如fix等),preno是不允许的,必须重新设定,否则报错

若是postno,则跳过fulltimingsummary,输出one-linesummarytiming

Every的作用是将一个run分成一系列较短的runs

variableqequalx[100]

run6000every2000"

printCoord=$q"

每运行2000步输出一次某原子的x坐标值

Default:

Theoptiondefaultsarestart=thecurrenttimestep,stop=currenttimestep+N,pre=yes,andpost=yes.在run语句中的缺省值

2restartcommand(将binaryfiles存入硬盘)restart文件是lammps的一种输出文件形式

restart0N=writearestartfile

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 小学教育 > 英语

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1