官术网_书友最值得收藏!

1.1 MATLAB概述

MATLAB是一種高效的語言,其發(fā)展速度之快、應(yīng)用范圍之廣、功能之強(qiáng)大,已為業(yè)人所驚嘆。因此我們先對(duì)MATLAB的發(fā)展歷史、系統(tǒng)結(jié)構(gòu)及特點(diǎn)、學(xué)科工具箱等內(nèi)容進(jìn)行整體介紹,使初學(xué)者快速了解MATLAB的概況。

1.1.1 MATLAB發(fā)展歷程

MATLAB是MATrix LABoratory(矩陣實(shí)驗(yàn)室)的縮寫。20世紀(jì)70年代后期,時(shí)任美國新墨西哥大學(xué)計(jì)算機(jī)科學(xué)系主任的克里夫·莫勒爾(Cleve Moler)教授為了減輕學(xué)生編程的負(fù)擔(dān),用FORTRAN語言編寫了線性代數(shù)軟件包(Linpack)和特征值計(jì)算軟件包(Eispack),這便是最初的MATLAB。

1984年,杰克·李特(Jack Little)、克里夫·莫勒爾和斯蒂夫·班格爾特(Steve Bangert)合作成立了Mathworks公司,正式把MATLAB推向市場,并在拉斯維加斯舉行的IEEE決策與控制會(huì)議上推出了利用C語言編寫的面向MS-DOS系統(tǒng)的MATLAB 1.0。MATLAB以商品形式出現(xiàn)后的短短幾年,就以其良好的開放性和運(yùn)行的可靠性,使原先控制領(lǐng)域里的封閉式軟件包紛紛淘汰,而改在MATLAB平臺(tái)上重建。在20世紀(jì)90年代,MATLAB已經(jīng)成為國際控制界公認(rèn)的標(biāo)準(zhǔn)計(jì)算軟件。

1993年推出了基于PC的以Windows為操作系統(tǒng)平臺(tái)的MATLAB 4.0。1996年推出MATLAB 5.0,增加了更多的數(shù)據(jù)結(jié)構(gòu),使其成為更方便的編程語言。2000年10月推出全新的MATLAB 6.0正式版(R12),在核心數(shù)值算法、界面設(shè)計(jì)、外部接口、應(yīng)用桌面等方面有了極大改進(jìn)。2004年7月推出MATLAB 7.0(R14),在編程環(huán)境、代碼效率、數(shù)據(jù)可視化、文件I/O等方面進(jìn)行了全面升級(jí)。2006年起,每年推出兩個(gè)版本,上半年推出的用a標(biāo)識(shí),下半年推出的用b標(biāo)識(shí),如2006年上半年推出的版本為MATLAB 7.2(R2006a),下半年版本為MATLAB 7.3(R2006b)。

2012年9月份開發(fā)的MATLAB 8.0(R2012b),采用了全新的視圖界面,具有MATLAB和Simulink的重大更新,可顯著提升用戶的使用與導(dǎo)航體驗(yàn),包括64位和32位兩個(gè)版本。2014年3月推出帶有中文界面的MATLAB 8.3(R2014a),2015年3月發(fā)布包含一系列MATLAB和Simulink新功能的MATLAB 8.5(R2015a)。

MATLAB具有功能強(qiáng)、學(xué)習(xí)容易、效率高等特點(diǎn),已成為線性代數(shù)、數(shù)值分析計(jì)算、數(shù)學(xué)建模、最優(yōu)化設(shè)計(jì)、統(tǒng)計(jì)數(shù)據(jù)處理、生物醫(yī)學(xué)工程、財(cái)務(wù)分析、金融計(jì)算、自動(dòng)控制、數(shù)字信號(hào)處理、通信系統(tǒng)仿真等課程的基本教學(xué)工具,是目前世界上最流行的仿真計(jì)算軟件之一。掌握了這一重要工具,則為讀者今后的學(xué)習(xí)、科學(xué)研究、行業(yè)開發(fā)打下較好的基礎(chǔ)。

1.1.2 MATLAB系統(tǒng)結(jié)構(gòu)

MATLAB系統(tǒng)由MATLAB開發(fā)環(huán)境、MATLAB數(shù)學(xué)函數(shù)庫、MATLAB語言、MATLAB圖形處理系統(tǒng)和MATLAB應(yīng)用程序接口(API)5部分構(gòu)成。

