lammps实例教程
- 格式:pdf
- 大小:327.96 KB
- 文档页数:2
Project #1硅的晶格常数和体弹模量的计算一、平衡晶格常数和内聚能自然条件下硅为金刚石结构(dc )。
计算模拟时,我们可以假定它为各种结构,f cc, bcc, sc, dc. 可以预测,模拟的dc 结构的硅的体系能量最低,也即最稳定。
下面我们将运用LAMMPS 来对硅的各种结构进行模拟。
定义晶格能量为Φ, 数密度为 ρ:potE N Φ=N Vρ= 其中E pot 为势能,N 为体系总原子数,V 为体系的体积。
选取 Stillinger-Weber (SW),以下面命令执行 lammps 运算:其中,lmp_serial 为 lammps 命令;”<” 符号为读取符;in.Silicon 为输入文件,里面包含运算所需要的各种数据和命令;-log 指定输出文件的名称。
可以看到屏幕上显示出lammps 运行的信息。
这个计算量很小,所以很快就结束。
接下来以如下命令来查看计算得到的数据:grep 是linux 中一个很重要的命令,用来搜索文本,读取匹配的行并打印出来。
这里是搜索 dc.log 文件,将 @ 开头的行打印出来。
如下:晶格参数为5.4305埃,数密度为0.0499540303,每个原子的能量为-4.336599609eV.下面具体来看刚才给的输入文件,in.Silicon .dc.log 文件中有原子总数的信息,每个金刚石晶胞中有8个原子,383216⨯=,所以是216个原子。
如下给出各种结构下的体系的原子数:晶体结构类型晶胞中的原子数 总原子数 简单立方SC1 27 体心立方BCC2 54 面心立方FCC4 108 金刚石DC 8 216表1.不同晶体结构中的原子数下图是计算模拟得出的各种结构下的数密度与每个原子能量的关系图。
横坐标为数密度, 以金刚石为例,ρ= 8/5.4315^3=0.049926,也即我们直接通过 grep 命令得到的第二项值;纵坐标为每个原子的能量,为第三项值。
Project #2金属中的点缺陷:空位和间隙原子一、空位从晶体中移去一个原子,即可形成空位。
本例将运用 LAMMPS 计算空位形成能, E v. LAMMPS 输入文件为in.vacancy1) 在 fcc 结构的完整Cu晶体中引入一个空位沿<100>方向构造一个 4 ×N×N×N 的晶体。
N为input 文件中lattice命令指定的个方向上的晶胞重复单元数。
2) 弛豫当一个原子从晶体中移走之后,周围的原子将相应地调整位置以降低体系势能。
为得到稳定的构型,需要对体系进行弛豫,relaxation. LAMMPS提供两种能量最小化方式,cg 和 sd。
本例中选用 sd 方式进行能量最小化。
如下是输入文件,in.vacancy:3) 运行lammps4) 计算空位形成能空位浓度由下式给出:[n ] = exp( − F v / k B T ).其中 F v = E v − TS v 为形成一个空位所需要的Helmholtz 自由能.忽略熵S v , 空位浓度公式简化为[n ] = exp( −E v / k B T ).设 E 1 为完整晶体能量,含N 个原子;E 2 为弛豫后的晶体能量,含N – 1个原子。
空位形成能 E v 为:211v N E E E N -≡-或 ()21v coh E E N E ≡--,其中 E coh = E 1 / N , 为完整晶体的内聚能。
本例中以EAM 模型计算4×(20×20×20)=32000个原子的体系,得到空位形成能E v ~1.26 eV ,文献中的实验值为~1.28 eV ,符合较好。
另由上式计算得到,300K 温度下的空位浓度为~ 7.59×10-22 ,1350 K (T m ) 时的空位浓度~ 2.2×10-5(文献中的实验值为~2×10-4 )。
lammps切削案例LAMMPS(大型原子/分子模拟程序)是一款开源的分子动力学模拟软件,用于模拟原子和分子系统的行为。
它广泛应用于研究材料科学、生物物理学、化学、凝聚态物理学等领域。
在材料科学领域,LAMMPS被广泛用于研究切削过程。
切削是一种常见的制造加工过程,用于将材料从工件上去除,通常通过在材料表面施加剪切力来实现。
在切削过程中,材料受到高应力和高温的作用,会产生各种力学和热学效应,如塑性变形、热膨胀、摩擦和磨损等。
通过使用LAMMPS模拟切削过程,研究者可以更好地理解切削中材料的行为及其与切削参数的关系。
下面以钨为例,介绍如何使用LAMMPS模拟钨的切削过程。
需要定义钨的原子模型。
钨的晶体结构属于体心立方(BCC),因此可以使用合适的原子间相互作用势函数来模拟钨的行为。
例如,可以使用EAM(Embedded Atom Method)势函数,它可以描述原子间的相互作用和电子-原子之间的相互作用。
然后,在模拟中需要定义切削力和切削速度等参数。
切削力可以通过施加一个与刀具相互作用的力来实现,切削速度可以通过改变原子的运动速度来实现。
还需要设置切削的方向和切削深度等参数。
接下来,使用LAMMPS进行切削模拟。
在模拟过程中,可以通过输出各种物理量,如原子的位移、速度和能量等,来分析材料的行为。
例如,可以研究材料的应力分布、塑性变形的产生和表面的磨损等。
通过分析模拟结果,可以得到切削过程中材料的行为规律和切削参数对材料性能的影响。
例如,可以研究切削速度对材料塑性变形的影响、切削力对材料表面损伤的影响等。
LAMMPS是一个强大的分子动力学模拟软件,可以用于模拟和研究各种材料的切削过程。
通过合理设置参数并进行模拟分析,可以从原子尺度上深入理解切削过程中材料的行为规律,为实际切削操作和材料设计提供科学依据。
lammps计算比热容的例子LAMMPS (Large-scale Atomic/Molecular Massively Parallel Simulator) 是一款开源的分子动力学软件,可用于模拟原子、分子和大分子等复杂系统的动力学行为。
在各种物理化学应用中,计算比热容是一个重要的问题。
本文将介绍如何使用 LAMMPS 计算比热容,并给出一个具体的例子。
比热容是一个物质对温度变化的灵敏度,表示在单位质量下,物质温度每升高 1 度所吸收的热量。
比热容是与物质本身的特性密切相关的,因此不同物质的比热容也不同。
计算比热容不仅可以帮助我们理解物质的基本性质,还可以用于各种工业应用中。
在 LAMMPS 中,我们可以通过统计机械理论计算比热容。
通过模拟系统在不同温度下的能量变化,我们可以得到热容随温度的变化曲线。
这里我们以纯铜晶体为例,介绍比热容的计算过程。
首先,我们需要准备铜原子的分子动力学模型。
在这个模型中,我们使用了长程库伦相互作用、Lennard-Jones 相互作用和弹簧力相互作用三种力的组合。
具体地,我们可以通过以下命令来生成模型:# 初始化units metaldimension 3atom_style atomicboundary p p p# 定义铜原子lattice fcc 3.61region box block 0 10 0 10 0 10create_box 1 boxcreate_atoms 1 boxmass 1 63.55# 力场参数pair_style hybrid/overlay coul/long 7.0 10 tersoffpair_coeff * * tersoff SiC_1989.tersoff Cupair_coeff * * coul/long这里,我们使用了 fcc 晶格结构,并将铜原子放置在一个 10x10x10 的立方体中。
我们还指定了长程库伦相互作用和 Lennard-Jones 相互作用,并添加了一个弹簧力相互作用,即 Tersoff 势能。
LAMMPS 算例简介LAMMPS(Large-scale Atomic/Molecular Massively Parallel Simulator)是一个用于模拟原子、分子和离子的分子动力学程序。
它可以模拟各种材料的性质和行为,包括固体、液体和气体。
LAMMPS 使用分子动力学方法,通过模拟原子之间的相互作用和运动来研究材料的宏观性质。
本文将介绍一个 LAMMPS 的算例,以帮助读者理解如何使用 LAMMPS 进行分子动力学模拟,并展示一些常见的应用场景。
算例背景在这个算例中,我们将模拟一个固体材料的拉伸变形过程。
我们将使用 LAMMPS 来模拟原子之间的相互作用和运动,并观察材料在不同应变下的力学响应。
算例步骤1. 准备输入文件首先,我们需要准备一个输入文件,该文件包含了模拟所需的参数、原子坐标和相互作用势函数。
下面是一个示例输入文件的内容:# 输入文件示例# 设置模拟的尺寸和周期性边界条件dimension 3boundary p p punits metalatom_style atomic# 设置原子类型和质量read_data datafile.dat# 设置相互作用势函数pair_style lj/cut 2.5pair_coeff 1 1 1.0 1.0 2.5# 设置模拟参数timestep 0.001thermo 100run 10002. 运行模拟接下来,我们需要运行模拟。
在命令行中输入以下命令来运行 LAMMPS:lammps -in input_file.in其中,input_file.in是我们准备的输入文件。
3. 分析结果模拟运行完成后,我们可以通过分析输出文件来获取模拟结果。
LAMMPS 会生成一个包含模拟过程中各个时间步的能量、力和原子坐标等信息的输出文件。
我们可以使用 Python 或其他数据处理工具来分析输出文件,并绘制出力学响应曲线、原子位移等结果。
算例结果下图是一个示例结果的力学响应曲线:通过模拟,我们可以观察到随着应变的增加,材料的应力也随之增加,直到达到材料的极限。
# Big colloid particles and small LJ particlesunits ljThis command sets the style of units used for a simulation. It determines the units of all quantities specified in the input script and data file, as well as quantities output to the screen, log file, and dump files. Typically, this command is used at the very beginning of an input script.这个指令设定模拟的格式,它决定了在输入脚本文件和数据文件以及在屏幕上显示的输出物,日志文件和垃圾文件中所有的单元格式。
典型的是,它经常用于输入脚本的开头For style lj, all quantities are unitless. Without loss of generality, LAMMPS sets the fundamental quantities mass, sigma, epsilon, and the Boltzmann constant = 1. The masses, distances, energies you specify are multiples of these fundamental values. The formulas relating the reduced or unitless quantity (with an asterisk) to the same quantity with units is also given. Thus you can use the mass & sigma & epsilon values for a specific material and convert the results from a unitless LJ simulation into physical quantities.对于lj格式,所有数量都是无量纲的。
lammps计算聚合物例子
lammps计算聚合物例子
lammps计算聚合物例子
LAMMPS是一种常用的分子动力学模拟软件,用于模拟原子、分子和聚合物等系统的动力学行为。
本文将介绍如何使用 LAMMPS 计算聚合物系统的例子。
首先,需要准备聚合物系统的输入文件。
该文件包括聚合物链的结构、力场参数和模拟条件等信息。
在LAMMPS 中,可以使用不同的分子拓扑文件格式来定义聚合物结构,例如pdb、gro 和lammps。
在本例中,我们将使用 lammps 格式文件定义一个聚合物链。
接下来,需要定义力场参数。
聚合物力场参数包括键角势、键长、非键相互作用力和电荷等信息。
这些参数通常由文献或实验数据提供。
在LAMMPS 中,可以使用不同的力场模型来模拟聚合物系统,例如CHARMM、AMBER 和 OPLS。
在本例中,我们将使用 OPLS 力场模型。
定义好聚合物结构和力场参数后,就可以开始模拟聚合物系统了。
在LAMMPS 中,可以使用不同的模拟算法来模拟聚合物系统的动力学行为,例如 NVE、NVT 和 NPT。
在本例中,我们将使用 NPT 算法模
拟聚合物系统的动力学行为。
模拟结束后,可以使用LAMMPS 的输出文件来分析聚合物系统的动力学行为。
例如,可以计算聚合物链的半径 gyration、内部能量和分子动量等信息,以评估聚合物结构和动力学性质。
总之,使用LAMMPS 计算聚合物系统是一种非常有用的工具,可以帮助我们更好地理解聚合物的结构和动力学性质。
- 1 -。
voronoi lammps 例子Voronoi是一种在计算几何学中常用的算法,用于将平面划分为多个不重叠的区域。
这些区域由一组点集合定义,每个区域都包含一个点,并且距离最近的其他点最远。
在LAMMPS(大型原子/分子松弛模拟器)中,Voronoi算法常用于计算原子结构的晶体形态信息,如局部密度、结晶度、晶界等。
下面将通过一个例子来演示如何在LAMMPS中使用Voronoi算法。
假设我们有一个由1000个氩原子组成的体系,我们想要计算每个氩原子的晶体形态参数。
首先,我们需要在LAMMPS输入脚本中设置相关的参数和命令。
```# Define the simulation boxdimension 2boundary p p punits lj# Create the atomslattice square 0.5region box block 0 10 0 10 -0.5 0.5create_box 1 boxcreate_atoms 1 boxmass 1 1.0# Define the potentialpair_style lj/cut 2.5pair_coeff 1 1 1.0 1.0 2.5# Run the simulationvelocity all create 2.0 87287# Define the thermodynamic outputthermo 10000thermo_style custom step etotal pe press lx ly xy xlo xhi ylo yhi ```上述输入脚本创建了一个2D模拟盒子,其中包含1000个氩原子,使用Lennard-Jones势进行相互作用计算,并定义了一些其他的模拟参数。
接下来,我们需要计算每个原子的Voronoi体积和晶体形态参数。
为此,我们需要添加一段自定义的计算代码,并将其放在LAMMPS输入脚本的末尾。
lammps教程
LAMMPS是一个常用的分子动力学模拟软件,用于模拟原子、分子的运动和相互作用。
下面是一份关于如何使用LAMMPS
进行模拟的简单教程。
1. 安装LAMMPS:首先,你需要从官方网站上下载LAMMPS 的最新版本。
根据你的操作系统,选择合适的版本进行下载和安装。
2. 准备输入文件:在使用LAMMPS之前,你需要准备一个输
入文件,用于描述你想要模拟的系统和模拟的条件。
这个文件通常使用文本编辑器创建,扩展名为".in"。
在输入文件中,你
需要定义原子的初始位置、速度、力场参数等。
你也可以在输入文件中指定模拟的时间、温度、压力等参数。
3. 运行LAMMPS:在终端中,使用以下命令来运行LAMMPS,同时指定输入文件:
```
lammps < input_file.in
```
然后,LAMMPS将读取输入文件中的信息,并开始模拟。
4. 分析和可视化结果:LAMMPS输出的模拟结果通常以文本
文件的形式保存。
你可以使用文本处理工具(如awk、sed等)来分析并提取模拟结果中的关键信息。
此外,还可以使用可视
化软件(如VMD、OVITO等)来对模拟结果进行可视化和分析。
注意:以上只是一个简单的教程,介绍了LAMMPS的基本使用方法。
LAMMPS具有非常丰富的功能和参数选项,可以进行复杂的分子动力学模拟。
请参考LAMMPS的官方文档和用户手册,以获取更详细和全面的指导。
Project #5熔化与凝固:氩,铜,铝铜和铝的熔化转变:对于铜和铝,LAMMPS建立8×8×5的FCC晶格体系;充分弛豫后利用Nose-Hover方法,保持压强为零,使体系从T=2.5K开始加热,直至发生熔化转变。
下面是铜熔化的输入文件:# LAMMPS Melt_Cu or Alunits metal # 单位,指定为lammps里的金属类的单位,长度为Å,能量为eV。
boundary p p p # 周期性边界条件atom_style atomic # 原子模式variable x equal 2.5 # 定义变量 x为初始温度lattice fcc 3.61 # Cu 的晶格常数3.61#lattice fcc 4.05region box block 0 8 0 8 0 5 # x,y,z各方向上的晶胞重复单元数,也即区域大小create_box 1 box # 将上述区域指定为模拟的盒子create_atoms 1 box # 将原子按晶格填满盒子timestep 0.01 # 步长 0.005fsthermo 1000 #每隔1000步输出热力学结果pair_style eam/alloy # 选取 Cu 的EAM势作为模型pair_coeff * * jin_copper_lammps.setfl Cu # EAM 势文件名称#pair_style eam/fs#pair_coeff * * Al_FM.eam.fs Alneighbor 0.5 binneigh_modify every 5 delay 0 check yes#velocity all create $x 825577 dist gaussianfix 1 all nvt $x $x 1.0 drag 0.2 #保持初始温度,在NVT下弛豫#compute 3 all pe/atom#compute 4 all ke/atom#compute 5 all coord/atom 3.0#dump 1 all custom 1 dump.atom id xs ys zs c_3 c_4 c_5run 10000 # 运行10000步unfix 1fix 1 all npt $x 2000 4.00 xyz 0.0 0.0 6.0 drag 0.2 #在NPT下加热至2000K#fix 1 all npt $x 1500 4.00 xyz 0.0 0.0 6.0 drag 0.2run 1200000 #运行1200000步对于铜,其熔点为1357.77K,但在我们的模拟中其在1609K附近发生一级相变,比其平衡时熔点增大了18.7%。
lammps elastic案例LAMMPS (Large-scale Atomic/Molecular Massively Parallel Simulator) 是一款用于分子动力学模拟的开源软件,广泛应用于材料科学、生物物理学、地质学等领域。
在材料科学领域,LAMMPS 可以用来模拟材料的弹性性质,例如弹性模量、泊松比等参数。
在本文中,我们将介绍一个使用LAMMPS 来模拟材料弹性性质的案例。
在这个案例中,我们将以固体铝为例,介绍如何使用 LAMMPS 来计算铝的弹性模量。
铝是一种常见的金属材料,具有良好的弹性性能,因此非常适合用来作为弹性模量计算的样本。
首先,我们需要准备铝的原子结构模型。
在 LAMMPS 中,我们可以通过输入铝的原子坐标、原子种类、晶格参数等信息来构建铝的模型。
接下来,我们需要定义铝的弹性势函数,通常采用的是经典的 Lennard-Jones 势函数或者金属间的 EAM 势函数。
这些势函数将用来描述铝原子之间的相互作用力,从而计算材料的弹性性质。
然后,我们可以通过在 LAMMPS 中设置拉伸或压缩应变,来计算铝材料的应力-应变曲线。
通过在不同的应变下计算材料的应力,我们可以得到铝的弹性模量。
弹性模量是材料的一种重要的力学性质,它描述了材料在受力时的变形程度,是材料设计和应用的重要参考参数。
最后,我们可以通过 LAMMPS 的计算结果来得到铝的弹性模量,进而分析材料的弹性性质。
通过这个案例,我们可以深入了解材料的弹性性质是如何通过分子动力学模拟来计算的,为材料科学研究提供了重要的方法和工具。
总的来说,通过 LAMMPS 的弹性模量案例,我们可以了解到如何使用分子动力学模拟来计算材料的弹性性质,为材料科学研究提供了一种全新的方法和思路。
希望这个案例能够帮助读者更好地理解材料的弹性性质,为材料的设计和性能优化提供有益的参考。
lammps elastic案例
【实用版】
目录
MMPS 简介
MMPS 的弹性案例
3.案例的具体设置
4.模拟结果
5.结论
正文
LAMMPS(Large-scale Atomic/Molecular Massively Parallel Simulator)是一款用于大规模原子/分子并行模拟的软件。
它主要用于材料科学、生物物理学、化学等领域的研究。
LAMMPS 通过高效的并行计算,可以模拟数百万甚至数千万原子的运动,为研究者提供了强大的模拟手段。
在 LAMMPS 中,有一个经典的弹性案例,可以用来测试和验证 LAMMPS 的模拟能力。
这个案例模拟的是一个弹簧系统,包括两个相互连接的弹簧质点。
这两个质点在模拟过程中会受到相互作用力的影响,从而产生振动。
这个弹性案例的具体设置如下:首先,创建两个质点,并设置它们的初始位置。
然后,为这两个质点设置弹性系数和阻尼系数,以模拟弹簧的振动特性。
最后,通过 LAMMPS 的模拟算法,计算这两个质点在模拟过程中的运动状态。
模拟结果显示,这两个质点在模拟过程中确实呈现出了预期的振动模式。
这证明了 LAMMPS 的弹性案例设置是正确的,而且 LAMMPS 的模拟能力也是可靠的。
总的来说,LAMMPS 的弹性案例是一个简单但有效的测试手段,可以
帮助研究者验证 LAMMPS 的模拟能力。
lammps拉伸案例
LAMMPS 是一个用于模拟分子动力学的开源软件。
以下是使用 LAMMPS
进行单晶铁拉伸模拟的一个基本案例:
1. 设置基本参数:定义模拟的单位,比如使用金属的单位系统。
同时设定模拟的维度为三维。
2. 建立模型:创建单晶铁的分子模型,模型的尺寸可以是nm × nm × nm,边界条件设置为ppp周期性边界。
3. 设置势函数:选择合适的势函数,例如 EAM(嵌入原子方法)势函数。
4. 能量最小化:进行能量最小化,获得结构合理的单晶铁组织。
5. 温度初始化:设定模拟开始时的温度为300K。
6. 设置计算参数:例如设定时间步长,选择适当的邻居搜索方法和范围等。
7. 结构驰豫:在npt系综下进行弛豫,时间为30ps。
8. 拉伸模拟:对模型进行拉伸,模拟单晶铁在拉伸过程中的行为。
以上步骤是一个基本的模拟流程,具体的参数和设置可能会根据模拟的具体需求和目标有所不同。
在进行模拟时,应充分考虑实际情况,并进行适当的调整。
voronoi lammps 例子Voronoi tessellation是一种常见的用于分割空间的技术,可以在与分子模拟相关的Lammps软件中使用。
Voronoi tessellation将空间分割成多个多边形区域,使得每个区域内的点都离最近的数据点最近。
在Lammps中,可以利用Voronoi tessellation来研究多晶、非晶态材料,以及表面和界面的性质。
在Lammps中使用Voronoi tessellation需要安装Moltemplate插件,该插件可以生成分子拓扑文件。
接下来,在Lammps的输入文件中定义原子的类型和位置,并使用fix ave/time命令计算和输出Voronoi多面体的相应信息。
下面是一个使用Voronoi tessellation的简单例子:首先,在Lammps的输入文件中,你需要设置分子类型、位置和边界条件等。
例如,可以使用以下命令定义一个二维系统中的10个原子:atom_style atomiclattice custom 10.0 &a1 1.0 0.0 0.0 &a2 0.0 1.0 0.0 &a3 0.0 0.0 1.0region box block 0 10 0 10 -0.5 0.5create_box 1 boxcreate_atoms 1 random 10 12345 box上述命令定义了一个简单的二维正方形区域,并在该区域内随机创建了10个原子。
然后,我们需要设置Voronoi tessellation所需的参数。
在Lammps中,可以使用rerun命令来计算Voronoi多面体的属性。
需要注意的是,rerun命令需要一个包含所有晶胞信息的文件。
你可以使用下面的命令来计算Voronoi多面体的属性:compute voronoi all voronoi/atomcompute cfg all cfg/atom 1 mmpstrj cfgdump 1 all custom 1000 dump.lmp id type x y z c_cfg[1] file cfgrun 0上述命令将计算每个原子的Voronoi体积,并将结果输出到文件dump.lmp中。
lammps 原子组总体积1. 引言lammps是一个经典的分子动力学模拟软件,广泛应用于材料科学、物理化学等领域。
在进行分子动力学模拟时,了解原子组的总体积是非常重要的,它可以帮助我们理解物质的结构和性质。
本文将介绍如何使用lammps计算原子组的总体积,并提供一些实例和注意事项。
2. lammps计算原子组总体积的方法在lammps中,可以使用compute命令来计算原子组的总体积。
具体步骤如下:1.导入原子组数据:首先,需要将原子组的数据导入lammps中。
可以使用read_data命令从文件中读取数据,或者使用create_atoms命令手动创建原子。
2.定义计算体积的方法:接下来,需要定义计算原子组体积的方法。
lammps提供了多种计算体积的方式,比如使用compute命令计算盒子体积或使用compute命令计算原子体积。
3.计算总体积:使用compute命令计算原子组的总体积。
可以将计算结果保存到一个变量中,以便后续使用。
4.输出结果:最后,使用print命令输出计算得到的原子组总体积。
下面是一个示例lammps输入脚本,演示了如何计算原子组总体积:# 导入原子组数据read_data data.file# 定义计算体积的方法variable box_volume equal vol# 计算总体积compute total_volume all reduce sum v_box_volume# 输出结果print "Total volume: ${total_volume}"在上述示例中,read_data命令用于导入原子组数据,variable命令定义了计算体积的方法,compute命令计算了原子组的总体积,print命令输出了计算结果。
3. lammps计算原子组总体积的实例下面通过两个实例演示如何使用lammps计算原子组的总体积。
实例1:计算晶体的总体积假设我们有一个金属晶体的原子组数据文件crystal.data,该晶体是一个简单立方体结构。
Project #2金属中的点缺陷:空位和间隙原子一、空位从晶体中移去一个原子,即可形成空位。
本例将运用 LAMMPS 计算空位形成能, E v. LAMMPS 输入文件为in.vacancy1) 在 fcc 结构的完整Cu晶体中引入一个空位沿<100>方向构造一个 4 ×N×N×N 的晶体。
N为input 文件中lattice命令指定的个方向上的晶胞重复单元数。
2) 弛豫当一个原子从晶体中移走之后,周围的原子将相应地调整位置以降低体系势能。
为得到稳定的构型,需要对体系进行弛豫,relaxation. LAMMPS提供两种能量最小化方式,cg 和 sd。
本例中选用 sd 方式进行能量最小化。
如下是输入文件,in.vacancy:3) 运行lammps4) 计算空位形成能空位浓度由下式给出:[n ] = exp( − F v / k B T ).其中 F v = E v − TS v 为形成一个空位所需要的Helmholtz 自由能.忽略熵S v , 空位浓度公式简化为[n ] = exp( −E v / k B T ).设 E 1 为完整晶体能量,含N 个原子;E 2 为弛豫后的晶体能量,含N – 1个原子。
空位形成能 E v 为:211v N E E E N -≡-或 ()21v coh E E N E ≡--,其中 E coh = E 1 / N , 为完整晶体的内聚能。
本例中以EAM 模型计算4×(20×20×20)=32000个原子的体系,得到空位形成能E v ~1.26 eV ,文献中的实验值为~1.28 eV ,符合较好。
另由上式计算得到,300K 温度下的空位浓度为~ 7.59×10-22 ,1350 K (T m ) 时的空位浓度~ 2.2×10-5(文献中的实验值为~2×10-4 )。
lammps实例教程
P roject #3 on Molecular Dynamics Simulations
FCC ⾦属中的⾯缺陷
FCC 晶体中,密排⾯为{111},它既是滑移⾯也是共格孪晶⾯。
孪晶关于这个⾯成镜⾯对称。
{111} 的另⼀种⾯缺陷是层错。
层错有两种,本征(intrinsic) 和⾮本征(extrinsic) 。
抽出⼀层原⼦形成本征层错,插⼊⼀层原⼦形成⾮本征层错。
需要注意的是,低能量层错都可以由该⾯上
的剪切(shearing) 操作得到,⽐如本征层错就是将某层原⼦上⽅所有的原⼦整体移动
1
<>
112.
6
层错是密排⾯上的原⼦错排,层错能(SFE) 是材料的本征属性,可度量晶⾯滑移发⽣的难易。
接下来我们将运⽤LAMMPS 计算FCC ⾦属Cu 和Al 的层错能和孪晶形成能。
层错和孪晶的构型由其他代码⽣成,LAMMPS 通过read_data 命令读取构型,进⾏计算。
例如,计算Cu 中层错的输⼊⽂件in.isfCu 如下:
(a) (b)
(c) (d)
图1 (a) Cu 中的 ISF 层错; (b) Al 中的 ISF 层错;(c) Cu 中的孪晶; (d) Al 中的孪晶
层错能和孪晶形成能可由下式计算得到:
0()/E E A γ
=
其中,E 为引⼊层错或孪晶后的体系的能量,E 0 为完整晶体体系的能量,A 为层错⾯或孪晶⾯的⾯积。
如下是 EAM 模型计算所得的 Cu 和 Al 的层错能和孪晶形成能:
Table 1 Fault energies calculated with LAMMPS。
P roject #3 on Molecular Dynamics Simulations
FCC 金属中的面缺陷
FCC 晶体中,密排面为{111},它既是滑移面也是共格孪晶面。
孪晶关于这个面成镜面对称。
{111} 的另一种面缺陷是层错。
层错有两种,本征(intrinsic) 和非本征(extrinsic) 。
抽出一层原子形成本征层错,插入一层原子形成非本征层错。
需要注意的是,低能量层错都可以由该面上
的剪切(shearing) 操作得到,比如本征层错就是将某层原子上方所有的原子整体移动
1
<>
112.
6
层错是密排面上的原子错排,层错能(SFE) 是材料的本征属性,可度量晶面滑移发生的难易。
接下来我们将运用LAMMPS 计算FCC 金属Cu 和Al 的层错能和孪晶形成能。
层错和孪晶的构型由其他代码生成,LAMMPS 通过read_data 命令读取构型,进行计算。
例如,计算Cu 中层错的输入文件in.isfCu 如下:
(a) (b)
(c) (d)
图1 (a) Cu 中的 ISF 层错; (b) Al 中的 ISF 层错;(c) Cu 中的孪晶; (d) Al 中的孪晶
层错能和孪晶形成能可由下式计算得到:
0()/E E A γ
=
−
其中,E 为引入层错或孪晶后的体系的能量,E 0 为完整晶体体系的能量,A 为层错面或孪晶面的面积。
如下是 EAM 模型计算所得的 Cu 和 Al 的层错能和孪晶形成能:
Table 1 Fault energies calculated with LAMMPS。