精华内容
下载资源
问答
  • 分子动力学,用于lammps下聚合物拉伸的input文件和势文件
  • lammps拉伸的应用说明,对于了解lammps拉伸有一些大致了解
  • CxN output_拉伸lammps_lammps拉伸_lammps_分子动力学_聚合物拉伸.zip
  • CxN output_拉伸lammps_lammps拉伸_lammps_分子动力学_聚合物拉伸_源码.zip
  • 大家好,我是小马老师。 本文和大家共同欣赏一个CNT拉伸的lammps案例,案例代码由Simon Gravelle...lammps拉伸模拟最常见的方式是deform和velocity拉伸,使用compute stress/atoms或者pxx等方式统计拉伸应力。 案例作者

    大家好,我是小马老师。
    本文和大家共同欣赏一个CNT拉伸的lammps案例,案例代码由Simon Gravelle编写,原文:

    https://github.com/simongravelle/LAMMPS/tree/main/CNTdeformationAIREBO
    

    关于拉伸的案例,公众号也推送了多个案例,但这个案例所用方法与平时所用方法有点区别。
    在这里插入图片描述

    lammps拉伸模拟最常见的方式是deform和velocity拉伸,使用compute stress/atoms或者pxx等方式统计拉伸应力。
    案例作者并没有使用以上两种方式,而是循环调用displace_atoms命令逐渐向两侧移动固定端实现拉伸。
    在计算拉伸力时,调用fix setforce命令的结果,方法比较独特。
    对于固定两端的拉伸,在计算应变时应该只计算中间mobile部分的伸长量,本文给出了比较具体的计算方法,值得大家参考。
    下面是案例in文件全文,尽量详细的进行了注解,大家可到作者网站下载原文,也可以加QQ群754749935下载data文件和in文件
    对于新手来说,最好的学习方式是把下面的代码打印出来,对照in文件代码,新建一个in文件,亲自把代码输入并运行,而不是直接把代码下载下来运行看看结果就束之高阁。
    最好的学习方式是实践,在不断的改错中提高和成长。
    如果感觉自学lammps有困难,可参加公众号的一对一培训,除了视频教学,更有40多个lammps可供练习,随时可一对一的指导,咨询详情可加微信:sunnyfirst888.

    #变量设置,poro为删除原子的比例
    variable	poro equal 0.03 
    #随机数种子,不同随机数获得不同的状态
    variable	seed equal 15462
    #初始温度
    variable	T equal 300 
    #模拟步长
    variable	dt equal 0.0005  
    #模型基本设置
    units		metal # required by airebo
    atom_style	full
    boundary	p p p
    #势函数类型airebo
    pair_style  	airebo 2.5 1 1
    #读取模型文件
    read_data	data.mysystem
    #改变box大小,便于z方向拉伸
    change_box	all z final -30 70 y final -20 20 x final -20 20
    #势函数设置,映射原子类型为CCC
    pair_coeff 	* * ./CH.airebo C C C
    #原子分组
    group		CNT type 1
    #bound函数返回CNT在z两个方向的尺寸
    #下面的尺寸用于确定两端固定部分的边界范围
    variable	zmax equal bound(CNT,zmax)-10
    variable	zmin equal bound(CNT,zmin)+10
    variable	zmax0 equal bound(CNT,zmax)-20
    variable	zmin0 equal bound(CNT,zmin)+20
    #划分为3个区域
    region		top block INF INF INF INF ${zmax} INF
    region		bot block INF INF INF INF INF ${zmin}
    region		mob block INF INF INF INF ${zmin0} ${zmax0}
    #对区域内原子进行分组
    group		topgroup region top
    group		botgroup region bot
    group		mobile region mob
    #设置两端固定部分为不同的原子类型,便于显示不同的颜色
    set 		group topgroup type 2 # control group 1
    set 		group botgroup type 3 # control group 2
    #随机删除mob区域内3%的原子,便于cnt从缺陷处断裂
    delete_atoms 	porosity mob ${poro} ${seed} 
    #nve系综,berendsen方式控温
    fix		myber all temp/berendsen ${T} ${T} 0.1
    fix		mynve all nve
    #输出轨迹文件
    dump 		mydmp all atom 500 dump.eq.xyz
    #模拟步长
    timestep	${dt}
    热力学输出
    thermo		500
    #弛豫5000步
    run		5000 # 
    #去掉全局控温
    unfix		myber
    undump		mydmp
    #重新设置轨迹文件输出
    dump 		mydmp all atom 1000 dump.run.xyz
    #固定端z方向受力为0,xy方向受力保持原值
    fix 		sf1 topgroup setforce NULL NULL 0.0 
    fix 		sf2 botgroup setforce NULL NULL 0.0 
    #上下部分沿z方向速度设为0,cnt在z方向被固定
    velocity	topgroup set NULL NULL 0  
    velocity	botgroup set NULL NULL 0 
    #计算三部分温度,只计算xy两个方向维度
    compute	Ttop topgroup temp/partial 1 1 0 
    compute	Tbot botgroup temp/partial 1 1 0 
    compute	Tmob mobile temp
    #对thermo命令进行温度修正
    thermo_modify 	temp Tmob 
    #上下部分单独控温
    fix		myber1 topgroup temp/berendsen ${T} ${T} 0.1
    fix_modify	myber1 temp Ttop 
    fix		myber2 botgroup temp/berendsen ${T} ${T} 0.1
    fix_modify	myber2 temp Tbot 
    #计算长度
    variable	L equal v_zmax-v_zmin 
    #没100步输出长度平均值
    fix 		myat1 all ave/time 10 10 100 v_L file tubeLength.dat
    #计算拉力,拉力为两固定端受力之差
    variable	longforce equal f_sf1[3]-f_sf2[3]
    #对拉力进行平均后输出到文件
    fix 		myat2 all ave/time 10 10 100 v_longforce file forcetube.dat
    # 循环设置两固定的位移,实现拉伸
    variable 	a loop 100
    label 		loop
    displace_atoms	topgroup move 0 0 0.1
    displace_atoms	botgroup move 0 0 -0.1
    run		1000
    next		a
    #input.lammps为本文件的文件名,文件名不同会出错
    jump 		input.lammps loop
    
    

    以上案例代码下载见公众号。
    公众号案例代码以及学习交流,请加QQ群:754749935
    在这里插入图片描述

    扫描关注微信公众号:lammps加油站。
    在这里插入图片描述

    展开全文
  • 轴向拉伸与压缩.zip

    2019-09-13 03:14:24
    轴向拉伸与压缩zip,轴向拉伸与压缩
  • lammps模拟石墨烯拉伸过程有两个命令可选:deform和velocity,两个命令的原理不同。 deform是按照一定的速率拉伸box,在这个过程中,石墨烯的原子随着box的伸长而变化坐标,从而实现整体的拉伸。 velocity方式通常...

    lammps模拟石墨烯拉伸过程有两个命令可选:deform和velocity,两个命令的原理不同。

    deform是按照一定的速率拉伸box,在这个过程中,石墨烯的原子随着box的伸长而变化坐标,从而实现整体的拉伸。

    velocity方式通常固定石墨烯的一端,给另一端一个固定的速度v,由这一端的原子带动其余原子运动。

    本文采用velocity方式进行石墨烯的拉伸,下一篇文章将采用deform方式对石墨烯进行拉伸。

    下面对石墨烯拉伸in文件进行详细分析。

    #模型初始化,模拟单位为metal,原子方式为atomic,3维模型
    units  metal
    atom_style   atomic
    dimension  3

    #定义边界条件,x和y方向为周期性边界,y为拉伸方向,z方向为固定边界

    boundary     p p f

    #定义邻域原子定义,1个原子的邻域原子列表是以该原子为中心,以力截断半径+缓冲值(也就是下面设置的0.3)为半径的圆内原子列表

    neior      0.3 bin

    #设置模拟步长为1fs

    timestep        0.001

    #生成模拟box,box内含有3种原子,这三种原子都是C原子,为了后期线上着色方便,原子类型分为上中下三种

    region   box block 0 175 0 175 -5 5 units box
    create_box 3 box

    #自定义石墨烯晶格参数

    lattice  custom 2.4768 a1 1.0 0.0 0.0 &
    a2 0.0 1.732 0.0 a3 0.0 0.0 1.3727 & 
    basis 0.0 0.33333 0.0 & 
    basis 0.0 0.66667 0.0 &
    basis 0.5 0.16667 0.0 &
    basis 0.5 0.83333 0.0

    #生成石墨烯原子,类型为1

    region  gp block 10 120 10 120 -0.5 0.5 units box
    create_atoms 1 region gp

    #设置原子质量

    mass * 12

    #定义区域,上下两部分固定区域和中间活动区域mobile

    region upper block INF INF 117 INF INF INF  units box
    region lower block INF INF INF 13 INF INF units box
    group upper region upper
    group lower region lower
    group boundary union upper lower
    group mobile subtract all boundary

    #设定最上端原子类型为2,最下端原子类型为3,为后期着色方便

    set group upper type 2
    set group lower type 3

    #设置势函数,airebo常用于石墨烯的模拟

    pair_style  airebo 2.0
    pair_coeff  * * CH.airebo C C C

    #初始化温度

    velocity mobile create 300.0 8877528

    #固定上下两端原子

    fix  1 boundary setforce 0.0 0.0 0.0

    #以下四句代码,对模型在npt下进行弛豫,并将结果保存到文件中

    thermo 100
    fix  2 all npt temp 300.0 300.0 1 x 0 0 0.1 y 0 0 0.1
    dump 1 all atom 100 gp_relax.lammpstrj
    run 1000

    #取消fix,dump设定,步数清零

    unfix   2
    undump 1
    reset_timestep 0

    #最上端设置y方向速度为1,沿y方向拉伸

    velocity upper set 0.0 1.0 0.0

    #按比例设置mobile部分的速度

    velocity mobile ramp vy 0.0 1.0 y 8 52 sum yes

    #在nvt下进行拉伸

    fix  2 all nvt temp 300.0 300.0 0.01

    #进行热力学输出,保存拉伸后原子坐标

    thermo 1000
    thermo_modify lost ignore
    dump  1 all atom 1000 gp_tension.lammpstrj
    run  10000

    模拟最终结果如下图所示,本例比较简单,没有加入应力应变的统计,如要输出应力和应变,可用fix或者thermo语句输出pxx、pyy、pzz三个方向上的应力。

     

     

    最后,欢迎大家通过微信公众号联系我们。

    微信公众号:320科技工作室。

    展开全文
  • lammps经典例子

    2019-04-04 13:13:02
    lammps经典例子
  • 分子动力学模拟拉伸除了velocity方式之外,还可以使用fix deform命令。 fix deform命令使系统在给定的应变速率下进行变形。 与velocity方式不同之处在于,deform方式下的拉伸并不需要固定被拉伸物体的两端。在本...

    分子动力学模拟拉伸除了velocity方式之外,还可以使用fix deform命令。

    fix deform命令使系统在给定的应变速率下进行变形。

     

    与velocity方式不同之处在于,deform方式下的拉伸并不需要固定被拉伸物体的两端。在本例中,为防止在能量最小化阶段石墨烯的飘动,同样对石墨烯两端进行了约束。

    lammps案例分析(2):石墨烯单轴拉伸之deform方式

     

    下面是石墨烯deform方式拉伸in文件代码:

    第一部分是模拟系统的初始设置参数,模拟单位为metal类型,周期性边界。

    #---------1 基本参数--------------------------------------
    units                metal
    dimension            3
    boundary            p p p
    neighbor            0.3 bin
    neigh_modify        delay 0
    timestep            0.001
    #---------------------------------------------------------

    第二部分以lattice方式建立石墨烯带,当然也可以通过MS软件建模,然后通过read_data命令读取石墨烯模型。

     

    用fix deform命令进行拉伸,并不需要固定石墨烯的两端,为了和velocity进行对比,本例同样对石墨烯两端原子进行了设置。

    #---------2 建模------------------------------------------
    region                box block 0 50 0 50 -5 5 units box
    create_box            3 box
    lattice custom 2.4768 a1 1.0 0.0 0.0 a2 0.0 1.732 0.0 a3 0.0 0.0 1.3727 &
    basis 0.0 0.33333 0.0 &
    basis 0.0 0.66667 0.0 &
    basis 0.5 0.16667 0.0 &
    basis 0.5 0.83333 0.0
    region                 graphene block 0 50 0 50 -1 2 units box
    create_atoms        1 region graphene
    mass                * 12
    region                left block INF 4 INF INF INF INF units box
    group                left region left
    region                right block 46 INF INF INF INF INF units box
    group                right region right
    group                boundary union left right
    group                mobile subtract all boundary
    set                    group left type 2
    set                    group right type 3
    #------------------------------------------------------

    势函数设置和velocity方式一样,均为airebo势

    #------------3 势函数设置------------------------------
    pair_style            airebo 3.0 0 0
    pair_coeff             * * CH.airebo C C C
    #------------------------------------------------------

    建模完成后对体系进行能量最小化,获得最优结构

    #------------4 能量最小化------------------------------
    min_style             cg
    minimize            1e-10 1e-10 5000 5000
    #------------------------------------------------------

    初始化温度

    #------------5 温度初始化------------------------------
    velocity mobile create 300 4928459 dist gaussian units box
    velocity left set 0.0 0.0 0.0 units box
    velocity right set 0.0 0.0 0.0 units box
    #------------------------------------------------------

    设置应变速率,拉伸应力值存储到sigmaxx中

    #------------6 计算设置--------------------------------
    compute    1 all stress/atom NULL
    compute    2 all reduce sum c_1[1] c_1[2]
    variable   CorVol equal ly*lx*3.35
    variable   sigmaxx equal c_2[1]/(v_CorVol*10000)
    variable px equal -pxx/10000
    #应变
    variable l_x equal lx
    variable lx0 equal ${l_x}
    variable strain equal (lx-v_lx0)/v_lx0
    #------------------------------------------------------

    在npt系综下进行弛豫

    #------------7 结构弛豫--------------------------------
    fix                    1 boundary setforce 0 0 0
    fix                    2 all npt temp 300 300 0.01 iso 0 0 0.1
    thermo                1000
    thermo_modify       lost ignore
    dump                1 all atom 1000 relax.lammpstrj
    run                    10000
    unfix                2
    undump                1
    reset_timestep        0
    #------------------------------------------------------

    设置输出参量,在nvt下对石墨烯进行单轴拉伸

    #------------8 拉伸设置--------------------------------
    thermo_style custom step press v_strain v_px v_sigmaxx temp lx ly lz vol
    thermo                100
    fix                    2 all nvt temp 300 300 0.01
    fix                    3 all deform 200 x erate 0.05 remap x
    dump                1 all atom 500 algp.lammpstrj
    run                 10000

    拉伸之后对数据进行处理,石墨烯在单轴拉伸下最大应力值大约103左右,应力-应变图如下图所示:

    lammps案例分析(2):石墨烯单轴拉伸之deform方式

     

    从物理意义上拉伸,使用velocity方式拉伸时,固定物体的一端,载荷加载到另一端上,更符合实际拉伸过程。

    使用deform方式进行拉伸,模拟盒子在拉伸方向上伸长,原子根据盒子伸长的程度调整到相应的位置,虽然不如velocity更符合实际拉伸过程,但结果相差不大。

    需要注意的是,使用velocity拉伸,在拉伸方向上不能使用周期性边界条件,否则会出现拉不动的现象。使用deform拉伸方式,在拉伸方向上可以设置周期性边界条件。

    最后,有需求欢迎通过微信公众号联系我们。

    微信公众号:320科技工作室。

    展开全文
  • lammps实例

    2015-12-08 11:42:38
    关于一些lammps资源的实例,可以对lammps有一个了解。
  • 大家好,本文是小编根据自己所学的知识,因能力有限,将介绍一种高熵合金的lammps简单拉伸过程,本教程只适合于新手学习,希望能给读者提供具体工程意义还读者结合实际同时希望专业前辈提出不足。 如下图为本文...

    原创 YJ学长 LAMMPS交流站icon-default.png?t=L9C2javascript:void(0); 大家好,本文是小编根据自己所学的知识,因能力有限,将介绍一种高熵合金的lammps简单拉伸过程,本教程只适合于新手学习,希望能给读者提供具体工程意义还读者结合实际同时希望专业前辈提出不足。

        如下图为本文建立的合金试件模型。

    图片

    图片

    图片

    01

    基本思路

    本文采用deform命令对高熵合金进行一个拉伸操作

    02

    完整代码

    完整in文件如下:

    #初始模拟系统设置units metal #单位boundary p p p #边界条件atom_style atomic #原子类型timestep 0.001 #时间步长#构建模型lattice fcc 3.56 #设置晶格参数region box block 0 100 0 20 0 20 #生产长方形区域create_box 5 boxcreate_atoms 1 box#将type为1的原子转换为其他原子set type 1 type/ratio 2 0.2 87393 #将1原子转换为2原子set type 1 type/ratio 3 0.5 87393 #将1原子转换为3原子set type 1 type/ratio 4 0.5 87393 #将1原子转换为4原子set type 3 type/ratio 5 0.5 87393 #将1原子转换为5原子#设置原子类型mass 1 27 #Al原子mass 2 56 #Fe原子mass 3 28 #Si原子mass 4 64 #Cu原子mass 5 24 #Mg原子#拉伸设置fix 1 all deform 2000 x erate 0.05 remap x  #设置拉伸方式dump 1 all atom 500 lasheng.xyz  #输出文件run 100000

    03

    运行结果

        接着,在cmd窗口运行in文件,将生成的xyz文件拖到OVITO软件中,并在OVITO软件中进行渲染,就产生了如下结果:

    图片

    接着

    在加上使用输出的应力应变数据(本文中in文件未给出)在origin中绘制应力-应变曲线,如下图所示:

    图片

    更多案例尽在公众号:LAMMPS交流站

     

    展开全文
  • lammps软件关于聚合物-聚乙烯拉伸的in文件
  • lammps实例4.pdf

    2020-09-27 16:19:06
    lammps运行示例4,一般性分子模拟软件。 兼容当前大多数的势能模型,编程水平高,计算效率高。可以 模拟软材料和固体物理系统。
  • 高熵合金力学性能模拟包括拉伸、剪切、摩擦等模拟,本文以高熵合金FeNiCrCoCu为例介绍高熵合金建模及拉伸过程模拟。 FeNiCrCoCu原子数量比为1:1:1:1:1 高熵合金的拉伸与单晶拉伸过程类似,主要包含以下步骤: 1.建模...
  • 本文分享一个使用fix addforce命令进行拉伸的案例,运行效果如下: 模拟采用LJ单位,初始结构是由40个原子组成的一条链,原子之间设置键连接,共39个键。 在设置力场时,忽略pair势,只计算键的作用力,键的势函数...
  • lammps模拟中,原子必须位于模拟盒子box的内部,当因为建模方式不当造成原子处于box外面时,lammps会给出错误提示,造成模拟中断。 例如,下图中的Cu纳米线,使用Atomsk建模方式,因多次旋转导致最上部的原子处于...
  • 本文介绍使用lammps软件模拟带有空位缺陷的石墨烯拉伸过程。 石墨烯缺陷包含单空位(SV)、双空位(DV)、SW等多种缺陷,这些缺陷对石墨烯的力学性能产生一定的影响,相关的模拟论文也比较多,模拟方法基本类似。 在...
  • Units style(lammps 现在提供的有 style=LJ、real、metal、si、cgs、electron) LJ 是硬球模型 Real 是真实的原子模型 Metal 是金属原子模型Si 是硅(半导体)原子模型Cgs Electron 是电子模型 Dimension: ...
  • 分子动力学lammps数据分析、二次开发、拉伸摩擦、非平衡统计、自由能计算学习资料,全套学习资料,分子动力学lammps数据分析、二次开发、拉伸摩擦、非平衡统计、自由能计算学习资料,全套学习资料。
  • Lammps拉伸过程中的应用,lammps实例教程,Fortran源码
  • LAMMPS 后处理 计算应力hydro_stress和von Mises stress的脚本。
  • 了解如何拉伸晶界直至断裂 。 运行LAMMPS! 了解如何计算在LAMMPS之外使用的许多每个原子指标 。 运行LAMMPS! 了解如何将100个单元的原子聚合物链添加到LAMMPS 我什至尝试将此处的脚本更新为一些较新的LAMMPS版本。...
  • 单晶Cu纳米线单向拉伸和压缩的分子动力学模拟,袁林,张江伟,加工硬化现象普遍存在于金属塑性加工过程中。长久以来,这种现象一直吸引着人们的注意力。当在低温(T<0.3Tm)条件下施加应力时,加工
  • lammps 案例in文件汇总

    2021-08-14 11:08:11
    进阶案例: 聚乙烯和石墨烯界面pull out模拟代码 反应力场reax/c设置方法及案例解析 石墨烯热导率模拟代码(NEMD方法) ... 圆锥形SiC纳米磨削单晶硅源代码 ... 铝/石墨烯复合物结晶过程lammps
  • 在一些lammps模拟中,会设置固定层、恒温层,在控温时,不同的区域设置不同的控温策略。 如固定层速度和受力会设为0(温度肯定也为0),恒温层会设置一个恒温器进行控温。 但是在实际运行过程中,会发现log文件输出...
  • 2、学习lammps脚本的形式和内容 实验原理 原子、离子或分子在三维空间做规则的排列,相同的部分具有直线周期平移的特点。为了描述晶体结构的周期性,人们提出了空间点阵的概念。为了说明点阵排列的规律和特点,...
  • 本文给大家介绍一个计算间隙原子形成能的lammps模拟案例。 间隙原子形成能计算公式为: 以Cu为例,间隙原子形成能模拟过程为: (1)生成含有N个原子的Cu,进行能量最小化后,计算能量E0。 (2)在非晶格点位置...
  • lammps教程:boundary命令详解

    千次阅读 2021-02-07 11:12:39
    lammps支持对同一方向的两个边界设置不同的边界条件,对y方向下表面设置f边界、上表面设置s边界,可以写为: boundary p fs p 1.周期性边界:p 参数p表示周期性边界条件,当粒子从一侧飞出,会从相对应的另一侧再次...
  • 石墨烯具有优良的力学性能,少量...(5)压缩变形,输出轨迹文件和应力应变曲线 (6)使用ovito分析位错 全部的in文件请关注微信公众号:lammps加油站,其中Al的势函数可到https://www.ctcms.nist.gov/potentials下载。

空空如也

空空如也

1 2 3 4
收藏数 75
精华内容 30
关键字:

lammps拉伸