李建慧
摘要:本文在分析應(yīng)用地球物理學(xué)專(zhuān)業(yè)和MATLAB程序設(shè)計(jì)各自特點(diǎn)的基礎(chǔ)上,以應(yīng)用地球物理學(xué)專(zhuān)業(yè)的特點(diǎn)和需求作為切入點(diǎn),探討了應(yīng)用地球物理學(xué)專(zhuān)業(yè)中加強(qiáng)MATLAB程序設(shè)計(jì)教學(xué)的思路。
關(guān)鍵詞:應(yīng)用地球物理學(xué);MATLAB;教學(xué)改革
中圖分類(lèi)號(hào):G642.0 文獻(xiàn)標(biāo)志碼:A 文章編號(hào):1674-9324(2016)44-0227-02
近年來(lái),許多專(zhuān)家學(xué)者從不同角度關(guān)注于應(yīng)用地球物理學(xué)專(zhuān)業(yè)的本科教學(xué)改革。比如,金勝等學(xué)者探討了如何提高本科生畢業(yè)論文質(zhì)量的方法[1],張新兵等學(xué)者通過(guò)比較中美兩國(guó)本科生課程設(shè)置而提出了我國(guó)應(yīng)用地球物理學(xué)專(zhuān)業(yè)課程改革的方向[2],閻建國(guó)等學(xué)者探索了以地球物理學(xué)為例基礎(chǔ)教育改革的思路[3],呂玉增等學(xué)者提出了培養(yǎng)工程技術(shù)人才的改革方案[4],熊章強(qiáng)等學(xué)者研究了如何提高野外實(shí)踐教學(xué)效果的對(duì)策[5],嚴(yán)哲以地震勘探的專(zhuān)業(yè)實(shí)習(xí)為例探討了地球物理專(zhuān)業(yè)教學(xué)實(shí)習(xí)的作用、安排和效果[6]。
MATLAB、MAPLE和MATHEMATICA為當(dāng)今三大主流數(shù)學(xué)軟件。相比MAPLE和MATHEMATICA,MATLAB在國(guó)內(nèi)高校理工科專(zhuān)業(yè)的應(yīng)用更為普遍。本文我們將探討應(yīng)用地球物理學(xué)專(zhuān)業(yè)本科教學(xué)中加強(qiáng)MATLAB程序設(shè)計(jì)的一些思路。之前,汪勇討論了MATLAB程序設(shè)計(jì)在地震勘探教學(xué)中的應(yīng)用[7],而童孝忠分析了MATLAB在應(yīng)用地球物理學(xué)中的應(yīng)用[8]。
一、應(yīng)用地球物理學(xué)的學(xué)科特點(diǎn)
應(yīng)用地球物理學(xué)隸屬于地質(zhì)資源與地質(zhì)工程一級(jí)學(xué)科中的地球探測(cè)與信息技術(shù)二級(jí)學(xué)科。根據(jù)研究物理場(chǎng)的不同,可劃分為電法勘探、磁法勘探、重力勘探、地震勘探、放射性勘探和地球物理測(cè)井。除了一級(jí)學(xué)科的特點(diǎn)外,該學(xué)科自身還具有以下特點(diǎn)。
1.數(shù)理基礎(chǔ)要求極高。地球物理場(chǎng)一般是關(guān)于空間位置變化的三維函數(shù),比如重力場(chǎng)、靜磁場(chǎng)、靜電場(chǎng)等;而有些情況下,我們還需考慮地球物理場(chǎng)與時(shí)間變化的關(guān)系,比如時(shí)間域電磁場(chǎng)、地震波場(chǎng)等。為了能夠真實(shí)的描述這些地球物理場(chǎng),我們需要大量而復(fù)雜的數(shù)學(xué)和物理知識(shí)。因此,除了學(xué)習(xí)高等數(shù)學(xué)、大學(xué)物理、概率論與數(shù)理統(tǒng)計(jì)、數(shù)值分析等基礎(chǔ)課程外,該專(zhuān)業(yè)本科生還要學(xué)習(xí)矢量分析與場(chǎng)論、復(fù)變函數(shù)、積分變換、數(shù)學(xué)物理方程與特殊函數(shù)、數(shù)字信號(hào)處理、彈性波動(dòng)力學(xué)、勘探電磁場(chǎng)論等專(zhuān)業(yè)基礎(chǔ)課程。
2.專(zhuān)業(yè)術(shù)語(yǔ)抽象、不易理解。應(yīng)用地球物理學(xué)專(zhuān)業(yè)中,有些概念非常抽象,比如“場(chǎng)”。我們知道,場(chǎng)是反映隨時(shí)空變化的某種物理量,并以場(chǎng)在時(shí)空中每點(diǎn)值的類(lèi)型,將其分為標(biāo)量場(chǎng)、矢量場(chǎng)和張量場(chǎng)。這些抽象概念的理解往往需要借助于一定的工具,比如曲線(xiàn)圖、等值線(xiàn)圖、矢量圖、三維立體圖、動(dòng)畫(huà)演示等。
3.與計(jì)算機(jī)科學(xué)結(jié)合緊密。地球物理專(zhuān)業(yè)與計(jì)算機(jī)科學(xué)結(jié)合非常緊密,比如利用高級(jí)語(yǔ)言編制程序用于研究地球物理場(chǎng)或者資料處理,利用計(jì)算機(jī)繪圖軟件繪制矢量圖、三維圖等專(zhuān)業(yè)圖件。計(jì)算機(jī)科學(xué)的快速發(fā)展給應(yīng)用地球物理學(xué)帶來(lái)了巨大影響,比如計(jì)算機(jī)硬件的發(fā)展大大加速了資料處理速度,智能優(yōu)化算法的快速發(fā)展使得反演結(jié)果更加可靠,反演速度更加快速。
二、MATLAB程序設(shè)計(jì)
MATLAB是美國(guó)MathWorks公司出品的商業(yè)數(shù)學(xué)軟件,用于算法開(kāi)發(fā)、數(shù)據(jù)可視化、數(shù)據(jù)分析以及數(shù)值計(jì)算的高級(jí)技術(shù)計(jì)算語(yǔ)言和交互式環(huán)境。與其他開(kāi)發(fā)語(yǔ)言相比,MATLAB主要具有以下優(yōu)勢(shì)。
1.界面友好、編程語(yǔ)言自然。MATLAB采用了一系列圖形用戶(hù)界面,包括MATLAB桌面和命令窗口、歷史命令窗口、路徑搜索、文件瀏覽界面等。最新版本的MATLAB軟件中,用戶(hù)界面更加精致、人機(jī)交互性更強(qiáng),操作也更加簡(jiǎn)單。MATLAB的編程語(yǔ)言自然,比如復(fù)數(shù)“1+2i”可直接寫(xiě)為“1+2i”,而不必分別表示存儲(chǔ)實(shí)部和虛部,并且其運(yùn)算和函數(shù)都是針對(duì)矩陣設(shè)計(jì)的,比如矩陣A和B的乘積,可直接寫(xiě)為“A×B”,而不必像其他語(yǔ)言中借助于循環(huán)語(yǔ)句實(shí)現(xiàn)這一功能。
2.數(shù)值計(jì)算能力強(qiáng)大。MATLAB包含有600多個(gè)常用的數(shù)學(xué)函數(shù),這些函數(shù)包括線(xiàn)性方程組的求解、微分方程及偏微分方程組的求解、數(shù)值積分、插值、傅立葉變換等。比如,數(shù)值積分包含了“quad”、“quadl”、“quadv”、“quadgk”、“integral”等多個(gè)函數(shù),用戶(hù)可根據(jù)求解問(wèn)題要求的精度和效率確定使用的積分函數(shù)。除此之外,MATLAB還包含偏微分方程、小波變換、神經(jīng)網(wǎng)路、統(tǒng)計(jì)分析、樣條擬合等工具箱。利用這些庫(kù)函數(shù),不僅保證了計(jì)算結(jié)果的精度,還大幅提高了用戶(hù)的編程效率。
3.可視化處理能力完備。MATLAB擁有完備的圖件繪制函數(shù),涵蓋了從簡(jiǎn)單的曲線(xiàn)圖、等值線(xiàn)圖,到復(fù)雜的矢量圖、三維圖件,再到動(dòng)畫(huà)制作,等等一系列函數(shù)。另外,MATLAB還自帶了GUI設(shè)計(jì)工具箱,使得用戶(hù)可以設(shè)計(jì)出一些簡(jiǎn)單的可視化界面。
其他一些軟件或程序設(shè)計(jì)語(yǔ)言也具有上述個(gè)別特點(diǎn),比如FORTRAN語(yǔ)言通俗易懂、運(yùn)行速度快、商業(yè)函數(shù)庫(kù)豐富,又如MATHEMATICA具有突出的符號(hào)運(yùn)算能力,再如GRAPHER、SURFER等繪圖軟件具有強(qiáng)大的繪圖功能。但是,MATLAB具有以上軟件的所有特點(diǎn)和優(yōu)勢(shì),因此該軟件在國(guó)內(nèi)高校理工科專(zhuān)業(yè)中應(yīng)用極為廣泛。
三、應(yīng)用地球物理學(xué)專(zhuān)業(yè)與MATLAB程序設(shè)計(jì)的結(jié)合點(diǎn)
根據(jù)應(yīng)用地球物理學(xué)專(zhuān)業(yè)和MATLAB程序設(shè)計(jì)的特點(diǎn),我們認(rèn)為在本科階段MATLAB程序設(shè)計(jì)可應(yīng)用于應(yīng)用地球物理學(xué)專(zhuān)業(yè)以下三個(gè)方面的教學(xué)實(shí)踐中。
1.經(jīng)典理論和公式的圖形化。地球物理專(zhuān)業(yè)中有許多經(jīng)典理論和公式,比如電法勘探中點(diǎn)源電流場(chǎng)中水平層狀介質(zhì)、球體、垂直接觸面的電場(chǎng),水平電偶源和垂直磁偶源在層狀介質(zhì)表面激發(fā)的頻率域和時(shí)間域電場(chǎng)、磁場(chǎng),等等,經(jīng)典教科書(shū)中也只給出了部分公式的曲線(xiàn)圖。利用MATLAB自帶的庫(kù)函數(shù)、偏微分方程工具箱等,學(xué)生們完全可以制作這些經(jīng)典理論和公式的等值線(xiàn)圖、場(chǎng)矢量圖、電磁場(chǎng)的動(dòng)態(tài)演示等。這對(duì)于理解地球物理中“場(chǎng)”的概念大有裨益,也能更好地理解地球物理勘探方法的設(shè)計(jì)原理。
2.簡(jiǎn)易資料處理程序的開(kāi)發(fā)。地球物理勘探中,野外采集數(shù)據(jù)之后,往往需要資料預(yù)處理、反演和解釋。目前,雖然關(guān)于地球物理資料處理解釋的軟件已有很多,但是其背后的方法原理都是相通的。比如,地球物理通常需要濾波去除噪音,又如一些地球物理方法要求將數(shù)據(jù)從時(shí)間域(空間域)轉(zhuǎn)換至頻率域(波數(shù)域),等等。針對(duì)濾波去噪,MATLAB有低通濾波、高通濾波、中值濾波、小波去噪等工具箱和函數(shù);針對(duì)時(shí)頻轉(zhuǎn)換,MATLAB有一維和二維快速傅里葉變換函數(shù)。除此之外,地球物理專(zhuān)業(yè)中資料處理解釋的大部分方法仍需學(xué)生編程實(shí)現(xiàn),但是可以使用MATLAB自帶的庫(kù)函數(shù),比如插值函數(shù)、數(shù)值積分等。這些工具箱和庫(kù)函數(shù)的使用,使得學(xué)生的學(xué)習(xí)事半功倍。
3.正演和反演程序的編寫(xiě)入門(mén)。在地球物理勘探中,正演和反演是最核心的兩個(gè)問(wèn)題。電法勘探中,二維、2.5維和三維正演均需求解一個(gè)大型線(xiàn)性方程組,而MATLAB自帶了方程組迭代法求解的許多函數(shù),比如共軛梯度法、雙共軛梯度法等。關(guān)于反演算法,MATLAB自帶了神經(jīng)網(wǎng)絡(luò)工具箱、最小二乘法函數(shù)等可用于反演研究。另外,有限元法分析的專(zhuān)業(yè)軟件COMSOL MULTIPHYSICS也采用了MATLAB程序設(shè)計(jì)語(yǔ)法,因此極大地方便了高校科研用戶(hù)。但是,更多的算法仍需學(xué)生編寫(xiě)相應(yīng)程序,比如有限元法正演算法、交錯(cuò)網(wǎng)格有限差分法正演算法、擬牛頓法反演算法、高斯—牛頓反演算法、粒子群優(yōu)化算法反演算法等。
四、結(jié)語(yǔ)
本文首先分析了應(yīng)用地球物理學(xué)專(zhuān)業(yè)和MATLAB程序設(shè)計(jì)的各自特點(diǎn),給出了應(yīng)用地球物理學(xué)專(zhuān)業(yè)與MATLAB程序設(shè)計(jì)的三個(gè)結(jié)合點(diǎn)?;谏鲜龇治?,我們有理由相信MATLAB程序設(shè)計(jì)語(yǔ)言必將在應(yīng)用地球物理學(xué)專(zhuān)業(yè)教學(xué)和科研中發(fā)揮更大的作用。
參考文獻(xiàn):
[1]金勝,葉高峰,景建恩.提高地球物理專(zhuān)業(yè)本科生畢業(yè)設(shè)計(jì)(論文)質(zhì)量的思索與探討[J].中國(guó)地質(zhì)教育,2010,(3):88-91.
[2]張新兵,于鵬,吳健生.中美地球物理專(zhuān)業(yè)本科生課程設(shè)置比較與啟示[J].中國(guó)地質(zhì)教育,2010,(3):103-106.
[3]閻建國(guó),李才明.地球物理學(xué)基礎(chǔ)教育改革初探[J].中國(guó)地質(zhì)教育,2010,(4):32-34.
[4]呂玉增,韋柳椰,李長(zhǎng)偉.地球物理勘查工程技術(shù)人才培養(yǎng)改革與實(shí)踐[J].中國(guó)地質(zhì)教育,2012,(1):115-118.
[5]熊章強(qiáng),朱德兵,嚴(yán)家斌,張大洲.提高地球物理學(xué)科野外實(shí)踐教學(xué)效果的探索與實(shí)踐[J].中國(guó)地質(zhì)教育,2012,(4):132-134.
[6]嚴(yán)哲.地球物理專(zhuān)業(yè)實(shí)習(xí)教學(xué)方法初探——以地震勘探為例[J].教育教學(xué)論壇,2013,(17):84-85.
[7]汪勇.淺談Matlab在地震勘探教學(xué)中的應(yīng)用[J].中國(guó)地質(zhì)教育,2012,(4):108-110.
[8]童孝忠.MATLAB程序設(shè)計(jì)及在地球物理中的應(yīng)用[M].長(zhǎng)沙:中南大學(xué)出版社有限責(zé)任公司,2013.