覃燕婷,韋積材,農(nóng)正東,黃英虎,李 偉
(百色學(xué)院化學(xué)與環(huán)境工程學(xué)院,廣西 百色 533000)
作為化工專業(yè)的必修基礎(chǔ)課程,化工熱力學(xué)對(duì)解決工程實(shí)際問題意義重大。然而本課程包含眾多乏味的概念與公式,尤其還涉及大量煩瑣的模型計(jì)算,學(xué)生在學(xué)習(xí)中望而生畏,這嚴(yán)重阻礙了化工專業(yè)人才的培養(yǎng)。而采用計(jì)算機(jī)輔助教學(xué)則可以激發(fā)學(xué)生學(xué)習(xí)的主動(dòng)性,提升課堂的教學(xué)效果[1]。
作為一種編程語(yǔ)言,Matlab語(yǔ)言易于學(xué)習(xí),編程效率高,內(nèi)置函數(shù)庫(kù)豐富,語(yǔ)法較為靈活,數(shù)據(jù)的可視化易于實(shí)現(xiàn),因此廣泛應(yīng)用于各種工程計(jì)算與工科教學(xué)中[2-4]。本文采用普遍化壓縮因子法,以計(jì)算純組分于一定溫度壓力下的壓縮因子、剩余焓和剩余熵為例,介紹Matlab在化工熱力學(xué)中的應(yīng)用。
計(jì)算示例:某工程設(shè)計(jì)中需要乙烷在 3446 kPa和93.3℃下的體積數(shù)據(jù)。試以三參數(shù)普遍化壓縮因子法進(jìn)行核算,已查到的文獻(xiàn)值為0.02527 m3/kg[5]。
計(jì)算公式:
式中
式中 Z0,Z1均為 pr、Tr的函數(shù),可由 pr、Tr查圖獲取,也可以查表獲取。本文采用查表法,數(shù)據(jù)來自附錄B-1[6]。在編程前需先建立一個(gè)名為“三參數(shù)對(duì)應(yīng)態(tài)壓縮因子表”的excel文件,其擴(kuò)展名為xlsx。其sheet1中儲(chǔ)存Z0與pr、Tr的關(guān)系數(shù)據(jù),sheet2中儲(chǔ)存Z1與pr、Tr的關(guān)系數(shù)據(jù)。
在Matlab中創(chuàng)建一個(gè)名為Uni_Z.m的函數(shù)文件,編輯代碼如下:
運(yùn)行該程序,命令提示窗口出現(xiàn)下述結(jié)果:
從運(yùn)行結(jié)果可以看出,采用本程序計(jì)算的結(jié)果與文獻(xiàn)值誤差小于0.5%,可以用于課程教學(xué)中。
本程序也可用于一種純物質(zhì)于多狀態(tài)下壓縮因子的計(jì)算。計(jì)算時(shí)只需在命令提示窗口中給出相應(yīng)的溫度和壓力向量即可,無(wú)需修改自定義的Uni_Z函數(shù)。當(dāng)用于多種純物質(zhì)多狀態(tài)的壓縮因子計(jì)算時(shí),只需在主程序中使用循環(huán)結(jié)構(gòu)調(diào)用Uni_Z函數(shù)即可。
計(jì)算示例:試計(jì)算丙烷于50℃、3MPa(State1)和100℃、6 MPa(State 2)下的剩余焓、剩余熵。
計(jì)算公式:
在Matlab中創(chuàng)建一個(gè)名為residue_UniZ.m的函數(shù)文件,編輯代碼如下:
執(zhí)行代碼后,命令提示窗口出現(xiàn)下述結(jié)果:
通過結(jié)果可以看出,本文所建立的residue_UniZ函數(shù)可以求解某種純組分于不同狀態(tài)下剩余焓與剩余熵。求解時(shí)需注意,溫度與壓力需為長(zhǎng)度一致的列向量,運(yùn)行程序所得到的剩余焓與剩余熵均是對(duì)應(yīng)條件下的列向量。與Uni_Z函數(shù)類似,當(dāng)將本函數(shù)用于多種純組分的剩余性質(zhì)計(jì)算時(shí),需要在主程序中循環(huán)調(diào)用residue_UniZ函數(shù)。
計(jì)算示例:分別采用普遍化逸度系數(shù)法和剩余性質(zhì)法計(jì)算乙烷于273 K、5.0 MPa下的逸度和逸度系數(shù)。
計(jì)算公式:
普遍化逸度系數(shù)法:
剩余性質(zhì)法:
式中HR、SR可以由2.1的式(4)和式(5)分別計(jì)算。
新建一個(gè)名為Uni_phi.m的函數(shù)文件,編輯代碼如下:
執(zhí)行代碼后,命令提示窗口出現(xiàn)下述結(jié)果:
通過計(jì)算結(jié)果可以看出,兩種方法計(jì)算所得的逸度和逸度系數(shù)相近,本節(jié)所編輯的函數(shù)與程序代碼可以用于課堂教學(xué)中。此外,本文所建立的兩個(gè)函數(shù)(Uni_phi和residue_UniZ)還可以用于計(jì)算單一組分于多狀態(tài)下的逸度和逸度系數(shù)。計(jì)算時(shí)只需在命令提示窗口中輸入溫度和壓力的列向量即可。
作為一門重要的應(yīng)用型課程,在化工熱力學(xué)的課堂教學(xué)中引入Matlab,不僅可以降低模型計(jì)算的難度,而且可以激發(fā)學(xué)生的學(xué)習(xí)興趣與熱情、培養(yǎng)學(xué)生工程計(jì)算能力。本文所編輯的函數(shù)可以被其他程序所調(diào)用以完成更加復(fù)雜的化工計(jì)算。