MATLAB開發(fā)環(huán)境是一套方便用戶使用的MATLAB函數(shù)和文件工具集,其中許多工具是圖形化用戶接口。它是一個(gè)集成的用戶工作空間,允許用戶輸入/輸出數(shù)據(jù),并提供了M文件的集成編譯和調(diào)試環(huán)境,包括MATLAB桌面、命令行窗口、M文件編輯調(diào)試器、工作空間瀏覽器和在線幫助文檔。

MATLAB數(shù)學(xué)函數(shù)庫是數(shù)學(xué)算法的一個(gè)巨大集合,包括初等數(shù)學(xué)的基本算法,高等數(shù)學(xué)、線性代數(shù)等學(xué)科的復(fù)雜算法等。用戶直接調(diào)用其函數(shù)就可進(jìn)行運(yùn)算,它是MATLAB系統(tǒng)的基礎(chǔ)組成部分。

MATLAB語言是一種交互性的數(shù)學(xué)腳本語言,它支持邏輯、數(shù)值、文本、函數(shù)柄、細(xì)胞數(shù)組和結(jié)構(gòu)數(shù)組等數(shù)據(jù)類型,是一種高級(jí)的基于矩陣/數(shù)組的語言,具有程序流控制、函數(shù)、數(shù)據(jù)結(jié)構(gòu)、輸入/輸出和面向?qū)ο缶幊痰忍厣?/p>

MATLAB圖形處理系統(tǒng)是指MATLAB系統(tǒng)提供的強(qiáng)大的數(shù)據(jù)可視化功能,包括二維、三維圖形函數(shù),圖像處理和動(dòng)畫效果等。它還提供了包括線型、色彩、標(biāo)記、坐標(biāo)等修飾方法,使繪制的圖形更加美觀、精確。

MATLAB應(yīng)用程序接口(API)是MATLAB語言與C、Fortran等其他高級(jí)編程語言進(jìn)行交互的函數(shù)庫。該庫的函數(shù)通過調(diào)用動(dòng)態(tài)鏈接庫(DLL)實(shí)現(xiàn)與MATLAB文件的數(shù)據(jù)交換,其主要功能是在MATLAB中調(diào)用C和Fortran程序,在MATLAB與其他應(yīng)用程序間建立客戶/服務(wù)器關(guān)系。

1.1.3 MATLAB工具箱類型

MATLAB通過附加的工具箱(Toolbox)進(jìn)行功能擴(kuò)展,每一工具箱都是實(shí)現(xiàn)特定功能的函數(shù)集合。MATLAB工具箱主要分以下幾大類:

●數(shù)學(xué)、統(tǒng)計(jì)與優(yōu)化。

●控制系統(tǒng)設(shè)計(jì)和分析。

●信號(hào)處理和通信。

●圖像處理與計(jì)算機(jī)視覺。

●計(jì)算金融。

●計(jì)算生物。

●并行計(jì)算。

●測試與測量。

●數(shù)據(jù)庫訪問與報(bào)告。

●代碼生成和驗(yàn)證。

MATLAB R2015a的工具箱類型如表1-1所示。

表1-1 MATLAB R2015a工具箱類型

MATLAB具有開放性,其內(nèi)部函數(shù)、主包文件和各種工具包文件,都是可讀、可修改的函數(shù),因此用戶可通過對(duì)源程序進(jìn)行修改,或加入自己編寫的程序來構(gòu)造新的專用工具包。

1.1.4 MATLAB主要功能

MATLAB的功能非常強(qiáng)大,其主要功能如下:

●數(shù)值計(jì)算、符號(hào)計(jì)算、工程計(jì)算等各種計(jì)算功能。

●繪制二維和三維圖形等數(shù)據(jù)可視化功能。

●創(chuàng)建函數(shù)文件、數(shù)據(jù)管理等編程的開發(fā)環(huán)境。

●使用線性代數(shù)、統(tǒng)計(jì)、傅里葉分析、篩選、優(yōu)化、插值、擬合等方法的數(shù)據(jù)處理能力。

●利用工具箱處理各應(yīng)用領(lǐng)域內(nèi)特定類型問題的擴(kuò)展功能。

●基于Simulink工具的系統(tǒng)建模、仿真和分析功能。

