lammps模拟水溶液环境中的聚乙二醇拉伸
发布时间
阅读量:
阅读量
本文介绍了Simon Gravelle使用lammps软件对聚乙二醇(PEG)在水溶液环境中的拉伸行为进行的数值模拟研究。通过设置外力作用于PEG链两端的原子,并结合水分子的动态调整,实现了对PEG分子链在水中受力状态的详细分析。研究发现,在水溶液环境中,PEG分子链能够在外力作用下发生稳定的拉伸变形,并且整体尺寸保持相对稳定。为便于理解和学习,作者对模拟输入文件进行了注释说明,并提供了完整的代码链接供读者参考和使用。
大家好,我是小马老师。
本文分享了Simon Gravelle的最新案例:使用Lammps进行模拟研究,在水中环境中对聚乙二醇(PEG)进行了拉伸。

LAMMPS模拟拉伸主要采用两种方法:固定边界条件(fix)变形和速度(velocity)变形。这两种方法主要用于模拟单元体的形变。
在此案例中,在盒体内沿纵向方向上设置了均匀分布的PEG单元,在该单元发生长度方向上的拉伸变形过程其周围配置有水基溶液环境;此封闭区域整体尺寸变化较小。
因此,在研究中作者通过fix addforce命令对PEG链两端的原子施加了大小相等但方向相反的作用力,并最终达到了该分子在水中被拉伸的效果。

可到作者主页下载全部代码:
https://github.com/lammpstutorials/lammpstutorials.github.io/tree/version2.0/docs/inputs/bulkfluids/allatoms/mergePEGH2O
为方便大家学习参考,对in文件进行了注释
# Written by Simon Gravelle
#设置拉力
variable f0 equal 5 # kcal/mol/A # 1 kcal/mol/A = 67.2 pN
#模型基本参数设置
units real
atom_style full
bond_style harmonic
angle_style charmm
dihedral_style charmm
pair_style lj/cut/tip4p/long 1 2 1 1 0.1546 12.0
kspace_style pppm/tip4p 1.0e-4
special_bonds lj 0.0 0.0 0.5
#读取data文件
read_data mix.data
#读取势函数参数文件
include PARM.lammps
#设置分组
group H2O type 1 2
group PEG type 3 4 5 6 7
#oxygen_end1和oxygen_end2分别为PEG链两端的两个原子
#使用id的方式把这2个原子设定为两个原子组
#分组目的是便于使用fix addforce命令施加作用力
group oxygen_end1 id 65
group oxygen_end2 id 4
#模拟结果输出
dump mydmp all atom 1000 dump.lammpstrj
#步长为1fs
timestep 1
#固定水分子键角
fix myshk H2O shake 1.0e-4 200 0 b 1 a 1
#设置nvt系综
fix mynvt all nvt temp 300 300 100
#输出温度
variable mytemp equal temp
fix myat1 all ave/time 10 10 100 v_mytemp file temperature.dat
#xcm返回PEG两端原子x坐标
variable x1 equal xcm(oxygen_end1,x)
variable x2 equal xcm(oxygen_end2,x)
#delta_x为两原子在x方向的距离
variable delta_x equal abs(v_x1-v_x2)
#实时输出两原子在x方向的距离,用于标定拉伸长度
fix myat2 all ave/time 10 10 100 v_delta_x file end-to-end-distance.dat
thermo 1000
#运行1万步,弛豫
run 10000
#设置两原子在x方向的作用力
fix myaf1 oxygen_end1 addforce ${f0} 0 0
fix myaf2 oxygen_end2 addforce -${f0} 0 0
#启动拉伸
run 50000
公众号:lammps加油站
全部评论 (0)
还没有任何评论哟~
