MATLAB是MATrix LABoratory的縮寫,是一款由美國(guó)MathWorks公司出品的商�(yè)�(shù)�(xué)軟件。MATLAB是一種用于算法開(kāi)�(fā)、數(shù)�(jù)可視�、數(shù)�(jù)分析以及�(shù)值計(jì)算的技�(shù)�(jì)算語(yǔ)言和交互式�(huán)�。MATLAB作為高性能、交互式的科�(xué)�(jì)算工�,具有非常友好的圖形界面,這使得MATLAB的應(yīng)用非常廣�;同�(shí)MATLAB也提供了�(qiáng)大的繪圖功能�
70年代中期,Cleve Moler和他的同事開(kāi)�(fā)了LINPACK和EISPACK的Fortran子程序庫(kù)
70年代末期,Cleve Moler在新墨西哥大�(xué)給學(xué)生開(kāi)線性代�(shù),為�(xué)生編寫了接口程序,這程序取名為MATLAB,即MATrix LABoratory
1983年春天,工程師John Little與Moler、Steve Bangert一起開(kāi)�(fā)了第二代版MATLAB
1984�,MathWorks公司成立,MATLAB正是推向市場(chǎng)�
1992�,學(xué)生版MATLAB推出�1993年,Microsoft Windows版MATLAB面世�1995�,推出Linux��
●基本的�(shù)�(jù)處理
●優(yōu)化和解方�
●動(dòng)�(tài)�(guò)程仿真:�(shí)�(shí)的和非實(shí)�(shí)�
●數(shù)�(jù)�(lái)源:Excel、數(shù)�(jù)�(kù)、A/D等等
●嵌入式的控制:Pc/104和DSP
●神�(jīng)元網(wǎng)�(luò)、小波分析、GA等等
●虛擬現(xiàn)�(shí)仿真
MATLAB�(yǔ)言是一種交互性的�(shù)�(xué)腳本�(yǔ)言,其�(yǔ)法與C/C++類似。它支持包括邏輯(boolen�、數(shù)值(numeric�、文本(text�、函�(shù)柄(function handle)和異質(zhì)�(shù)�(jù)容器(heterogeneous container)在�(nèi)�15種數(shù)�(jù)類型,每一種類型都定義為矩陣或陣列的形式(0維至任意高維��
�(zhí)行MATLAB代碼的最�(jiǎn)單方式是在MATLAB程序的命令窗口(Command Window)的提示符處�>> )輸入代�,MATLAB�(huì)即時(shí)返回操作�(jié)果(如果有的話)。此�(shí), MATLAB可以看作是一�(gè)交互式的�(shù)�(xué)終端,簡(jiǎn)單來(lái)�(shuō),一�(gè)功能�(qiáng)大的“計(jì)算器”。MATLAB代碼同樣可以保存在一�(gè)�.m為后綴名的文本文件中,然后在命令窗口或其它函�(shù)中直接調(diào)��
MATLAB�(yǔ)言具有下述顯著特點(diǎn)�
1、具有強(qiáng)大的矩陣�(yùn)算能力:Matrix Laboratory(矩陣實(shí)�(yàn)室),使得矩陣運(yùn)算非常簡(jiǎn)��
2、是一種演算式�(yǔ)言
3、MATLAB的基本數(shù)�(jù)單元是既不需要指定維�(shù),也不需要說(shuō)明數(shù)�(jù)類型的矩陣(向量和標(biāo)量為矩陣的特例),而且�(shù)�(xué)表達(dá)式和�(yùn)算規(guī)則與通常的習(xí)慣相��
4、MATLAB�(yǔ)言編程�(jiǎn)�,使用方��
操作桌面包括5�(gè)窗口(瀏覽�)�
1、命令窗�(Command Window)�
2、工作空間窗�(Workspace)
3、當(dāng)前目錄瀏覽�(Current Directory)�
4、命令歷史窗�(Command history)�
5、啟�(dòng)平臺(tái)(Launch Pad)�
7.1版之�,MATLB的釋放編�(hào)均以�(shù)字來(lái)命名,例如R7,R12.1,R14 SP1�;從7.2版開(kāi)�,釋放編�(hào)以年份來(lái)命名,每�3月份推出的用a表示�9月份推出的則以b表示�
版本 | 建造編�(hào) | �(fā)布時(shí)� |
MATLAB 1.0 | 1984 | |
MATALB 2 | 1986 | |
MATLAB 3 | 1987 | |
MATLAB 3.5 | 1990 | |
MATLAB 4 | 1992 | |
MATLAB 4.2c | R7 | 1994 |
MATLAB 5.0 | R8 | 1996 |
MATLAB 5.1 | R9 | 1997 |
MATLAB 5.1.1 | R9.1 | 1997 |
MATLAB 5.2 | R10 | 1998 |
MATLAB 5.2.1 | R10.1 | 1998 |
MATLAB 5.3 | R11 | 1999 |
MATLAB 5.3.1 | R11.1 | 1999 |
MATLAB 6.0 | R12 | 2000 |
MATLAB 6.1 | R12.1 | 2001 |
MATLAB 6.5 | R13 | 2002 |
MATLAB 6.5.1 | R13SP1 | 2003 |
MATLAB 6.5.2 | R13SP2 | 2003 |
MATLAB 7 | R14 | 2004 |
MATLAB 7.0.1 | R14SP1 | 2004 |
MATLAB 7.0.4 | R14SP2 | 2005 |
MATLAB 7.1 | R14SP3 | 2005 |
MATLAB 7.2 | R2006a | 2006 |
MATLAB 7.3 | R2006b | 2006 |
MATLAB 7.4 | R2007a | 2007 |
MATLAB 7.5 | R2007b | 2007 |
MATLAB 7.6 | R2008a | 2008 |
MATLAB 7.7 | R2008b | 2008 |
MATLAB 7.8 | R2009a | 2009.3.6 |
MATLAB 7.9 | R2009b | 2009.9.4 |
MATLAB 7.10 | R2010a | 2010.3.5 |
MATLAB 7.11 | R2010b | 2010.9.3 |
MATLAB包括擁有�(shù)百�(gè)�(nèi)部函�(shù)的主包和三十幾種工具�。工具包又可以分為功能性工具包和學(xué)科工具包。功能工具包用來(lái)�(kuò)充MATLAB的符�(hào)�(jì)�,可視化建模仿真,文字處理及�(shí)�(shí)控制等功�。學(xué)科工具包是性比較強(qiáng)的工具包,控制工具包,信�(hào)處理工具�,通信工具包等都屬于此��
�(kāi)放性使MATLAB廣受用戶歡迎。除�(nèi)部函�(shù)�,所有MATLAB主包文件和各種工具包都是可讀可修改的文件,用戶通過(guò)�(duì)源程序的修改或加入自己編寫程序構(gòu)造新的專用工具包�
Matlab Main Toolbox——matlab主工具箱
Control System Toolbox——控制系�(tǒng)工具�
Communication Toolbox——通訊工具�
Financial Toolbox——財(cái)政金融工具箱
System Identification Toolbox——系�(tǒng)辨識(shí)工具�
Fuzzy Logic Toolbox——模糊邏輯工具箱
Higher-Order Spectral Analysis Toolbox——高階譜分析工具�
Image Processing Toolbox——圖象處理工具箱
LMI Control Toolbox——線性矩陣不等式工具�
Model predictive Control Toolbox——模型預(yù)�(cè)控制工具�
μ-Analysis and Synthesis Toolbox——μ分析工具箱
Neural Network Toolbox——神�(jīng)�(wǎng)�(luò)工具�
Optimization Toolbox——優(yōu)化工具箱
Partial Differential Toolbox——偏微分方程工具�
Robust Control Toolbox——魯棒控制工具箱
Signal Processing Toolbox——信�(hào)處理工具�
Spline Toolbox——樣條工具箱
Statistics Toolbox——統(tǒng)�(jì)工具�
Symbolic Math Toolbox——符�(hào)�(shù)�(xué)工具�
Simulink Toolbox—�?jiǎng)討B(tài)仿真工具�
Wavele Toolbox——小波工具箱
�1)友好的工作平臺(tái)和編程環(huán)�
MATLAB由一系列工具組成。這些工具方便用戶使用MATLAB的函�(shù)和文件,其中許多工具采用的是圖形用戶界面。包括MATLAB桌面和命令窗口、歷史命令窗�、編輯器和調(diào)試器、路徑搜索和用于用戶瀏覽幫助、工作空�、文件的瀏覽器。隨著MATLAB的商�(yè)化以及軟件本身的不斷升級(jí),MATLAB的用戶界面也越來(lái)越精致,更加接近Windows的標(biāo)�(zhǔn)界面,人�(jī)交互性更�(qiáng),操作更�(jiǎn)�。而且新版本的MATLAB提供了完整的�(lián)�(jī)查詢、幫助系�(tǒng),極大的方便了用戶的使用。簡(jiǎn)單的編程�(huán)境提供了比較完備的調(diào)試系�(tǒng),程序不必經(jīng)�(guò)編譯就可以直接運(yùn)�,而且能夠及時(shí)地報(bào)告出�(xiàn)的錯(cuò)誤及�(jìn)行出�(cuò)原因分析�
?�?)簡(jiǎn)單易用的程序�(yǔ)言
Matlab一�(gè)的矩�/陣列�(yǔ)言,它包含控制�(yǔ)句、函�(shù)、數(shù)�(jù)�(jié)�(gòu)、輸入和輸出和面�?qū)ο缶幊烫攸c(diǎn)。用戶可以在命令窗口中將輸入�(yǔ)句與�(zhí)行命令同�,也可以先編寫好一�(gè)較大的復(fù)雜的�(yīng)用程序(M文件)后再一起運(yùn)�。新版本的MATLAB�(yǔ)言是基于最為流行的C++�(yǔ)言基礎(chǔ)上的,因此語(yǔ)法特征與C++�(yǔ)言極為相似,而且更加�(jiǎn)�,更加符合科技人員�(duì)�(shù)�(xué)表達(dá)式的書寫格式。使之更利于非計(jì)算機(jī)的科技人員使用。而且這種�(yǔ)言可移植性好、可拓展性極�(qiáng),這也是MATLAB能夠深入到科�(xué)研究及工程計(jì)算各�(gè)�(lǐng)域的重要原因�
?�?)強(qiáng)大的科學(xué)�(jì)算機(jī)�(shù)�(jù)處理能力
MATLAB是一�(gè)包含大量�(jì)算算法的集合。其擁有600多�(gè)工程中要用到的數(shù)�(xué)�(yùn)算函�(shù),可以方便的�(shí)�(xiàn)用戶所需的各種計(jì)算功�。函�(shù)中所使用的算法都是科研和工程�(jì)算中的研究成�,而前�(jīng)�(guò)了各種優(yōu)化和容錯(cuò)處理。在通常情況�,可以用它來(lái)代替底層編程�(yǔ)言,如C和C++ 。在�(jì)算要求相同的情況�,使用MATLAB的編程工作量�(huì)大大減少。MATLAB的這些函數(shù)集包括從最�(jiǎn)單最基本的函�(shù)到諸如矩陣,特征向量、快速傅立葉變換的復(fù)雜函�(shù)。函�(shù)所能解決的�(wèn)題其大致包括矩陣�(yùn)算和線性方程組的求解、微分方程及偏微分方程的組的求解、符�(hào)�(yùn)算、傅立葉變換和數(shù)�(jù)的統(tǒng)�(jì)分析、工程中的優(yōu)化問(wèn)�、稀疏矩陣運(yùn)算、復(fù)�(shù)的各種運(yùn)�、三角函�(shù)和其他初等數(shù)�(xué)�(yùn)�、多維數(shù)組操作以及建模動(dòng)�(tài)仿真��
�4)出色的圖形處理功能
MATLAB自產(chǎn)生之日起就具有方便的�(shù)�(jù)可視化功�,以將向量和矩陣用圖形表�(xiàn)出來(lái),并且可以對(duì)圖形�(jìn)行標(biāo)注和打印。高層次的作圖包括二維和三維的可視化、圖象處�、動(dòng)畫和表達(dá)式作�??捎糜诳茖W(xué)�(jì)算和工程繪圖。新版本的MATLAB�(duì)整�(gè)圖形處理功能作了很大的改�(jìn)和完�,使它不僅在一般數(shù)�(jù)可視化軟件都具有的功能(例如二維曲線和三維曲面的繪制和處理等)方面更加完善,而且�(duì)于一些其他軟件所�(méi)有的功能(例如圖形的光照處理、色度處理以及四維數(shù)�(jù)的表�(xiàn)等),MATLAB同樣表現(xiàn)了出色的處理能力。同�(shí)�(duì)一些特殊的可視化要�,例如圖形對(duì)話等,MATLAB也有相應(yīng)的功能函�(shù),保證了用戶不同層次的要�。另外新版本的MATLAB還著重在圖形用戶界面(GUI)的制作上作了很大的改善,對(duì)這方面有特殊要求的用戶也可以得到滿足�
?�?)應(yīng)用廣泛的模塊集合工具�
MATLAB�(duì)許多專門的領(lǐng)域都�(kāi)�(fā)了功能強(qiáng)大的模塊集和工具箱。一般來(lái)�(shuō),它們都是由特定�(lǐng)域的專家�(kāi)�(fā)的,用戶可以直接使用工具箱學(xué)�(xí)、應(yīng)用和�(píng)估不同的方法而不需要自己編寫代碼。目�,MATLAB已經(jīng)把工具箱延伸到了科學(xué)研究和工程應(yīng)用的諸多�(lǐng)域,諸如�(shù)�(jù)采集、數(shù)�(jù)�(kù)接口、概率統(tǒng)�(jì)、樣條擬�、優(yōu)化算�、偏微分方程求解、神�(jīng)�(wǎng)�(luò)、小波分析、信�(hào)處理、圖像處理、系�(tǒng)辨識(shí)、控制系�(tǒng)�(shè)�(jì)、LMI控制、魯棒控�、模型預(yù)�(cè)、模糊邏�、金融分析、地圖工�、非線性控制設(shè)�(jì)、實(shí)�(shí)快速原型及半物理仿�、嵌入式系統(tǒng)�(kāi)�(fā)、定�(diǎn)仿真、DSP與通訊、電力系�(tǒng)仿真�,都在工具箱(Toolbox)家族中有了自己的一席之��
�6)實(shí)用的程序接口和發(fā)布平�(tái)
新版本的MATLAB可以利用MATLAB編譯器和C/C++�(shù)�(xué)�(kù)和圖形庫(kù),將自己的MATLAB程序自動(dòng)�(zhuǎn)換為�(dú)立于MATLAB�(yùn)行的C和C++代碼。允許用戶編寫可以和MATLAB�(jìn)行交互的C或C++�(yǔ)言程序。另�,MATLAB�(wǎng)�(yè)服務(wù)程序還容許在Web�(yīng)用中使用自己的MATLAB�(shù)�(xué)和圖形程�。MATLAB的一�(gè)重要特色就是具有一套程序擴(kuò)展系�(tǒng)和一組稱之為工具箱的特殊�(yīng)用子程序。工具箱是MATLAB函數(shù)的子程序�(kù),每一�(gè)工具箱都是為某一類學(xué)科和�(yīng)用而定制的,主要包括信�(hào)處理、控制系�(tǒng)、神�(jīng)�(wǎng)�(luò)、模糊邏輯、小波分析和系統(tǒng)仿真等方面的�(yīng)��
�7)應(yīng)用軟件開(kāi)�(fā)(包括用戶界面)
在開(kāi)�(fā)�(huán)境中,使用戶更方便地控制多�(gè)文件和圖形窗口;在編程方面支持了函數(shù)嵌套,有條件中斷�;在圖形化方�,有了更�(qiáng)大的圖形�(biāo)注和處理功能,包括對(duì)性對(duì)起連接注釋等;在輸入輸出方�,可以直接向Excel和HDF5�(jìn)行連接