lammps初学者in文件中文解析.docx

上传人:b****1 文档编号:2395261 上传时间:2023-05-03 格式:DOCX 页数:9 大小:56.95KB
下载 相关 举报
lammps初学者in文件中文解析.docx_第1页
第1页 / 共9页
lammps初学者in文件中文解析.docx_第2页
第2页 / 共9页
lammps初学者in文件中文解析.docx_第3页
第3页 / 共9页
lammps初学者in文件中文解析.docx_第4页
第4页 / 共9页
lammps初学者in文件中文解析.docx_第5页
第5页 / 共9页
lammps初学者in文件中文解析.docx_第6页
第6页 / 共9页
lammps初学者in文件中文解析.docx_第7页
第7页 / 共9页
lammps初学者in文件中文解析.docx_第8页
第8页 / 共9页
lammps初学者in文件中文解析.docx_第9页
第9页 / 共9页
亲,该文档总共9页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

lammps初学者in文件中文解析.docx

《lammps初学者in文件中文解析.docx》由会员分享,可在线阅读,更多相关《lammps初学者in文件中文解析.docx(9页珍藏版)》请在冰点文库上搜索。

lammps初学者in文件中文解析.docx

lammps初学者in文件中文解析

lammps初学者in文件中文解析

Lammps初学者——in文件中文解析

(1)初始化

Units:

Units命令是用来设定模拟的原子类型。

Unitsstyle(lammps现在提供的有style=LJ、real、metal、si、cgs、electron)

LJ是硬球模型

Real是真实的原子模型

Metal是金属原子模型

Si是硅(半导体)原子模型

Cgs

Electron是电子模型

Dimension:

Dimension命令是用来定义模拟的维度,默认情况为三维。

DimensionN(N=2,3)

Boundary:

Boundary命令是用来设定模拟的边界条件。

Boundaryxyz(x,y,z=p,s,f,m四种类型中的一种或者两种)

P是周期性边界条件

S是自由边界条件(但是具有收缩性)

F是固定边界条件

M是具有最小值的自由边界条件(但是具有收缩性)

Timestep是定义模拟的时间步长。

Timestepdt

Dt为时间步长(时间单位),默认为1ps

Reset-timestep:

Fix

Fix为定义对部分原子或者对系综的操作。

http:

//lammps.sandia.gov/doc/fix.html

FixIDgroup-IDstyleargs

ID=指定的操作名称编号(如1、2、3…….)

Group-ID=制定操作范围的原子(如all……)

Style=操作内容,如何操作

Args=相关操作内容的相关操作参数

Fix-nvt:

恒定N(原子数量)、V(体积)、T(温度)对时间积分

Fix-npt:

恒定N、P、T对时间积分

Unfix:

Compute/compute-modify:

输出选项

Thermo:

Thermo命令用于定义每隔一定时间步长输出一次采样内容。

ThermoN

每隔N个时间步长输出一次采样内容至屏幕或者log文件

Thermo_style:

Thermo_style命令主要是用来说明采样的内容,即输出到屏幕或者LOG文件中的内容。

