计算化学公社

标题: 界面张力如何计算 [打印本页]

作者
Author:
xxj9618    时间: 2016-6-2 14:36
标题: 界面张力如何计算
我现在做了一个两个油相的液液平衡模拟,用的是gromacs和opls力场,模拟已经完成。
现在导师想让我计算其界面张力,该如何计算。
想请教一下大神们,谢谢啦。
作者
Author:
sobereva    时间: 2016-6-3 01:29
靠两相体系XX、YY、ZZ压力分量就能计算
gmx手册里搜Surface-tension就能找到公式
作者
Author:
xxj9618    时间: 2016-6-6 11:19
sobereva 发表于 2016-6-3 01:29
靠两相体系XX、YY、ZZ压力分量就能计算
gmx手册里搜Surface-tension就能找到公式

那再次请教sob老师,gromacs里面的gmx energy直接选择计算#Surf*SurfTen,这样的做法是否正确?
作者
Author:
sobereva    时间: 2016-6-6 12:13
xxj9618 发表于 2016-6-6 11:19
那再次请教sob老师,gromacs里面的gmx energy直接选择计算#Surf*SurfTen,这样的做法是否正确?

那个应该是表面积和表面张力相乘
你还是直接自行提取压力吧,式子很简单
作者
Author:
xxj9618    时间: 2016-6-6 20:16
sobereva 发表于 2016-6-6 12:13
那个应该是表面积和表面张力相乘
你还是直接自行提取压力吧,式子很简单

是这个式子吗,好的谢谢sob老师。另外我得到了这个XX,YY,ZZ的压力分量波动好大,有正有负。我用一个XX的压力分量的一部分为例
19946.000000  -38.342983
19948.000000  -166.494003
19950.000000  295.854584
19952.000000   87.862854
19954.000000  694.975342
19956.000000   -0.565209
19958.000000  220.027283
19960.000000  -470.999359
19962.000000  -910.694031
19964.000000  189.829071
19966.000000  -426.059570
19968.000000  269.899902
19970.000000  -304.552643
19972.000000  -97.034988
19974.000000  -114.811546
19976.000000  -192.586594
19978.000000  485.174011
19980.000000   80.621078
19982.000000  754.431824
19984.000000  382.217499
19986.000000  -102.640305
19988.000000  590.201355
19990.000000  128.506210
19992.000000  -612.596924
19994.000000  163.240982
19996.000000  123.624168
19998.000000  168.884811
20000.000000  -341.822540


您看看,这个能用吗,并且用的时候是取平均值吗?

作者
Author:
sobereva    时间: 2016-6-7 05:17
xxj9618 发表于 2016-6-6 20:16
是这个式子吗,好的谢谢sob老师。另外我得到了这个XX,YY,ZZ的压力分量波动好大,有正有负。我用一个XX的 ...


能。
不是用平均压力,而是把每一帧的压力分量代入式子,然后再对结果取平均
液体可压缩系数很小,压力波动很大很正常。
有兴趣可以看看此文,也是这个式子算的:http://www.whxb.pku.edu.cn/CN/10.3866/PKU.WHXB201506191

作者
Author:
xxj9618    时间: 2016-6-7 07:54
本帖最后由 xxj9618 于 2016-6-7 08:08 编辑
sobereva 发表于 2016-6-7 05:17
能。
不是用平均压力,而是把每一帧的压力分量代入式子,然后再对结果取平均
液体可压缩系数很小,压 ...

十分感谢sob老师的悉心指导。最后一个问题,这个Lz是盒子在z轴的总长度吗,还有这个n是3吗?
作者
Author:
sobereva    时间: 2016-6-7 08:33
xxj9618 发表于 2016-6-7 07:54
十分感谢sob老师的悉心指导。最后一个问题,这个Lz是盒子在z轴的总长度吗,还有这个n是3吗?


这是以前我的笔记:
计算表面张力的方法:体系界面需要垂直于Z方向。模拟一定时间,然后根据下式计算
γ=(1/n)*Lz*<P_zz-(P_xx+P_yy)/2>
n代表体系的界面数,比如一层水上下都是空气的体系n=2。Lz是盒子Z方向的长度。<>代表取时间平均。γ一般是mN/m单位,即毫牛每米。P_xx/yy/zz是各方向的压强。
对于gmx,Lz以nm为单位,g_energy输出的P_xx/yy/zz以bar为单位。1bar=100000N/m^2=1D8 N/m^2,1nm=1D-9 m,因此把gmx的数值代入后,除以10就得到了nN/m单位下的表面张力

作者
Author:
xxj9618    时间: 2016-6-7 14:59
sobereva 发表于 2016-6-7 08:33
这是以前我的笔记:
计算表面张力的方法:体系界面需要垂直于Z方向。模拟一定时间,然后根据下式计算
...

