表面张力是液体界面的核心热力学性质,在分子动力学模拟中可通过多种路径获得。LAMMPS提供了从压力张量分析到界面构型拟合等不同层次的方法,每种方法的适用场景和精度边界各不相同。

在分子模拟中,表面张力γ的定义来自Kirkwood-Buff公式:
γ = (1/2A) * ⟨Σ_ij (r_ij – 3*r_ij,z²/r_ij) * φ'(r_ij)⟩
其中A是界面面积,求和遍及所有分子对,r_ij,z是分子间距离的z分量,φ'(r_ij)是势能导数。这个定义的本质是:表面张力等于界面区域法向压力与切向压力之差的时间平均。
LAMMPS中实际计算的是机械压力张量,表面张力通过各向异性压力分量获得:
γ = L_z * (P_zz – (P_xx + P_yy)/2)
L_z是模拟盒子z方向长度,P_xx、P_yy是切向压力(平行于界面),P_zz是法向压力(垂直于界面)。对于平板型液-气界面模型,P_zz接近零(平衡时法向压力≈0),因此γ ≈ -L_z * (P_xx + P_yy)/2。
这是最经典也最常用的方法。构建一个沿z方向延伸的液-气界面平板模型,LAMMPS自动计算压力张量的三个对角分量。
以水分子(SPC/E力场)为例:
# 力场设置
pair_style lj/cut/coul/long 10.0 10.0
pair_coeff 1 1 0.1553 3.166 10.0
bond_style harmonic
angle_style harmonic
kspace_style pppm 1.0e-4
# 界面建立后平衡
fix 1 all nvt temp 298.0 298.0 100.0
run 200000 # 1ns平衡
# 切换到NVE+恒温器(NVT会干扰压力张量统计)
unfix 1
fix 1 all nve
fix 2 all langevin 298.0 298.0 100.0 12345
run 1000000 # 5ns生产
LAMMPS运行中输出压力分量:
thermo_style custom step temp press pxx pyy pzz
thermo 1000
表面张力的后处理公式:
γ = (L_z/2) * <(P_xx + P_yy)/2 – P_zz>
除以2是因为有两个界面(上下各一个)。注意L_z是平衡后的实际盒子长度。
用上述方法,SPC/E水在298K下的表面张力典型值为:
当压力张量法的统计噪声太大(如界面面积小或密度低)时,测试面积法提供更稳定的替代方案。
原理是对平衡后的构型做各向同性面积缩放(保持分子数和体积不变),计算缩放前后的能量差:
γ = (1/2) * (dE/dA) * A
LAMMPS实现:
# 用fix deform做面积扫描
variable s equal 0.98
fix stretch all deform 1 x scale ${s} y scale ${s} remap x
run 0 # 不做动力学,只算能量
对一系列缩放因子(0.95-1.05)重复计算,拟合E vs A曲线的斜率即为表面张力。这种方法的优势是对力场中长程校正更敏感,劣势是需要在多个面积点重复计算。
对于球形液滴模型,可以用Young-Laplace方程反推表面张力:
ΔP = 2γ/R
在LAMMPS中构建球形液滴,统计液滴内部和外部的压力差ΔP,以及液滴半径R,即可计算γ。
# 构建球形液滴
region drop sphere 0 0 0 25
create_atoms 1 region drop
# 平衡后统计径向压力分布
compute rdf all rdf 100
fix out all ave/time 100 1 100 c_rdf[*] file pressure_profile.txt mode vector
这种方法的适用场景是纳米尺度液滴(R<10nm),此时曲率效应显著,平板模型不再适用。但需要注意Gibbs-Tolman修正:纳米液滴的表面张力比平面界面偏低约10-20%。
不同力场对水的表面张力计算结果差异显著:
| 力场 | γ(mN/m) | 偏差 | 备注 |
|---|---|---|---|
| SPC/E | 62-64 | -13% | 体相优化,界面偏低 |
| TIP4P/2005 | 68-69 | -4% | 界面性质最优力场之一 |
| TIP4P-Ew | 63-65 | -10% | Ewald优化版 |
| TIP3P | 52-54 | -27% | 明显低估 |
| AMOEBA | 70-72 | -1% | 极化力场精度最高 |
TIP4P/2005是目前纯水界面模拟的首选力场,精度和计算效率平衡最佳。如果体系涉及离子或有机分子,需要验证该力场在混合体系下的表现。
表面张力是涨落量,统计误差与模拟时间的关系为σ ~ 1/√(t)。实际经验:
一个常见错误是平衡时间不够——液相密度未收敛到平衡值时就开始生产统计,会导致表面张力偏移5-10 mN/m。判断平衡是否充分的标志是液相体密度在100ps以上保持稳定波动。
Gromacs模拟计算:从建模到自由能的完整经验指南
GROMACS分子动力学模拟:生物分子实战经验全分享
材料拉伸计算:有限元方法与力学性能分析
GROMACS分子动力学模拟:从力场选择到自由能计算的完整工作流
GROMACS计算自由能:FEP全流程参数优化与膜蛋白体系的特殊处理
分子动力学模拟GROMACS完整流程:力场选择、平衡与轨迹分析方法
GROMACS计算自由能:膜蛋白-配体FEP结合能中电荷-范德华解耦与BAR收敛
分子动力学模拟计算:GROMACS蛋白质-配体复合物稳定性验证全流程
LAMMPS计算密度:从均匀体相到界面密度分布
LAMMPS计算原子应力:从Virial公式到应力分布可视化
LAMMPS计算表面张力:从力学定义到多方法对比
LAMMPS模拟计算:从输入文件到结果分析的全流程经验
LAMMPS计算势函数:力场选择与参数标定实战经验
LAMMPS计算自由能:自由能微扰与积分方法
径向分布函数理论计算:RDF的计算方法与应用
LAMMPS粗粒化建模:粗粒化分子动力学方法
模拟计算分子动力学:从入门到精通的实战经验
MS分子动力学模拟:Forcite模块实战经验指南
VASP计算分子动力学模拟:AIMD实战经验全分享
均方根偏差计算:RMSD在分子模拟中的应用
VASP怎么计算:从输入文件到结果分析的完整入门指南
分子动力学计算模拟:力场选取、系综控制与结果验证的实践指南
VASP计算结合能:从参数设置到结果验证的完整流程
vasp计算自由能:振动熵贡献与准谐近似的精度路径