关注 M r . m a t e r i a l , \color{Violet} \rm Mr.material\ , Mr.material , 更 \color{red}{更} 更 多 \color{blue}{多} 多 精 \color{orange}{精} 精 彩 \color{green}{彩} 彩!
主要专栏内容包括:
†《LAMMPS小技巧》:
‾
\textbf{ \underline{\dag《LAMMPS小技巧》:}}
†《LAMMPS小技巧》: 主要介绍采用分子动力学(
L
a
m
m
p
s
Lammps
Lammps)模拟相关安装教程、原理以及模拟小技巧(难度:
★
\bigstar
★)
††《LAMMPS实例教程—In文件详解》:
‾
\textbf{ \underline{\dag\dag《LAMMPS实例教程—In文件详解》:}}
††《LAMMPS实例教程—In文件详解》: 主要介绍采用分子动力学(
L
a
m
m
p
s
Lammps
Lammps)模拟相关物理过程模拟。(包含:热导率计算、定压比热容计算,难度:
★
\bigstar
★
★
\bigstar
★
★
\bigstar
★)
†††《Lammps编程技巧及后处理程序技巧》:
‾
\textbf{ \underline{\dag\dag\dag《Lammps编程技巧及后处理程序技巧》:}}
†††《Lammps编程技巧及后处理程序技巧》: 主要介绍针对分子模拟的动力学过程(轨迹文件)进行后相关的处理分析(需要一定编程能力。难度:
★
\bigstar
★
★
\bigstar
★
★
\bigstar
★
★
\bigstar
★
★
\bigstar
★)。
††††《分子动力学后处理集成函数—Matlab》:
‾
\textbf{ \underline{\dag\dag\dag\dag《分子动力学后处理集成函数—Matlab》:}}
††††《分子动力学后处理集成函数—Matlab》: 主要介绍针对后处理过程中指定函数,进行包装,方便使用者直接调用(需要一定编程能力,难度:
★
\bigstar
★
★
\bigstar
★
★
\bigstar
★
★
\bigstar
★)。
†††††《SCI论文绘图—Python绘图常用模板及技巧》:
‾
\textbf{ \underline{\dag\dag\dag\dag\dag《SCI论文绘图—Python绘图常用模板及技巧》:}}
†††††《SCI论文绘图—Python绘图常用模板及技巧》: 主要介绍针对处理后的数据可视化,并提供对应的绘图模板(需要一定编程能力,难度:
★
\bigstar
★
★
\bigstar
★
★
\bigstar
★
★
\bigstar
★)。
††††††《分子模拟—Ovito渲染案例教程》:
‾
\textbf{ \underline{\dag\dag\dag\dag\dag\dag《分子模拟—Ovito渲染案例教程》:}}
††††††《分子模拟—Ovito渲染案例教程》: 主要采用
O
v
i
t
o
\rm Ovito
Ovito软件,对
L
a
m
m
p
s
\rm Lammps
Lammps 生成的轨迹文件进行渲染(难度:
★
\bigstar
★
★
\bigstar
★)。
专栏说明(订阅后可浏览对应专栏全部博文):
‾
\color{red}{\textbf{ \underline{专栏说明(订阅后可浏览对应专栏全部博文):}}}
专栏说明(订阅后可浏览对应专栏全部博文):
注意:
\color{red} 注意:
注意:如需只订阅某个单独博文,请联系博主邮箱咨询。
l
a
m
m
p
s
_
m
a
t
e
r
i
a
l
s
@
163.
c
o
m
\rm lammps\_materials@163.com
lammps_materials@163.com
♠
\spadesuit
♠
†
\dag
† 开源后处理集成程序:请关注专栏《LAMMPS后处理——MATLAB子函数合集整理》
♠
\spadesuit
♠
†
\dag
†
†
\dag
† 需要付费定制后处理程序请邮件联系:
l
a
m
m
p
s
_
m
a
t
e
r
i
a
l
s
@
163.
c
o
m
\rm lammps\_materials@163.com
lammps_materials@163.com
LAMMPS 中 molecule command 的分子模板
专栏浏览 《LAMMPS后处理以及编程技巧》
两个分子模板的延伸问题
LAMMPS甲烷全原子(CH4)模型的分子模板问题
通过分子模板构建随机分布在溶液中的纳米颗粒(一)
通过分子模板构建随机分布在溶液中的纳米颗粒(二)—— 不同形状纳米颗粒
水分子模板下载:链接
提取码:o6ep
一、分子模板的基本讲解
1. 什么是“近邻”呢?
2. 什么是 s h a k e f l a g \rm shake\ flag shake flag 呢?
二. 以水分子为例进行说明
# Water molecule. SPC/E model.
3 atoms ## 分子模板中的原子总数
2 bonds ## 分子模板中的bond总数
1 angles ## 分子模板中的角总数
Coords
# 原子ID x y z
1 1.12456 0.09298 1.27452
2 1.53683 0.75606 1.89928
3 0.49482 0.56390 0.65678
Types
# 原子ID type 这里注意:不管有几个分子模板,还是in文件中有多少个type 这里都是从1开始
1 1
2 2
3 2
Charges
# 原子ID charge
1 -0.8472
2 0.4236
3 0.4236
Bonds
#ID type atom1 atom2
1 1 1 2
2 1 1 3
Angles
#ID type atom1 atom2 atom3
1 1 2 1 3
Shake Flags
# ID flag
1 1 ### 0 :不属于fix shake 作用的 :0表示该原子不是SHAKE约束组的一部分
2 1 ### 1 :1表示该原子是SHAKE键角约束组的一部分(2个刚性键及1个刚性键角)
3 1 ### 2 :表示该原子是双原子SHAKE约束组的一部分(具有1个刚性键)
### 3 : 表示该原子是三原子SHAKE约束组的一部分(具有2个刚性键)
### 4 : 4表示该原子是四原子SHAKE约束组的一部分(具有3个刚性键)
Shake Atoms
1 1 2 3 flag = 1 : ID a(中心原子) b c (组成的角连接的其他两个atom)
2 1 2 3 flag = 2: ID a(ID of atom in bond with the the lowest ID) b(ID of atom in bond with the the highest ID)
3 1 2 3 flag = 3: ID a(ID of central atom) b,c = IDs of other two atoms bonded to the central atom.
flag = 4: ID a(ID of central atom) b,c = IDs of other three atoms bonded to the central atom.
Shake Bond Types
If flag = 1, a,b,c are listed, where a = bondtype of the bond between the central atom and the first non-central atom (value b in the Shake Atoms section), b = bondtype of the bond between the central atom and the 2nd non-central atom (value c in the Shake Atoms section), and c = the angle type (1 to Nangletypes) of the angle between the 3 atoms.
1 1 1 1
2 1 1 1
3 1 1 1
Special Bond Counts
#ID 1-2原子紧邻 1-3 1-4
1 2 0 0 ## 对于atom1 也就是o来说
2 1 1 0
3 1 1 0
##
## atom1
## o
## / \
## atom2 h h atom3
##
## atom1 atom2就是1-2紧邻,atom1 atom3同理;--> 两个相邻原子间隔了1个键
## atom2和atom3呢?三个原子间隔了2个键
## 显然 1-2原子紧邻 2个 ,1-3,1个,1-4,0个
这里的special bond需要对每一个原子的近邻原子进行展开写,
其实也就是告诉Lammps要开批多少内存。
例如:
## atom1
## o
## / \
## atom2 h h atom3
Special Bonds ID 1-2近邻(依次写完) 1-3近邻(依次写完) 1-4近邻...
1 2 3 :
对于原子1, 1-2近邻是原子2和3(有2个),1-3近邻没有(所以不写)
2 1 3
对于原子2, 1-2近邻是原子1(有1个),没有1-3近邻是原子atom3;
3 1 2
对于原子3, 1-2近邻是原子1(有1个),1-3近邻是原子atom2(有1个);
Special Bonds
1 2 3
2 1 3
3 1 2
三. 分子模板案例分析
1. 水的完整代码— SPC/E model
# Water molecule. SPC/E model.
3 atoms
2 bonds
1 angles
Coords
1 1.12456 0.09298 1.27452
2 1.53683 0.75606 1.89928
3 0.49482 0.56390 0.65678
Types
1 1
2 2
3 2
Charges
1 -0.8472
2 0.4236
3 0.4236
Bonds
1 1 1 2
2 1 1 3
Angles
1 1 2 1 3
Shake Flags
1 1
2 1
3 1
Shake Atoms
1 1 2 3
2 1 2 3
3 1 2 3
Shake Bond Types
1 1 1 1
2 1 1 1
3 1 1 1
Special Bond Counts
1 2 0 0
2 1 1 0
3 1 1 0
Special Bonds
1 2 3
2 1 3
3 1 2
2. 水的dimer结构
# dimer molecule
2 atoms
1 bonds
Coords
1 0 0 0
2 1 0 0
Types
1 2
2 3
Bonds
1 1 1 2
Special Bond Counts
1 1 0 0
2 1 0 0
Special Bonds
1 2
2 1
3.dimer granular molecule
# dimer granular molecule
5 atoms
Coords
1 0 0 0
2 1 0 0
3 2 0 0
4 2 1 0
5 2 2 0
Types
1 1
2 1
3 1
4 1
5 1
Diameters
1 1.0
2 1.0
3 1.0
4 1.0
5 1.0
Masses
1 0.5
2 0.5
3 0.5
4 0.5
5 0.5
4. CO2 molecule file. TraPPE model.
# CO2 molecule file. TraPPE model.
3 atoms
2 bonds
1 angles
Coords
1 0.0 0.0 0.0
2 -1.16 0.0 0.0
3 1.16 0.0 0.0
Types
1 1
2 2
3 2
Charges
1 0.7
2 -0.35
3 -0.35
Bonds
1 1 1 2
2 1 1 3
Angles
1 1 2 1 3
Special Bond Counts
1 2 0 0
2 1 1 0
3 1 1 0
Special Bonds
1 2 3
2 1 3
3 1 2
5. rigid body molecule template
LAMMPS data file created for rigid body molecule template
5 atoms
2.3388800000000005 mass
6.002239704473936 4.99 4.989999999999999 com
116.79265620480001 144.26721336320003 144.26721336320006 -70.05220681600004 -70.05220681600002 -58.238345888000005 inertia
Coords
1 5 5 5
2 5.1 5.0 5.0
3 5.2 5.0 5.0
4 6.2 5.0 5.0
5 7.2 5.0 5.0
Types
1 1
2 1
3 1
4 1
5 1
Diameters
1 1.0
2 0.9
3 1.2
4 1.2
5 1.0
Masses
1 0.5235987755982988
2 0.3817035074111599
3 0.9047786842338602
4 0.9047786842338602
5 0.5235987755982988
四. 分子模板案例分析
1. 随机建立2000个水分子
###################
# initial setting #
###################
#----------------------------------------------------------#
variable x equal 50
variable y equal 50
variable z equal 50
#----------------------------------------------------------#
units metal
dimension 3
boundary p p p
atom_style full
bond_style harmonic
angle_style harmonic
##############
# create box #
##############
#----------------------------------------------------------#
region box block 0 $x 0 $y 0 $z units box
create_box 2 box &
bond/types 1 &
angle/types 1 &
extra/bond/per/atom 2 &
extra/angle/per/atom 1 &
extra/special/per/atom 2
molecule water H2O.txt
create_atoms 0 random 2000 12345 box mol water 12345 units box
#----------------------------------------------------------#
# setting mass
mass 1 16.0
mass 2 1.0
bond_coeff 1 19.51 0.9572
angle_coeff 1 2.40 104.52
write_data 1
2. 多个分子模板的建模
这里有一个分支问题,如何按照lattice准确create_atom个数,请看我另一个博客:
博客:https://blog.csdn.net/qq_43689832/article/details/115866205
#---------------------------initial setting-------------------------
dimension 3
units real
boundary p p p
atom_style full
bond_style harmonic
angle_style harmonic
#---------------------------create box-------------------------
region box block 0 130 0 130 0 260 units box
create_box 4 box &
bond/types 2 &
angle/types 1 &
extra/bond/per/atom 2 &
extra/angle/per/atom 1 &
extra/special/per/atom 2
#---------------------------create wall-------------------------
region wall block 0 130 0 130 0 14.44 units box
lattice fcc 3.61
create_atoms 1 region wall
#---------------------------create water-------------------------
region vapor block 0 130 0 130 30 40 units box
molecule water H2O.txt toff 1
lattice sc 3.61
#create_atoms 0 random 1000 12345 vapor mol water 12345 units box
create_atoms 0 region vapor mol water 12345 units box
#---------------------------create N2-------------------------
region noncond block 0 130 0 130 120 130 units box
molecule n n.txt toff 3 aoff 1 boff 1
lattice sc 3.61
#create_atoms 0 random 100 12345 noncond mol n 12345 units box
create_atoms 0 region noncond mol nitrogen 23254 units box
#---------------------------setting mass-------------------------
mass 1 1
mass 2 1
mass 3 1
mass 4 1
#---------------------------setting bonds-------------------------
bond_coeff 1 1 1
bond_coeff 2 1 1
angle_coeff 1 1 1
write_data 1.data