第三章 化学反应动力学的计算

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

分方程的解析解非常困难甚至不可能。例如,就无法求其解析解。
在化学反应中,某些稍稍复杂一点的反应,如甲基磺酸盐胆甾醇酯
在甲醇和三氯甲烷溶液中与硫脲反应,其解析解的求解非常困难。而在
原油裂解、催化成环等反应中可以考虑的动力学方程可达几十个,因此
求方程的解析解更是无法实现,这就不得不借助于电子计算机来求微分
时间 (分) 1
2
3
表3-6 R-K法计算结果与精确解的比较
R-K数值解
方程的精确解
差 值
A 9.93521×10-3 B 1.3676×10-5 C 5.11132×10-5
A 9.87084×10-3 B 1.46020×10-5 C 1.14538×10-4
A 9.80689×10-3 B 1.46035×10-5
方程的数值解。
2、 常微分方程的数值解(Rung-Kutta法)
1. 泰勒公式(泰勒Taylor中值定理)
在计算机的近似方法处理中经常遇到要使用泰勒公式,在此讨论一下
该公式。
任意一个函数f(x),如果在某区间内,一直到(n+1)阶导数都存在,
而且连续。设点是这区间的一个内点,则当取这区间的任何值时,可
x
达到平衡时,B的浓度为Xe,则可逆反应的速度积分式为:
级数: 1-1 1-2 二、常微分方程的解 化学反应动力学方程是用微分方程表示的,对于简单的反应,可直 接求得微分方程的解。 微分方程: 在区间a<x<b 的解,是指,这样一个函数,在所述区间内存在导
数。且对于区间a<x<b内的每一个x,等式(1)都成立。就叫微分方程的 解。
第三章 化学反应动力学的计算
化学反应的速度各不相同,有的反应速度极快,只要几个毫微秒
就达到平衡(接近扩散速度,如无机酸碱中和),有的反应速度极慢,几
ቤተ መጻሕፍቲ ባይዱ
乎看不到变化(如自然界的某些变化)。大部分有机化学反应可用常规方
法测量,对某些快速反应则可用停留法、驰豫法等测量。不论反应速度
的快慢,动力学方程都是类似的。
(3.12) 这是一种最常用的形式。 R-K方法的计算框图见图3-6。
框图中的初值为,的初值为,步长为以及需要计算的次数为。在化 学动力学的计算中,是截止时间。 除了四阶的R-K公式外,还有二阶、三阶的R-K公式。仍以为例,, 步长取0.1,计算处的值。
二阶R-K方法 (3.13) 二阶R-K方法计算结果:
1.44212×10-5 0
0
C 3.05354×10-4
3.05354×10-4 0
0
A 9.37067×10-3
10
B 1.39600×10-5
C 6.15365×10-4
9.37067×10-3 1.39600×10-5 6.15365×10-4
0.1×10-7 0 0.1×10-8
1×10-4 0 1.6×10-4
图3-5 Eular法图
常数h称为步长。 微分方程给定初值,代入到微分方程,就可求得该点的斜率。移动 h,在处求得,以点再代入微分方程,求得点。如此重复直到要求的点 为止。这种方法称为Eular方法或折线法。它简单易懂,有明确的几何 解释,但这一方法误差太大,故实用价值受到限制。 Eular法是用递推公式,从点出发求的过程。以为例进行说明。初 始条件,方程的准确解为。用Eular方法和准确解分别计算当时对应 的。选择步长h=0.1,用Eular公式计算。
0.6
0.1716
0.2221
0.7
0.2437
0.3138
0.8
0.3436
0.4255
0.9
0.4579
0.5596
1.0
0.5937
0.7183
从表3-4的计算结果来看,Eular法与准确解还有不小的误差,并 且随着计算次数的增加,积累误差增大。如果缩小步长h,取切线很小 的范围,就能逼近函数的真实解。但随着步长的缩小,计算次数将增
通解)。如果给定的初始条件(指定其一点)就是特解,比如给定初始条
件,则其解必定为 。
图3-3 画出微分方程的方向场 略图。在平面内若干点画出斜率等于的小 线段,它垂直于该点至原点的连线,所得方向场如图3-4,其解是以原 点为中心的圆族: (通解) 从几何观点来看,所谓微分方程的解,就是这样的曲线,即在曲线 上每一点的切线方向都是一致的,我们称这样的曲线为微分方程的积分 曲线。 实际问题中遇到的微分方程 ,其解析解往往不能求得。 但我们总可以画出它的方向场,从而 图3-4 对解的几何性态可以有所了解。微分方程的数值解是根据方向场概念而 建立的。 对于化学反应动力学的微分方程来说,只要体系是真实的,表达的 方程是准确的,那就一定存在数值解。 微分方程的右端函数,是在平面上的带形区域R0 内确定了一个方 向场求解初值的问题。
上列各式中是步长。计算过程中,把初值代入到(3.18)和(3.23)式,首
先求出,知道后再代入(3.19)、(3.24)求得,依次得到、、、后,由 (3.17)和(3.12)式计算得前进了一步,如此循环。 对于个联立方程的R-K公式可用向量表示为: R-K算法的精度还是比较满意的。我们以反应 为例,动力学方程为:
开式子: Eular法只取了前二项而忽略了高次项,所以产生了误差。
3. Runge-Kutta方法 .1 常微分方程的Runge-Kutta方法 Runge-Kutta方法是建立在泰勒公式基础上的一种方法。通常采用 的是四
阶R-K公式,即考虑了泰勒公式中四次项,而Eular公式只取了一次 项。故R-K公式比Eular公式有了很大的改进。R-K方法在求解范围大、 精度要求主的情况下是一种比较好的方法,并且计算工作量不算太大, 所以在化学化工中应用颇多。 四阶的R-K公式为:
A 8.78096×10-3
20
B 1.30815×10-5
C 1.20596×10-3
8.78096×10-3 1.30815×10-5 1.20597×10-3
0 0.43×10-8
相对误差%
1×10-4 2.549 0.698
0 0.307 3.843×10-2
0 2.94×10-2
C 1.78508×10-4
1.78508×10-4 0.8×10-8
4.48×10-3
A 9.68023×10-3
9.68023×10-3 0
0
5
B 1.44212×10-5
有已斜率的小线段,即可得方向场的略图(图3-2)
从方向场各点的略图可以推出微分方程的原函数图形。例如画出微
分方程的方向场略图,其解为:在平面上(除原点外)的若干个点,画
出斜率等于的小线段,于是得到的方向场略图 图3-2
(图3-3)。由图可见,的解是直线族(c是任意常数,这是微分方程的
(1) 对于一级反应, t1为0,初始浓度为A0,则上式为: (2) 对于一级可逆反应:
开始时只有[A0]。反应时若A的浓度为[A],则B的浓度为[A0][A],那么:
平衡时:k1[Ae]=k2[Be] 即

对于一阶线性微分方程,其通解可表示成:
所以,对于一阶线性微分方程可用(2)式求通解。但求一阶非线性微
9.93522×10-3 1.40291×10-5 5.07574×10-5
9.87084×10-3 1.46652×10-5 1.14494×10-4
9.80689×10-5 1.46078×10-5
0.1×10-7 0.333×10-6 0.356×10-6
0 0.47×10-7 0.44×10-7
其几何意义相当于确定一条通过初始点的曲线,使曲线上每一点的 切线方向与已给定的方向一致。 常微分方程数值解使用的是离散方法,即找出一个有效的数值方 法,计算自变量的离散点和对应的近似值。
微分方程从起点开始(初始条件), 沿着该点的方向线段移动一段距离到新点,然后改变方 向, 从点的方向移动距离到第二个新点,等等,如图3-5所示,就这样构成 了一个“折线”函数。 通常离散点取等距离,即令
加,又会引起舍入误差。 仍以为例计算的值,观察步长对结果的影响。 如果步长h=0.1 如果步长h=0.05
如果步长h=0.025
表3-5列出不同步长h时所计算的结果。 表3-5 不同步长h计算值
0.1
0.0
0.05
0.0025
0.025
0.00381
0.0125
0.00449
0.00625
1、 化学反应动力学方程
反应物浓度随时间的变化绝大部分不是线性关系,而是一条曲线,见图3-
1。
反应物 生成物
反应速度公式可用微分方程来表示。具有简单级数的化学反应的反
应速度公式可用积分式表示:
一级 如:㏑CA=㏑a –K1t
二级
A+A→产物 CA0=a
对于反应
这一可逆反应
初始条件 t=0 a
0
时间t时 t=t a-x
三阶R-K方法 (3.14)
三阶R-K方法计算结果:
四阶R-K方法计算结果:
准确解为0.00517090,显示四阶R-K方法计算的结果与准确解基本 符合。
从计算结果看来,四阶R-K优于三阶、二阶R-K公式,比泰勒展开式 只取一次项的Eular公式优越得多。
.2 常微分方程组的R-K方法 在化学化工动力学的实际问题中,经常遇到的是一阶微分方程组, 就如我 们在本章开始时所提到的几个例子。一阶微分方程组的一般形式为:
(3.15) 式中函数,是变元的函数。若函数族在区间上是确定且可微的,当时, 满足关系式:
则称是微分方程组(3.15)的解。 在真实的化学反应体系中,总能满足上述要求,因此一定存在数值 解,具体的解是用计算机寻找满足初始条件的数值解。 给定的初值 是已知常数。 为了书写方便,一阶微分方程组(3.15)式使用微向量表示,即 初值。 现以 (3.16) 为例说明微分方程组的R-K算法。初始条件: R-K公式为:
以依的方幂展开:
其中是余项。
令代入上式,则
二元函数的泰勒展开:一个二元函数,把在点附近展开成泰勒级数,只
取二阶导数项,忽略高次项:
令 则上式改写成:
2. Eular法
方向场
方程
(1)
是一个圆的方程,圆心在原点,半径为c。(1)式的微分方程为:
(2)
(1) 与(2)式之间的关系为:在圆周上的点作一短小切线,这样的
切线一定符合方程(2),而这些短小切线所构成的图形符合方
程(1),(1)和(2)式在几何上是有明确的意义的。
对一个微分方程,设函数在平面的定义域是G,在区域G内每一点画
出斜率等于的小线段,因而在G内每一点确定一个方向。我们说,这
个微分方程在区域G内定义一个方向场,经过G内若干个点,画出具
............................................. 表3-4 方程的Eular法和准确解的比较
(Eular)
(准确解)
0
0
0
0.1
0
0.0051709
0.2
0.01
0.02140
0.3
0.0310
0.0499
0.4
0.0641
0.0913
0.5
0.1105
0.1437
0.00483
0.003125
0.00500
0.0015625
0.00508
0.00078125
0.00513
0.000390625 0.0001953125
0.00515 0.00516
从表3-4查得的准确解值为0.005171。 通常选择步长的方法是先用作步长,算出处的近似值,再用作步长 计算处的近似值。如果两个值之间的绝对值不超过容许的误差范围: 则认为选择步长对是满足了所要求的精度内的解。 Eular方法产生误差的原因是由于函数为曲线。用泰勒公式在处展
(3.27) 利用一阶线性微分方程的通解(3.2)式求得方程(3.27)的精确解分别为: 给定初值,时,
分-1 分-1 分-1 表3-6是用R-K法与精确计算结果的比较,步长取0.5分。 由表可见,除第一点B的误差2.5%之外,其它的误差均很小,远远 小于动力学允许的实验误差,因此用R-K方法解一般化学动力学方程是 足够精确的了。
相关文档
最新文档