Langevin thermostat的使用是因为研究体系的研究对象的时间尺度远长远溶液分子运动的时间尺度,
这时候溶液分子对研究对象的影响可以认为是随机碰撞,从而研究对象认为是在做布朗运动
在Langevin thermostat中,体系粒子会受到随机力和粘滞力的作用,随机力和粘滞力之间通过涨落耗散定理进行约束,
从而保证模拟体系是NVT统计系综
热浴的运动方程就是Langevin equation
mass*(d^2)r/dt^2 = F_c - mass *(friction coefficient)*dr/dt +F_r
fluctuation dissipation theorem:
<Fi(t)*Fj(t')>=6*delt_ij*delt(t-t')*K_b*T*mass *(friction coefficient)
Langevin thermostat的优点是时间步长比较长【步长可取0.01个时间单位】,研究长链的bead spring模型的问题是首先选
择
但是此热浴破坏momentum transfer,所以不能用来考察diffusion coefficients,虽然文献上也有用此热浴计算
的。
在我们粗粒化模拟中,我们通常选择mass,LJ势的epsion sigma为质量,能量,长度单位,
所以时间单位【也就是下文中的damp因子】可以用公式sqrt(mass*sigma^2/epsion)计算。friction
coefficient一般选择为时间单位的倒数
下面谈谈fix langevin command命令
Syntax:
fix ID group-ID langevin Tstart Tstop damp seed keyword values ...
ID, group-ID are documented in fix command
langevin = style name of this fix command
Tstart,Tstop = desired temperature at start/end of run (temperature
units)【也就是所谓的模拟退火方法】
damp = damping parameter (time units) 【用于设置摩擦系数friction coefficient】
seed = random 【随机数种子,必须是正整数】
zero or more keyword/value pairs may be appended
keyword = scale
scale values = type ratio【对于体系有不同质量或大小的原子,要分别设置才符合物理要求】
type = atom type (1-N)
ratio = factor by which to scale the damping coefficient
-----------------------------------------------------------------------------
【此区域是07.10版的与上不同的地方,建议把此版的fix命令放在userstyle中继续使用】
keyword = axes or scale or region
axes values = xflag yflag zflag 【可以在某一个方向上加热浴,对于1,2维模拟可以节省时间】
xflag,yflag,zflag = 0/1 to exclude/include a dimension in the
thermostat
region values = region-ID
region-ID = ID of region to apply thermostat to 【特定的区部原子加热浴】
---------------------------------------------------------------------------
记住,fix langevin command必须和fix nve结合使用,而不能于其他的控温命令比如fix nvt,fix temp/
rescale 结合,切忌。
[ 本帖最后由 redream 于 2008-7-12 21:13 编辑 ]