(http:

//lammps.sandia.gov/doc/thermo_style.html)

Thermo_stylestyleargs

Style=one、multi、custom

Args=特定的参数列表

Oneargs=none

Multiargs=none

Customargs=listofattributes

Possibleattributes=step、elaosed、elaplong、dt、cpu、tpcpu、spcpu、

Atoms、temp、press、pe、ke、otatal、enthalpy、

Evdwl、ecoul、epair、ebond、eangle、edihed、eimp、

Emol、elong、etail、

Vol、lx、ly、lz、xlo、xhi、ylo、yhi、zlo、zhi、

Xy、xz、yz、xlat、ylat、zlat、

Pxx、pyy、pzz、pxy、pyz、pxz、

Fmax、fnorm、

Cella、cellb、cellc、cellalpha、cellbeta、cellgamma、

c_ID、c_ID[I]、c_ID[I][J]、

f_ID、f_ID[I]、f_ID[I][J]、

V_name

Dump:

Dump命令主要是用来输出计算后单个原子的相关信息的。

DumpIDgroup-IDstyleNfileargs

ID:

自己给这个dump命令定义的一个代号(自定义)

group-ID:

那些信息需要被输出的原子群(预先定义好group)

Style:

类型

N:

每经过多少时间步输出信息

File:

输出名称

Args:

相关参数(每个类型不同)

Restart:

(4)运行

Run:

Minimize:

例一

unitsmetal#单位为lammps中的metel类型

boundaryppp#周期性边界条件

atom_styleatomic#原子模式

latticefcc3.61#Cu的晶格常数3.61

regionboxblock040404#x,y,z各方向上的晶胞重复单元数,也即区域大小

create_box1box#将上述区域指定为模拟的盒子

create_atoms1box#将原子按晶格填满盒子

pair_styleeam#选取Cu的EAM势作为模型

pair_coeff**Cu_u3.eam#EAM势文件名称

run0#运行0步,仅为启动lammps的热力学数据计算

variableEequalpe#定义变量E为系统总势能

variableNequalatoms#定义变量N为系统总原子数

print"thenumberofatoms&systemenergynoware$N$E"#打印信息

create_atoms1single2.452.052.05#在该位置插入一个原子

min_stylesd#能量最小化模式,sd

minimize1.0e-121.0e-1210001000#能量最小化参数,指数越大最小化程度越深

print"interstitialintroduced,minimized:

$Natoms,energyis$E"

fix1allnvt100100100drag0.2#nvt系综,原子数、体积和温度保持不变;T=100K

timestep0.005#步长0.005fs

run1000#运行1000步

print"nvtperformed,temperatureup:

$Natoms,totalenergyis$E"

fix1allnvt1000.0001100drag0.2#nvt系综,温度由100K到0.0001K

run1000#运行1000步

print"nvtperformed,temperaturedown:

$Natoms,totalenergyis$E"

compute3allpe/atom#计算每个原子的势能

compute4allke/atom#计算每个原子的动能

compute5allcoord/atom3.0#计算每个原子的近邻原子数

dump1allcustom1dump.atomidxsyszsc_3c_4c_5#将信息写入dump.atom

min_stylesd

minimize1.0e-121.0e-121000010000#再次能量最小化

print"thefinalstate:

$Natoms,totalenergyis$E"#打印信息

~

 

例二

boundarypss#边界条件,拉伸方向是周期性,其余是自由边界;如果是薄膜拉伸则是两个周期性,块体则是三个周期性

unitsmetal#单位制定义为metal

atom_styleatomic#原子类型自动

neighbor2.0bin#截断半径相关的东西

neigh_modifydelay1checkyes#邻近原子列表更新速度

#creategeometry

latticefcc3.61#定义晶胞为fcc,晶格常数3.61A

regionboxblock0300303#定义一个长方体区域叫box,长30,宽和高是3

create_box1box#创建了这样一个box

create_atoms1box#在box里创建了一种原子

mass163.546#定义这种原子的质量是63.546

#potentials

pair_styleeam#定义势函数是EAM

pair_coef**Cu_u3.eam#势所需要的参数在此文件里

#definegroups

region1blockINF1INFINFINFINF#定义了一个叫1的区域

groupleftregion1#定义此区域里的原子叫left

region2block29INFINFINFINFINF#定义了一个叫2的区域

grouprightregion2#定义此区域里的原子叫right

groupboundaryunionleftright#定义left+right=boundary

groupmobilesubtractallleft#定义mobile=all-left

#initialvelocities

velocityleftset0.00.00.0#设置原子初速度为0

computepallpressurethermo_temp#计算应力,计算结果记为p

variablepressxequalc_p[1]#定义变量pressx=c_p[1],c_p[1]的意思是p里第一个值

variablepressyequalc_p[2]#定义变量pressy=c_p[2],c_p[2]的意思是p里第二个值

variablepresszequalc_p[3]#定义变量pressz=c_p[3],c_p[3]的意思是p里第三个值

thermo_stylecustomsteptempetotalpressv_pressxv_pressyv_presszvol

dump1allatom1000dump.tensile#输出结果到dump.tensile

minimize1.0e-61.0e-610001000#驰豫

fix1leftsetforce0.0NULLNULL#固定左边的原子

fix2allnpt1.01.01.0aniso0.00.0NULLNULLNULLNULL10.0drag1.0

thermo1000#每1000步输出一次结果

timestep0.002#时间步长0.002ps

run10000#运行10000步

unfix2

fix3allnve

fix4alltemp/rescale1001.01.051.0

fix5alldeform1000xerate0.002unitsbox#设置沿x方向拉伸,应变率为0.002(1/ps)

computesallstress/atom#计算每个原子上的应力,计算结果记为s

computestreaallreducesumc_s[1]#将s里第一个值求和,计算结果记为strea

variablestressaequalc_strea/vol#定义变量stressa=strea/vol,vol是体积

computestreballreducesumc_s[2]

variablestressbequalc_streb/vol

computestrecallreducesumc_s[3]

variablestresscequalc_strec/vol

thermo_stylecustomsteptempetotalpressv_stressav_stressbv_stresscvol

run300000

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

当前位置:首页 > 求职职场 > 简历

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2