張恒
武漢大學化學與分子科學學院,武漢 430072
動力學數據的處理是化學動力學學習中不可或缺的一個部分。一般來說通過反應動力學數據的處理可以獲得反應的速率方程,無論對于機理研究還是工業(yè)生產都十分重要。物理化學教材一般都會介紹通過積分法、微分法、半衰期法等方法確定反應級數,進而確定速率方程[1]。這些方法簡單易行,也得到了大量的應用。這些數據處理方法源于動力學發(fā)展的早期,這也與當時一般只能通過取樣分析獲得較少實驗數據的客觀條件有關?,F在隨著測試技術的發(fā)展,多種儀器分析方法在監(jiān)測反應過程的同時可以準確地獲得大量的實驗數據,如何有效的利用這些數據,是我們現在需要面對的問題。就目前動力學數據的處理過程來說,經典的積分法、微分法等方法仍然被廣泛使用,很多時候造成了需要多次實驗,實驗條件偏離真實反應條件并且大量實驗數據被浪費的情況。顯然結合現在易于通過儀器分析方法獲取大量動力學數據的特點,提出更為有效的動力學數據處理方法是我們需要解決的問題。
最近,英國曼徹斯特大學的Jordi Burés提出了一種新的圖形化動力學數據處理方法:時間變量歸一化分析(Variable Time Normalization Analysis, VTNA)[2–5]。這一方法只需少量的實驗即可得到反應級數和速率常數,并且數據處理過程簡單易行。我們以式(1)所示的反應物A和B在催化劑C作用下反應生成產物P這一反應為例,表1所示最少只需4個實驗即可得到反應物A、B和催化劑C的級數以及反應的速率常數。為便于說明數據處理過程,我們求出式(1)對應的積分速率方程,結合表1中的初始條件生成了未加入實驗誤差的模擬實驗數據,實驗1–4的反應物和產物的濃度-時間數據列于表2。
表1 實驗設計
表2 實驗1–4中反應物和產物的濃度-時間數據
反應(1)的微分速率方程可用式(2)表示。以反應物A為例,為確定A的級數,可用式(3)定義函數f(t),此時反應的微分速率方程可用式(4)表示。對于函數f(t),盡管其解析解不便求出,但可以方便的根據實驗測定的 A的濃度與時間的關系,通過梯形積分得到式(5)的數值解。不像通常的以[P]對t作圖,此方法將時間變量t歸一化為新函數f(t),[P]轉化為f(t)的函數,以[P]對f(t)作圖。在實驗設計上,若保持實驗中B和C的初始濃度不變,僅A的初始濃度不同,則式(4)所表示的[P]與f(t)的函數關系當A的級數α取正確值時與A的初始濃度無關,表現在圖像上就是對不同A的初始濃度的實驗,[P]對f(t)的曲線會重合。從以上分析可以看出,VTNA法在構造時間變量歸一化時,需要結合實驗設計,也就是求某個物種的級數時,只有此物種的初始濃度不同而其他所有物種的初始濃度保持不變,這一點在實驗安排上顯然是容易實現的。就具體操作而言,設計如表1中的實驗1和2,通過改變α的數值,目視觀察α取何值時兩條曲線完全重合,此時的α即為反應物A的級數。由圖1,以[P]分別對 Σ[A]0.5Δt、Σ[A]1Δt、Σ[A]2Δt作圖,可以明顯看出只有[P]對 Σ[A]1Δt作圖時,兩條曲線才完全重合,這也說明反應物A的級數是1。
圖1 求反應物A的級數
為確定反應物B的級數,可以采用和A相似的辦法。保持A和C的初始濃度不變,僅B的初始濃度不同,結合表 1中實驗 1和 3,如圖 2,以[P]分別對 Σ[B]0.5Δt、Σ[B]1Δt、Σ[B]2Δt作圖,只有[P]對Σ[B]1Δt作圖時,兩條曲線才完全重合,說明反應物B的級數也是1。
圖2 求反應物B的級數
為確定催化劑C的級數,我們僅考慮催化劑保持穩(wěn)定,無失活和激活的情況。保持A和B的初始濃度不變,僅C的初始濃度不同,結合表1中實驗1和4,如圖3以[P]分別對t[C]0、t[C]0.5、t[C]1作圖,只有[P]對t[C]0.5作圖時兩條曲線才完全重合,說明催化劑C的級數是0.5。
圖3 求催化劑C的級數
在求出反應物A和B以及催化劑C的級數后,為求出反應的速率常數,定義如式(6)所示函數g(t),如式(7)所示g(t)也可通過數值積分求出。將式(6)代入式(2)得到式(8),可看出以[P]對g(t)作圖會得到線性關系,其斜率即為反應的速率常數k。如圖4,以[P]對Σ[A]1[B]1[C]0.5Δt作圖,可得到一條通過原點的直線,從斜率可求出反應的速率常數為0.59 mol?1.5·L1.5·min?1,可以看出根據模擬實驗數據計算出的速率常數與表1中反應條件給定的速率常數(0.60 mol?1.5·L1.5·min?1)很接近。
圖4 求反應的速率常數
一種動力學數據處理方法需要滿足如下條件:(1) 能可靠得到所需結果;(2) 只用做盡量少的實驗;(3) 實驗設計盡量接近真實反應條件(如無需大大過量實驗等);(4) 數據處理過程簡單,方便使用;(5) 可適用于各種類型的反應(如有多個反應物等);(6) 對實驗數據誤差的兼容性好。結合以上的例子可看出,VTNA法較好地滿足以上條件。
我們以前介紹過反應進程動力學分析法(Reaction Progress Kinetic Analysis, RPKA)[6],這種方法的關鍵是需要得到反應速率,而現有的各種儀器方法一般測量的都是濃度信息,僅有反應量熱法等較少方法可直接提供反應速率信息,因此需要將濃度與時間的關系通過數學處理轉化得到反應速率信息,由于實驗數據的離散性以及實驗數據的誤差,在這個轉化過程中往往會引入較大誤差,這也可以說是RPKA法的軟肋,而VTNA法直接使用濃度信息,用更準確的數值積分代替數值微分,顯然就避免了由于數據預處理帶來的誤差。這里我們也可以看出,從本質上來說RPKA法是傳統(tǒng)微分法的發(fā)展,而VTNA法是傳統(tǒng)積分法的發(fā)展。傳統(tǒng)的積分法一般需要求出反應速率方程的解析解,進而通過作圖或計算進行比較,而對于較為復雜的反應,較難得到反應積分速率方程的解析解,這也限制了傳統(tǒng)積分法的使用范圍,VTNA法由于使用數值積分,可以規(guī)避傳統(tǒng)積分法的這一局限。從形式上看,VTNA法與孤立法也有些相似,通過保持其他反應物的初始濃度不變,逐一確定初始濃度不同的反應物的級數,但是VTNA法使用整個范圍的實驗數據而不像孤立法只用初始速率。而且由于使用了實驗中更大范圍的實驗數據,使得VTNA法對于實驗數據存在較大誤差的情況有較好的兼容性。盡管VTNA法針對的是處理采用現代儀器技術獲取的大量實驗數據,但是同樣也適用于通過傳統(tǒng)取樣獲得較少實驗數據的情況。VTNA法的優(yōu)點還在于充分利用人眼的觀察識別能力,所見即所得。此外,對于催化劑有失活等更加復雜的情況,VTNA法也可處理,具體可參考原文[4]。當然這一方法也有其不足之處,如果實驗數據的誤差較大,會影響求出的速率常數的精確度。此外由于VTNA法源于積分法,特別是對于級數不為整數的情況,可能需要進行多次嘗試才能確定反應級數。由于VTNA法的這些特點,其數據處理只需通用的電子表格軟件即可完成,因此將其在課堂教學中在經典動力學數據處理方法的基礎上講授給學生是有意義的。