●構(gòu)建自定義的圖形用戶界面應(yīng)用軟件開發(fā)功能。

●將MATLAB的算法與外部應(yīng)用程序和語言(如C、Java、.NET以及Microsoft Excel)的集成功能。

1.1.5 MATLAB的特點(diǎn)

1.直譯式的編程語言

MATLAB語言是以矩陣計(jì)算為基礎(chǔ)的程序設(shè)計(jì)語言,簡單易學(xué),用戶不用花太多時(shí)間即可掌握其編程技巧。其指令格式與常用的數(shù)學(xué)表達(dá)式非常相近,語法規(guī)則也與一般的結(jié)構(gòu)化高級(jí)編程語言類似,包含控制語句、函數(shù)、數(shù)據(jù)結(jié)構(gòu)、輸入/輸出等內(nèi)容和面向?qū)ο缶幊痰忍攸c(diǎn)。對(duì)于要解決的問題,用戶可以在命令行窗口中將輸入語句與執(zhí)行命令同步,也可以先編寫好一個(gè)較大的應(yīng)用程序(M文件),然后一起運(yùn)行。

2.短小高效的代碼

由于MATLAB已將數(shù)學(xué)問題的具體算法編成了函數(shù),因此用戶只要熟悉算法的特點(diǎn)、使用場合、函數(shù)的調(diào)用格式和參數(shù)意義等,通過調(diào)用函數(shù)很快就可以解決問題。

3.強(qiáng)大的科學(xué)計(jì)算與數(shù)據(jù)處理能力

MATLAB是一個(gè)包含大量計(jì)算算法的集合,其擁有上千個(gè)數(shù)學(xué)函數(shù)和工程計(jì)算函數(shù),可以直接調(diào)用而不需另行編程,非常方便地實(shí)現(xiàn)用戶所需的各種計(jì)算功能。該軟件具有強(qiáng)大的矩陣計(jì)算功能,擁有眾多的工具箱,幾乎能解決大部分學(xué)科中的數(shù)學(xué)問題。

4.先進(jìn)的繪圖和數(shù)據(jù)可視化功能

MATLAB能夠按照數(shù)據(jù)產(chǎn)生高質(zhì)量的二維、三維數(shù)據(jù)圖形,并可繪制各類函數(shù)的多維圖形。還可以對(duì)圖形設(shè)置顏色、光照、紋理、透明性等,以增強(qiáng)圖形的表現(xiàn)效果。

5.可擴(kuò)展性能

MATLAB包含基本部分和各種可選的工具箱。基本部分構(gòu)成了MATLAB的核心內(nèi)容,也是使用和構(gòu)造工具箱的基礎(chǔ),工具箱擴(kuò)展了MATLAB功能。除內(nèi)部函數(shù)外,所有MATLAB基本文件和工具箱文件都是可讀可改的源文件,用戶可通過對(duì)源文件進(jìn)行修改或加入自己編寫的文件,構(gòu)造自己的專用工具箱,以方便解決自己領(lǐng)域內(nèi)常見的計(jì)算問題。

6.友好的工作平臺(tái)和編程環(huán)境

MATLAB中的工具包大多采用圖形用戶界面,其界面越來越精致,更加接近Windows的標(biāo)準(zhǔn)界面,人機(jī)交互性更強(qiáng),操作更簡單。簡單的編程環(huán)境提供了比較完備的調(diào)試系統(tǒng),程序不必經(jīng)過編譯就可以直接運(yùn)行,而且能夠及時(shí)地報(bào)告出現(xiàn)的錯(cuò)誤及進(jìn)行出錯(cuò)原因分析。

主站蜘蛛池模板: 曲周县| 仙游县| 霸州市| 隆尧县| 兰溪市| 江孜县| 普陀区| 龙门县| 澄迈县| 遵化市| 漠河县| 苍南县| 缙云县| 上林县| 成武县| 江永县| 休宁县| 个旧市| 乡城县| 蒙山县| 边坝县| 泸溪县| 建宁县| 花莲市| 九寨沟县| 桐柏县| 台前县| 宝应县| 云林县| 浮梁县| 桃园市| 枣庄市| 石棉县| 龙游县| 自贡市| 大洼县| 邵东县| 石嘴山市| 龙海市| 揭阳市| 隆林|