好的,再次感谢
作者
Author:
xxj9618    时间: 2016-6-14 11:12
本帖最后由 xxj9618 于 2016-6-14 11:14 编辑
sobereva 发表于 2016-6-7 08:33
这是以前我的笔记:
计算表面张力的方法:体系界面需要垂直于Z方向。模拟一定时间,然后根据下式计算
...

sob老师,我这个做出来竟然是负的,而且300K的时候数值好像太大了。是不是有问题?

作者
Author:
xxj9618    时间: 2016-6-14 14:44
sobereva 发表于 2016-6-7 08:33
这是以前我的笔记:
计算表面张力的方法:体系界面需要垂直于Z方向。模拟一定时间,然后根据下式计算
...

pcoupltype:是不是应该选择surface-tension?
作者
Author:
sobereva    时间: 2016-6-14 17:39
xxj9618 发表于 2016-6-14 14:44
pcoupltype:是不是应该选择surface-tension?

不用选这个
作者
Author:
sobereva    时间: 2016-6-14 18:01
xxj9618 发表于 2016-6-14 11:12
sob老师,我这个做出来竟然是负的,而且300K的时候数值好像太大了。是不是有问题?

可以先算个水+气的表面张力确认过程无误
作者
Author:
xxj9618    时间: 2016-6-14 19:17
sobereva 发表于 2016-6-14 18:01
可以先算个水+气的表面张力确认过程无误

我看到有个文献选择了这个semiisotropic,是否正确
作者
Author:
sobereva    时间: 2016-6-14 20:02
xxj9618 发表于 2016-6-14 19:17
我看到有个文献选择了这个semiisotropic,是否正确

NVT就可以
作者
Author:
xxj9618    时间: 2016-6-15 08:30
sobereva 发表于 2016-6-14 20:02
NVT就可以

那我是npt,还是选择isotropic?谢谢sob老师
作者
Author:
sobereva    时间: 2016-6-15 10:51
xxj9618 发表于 2016-6-15 08:30
那我是npt,还是选择isotropic?谢谢sob老师


不控压,就NVT。之前先用NPT把盒子跑平衡。
作者
Author:
xxj9618    时间: 2016-6-16 14:29
sobereva 发表于 2016-6-15 10:51
不控压,就NVT。之前先用NPT把盒子跑平衡。

好的,谢谢sob老师
作者
Author:
xxj9618    时间: 2016-6-20 20:59
sobereva 发表于 2016-6-15 10:51
不控压,就NVT。之前先用NPT把盒子跑平衡。

title                = liquid-liquid
; Run parameters
integrator        = md                ; leap-frog integrator
nsteps                = 10000000        ; 2 * 10000000 = 20000 ps (20 ns)
dt                    = 0.002                ; 2 fs
; Output control
nstxout                = 0                ;
nstvout                = 0                ;
nstxtcout        = 1000                ; xtc compressed trajectory output every 2 ps
nstenergy        = 1000                ; save energies every 2 ps
nstlog                = 1000                ; update log file every 2 ps
; Bond parameters
continuation        = yes                    ; Restarting after NPT
constraint_algorithm = lincs        ; holonomic constraints
constraints        = all-bonds                ; all bonds (even heavy atom-H bonds) constrained
lincs_iter        = 1                            ; accuracy of LINCS
lincs_order        = 4                            ; also related to accuracy
; Neighborsearching
cutoff-scheme   = Verlet
ns_type                = grid                ; search neighboring grid cels
nstlist                = 10                    ; 10 fs
rlist                = 1.4                ; short-range neighborlist cutoff (in nm)
rcoulomb        = 1.4                ; short-range electrostatic cutoff (in nm)
rvdw                = 1.4                ; short-range van der Waals cutoff (in nm)
; Electrostatics
coulombtype        = PME                ; Particle Mesh Ewald for long-range electrostatics
pme_order        = 4                    ; cubic interpolation
fourierspacing        = 0.16                ; grid spacing for FFT
; Temperature coupling is on
tcoupl                = V-rescale                    ; More accurate thermostat
tc-grps                = dodecanol glycerol                ; three coupling groups - more accurate
tau_t                = 0.1        0.1                        ; time constant, in ps
ref_t                = 300         300                        ; reference temperature, one for each group, in K
; Pressure coupling is on
pcoupl                = Berendsen            ; Pressure coupling on in NPT
pcoupltype        = isotropic                      ; uniform scaling box vectors
tau_p                = 2.0                                ; time constant, in ps
ref_p                = 1.0                        ; reference pressure
compressibility = 4.5e-5                ; isothermal compressibility, bar^-1
; Periodic boundary conditions
pbc                    = xyz                ; 3-D PBC
; Dispersion correction
DispCorr        = EnerPres        ; account for cut-off vdW scheme
; Velocity generation
gen_vel                = no                ; Velocity generation is of

