覃燕婷,韋積材,農(nóng)正東,黃英虎,李 偉
(百色學(xué)院化學(xué)與環(huán)境工程學(xué)院,廣西 百色 533000)
作為化工專業(yè)的必修基礎(chǔ)課程,化工熱力學(xué)對解決工程實際問題意義重大。然而本課程包含眾多乏味的概念與公式,尤其還涉及大量煩瑣的模型計算,學(xué)生在學(xué)習(xí)中望而生畏,這嚴重阻礙了化工專業(yè)人才的培養(yǎng)。而采用計算機輔助教學(xué)則可以激發(fā)學(xué)生學(xué)習(xí)的主動性,提升課堂的教學(xué)效果[1]。
作為一種編程語言,Matlab語言易于學(xué)習(xí),編程效率高,內(nèi)置函數(shù)庫豐富,語法較為靈活,數(shù)據(jù)的可視化易于實現(xiàn),因此廣泛應(yīng)用于各種工程計算與工科教學(xué)中[2-4]。本文采用普遍化壓縮因子法,以計算純組分于一定溫度壓力下的壓縮因子、剩余焓和剩余熵為例,介紹Matlab在化工熱力學(xué)中的應(yīng)用。
計算示例:某工程設(shè)計中需要乙烷在 3446 kPa和93.3℃下的體積數(shù)據(jù)。試以三參數(shù)普遍化壓縮因子法進行核算,已查到的文獻值為0.02527 m3/kg[5]。
計算公式:

式中

式中 Z0,Z1均為 pr、Tr的函數(shù),可由 pr、Tr查圖獲取,也可以查表獲取。本文采用查表法,數(shù)據(jù)來自附錄B-1[6]。在編程前需先建立一個名為“三參數(shù)對應(yīng)態(tài)壓縮因子表”的excel文件,其擴展名為xlsx。其sheet1中儲存Z0與pr、Tr的關(guān)系數(shù)據(jù),sheet2中儲存Z1與pr、Tr的關(guān)系數(shù)據(jù)。
在Matlab中創(chuàng)建一個名為Uni_Z.m的函數(shù)文件,編輯代碼如下:


運行該程序,命令提示窗口出現(xiàn)下述結(jié)果:

從運行結(jié)果可以看出,采用本程序計算的結(jié)果與文獻值誤差小于0.5%,可以用于課程教學(xué)中。
本程序也可用于一種純物質(zhì)于多狀態(tài)下壓縮因子的計算。計算時只需在命令提示窗口中給出相應(yīng)的溫度和壓力向量即可,無需修改自定義的Uni_Z函數(shù)。當用于多種純物質(zhì)多狀態(tài)的壓縮因子計算時,只需在主程序中使用循環(huán)結(jié)構(gòu)調(diào)用Uni_Z函數(shù)即可。
計算示例:試計算丙烷于50℃、3MPa(State1)和100℃、6 MPa(State 2)下的剩余焓、剩余熵。
計算公式:


在Matlab中創(chuàng)建一個名為residue_UniZ.m的函數(shù)文件,編輯代碼如下:


執(zhí)行代碼后,命令提示窗口出現(xiàn)下述結(jié)果:

通過結(jié)果可以看出,本文所建立的residue_UniZ函數(shù)可以求解某種純組分于不同狀態(tài)下剩余焓與剩余熵。求解時需注意,溫度與壓力需為長度一致的列向量,運行程序所得到的剩余焓與剩余熵均是對應(yīng)條件下的列向量。與Uni_Z函數(shù)類似,當將本函數(shù)用于多種純組分的剩余性質(zhì)計算時,需要在主程序中循環(huán)調(diào)用residue_UniZ函數(shù)。
計算示例:分別采用普遍化逸度系數(shù)法和剩余性質(zhì)法計算乙烷于273 K、5.0 MPa下的逸度和逸度系數(shù)。
計算公式:
普遍化逸度系數(shù)法:

剩余性質(zhì)法:

式中HR、SR可以由2.1的式(4)和式(5)分別計算。
新建一個名為Uni_phi.m的函數(shù)文件,編輯代碼如下:


執(zhí)行代碼后,命令提示窗口出現(xiàn)下述結(jié)果:

通過計算結(jié)果可以看出,兩種方法計算所得的逸度和逸度系數(shù)相近,本節(jié)所編輯的函數(shù)與程序代碼可以用于課堂教學(xué)中。此外,本文所建立的兩個函數(shù)(Uni_phi和residue_UniZ)還可以用于計算單一組分于多狀態(tài)下的逸度和逸度系數(shù)。計算時只需在命令提示窗口中輸入溫度和壓力的列向量即可。
作為一門重要的應(yīng)用型課程,在化工熱力學(xué)的課堂教學(xué)中引入Matlab,不僅可以降低模型計算的難度,而且可以激發(fā)學(xué)生的學(xué)習(xí)興趣與熱情、培養(yǎng)學(xué)生工程計算能力。本文所編輯的函數(shù)可以被其他程序所調(diào)用以完成更加復(fù)雜的化工計算。