实验十七高分子链构象的计算机模拟 实验目的 对高分子链构象有直观、形象的了解 了解 Monte carlo方法的原理。 、实验原理 1.高分子的链构象 链构象就是分子链在空间中的形状和尺寸,高分子溶液和本体的许多性质,诸 如热力学、光学、电学、声学、流体动力学和力学等性质,都与链构象有关。而链 的柔性,使构象具有统计性。可以说,链构象理论是硏究高分子的基础,我们在《高 分子物理》课程中曾学到,高分子链构象可以分成两类,即理想链和真实链。 理想链即无干扰状态下的高分子链,它可以用无规行走来描述,故又称无规链 其均方末端距(h2)可以表示为 (h2)=NL2-----------(1) 式中N是链节数;L是链节长度。 又 M= MoN 式中M为高分子链的分子量:M为链节分子量。这样,由(1)、(2)两式,我们 就可以得到均方末端距同链分子量M的关系 真实链即有排除体积效应的高分子链。由于原子之间相互作用的存在。两个原 子不能在空间占据同一位置。换言之,在分子链中,组成链的原子相互被排除于同 体积。这种效应即称为排除体积效应。在链构象的统计理论和数学模拟中又称自 回避链。排除体积效应引起分子链扩张,即分子链有较大的均方末端距,表示为 (h2)=NvL2,w≈6/5 般来讲,高分子链是真实链,但高分子链若处于0状态(在θ温度、θ溶剂中) 则成为理想链。这时,从无规行走的角度来看,无规行走的迹线可以前后重叠。本 实验的主要目的就是直观地从计算机上“看到”这两种链、同时,通过观察高分子 的链构象,找出高分子线团尺寸与分子链节数的关系,亦即均方末端距与分子量的 关系。 2.链构象的模拟 从高分子链的二次结构上看。链分子是由链节依照一定的键角和旋转角,一个 个地连接而成的。一个具有N个链节数的高分子链,从计算机模拟的角度来看 相当于一步一步走N步而成的。不同的链构象是不同行走方式的必然结果。高分子 链在某一时刻为何种构象完全是随机的,这就要求行走方式的选择必须是随机的
实验十七 高分子链构象的计算机模拟 一、实验目的 1.对高分子链构象有直观、形象的了解。 2.了解 Monte Carlo 方法的原理。 二、实验原理 l.高分子的链构象 链构象就是分子链在空间中的形状和尺寸,高分子溶液和本体的许多性质,诸 如热力学、光学、电学、声学、流体动力学和力学等性质,都与链构象有关。而链 的柔性,使构象具有统计性。可以说,链构象理论是研究高分子的基础,我们在《高 分子物理》课程中曾学到,高分子链构象可以分成两类,即理想链和真实链。 理想链即无干扰状态下的高分子链,它可以用无规行走来描述,故又称无规链, 其均方末端距(h 2)可以表示为 (h 2)= NL2 –----------------------------------- (1) 式中 N 是链节数;L 是链节长度。 又 M = M0N -------------------------------------- (2) 式中 M 为高分子链的分子量;M0 为链节分子量。这样,由(1)、(2)两式,我们 就可以得到均方末端距同链分子量 M 的关系。 真实链即有排除体积效应的高分子链。由于原子之间相互作用的存在。两个原 子不能在空间占据同一位置。换言之,在分子链中,组成链的原子相互被排除于同 一体积。这种效应即称为排除体积效应。在链构象的统计理论和数学模拟中又称自 回避链。排除体积效应引起分子链扩张,即分子链有较大的均方末端距,表示为: (h 2)= NvL2 , v ≈6/5 一般来讲,高分子链是真实链,但高分子链若处于θ状态(在θ温度、θ溶剂中) 则成为理想链。这时,从无规行走的角度来看,无规行走的迹线可以前后重叠。本 实验的主要目的就是直观地从计算机上“看到”这两种链、同时,通过观察高分子 的链构象,找出高分子线团尺寸与分子链节数的关系,亦即均方末端距与分子量的 关系。 2.链构象的模拟 从高分子链的二次结构上看。链分子是由链节依照一定的键角和旋转角,一个 一个地连接而成的。一个具有 N 个链节数的高分子链,从计算机模拟的角度来看, 相当于一步一步走 N 步而成的。不同的链构象是不同行走方式的必然结果。高分子 链在某一时刻为何种构象完全是随机的,这就要求行走方式的选择必须是随机的
计算机对这种随机过程的描述,是采用 Monte Carlo方法。 Monte carlo方法又称计算机随机模拟方法,统计试验方法。简单地说,当我们 欲计算某物理量时,先建立某种合适的物理模型,然后大量地随机取样,(通过某 种随机过程获得样本,该样本同此物理量有直接关系,且可以得到此物理量的 数值结果)将这些样本的结果做统计平均。这个统计平均值就是我们欲求的物理量 当然,样本数越多,这个平均值越接近真实值。一般地,我们要选取成千上万个样, 才能获得较好的模拟结果。所以 Monte Carlo方法是离不开计算机的,其详细的原 理可见附录。 在本实验中,所模拟的对象是柔性高分子链。其构象可以用高分子线团来描述 我们利用无规飞行模型和晶格模型两种物理模型,来模拟理想链和自回避链的构 (1)无规飞行模型 为便于观察,我们选取二维平面的无规飞行模型。在这个模型中,高分子链可 以朝任何方向行走,飞行迹线可以重叠。形象地说,这种飞行迹线就是布朗粒子的 行走迹线。 模拟的基本思想是:在平面上任选一点 为原点,以1为步长,利用计算机的随机数, 随机取定第一步的行走方向。记录下这次飞 行迹线;再以第二点为起始点,利用随机数, 随机取定第二步的行走方向,记录下这次飞 行迹线,如此类推,我们就可以得到N步的 飞行迹线,这就相当于一条链节数为N的高 分子链的构象,记录下原点到最后一步的末 点的距离,即为这种构象的末端距。然后 我们再重复上述过程,就可以获得链节数N 图17-1无规飞行15步的链 的高分子链的另一种构象,其末端距也会不 同:如此类推,一般我们要重复成千上万次 这个过程,并将这成千上万个末端距相加,再除以重复过程数目,就得到链节数为 N的高分子链的均方末端距。显然,这种模拟的结果,相当于键角可取任意值的自 由连接链,图17-1是一条无规飞行链的分子链构象 (2)晶格模型 单链构象的 Monte Carlo模拟,常常是采用晶格模型。这里我们就简单介绍二 维平面方格模型上的无规链和自回避链的模拟 ①无规链的模拟 如图17-2所示的方格模型,其显示的为一次无规行走所产生的高分子链。为简 单计,该方格边长为1,行走迹线是沿正方形的边,每一步(即长度为1的边长) 代表一个链节,链节长度就为1,不同于无规飞行模型,方格上的每一步只有四种 方向可以选择,见图17-3。不同于无规飞行模型的模拟之处在于:行走方向只有4
计算机对这种随机过程的描述,是采用 Monte Carlo 方法。 Monte Carlo 方法又称计算机随机模拟方法,统计试验方法。简单地说,当我们 欲计算某物理量时,先建立某种合适的物理模型,然后大量地随机取样,(通过某 种随机过程获得样本,该样本同此物理量有直接关系,且可以得到此物理量的一个 数值结果)将这些样本的结果做统计平均。这个统计平均值就是我们欲求的物理量。 当然,样本数越多,这个平均值越接近真实值。一般地,我们要选取成千上万个样, 才能获得较好的模拟结果。所以 Monte Carlo 方法是离不开计算机的,其详细的原 理可见附录。 在本实验中,所模拟的对象是柔性高分子链。其构象可以用高分子线团来描述。 我们利用无规飞行模型和晶格模型两种物理模型,来模拟理想链和自回避链的构 象。 (1)无规飞行模型 为便于观察,我们选取二维平面的无规飞行模型。在这个模型中,高分子链可 以朝任何方向行走,飞行迹线可以重叠。形象地说,这种飞行迹线就是布朗粒子的 行走迹线。 模拟的基本思想是:在平面上任选一点 为原点,以 1 为步长,利用计算机的随机数, 随机取定第一步的行走方向。记录下这次飞 行迹线;再以第二点为起始点,利用随机数, 随机取定第二步的行走方向,记录下这次飞 行迹线,如此类推,我们就可以得到 N 步的 飞行迹线,这就相当于一条链节数为 N 的高 分子链的构象,记录下原点到最后一步的末 点的距离,即为这种构象的末端距。然后, 我们再重复上述过程,就可以获得链节数 N 的高分子链的另一种构象,其末端距也会不 同;如此类推,一般我们要重复成千上万次 这个过程,并将这成千上万个末端距相加,再除以重复过程数目,就得到链节数为 N 的高分子链的均方末端距。显然,这种模拟的结果,相当于键角可取任意值的自 由连接链,图 17-l 是一条无规飞行链的分子链构象。 (2)晶格模型 单链构象的 Monte Carlo 模拟,常常是采用晶格模型。这里我们就简单介绍二 维平面方格模型上的无规链和自回避链的模拟。 ①无规链的模拟 如图 17-2 所示的方格模型,其显示的为一次无规行走所产生的高分子链。为简 单计,该方格边长为 1,行走迹线是沿正方形的边,每一步(即长度为 1 的边长) 代表一个链节,链节长度就为 1,不同于无规飞行模型,方格上的每一步只有四种 方向可以选择,见图 17-3。不同于无规飞行模型的模拟之处在于:行走方向只有 4 图 17-1
种选择,至于每一步究竟取何种行走方向,仍由随机数随机取定,显然这相当于链 角受限的高分子链。 ②自回避链的模拟 任欣田 图172二维方格上的无规行走链(17步) 图17-3二维方格的矢量状态方向 自回避链同无规链相比,主要区别就在于模型中链是不能相互交叉重叠的,即 每一步的坐标不能有相同者。因此,在编程序时,只要排除那些坐标与原先走过的 坐标相同的选择走向。其余的模拟思想仍同前。图17-4是一次自回避行走的链构象 具体程序参见附录。 、实验步骤 熟悉计算机的使用 (1)打开电源: (2)在A驱动器中插入启动盘 (3)开启计算机开关(先开启屏幕开关) (4)计算机处于“A>”状态,输入程序名 “TEST”再按“ RETURN”键,即可开始实验。 (5)实验完毕后,先关电源,再关屏幕 图173二维方格上的自回避链(17步) 2.观察无规链和自回避链的行走 1)选择(1)是无规飞行链,步数自己设定,(但不要超过200步) (2)选择(2)是在平面方格上的无规行走链,步数自己设定(但不要超过200步) (3)选择(3)是在平面方格上的自回避链,步数自己设定(但不要超过100步) 以上每项内容,自己设定五个不同的步数N,而每种N值又要重复20次,并 记录每次的末端距h(N),数据记录、处理类似于下表: 2|34567891010∑ y 3.无规链的链末端距的计算
种选择,至于每一步究竟取何种行走方向,仍由随机数随机取定,显然这相当于链 角受限的高分子链。 ②自回避链的模拟 自回避链同无规链相比,主要区别就在于模型中链是不能相互交叉重叠的,即 每一步的坐标不能有相同者。因此,在编程序时,只要排除那些坐标与原先走过的 坐标相同的选择走向。其余的模拟思想仍同前。图 17-4 是一次自回避行走的链构象。 具体程序参见附录。 三、实验步骤 1.熟悉计算机的使用 (1)打开电源; (2)在 A 驱动器中插入启动盘; (3)开启计算机开关(先开启屏幕开关); (4)计算机处于“A>”状态,输入程序名 “TEST”再按“RETURN”键,即可开始实验。 (5)实验完毕后,先关电源,再关屏幕。 2.观察无规链和自回避链的行走 (1)选择(1)是无规飞行链,步数自己设定,(但不要超过 200 步)* (2)选择(2)是在平面方格上的无规行走链,步数自己设定(但不要超过 200 步) (3)选择(3)是在平面方格上的自回避链,步数自己设定(但不要超过 100 步) 以上每项内容,自己设定五个不同的步数 N,而每种 N 值又要重复 20 次,并 记录每次的末端距 h 2(N),数据记录、处理类似于下表: 3.无规链的链末端距的计算 图 17-2 图 17-3 图 17-3
1)选择(4)是在立方格子上的无规行走链,步数自己设定(但不要超过50步) (2)记录步数N与相应的链末端距(h2)、N (3)做In(h2)NlnN的双对数图,并用最小二乘法拟合求出斜率。 思考题 1.对最小二乘法拟合的结果作一讨论,实验误差的主要来源是什么? 2.你能举出一两个例子说明 Monte Carlo方法在高分子中的应用吗? 3.你能否编写一个在平面三角格子之上无规行走链的 BASIC程序吗? 参考文献 []吴大诚,高分子构象统计理论导引,成都,四川教育出版社,1985。 [2 B. Alder, S. Fembach, M. Rotenberg, Methods in Computational Physics, 1963 217~242 *两个原因:一是屏幕限制,步数太大,迹线会超出屏幕。二是时间限制,步数太 大,时间会较长。当然,我们也可通过缩小步长以使屏幕上显示出较多步数。 附录1 Monte carlo(蒙特卡罗)方法 Monte carlo是摩纳哥的一个城市,以赌博闻名于世,赌博是有随机性的。因此 在数学上就借此来代表一种用人工抽样试验来估计数值并求解未知量的计算方法; 即按照某一统计量在样本中的平均值求解所需的估计值,故也称统计试验方法,或 计算机随机模拟方法。这种方法可用来解决那些无法求分析解或数值解的复杂而困 难的问题。我们先通过下面的例子,来了解 Monte Carlo方法的基本精神 考虑一个射击运动员的射击成绩G,令X表示弹着点到靶心的距离,g(X) 表示得分,f(X)表示该运动员的弹着点分布的密度函数,则 G(X)=g(X)f(X)dX 另一方面,如果该运动员进行了实弹射击,弹着点依次为兄X,X2…Xn,则平 均得分为 ∑g(Xn) 很明显,G是G的一个近似估计, Monte carlo方法计算积分G,正是用Gx作为 G的近似估计 由此例可以看出, Monte carlo方法解题的一般过程是,首先构成一个概率空间 然后在该概率空间中确定一个依赖随机变量Ⅹ(可以为任意维)的统计量g(X)
(1)选择(4)是在立方格子上的无规行走链,步数自己设定(但不要超过 50 步) (2)记录步数 N 与相应的链末端距(h 2)、N (3)做 ln(h 2)N~lnN 的双对数图,并用最小二乘法拟合求出斜率。 思考题 1.对最小二乘法拟合的结果作一讨论,实验误差的主要来源是什么? 2.你能举出一两个例子说明 Monte Carlo 方法在高分子中的应用吗? 3.你能否编写一个在平面三角格子之上无规行走链的 BASIC 程序吗? 参考文献 [1] 吴大诚,高分子构象统计理论导引,成都,四川教育出版社,1985。 [2] B. Alder, S. Fembach, M. Rotenberg, Methods in Computational Physics, 1963, 217~242。 * 两个原因:一是屏幕限制,步数太大,迹线会超出屏幕。二是时间限制,步数太 大,时间会较长。当然,我们也可通过缩小步长以使屏幕上显示出较多步数。 附录 1 Monte Carlo(蒙特卡罗)方法 Monte carlo 是摩纳哥的一个城市,以赌博闻名于世,赌博是有随机性的。因此, 在数学上就借此来代表一种用人工抽样试验来估计数值并求解未知量的计算方法; 即按照某一统计量在样本中的平均值求解所需的估计值,故也称统计试验方法,或 计算机随机模拟方法。这种方法可用来解决那些无法求分析解或数值解的复杂而困 难的问题。我们先通过下面的例子,来了解 Monte Carlo 方法的基本精神。 考虑一个射击运动员的射击成绩 G,令 X 表示弹着点到靶心的距离,g(X) 表示得分,f(X)表示该运动员的弹着点分布的密度函数,则 G (X) = g (X) f (X) dX 另一方面,如果该运动员进行了实弹射击,弹着点依次为兄 X1, X2…Xn,则平 均得分为 1 1 ( ) N N n n G g X N = = 很明显, GN 是 G 的一个近似估计,Monte carlo 方法计算积分 G,正是用 GN 作为 G 的近似估计。 由此例可以看出,Monte carlo 方法解题的一般过程是,首先构成一个概率空间, 然后在该概率空间中确定一个依赖随机变量 X(可以为任意维)的统计量 g(X)
其数学期望 E(g)=g(rdF(r) 正好等于所要求的值G,其中F(X)是X的分布函数:最后,产生随机变量X的简 单子样X1,X2…Xn,用其相应的统计量g(X1),…g(Ⅺn)的算术平均值 G=∑g(X) 作为G的近似估计。 换句法说, Monte Carlo方法的最低要求是,能确定这样一个与计算步数N有 关的统计估计量Gx,当N→>∞时,G、依概率收敛于所要求的值G,亦即,对于 任意的>0,应有mP(G-Gk)=1 其中P(A)表示事件A的概率 用 Monte Carlo方法解决具体问题的一般程序是:先将此问题用适当的物理模 型描述,再选取适当的数学模型,然后通过大量地随机取样,求解此数学问题,从 而就解决了这一物理问题。这种方法的特征是采用人工随机取样试验,在取样中最 关键的是试验的随机性,所以此法的第一要求就是提供“高质量”的随机数。 由具有单位均匀分布的总体中所产生的简单子样称为随机数序列,其中的每 个体称为随机数。在计算机中一般是一种余数法来产生随机数,这种方法简述如下 令 R N0≤R<N 式中符号mod意思是用(AR-1+C)除以N,然后只取余数,按上式此余数即为N 于是,由某一随机数R:一1就可产生下一个随机数R,这就是递推公式的涵义。 令N=8,k=5,C=3及R0=4则得到一个随机数序列为 4,7,6,1,0,3,2,5,4,7 继续算下去,我们会看到这个随机序到实际上是4,7,6,1,0,3,2,5这8个 数为周期的无限循环。随机数,顾名思义是要求要有相互独立性和均匀分布性的。 显然,这个随机数序列的质量不高。在实际应用中N参数是很大的数,以保证产生 的随机数序列在所有随机取样的样本中,能较好地满足相互独立性和均匀分布性 般计算机中的随机数(函数名为RND)能适合我们一般计算的要求,它给出的是 个[,1区间均匀分布的随机序列。(只要将R:除以N,即可由随机数R成为,n 区间的随机数 Monte carlo方法已经在自然科学的许多领域得到了广泛的应用,在高分子化学 和物理上,也取得了许多成果
其数学期望 E g g X dF X ( ) = ( ) ( ) 正好等于所要求的值 G,其中 F(X)是 X 的分布函数;最后,产生随机变量 X 的简 单子样 X1, X2…Xn,用其相应的统计量 g(X1), …g(Xn)的算术平均值 ( ) 1 1 N N n n G g X N = = 作为 G 的近似估计。 换句法说,Monte Carlo 方法的最低要求是,能确定这样一个与计算步数 N 有 关的统计估计量 GN ,当 N → 时, GN 依概率收敛于所要求的值 G,亦即,对于 任意的ε>0,应有 lim | | 1 ( N ) N P G G → − = 其中 P(A)表示事件 A 的概率。 用 Monte Carlo 方法解决具体问题的一般程序是:先将此问题用适当的物理模 型描述,再选取适当的数学模型,然后通过大量地随机取样,求解此数学问题,从 而就解决了这一物理问题。这种方法的特征是采用人工随机取样试验,在取样中最 关键的是试验的随机性,所以此法的第一要求就是提供“高质量”的随机数。 由具有单位均匀分布的总体中所产生的简单子样称为随机数序列,其中的每一 个体称为随机数。在计算机中一般是一种余数法来产生随机数,这种方法简述如下: 令: ( )mod 1 R kR C N i i = − + 0 R N i 式中符号 mod 意思是用 (kR C i − +1 ) 除以 N,然后只取余数,按上式此余数即为 Ni; 于是,由某一随机数 Ri 一 1 就可产生下一个随机数 Ri,这就是递推公式的涵义。 例: 令 N=8,k=5,C=3 及 R0=4 则得到一个随机数序列为 4,7,6,l,0,3,2,5,4,7… 继续算下去,我们会看到这个随机序到实际上是 4,7,6,1,0,3,2,5 这 8 个 数为周期的无限循环。随机数,顾名思义是要求要有相互独立性和均匀分布性的。 显然,这个随机数序列的质量不高。在实际应用中 N 参数是很大的数,以保证产生 的随机数序列在所有随机取样的样本中,能较好地满足相互独立性和均匀分布性。 一般计算机中的随机数(函数名为 RND)能适合我们一般计算的要求,它给出的是 一个[0, 1]区间均匀分布的随机序列。(只要将 Ri 除以 N,即可由随机数 Ri 成为[0, l] 区间的随机数) Monte Carlo 方法已经在自然科学的许多领域得到了广泛的应用,在高分子化学 和物理上,也取得了许多成果