資源描述:
《第一章、matlab語(yǔ)言概述》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫(kù)。
1、第一章MATLAB概述1.1MATLAB是21世紀(jì)的科學(xué)計(jì)算軟件在科學(xué)研究和工程應(yīng)用等領(lǐng)域中會(huì)涉及到大量的科學(xué)計(jì)算問(wèn)題,自從計(jì)算機(jī)出現(xiàn)以來(lái),人們就一直在使用計(jì)算機(jī)這個(gè)有力的工具幫助解決科學(xué)計(jì)算問(wèn)題,并由此發(fā)明了許多用于科學(xué)計(jì)算的程序語(yǔ)言,如BASIC、FORTRAN、C等等。隨著時(shí)代的變化、隨著計(jì)算機(jī)的普及和快速發(fā)展,計(jì)算機(jī)程序語(yǔ)言在不斷地變化發(fā)展、在不斷地推陳出新。在當(dāng)今時(shí)代,什么程序語(yǔ)言是最流行的科學(xué)計(jì)算語(yǔ)言呢?答案是——MATLAB語(yǔ)言。MATLAB之所以能夠成為最好的和最流行的科學(xué)計(jì)算語(yǔ)言,是因?yàn)樗哂袕?qiáng)大的科學(xué)計(jì)算及數(shù)據(jù)處理能力和出色的圖形處理功能等特點(diǎn)。451.1.1
2、MATLAB具有強(qiáng)大的科學(xué)計(jì)算及數(shù)據(jù)處理能力MATLAB擁有600多個(gè)工程中要用到的數(shù)學(xué)運(yùn)算函數(shù),可以方便地實(shí)現(xiàn)用戶(hù)所需的各種計(jì)算功能。函數(shù)中所使用的算法都是科研和工程計(jì)算中的最新研究成果,而且經(jīng)過(guò)了各種優(yōu)化及容錯(cuò)處理,因此使用起來(lái)穩(wěn)定性和可靠性非常高,在通常情況下,可以用它來(lái)代替底層編程語(yǔ)言,如C和C++等。在計(jì)算要求相同的情況下,使用MATLAB的編程工作量會(huì)大大減少。MATLAB函數(shù)所能解決的問(wèn)題包括矩陣運(yùn)算、多維數(shù)組操作(陣列運(yùn)算)、復(fù)數(shù)的各種運(yùn)算、三角函數(shù)和其他初等數(shù)學(xué)函數(shù)運(yùn)算、非線性方程求根、線性方程組的求解、微分方程及偏微分方程組的求解、符號(hào)運(yùn)算、傅立葉變換和數(shù)據(jù)的
3、統(tǒng)計(jì)分析、工程中的優(yōu)化問(wèn)題、稀疏矩陣運(yùn)算、建模和動(dòng)態(tài)仿真等等。451.1.2MATLAB具有出色的圖形處理功能在科學(xué)計(jì)算中,往往需要用各種圖形把數(shù)值計(jì)算的結(jié)果形象地表現(xiàn)出來(lái),以幫助人們更好地理解、認(rèn)識(shí)和發(fā)現(xiàn)其中的科學(xué)規(guī)律。MATLAB不僅提供數(shù)值計(jì)算功能和符號(hào)運(yùn)算功能,而且自誕生之日起就具有方便的數(shù)據(jù)可視化功能,使計(jì)算結(jié)果的可視化要求得到充分滿(mǎn)足。MATLAB在二維曲線和三維曲面的繪制和處理等方面的功能比一般數(shù)據(jù)可視化軟件更加完善,在一些其他軟件所沒(méi)有的功能(例如圖形的光照處理、色度處理以及四維數(shù)據(jù)的表現(xiàn)等)方面也表現(xiàn)得非常出色。在MATLAB6.x中有一個(gè)對(duì)圖形對(duì)象屬性進(jìn)行設(shè)置
4、的圖形屬性編輯界面,該界面比MATLAB5.x中的界面功能更為全面,操作也更為方便。MATLAB456.x對(duì)圖形的輸出也做了適當(dāng)?shù)母倪M(jìn),提供了更為豐富的屬性設(shè)置,以提高圖形輸出的效果。對(duì)一些特殊的可視化要求,例如圖形動(dòng)畫(huà)等,MATLAB也有相應(yīng)的功能函數(shù),保證了用戶(hù)不同層次的要求。另外,新版本的MATLAB還著重在圖形用戶(hù)界面(GUI)的制作上做了很大的改善,對(duì)這方面有特殊要求的用戶(hù)也可以得到滿(mǎn)足。MATLAB將數(shù)值計(jì)算功能、符號(hào)運(yùn)算功能和圖形處理功能高度地集成在一起,在數(shù)值計(jì)算、符號(hào)運(yùn)算和圖形處理上做到了無(wú)縫的銜接,極大地方便了用戶(hù),這是它在科學(xué)計(jì)算中能得到廣泛應(yīng)用的重要原因之
5、一。1.1.3MATLAB程序語(yǔ)言簡(jiǎn)單易用早期用于科學(xué)計(jì)算的計(jì)算機(jī)語(yǔ)言,由于計(jì)算機(jī)內(nèi)存容量和運(yùn)算速度的限制等原因,常常要定義常量、變量、向量和矩陣等的不同的數(shù)據(jù)類(lèi)型,結(jié)果導(dǎo)致編程過(guò)于復(fù)雜化。和這些語(yǔ)言不一樣,45MATLAB語(yǔ)言對(duì)他們進(jìn)行了高度抽象,實(shí)現(xiàn)了數(shù)據(jù)類(lèi)型的高度統(tǒng)一,即常量、變量、向量和矩陣等都具有相同的數(shù)據(jù)類(lèi)型。MATLAB語(yǔ)言認(rèn)為所有的數(shù)據(jù)都是一個(gè)對(duì)象類(lèi),都具有相同的屬性。因此,用戶(hù)不需要事先分別定義常量、變量、向量和矩陣等的數(shù)據(jù)類(lèi)型就可以直接使用他們(當(dāng)然MATLAB的這種設(shè)計(jì)思想是以高性能計(jì)算機(jī)的出現(xiàn)和普及作為前提條件的),編程得到了很大簡(jiǎn)化。例如,在MATLAB
6、中,基本的計(jì)算單元用復(fù)雙精度矩陣來(lái)表示,其大小是n行m列,矩陣各數(shù)據(jù)元素存放在兩個(gè)雙精度向量中,一個(gè)存放實(shí)部數(shù)據(jù)(指針pr指向它),另一個(gè)存放虛部數(shù)據(jù)(指針pi指向它)。如果是實(shí)數(shù),則復(fù)雙精度矩陣中pi為空。復(fù)數(shù)或?qū)崝?shù)則可以理解為1×1的矩陣。MATLAB語(yǔ)言是一種“數(shù)學(xué)形式的語(yǔ)言”,它的操作和功能函數(shù)指令就是用平時(shí)計(jì)算機(jī)和數(shù)學(xué)書(shū)上的英文單詞和符號(hào)來(lái)表達(dá)的,45比BASIC、FORTRAN和C等語(yǔ)言更接近于人們書(shū)寫(xiě)的數(shù)學(xué)計(jì)算公式、更接近于人們進(jìn)行科學(xué)計(jì)算的思維方式,用MATLAB語(yǔ)言編寫(xiě)程序猶如在演算紙上排列公式與求解問(wèn)題,故有人稱(chēng)MATLAB編程語(yǔ)言為“演算紙”式科學(xué)算法語(yǔ)言。
7、因此,MATLAB語(yǔ)言簡(jiǎn)單自然,學(xué)習(xí)和使用更容易。MATLAB程序文件是一個(gè)純文本文件,擴(kuò)展名為.m,用任何字處理軟件都可以對(duì)它進(jìn)行編輯。MATLAB本身就像一個(gè)解釋系統(tǒng),對(duì)其中的函數(shù)程序的執(zhí)行以一種解釋執(zhí)行的方式進(jìn)行,程序不必經(jīng)過(guò)編譯就可以直接運(yùn)行,而且能夠及時(shí)報(bào)告出現(xiàn)的錯(cuò)誤,進(jìn)行出錯(cuò)原因分析。因此,程序調(diào)試容易、編程效率高。MATLAB的用戶(hù)界面精致,接近Windows的標(biāo)準(zhǔn)界面,人機(jī)交互性強(qiáng),操作簡(jiǎn)單。新版本的MATLAB提供了完整的聯(lián)機(jī)查詢(xún)、幫助系統(tǒng),極大地方便了用戶(hù)的使