朱 煒,鄭長(zhǎng)征,李 慶,劉 斌,劉永紅
(西安工程大學(xué) 環(huán)境與化學(xué)工程學(xué)院,陜西 西安 710048)
化學(xué)工程與工藝專(zhuān)業(yè)在本科生能力培養(yǎng)方面包含兩個(gè)與"計(jì)算"相關(guān)的能力:
(1)掌握化工裝置工藝與設(shè)備設(shè)計(jì)方法,掌握化工過(guò)程模擬優(yōu)化方法;(2)具有對(duì)新產(chǎn)品、新工藝、新技術(shù)和新設(shè)備進(jìn)行研究、開(kāi)發(fā)和設(shè)計(jì)的初步能力。同時(shí)我校又是"卓越工程師"培養(yǎng)高校,其旨在培養(yǎng)造就創(chuàng)新能力強(qiáng)、適應(yīng)經(jīng)濟(jì)社會(huì)發(fā)展需要的高質(zhì)量各類(lèi)型工程技術(shù)人才,當(dāng)然培養(yǎng)良好的計(jì)算能力也是必不可缺的。
在我校化工專(zhuān)業(yè)本科生的教學(xué)和培養(yǎng)過(guò)程中發(fā)現(xiàn),大多數(shù)學(xué)生對(duì)于專(zhuān)業(yè)課程中的基礎(chǔ)理論通過(guò)老師的反復(fù)講解和自己的刻苦學(xué)習(xí)都能很好的理解和掌握。但在對(duì)所學(xué)的原理和理論進(jìn)行具體應(yīng)用時(shí)卻會(huì)遇到極大的困難,輕則會(huì)出現(xiàn)作業(yè)、習(xí)題做不了或耗費(fèi)時(shí)間極長(zhǎng)的現(xiàn)象,重則打擊繼續(xù)學(xué)習(xí)專(zhuān)業(yè)課的積極性,甚至出現(xiàn)自動(dòng)放棄學(xué)習(xí)的心理。
深究其背后原因,發(fā)現(xiàn)不是學(xué)生的專(zhuān)業(yè)課理論和方法沒(méi)學(xué)會(huì),而是化工專(zhuān)業(yè)課程的計(jì)算時(shí)會(huì)涉及大量復(fù)雜的非線(xiàn)性方程,積分方程,微分方程和常微分方程的求解。如果采用傳統(tǒng)的手工或計(jì)算器計(jì)算,幾乎是不可能完成的任務(wù),必須得采用計(jì)算機(jī)才能解決問(wèn)題。即使現(xiàn)在大多數(shù)學(xué)生已經(jīng)擁有自己的筆記本電腦,但由于缺乏必要的編程基礎(chǔ),而且教授計(jì)算機(jī)計(jì)算的《數(shù)值分析》課程在本科階段又是沒(méi)有開(kāi)設(shè),所以幾乎所有的學(xué)生到頭來(lái)對(duì)于計(jì)算問(wèn)題都顯的力不從心或者束手無(wú)策。
為了解決上述教學(xué)中所遇到的難題,筆者希望通過(guò)在本科生的授課過(guò)程中融入數(shù)值分析課程和計(jì)算機(jī)編程知識(shí)的講解,從而使學(xué)生學(xué)習(xí)理解各種化工課程計(jì)算所需的數(shù)值分析理論,并掌握用計(jì)算機(jī)來(lái)求解化工專(zhuān)業(yè)問(wèn)題的方法。具體則采用"教、學(xué)、用"三位一體的實(shí)施方式。
(1)編寫(xiě)適用于本科化工專(zhuān)業(yè)的《數(shù)值分析》講義。本講義的目的在于靈活應(yīng)用各種算法,所以編寫(xiě)中會(huì)盡量減少晦澀難懂的理論部分,而更加側(cè)重于每種算法的應(yīng)用實(shí)例,而且我們只選擇最常用的,最容易接受的算法。
(2)使學(xué)生掌握至少一門(mén)計(jì)算機(jī)語(yǔ)言。計(jì)算機(jī)語(yǔ)言可以是C、Visual Basic、Java、C++、Matlab、Fortran中的任意一種。但最核心的是掌握該語(yǔ)言的基本數(shù)據(jù)類(lèi)型,算數(shù)運(yùn)算符與算數(shù)表達(dá)式,關(guān)系運(yùn)算符與關(guān)系表達(dá)式,邏輯運(yùn)算符和邏輯表達(dá)式,程序的輸入與輸出,流程控制語(yǔ)句,函數(shù),數(shù)組,文件操作。
(3) 教授可用于數(shù)值分析的計(jì)算軟件。該做法主要針對(duì)計(jì)算機(jī)水平太差的學(xué)生。很多的計(jì)算軟件都提供了一個(gè)函數(shù)接口,因此只要知道該算法的函數(shù)接口,然后輸入初始參數(shù),軟件就會(huì)自動(dòng)給出計(jì)算結(jié)果,類(lèi)似于進(jìn)行"黑箱"操作。
(1)使學(xué)生掌握相關(guān)數(shù)值分析的基本原理和應(yīng)用方法。與本科化工專(zhuān)業(yè)相關(guān)的數(shù)值分析包括:函數(shù)的插值、離散數(shù)據(jù)的擬合、微分與積分、線(xiàn)性與非線(xiàn)性方程、矩陣特征值問(wèn)題、微分方程等。學(xué)習(xí)時(shí)不但要注意掌握每種數(shù)值方法的基本原理和思想,還要與計(jì)算機(jī)的結(jié)合,通過(guò)例子,學(xué)習(xí)使用各種數(shù)值方法解決實(shí)際計(jì)算問(wèn)題,熟悉數(shù)值方法的計(jì)算過(guò)程。
(2)讓編程基礎(chǔ)好的學(xué)生用一種計(jì)算機(jī)語(yǔ)言實(shí)現(xiàn)每種算法的源代碼。若開(kāi)始無(wú)法上手可以多閱讀,分析別人的源代碼。閱讀別人是學(xué)習(xí)編程語(yǔ)言時(shí)最好的學(xué)習(xí)方法,同時(shí)還可以積累編程經(jīng)驗(yàn)。
(3)讓編程基礎(chǔ)差的學(xué)生掌握可用于數(shù)值分析的專(zhuān)業(yè)軟件。如:Excel對(duì)于一些不太復(fù)雜的非線(xiàn)性方程,可在單元格中通過(guò)構(gòu)造合適的表達(dá)式進(jìn)行求解;Origin對(duì)于許多的離散數(shù)據(jù)可以進(jìn)行簡(jiǎn)單的擬合計(jì)算,包括多項(xiàng)式擬合、線(xiàn)性擬合和非線(xiàn)性擬合等;Matlab則可通過(guò)調(diào)用該軟件的中自帶的函數(shù)庫(kù),進(jìn)行非常廣泛的數(shù)值分析。
(1)利用互聯(lián)網(wǎng)技術(shù)最大程度的給學(xué)生共享代碼和軟件。將編程資料、講義和編寫(xiě)的計(jì)算軟件,作為學(xué)習(xí)資料掛載在學(xué)院的網(wǎng)站上,方便學(xué)生和專(zhuān)業(yè)課老師的下載、學(xué)習(xí)和使用,這樣可以及時(shí)獲取學(xué)生的反饋,了解學(xué)生的學(xué)習(xí)和使用情況。
(2)在課堂中講一些可用數(shù)值分析代碼或軟件解決的例題。通過(guò)給學(xué)生們做示范的方式,告訴他們所編寫(xiě)的源代碼到底怎么用,或者計(jì)算軟件到底如何應(yīng)用,讓學(xué)生有一種身臨其境的感覺(jué),激起他們熱愛(ài)程序,使用程序,深究程序的積極性。
(3)在課后布置一些可用數(shù)值分析代碼或軟件解決的習(xí)題。一則使學(xué)生搞清楚計(jì)算程序的使用或調(diào)用方法;二則讓他們明白數(shù)值計(jì)算的重要性;三則激起學(xué)生學(xué)習(xí)數(shù)值計(jì)算的熱情;四則減輕學(xué)生做課后題的壓力,節(jié)約寶貴的時(shí)間。
(4)在畢業(yè)設(shè)計(jì)中應(yīng)用數(shù)值分析代碼或軟件解決設(shè)計(jì)問(wèn)題。說(shuō)到化工專(zhuān)業(yè)畢業(yè)設(shè)計(jì)中的工藝設(shè)計(jì),就必須牽扯到化工計(jì)算,因此少不了數(shù)值分析。使用源代碼和計(jì)算軟件進(jìn)行計(jì)算,不但可以極大的提高他們的設(shè)計(jì)效率,也能讓他們享受到那種“學(xué)有所用”的樂(lè)趣和滿(mǎn)足感。
(5)在學(xué)生的設(shè)計(jì)大賽中使用數(shù)值分析方法解決問(wèn)題。如全國(guó)化工設(shè)計(jì)大賽,各個(gè)級(jí)別的創(chuàng)新創(chuàng)業(yè)大賽,各個(gè)級(jí)別的挑戰(zhàn)杯大賽等,讓學(xué)生在競(jìng)賽中使用源代碼和計(jì)算軟件,可以提高他們參賽作品的質(zhì)量,獲得更好的比賽成績(jī)。
本文提出了“教、學(xué)、用”三位一體的模式,通過(guò)在本科生的授課過(guò)程中融入《數(shù)值分析》課程和計(jì)算機(jī)編程知識(shí),使學(xué)生理解專(zhuān)業(yè)課程計(jì)算時(shí)所需的各種《數(shù)值分析》理論,掌握用計(jì)算機(jī)來(lái)求解化工專(zhuān)業(yè)問(wèn)題的技能,打掉學(xué)習(xí)過(guò)程中的攔路虎,恢復(fù)、調(diào)動(dòng)和增加學(xué)生學(xué)習(xí)化工專(zhuān)業(yè)課程的信心,使得他們能徹底做到“學(xué)以致用”。