《计算机在化学化工中的应用报告》由会员分享,可在线阅读,更多相关《计算机在化学化工中的应用报告(2页珍藏版)》请在金锄头文库上搜索。
1、直接迭代法计算气体体积直接迭代法计算气体体积问题提出及解决办法:在化工热力学中我们经常会碰到求解在一定温度和压力 下的某种气体的摩尔体积的问题,采用范德华方程有:(1)5 . 0)(TbVVa bVRTP其中 P 为压力,T 为温度均为已知条件,a,b 对应物质特有常数,只要查相应临 界参数 Tc、Pc,然后根据:a=0.42748cc PTR5 . 22b=0.08664cc PRT就可求出。范德华方程是一个非线性方程,用一般方法5 . 0)(TbVVa bVRTP难以求解,必须采用迭代法,将其转换成迭代形式:(2)b PbVVTaRTVkkk )()()(5 . 0)1(对于气体,化工中常
2、常将理想状态作为初值,即为初值带入(2)进PRTV)0(行迭代计算。 列如:试计算水蒸气在 10.3MPa 和 643K 下的摩尔体积。已知水的临界常数与偏心因子分别为=647.3K,=22.05MPa cTcP将其编程成 VB 程序,在窗口界面中输入题中所给数据就能快速求解出水蒸气 的体积。 VB 程序代码如下: Dim x0, x1, eer, er, k, Tc, Pc, P, T R = 8.314 P = Val(Text1.Text) T = Val(Text2.Text) Pc = Val(Text3.Text) Tc = Val(Text4.Text) er = Val(Tex
3、t5.Text) a = 0.042748 * R 2 * Tc 2.5 / Pc b = 0.08664 * R * Tc / Pc x0 = R * T / Pk = 0 100 x1 = (R * T / (a / (T 0.5 * (x0 2 + b * x0) + P) + b k = k + 1 eer = x1 - x0 If Abs(eer) er Then x1 = Int(x1 * 10000 + 0.5) / 10000 Text7.Text = Str(x1) Text6.Text = Str(k) Else x0 = x1 GoTo 100 End IfEnd Sub
4、 Private Sub Command2_Click() Text1.Text = “: Text2.Text = “: Text3.Text = “: Text4.Text = “: Text5.Text = “: Text6.Text = “: Text7.Text = “: End Sub 运行结果如下:总结:对于简单的问题,所需迭代次数较少,我们可以进行手动计算,但是对 于化工实际生产中常常是非常复杂的问题,需要的迭代次数较多,计算量十分 大。对于这样一类问题,我们可以利用计算机语言将其编成程序,只需要输入 相应数据就能快速精确解决。编程过程中会遇到很多问题,在遇到错误时只要 耐心调试,不断改进最终就能顺利运行程序!