我尝试着改了一下之前跑的NPT的控压方法,但是结果没什么变化。sob老师,能帮我看看,有什么问题吗?或者把控压部分去掉,跑NVT算了?
作者
Author:
lewisbase    时间: 2016-12-9 20:45
sobereva 发表于 2016-6-14 20:02
NVT就可以

您好Sob老师,我想请教一下,这个公式只能在正则系综下使用吗?看到好多文献中都是在正则系综下计算的。但gmx手册上又说这个只适用于Berendsen压力耦合算法。不是很理解,还望指教,谢谢。
作者
Author:
sobereva    时间: 2016-12-9 20:50
lewisbase 发表于 2016-12-9 20:45
您好Sob老师,我想请教一下,这个公式只能在正则系综下使用吗?看到好多文献中都是在正则系综下计算的。 ...


放心,就用NVT,结合我前头给的式子

作者
Author:
lewisbase    时间: 2016-12-9 22:46
sobereva 发表于 2016-12-9 20:50
放心,就用NVT,结合我前头给的式子

好的,谢谢sob老师。我还想多嘴问一下,为什么不能在npt下计算呢?是因为npt下所得各个压力分量是通过外界调控所得而不是体系本身表现出来的吗?不知道自己的想法对不对。
作者
Author:
sobereva    时间: 2016-12-9 22:59
lewisbase 发表于 2016-12-9 22:46
好的,谢谢sob老师。我还想多嘴问一下,为什么不能在npt下计算呢?是因为npt下所得各个压力分量是通过外 ...

y
作者
Author:
lewisbase    时间: 2016-12-9 23:24
sobereva 发表于 2016-12-9 22:59
y

嗯,明白了,再次感谢。
作者
Author:
xiaoruoqiu    时间: 2017-8-30 14:16
本帖最后由 xiaoruoqiu 于 2017-8-30 14:21 编辑
sobereva 发表于 2016-6-14 20:02
NVT就可以

请问sob老师,双层磷脂膜使用nvt可以用γ=(1/n)*Lz*<P_zz-(P_xx+P_yy)/2>来计算膜表面张力吗?
作者
Author:
sobereva    时间: 2017-8-30 20:45
xiaoruoqiu 发表于 2017-8-30 14:16
请问sob老师,双层磷脂膜使用nvt可以用γ=(1/n)*Lz*来计算膜表面张力吗?

可以
作者
Author:
gaosimeng2001    时间: 2021-1-5 16:37
sobereva 发表于 2016-6-7 05:17
能。
不是用平均压力,而是把每一帧的压力分量代入式子,然后再对结果取平均
液体可压缩系数很小,压 ...

卢老师,刚看到您的这个回复说计算界面张力“不是用平均压力,而是把每一帧的压力分量代入式子,然后再对结果取平均” 。我之前是对产生相直接提取了各方向的压力带入公式计算界面张力了,这样做是不是错了,如果每个时间点的压力分量代入公式再取界面张力平均值,这样做是需要自己写脚本还是有现成的命令可以提取?

另外z方向的长度,初始设置的和最后跑完的实际长度是不是不一样啊,应该用产生相最后跑完的长度吗?
作者
Author:
sobereva    时间: 2021-1-7 00:17
gaosimeng2001 发表于 2021-1-5 16:37
卢老师,刚看到您的这个回复说计算界面张力“不是用平均压力,而是把每一帧的压力分量代入式子,然后再对 ...


gmx energy提取出相应数据,然后origin里对列运算一下就出来了

对于气液界面体系,一般都用NVT或者让z方向可压缩系数为0,所以不存在z方向长度的含糊性
作者
Author:
gaosimeng2001    时间: 2021-1-7 14:10
sobereva 发表于 2021-1-7 00:17

gmx energy提取出相应数据,然后origin里对列运算一下就出来了

卢老师,如果是模拟液-液界面,prod是做的npt,这时候是不是z轴就要变化了,用的是最后跑完的z方向长度吗?  
作者
Author:
sobereva    时间: 2021-1-7 23:47
gaosimeng2001 发表于 2021-1-7 14:10
卢老师,如果是模拟液-液界面,prod是做的npt,这时候是不是z轴就要变化了,用的是最后跑完的z方向长度吗 ...

最后那一刻的z方向长度没有任何特殊的意义和地位
要么取平均z轴长度,要么先NPT平衡后再改用NVT
作者
Author:
joke122    时间: 2022-9-1 15:56
本帖最后由 joke122 于 2022-11-11 21:46 编辑
sobereva 发表于 2016-6-3 01:29
靠两相体系XX、YY、ZZ压力分量就能计算
gmx手册里搜Surface-tension就能找到公式

谢谢,已解决
作者
Author:
mengxiangidea    时间: 2022-12-1 16:41
sobereva 发表于 2016-6-7 08:33
这是以前我的笔记:
计算表面张力的方法:体系界面需要垂直于Z方向。模拟一定时间,然后根据下式计算
...

老师我想问问,固-液表面张力、气-液表面张力如何使用这个公式进行计算
作者
Author:
sobereva    时间: 2022-12-2 02:41
mengxiangidea 发表于 2022-12-1 16:41
老师我想问问,固-液表面张力、气-液表面张力如何使用这个公式进行计算

一样

(, 下载次数 Times of downloads: 113)

作者
Author:
mengxiangidea    时间: 2022-12-2 14:33
sobereva 发表于 2022-12-2 02:41
一样

老师我还是没明白,我通过lammps计算可以得到xyz三个方向的压强,但是怎么就用这个公式计算γ_sl或者其他两个呢?γ_sl、γ_vl、γ_sv三个力是不一样的值吧?
作者
Author:
Jus    时间: 2023-4-13 07:36
sobereva 发表于 2016-6-7 08:33
这是以前我的笔记:
计算表面张力的方法:体系界面需要垂直于Z方向。模拟一定时间,然后根据下式计算
...

不好意思sob老师,我还想确认一下这个Lz是盒子Z方向的长度的解释,如果是气液体系,我在液相盒子Z轴方向加了相等长度的真空,那我这个Lz代液体盒子的长度;还是要算上真空,代整个盒子的Z轴方向的长度。我代加上真空盒子算的界面张力有点大,所以不太确定代哪个。感谢sob老师的解答。
作者
Author:
sobereva    时间: 2023-4-13 22:14
Jus 发表于 2023-4-13 07:36
不好意思sob老师,我还想确认一下这个Lz是盒子Z方向的长度的解释,如果是气液体系,我在液相盒子Z轴方向 ...

整个盒子Z方向尺寸
作者
Author:
Jus    时间: 2023-4-14 08:25
sobereva 发表于 2023-4-13 22:14
整个盒子Z方向尺寸

明白了,谢谢sob老师
作者
Author:
yee    时间: 2023-7-12 19:34
sobereva 发表于 2016-6-7 08:33
这是以前我的笔记:
计算表面张力的方法:体系界面需要垂直于Z方向。模拟一定时间,然后根据下式计算
...

请问一定要垂直于Z方向吗?
X方向拉长的盒子,以Lx和Pxx代替Z的参数可以吗
作者
Author:
sobereva    时间: 2023-7-13 05:57
yee 发表于 2023-7-12 19:34
请问一定要垂直于Z方向吗?
X方向拉长的盒子,以Lx和Pxx代替Z的参数可以吗

可以

不过如果没有特殊原因,建议还是让界面平行于XY,更符合习俗。而且一些分析程序/脚本做了这样的假定

作者
Author:
xishaofan    时间: 2024-9-20 21:10
本帖最后由 xishaofan 于 2024-9-20 22:08 编辑
sobereva 发表于 2016-6-14 20:02
NVT就可以

你好,请问sob老师,前面提到的算界面张力的公式,我的md-nvt过程也是可以用的吗


作者
Author:
Jus    时间: 2025-2-12 09:12
sobereva 发表于 2016-6-7 08:33
这是以前我的笔记:
计算表面张力的方法:体系界面需要垂直于Z方向。模拟一定时间,然后根据下式计算
...

sob老师好,我想请问下
对于有两种不同界面的体系,比如固体表面吸附了油相,油相上面又有水相,我想计算油水界面张力,这个公式是否就失效了
这样的体系能算其中一种界面的界面张力吗
作者
Author:
sobereva    时间: 2025-2-12 22:16
Jus 发表于 2025-2-12 09:12
sob老师好,我想请问下
对于有两种不同界面的体系,比如固体表面吸附了油相,油相上面又有水相,我想计 ...

用单独的油水界面体系来计算油-水表面张力
作者
Author:
Jus    时间: 2025-2-14 09:48
sobereva 发表于 2025-2-12 22:16
用单独的油水界面体系来计算油-水表面张力

好的,感谢老师的解答
作者
Author:
Jus    时间: 2025-6-17 10:30
sobereva 发表于 2016-6-7 08:33
这是以前我的笔记:
计算表面张力的方法:体系界面需要垂直于Z方向。模拟一定时间,然后根据下式计算
...

sob老师您好,如果是O/W或者W/O类似的体系,界面是球形而非某一平面,又该如何计算界面张力呢




欢迎光临 计算化学公社 (http://ccc.keinsci.com/) Powered by Discuz! X3.3