第一章:MATLAB概述講義_第1頁
第一章:MATLAB概述講義_第2頁
第一章:MATLAB概述講義_第3頁
第一章:MATLAB概述講義_第4頁
第一章:MATLAB概述講義_第5頁
已閱讀5頁,還剩52頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

第一章Matlab概述本章內容1.1Matlab簡介1.2Matlab特點和功能1.3MatlabR2012b的視窗環(huán)境1.4Matlab基本命令1.5Matlab幫助系統學習目標了解Matlab的基本情況,發(fā)展歷史。熟練掌握安裝、啟動和退出Matlab的方法。了解Matlab的各種功能。熟練掌握命令窗口的使用。熟練掌握Matlab幫助。本章知識地圖matlab概述matlab簡介matlab特點和功能R2012bd的視窗環(huán)境matlab基本命令matlab幫助系統matlab發(fā)展matlab影響matlab基本組成指令窗當前目錄瀏覽器工作內存空間瀏覽器歷史指令窗常用窗口命令窗口控制的常用命令輸出格式其它常用功能幫助命令幫助窗口matlab安裝Matlab(矩陣實驗室)是MATrixLABoratory的縮寫,是一款由美國TheMathWorks公司出品的商業(yè)數學軟件。Matlab是一種用于算法開發(fā)、數據可視化、數據分析以及數值計算的高級技術計算語言和交互式環(huán)境。1.1Matlab簡介除了矩陣運算、繪制函數/數據圖像等常用功能外,Matlab還可以用來創(chuàng)建用戶界面及與調用其它語言(包括C,C++和FORTRAN)編寫的程序。盡管Matlab主要用于數值運算,但利用為數眾多的附加工具箱(Toolbox)它也適合不同領域的應用。另外還有一個配套軟件包Simulink,提供了一個可視化開發(fā)環(huán)境,常用于系統模擬、動態(tài)/嵌入式系統開發(fā)等方面。1.1.1Matlab的發(fā)展

1980年,Moler教授用Fortran語言編寫了集命令翻譯、科學計算于一身的一套交互式軟件系統。1984年,Moler等成立了MathWorks的公司,用C語言完全改寫Matlab,并推出第一個商業(yè)版。此后,增添圖形圖像處理、符號運算、以及與其他流行軟件的接口功能,使得Matlab的功能越來越強大。到九十年代,在國際上30幾個數學類科技應用軟件中,Matlab在數值計算方面獨占鰲頭。1984第一個商業(yè)化的DOS版本1992MATLAB4.01994MATLAB4.21997MATLAB5.01999MATLAB5.32000MATLAB6.02002MATLAB6.52004MATLAB7.02006MATLAB7.2Release2006a2006MATLAB7.3Release2006b2008MATLAB7.6Release2008a2008MATLAB7.7Release2008b……1.1.1Matlab的發(fā)展(續(xù)) 1984年,Matlab1.0(DOS版,182K,20多個函數) 1992年,Matlab4.0(93年推出Windows版,加入simulink)

1994年,Matlab4.2(得到廣泛重視和應用) 1999年,Matlab5.3(真正實現32位運算)

2002年,Matlab6.5(采用JIT加速器) 2004年,Matlab7.0(Release14)

…1.1.1Matlab的發(fā)展(續(xù))

2012年3月,Matlab7.14(Release2012a)

2012年9月,Matlab8.0(Release2012b,本課程演示的版本)

2013年,Matlab8.1(Release2013a,目前最新版本)

說明: 到7.1版為止,MATLAB的釋放編號均以數字來命名,例如R7,R12.1,R14SP1等;從7.2版開始,釋放編號以年份來命名,每年3月份推出的用a表示,9月份推出的則以b表示。1.1.2Matlab的歷史影響MATLAB就是這樣經過了近30年的專門打造、20多年的千錘百煉,它以高性能的數組運算(包括矩陣運算)為基礎,不僅實現了大多數數學算法的高效運行函數和數據可視化,而且提供了非常高效的計算機高級編程語言,在用戶可參與的情況下,各種專業(yè)領域的工具箱不斷開發(fā)和完善,MATLAB取得了巨大的成功,已廣泛應用于科學研究、工程應用,用于數值計算分析、系統建模與仿真。1.1.2Matlab的歷史影響(續(xù))早在20世紀90年代初,歐美等發(fā)達國家的大學就將MATLAB列為一種必須掌握的編程語言。近幾年來,國內的很多大學也將MATLAB列為了本科生必修課程。MATLAB軟件功能之強大、應用之廣泛,已成為為21世紀最為重要的科學計算語言??梢妼W習掌握這一工具的重要性。

1.1.3Matlab的基本組成Matlab軟件主要由主包、Simulink動態(tài)系統仿真和工具箱(Toolbox)三大部分組成。主包包括了Matlab語言、數學函數庫、工作環(huán)境、圖形處理系統和應用程序接口五部分。Simulink是用于系統仿真的交互式圖形系統,是Matlab非常重要的共生產品。Toolbox實際是用Matlab的基本語句編成的開放式各種子程序集,用于解決各專業(yè)領域的特定問題,例如:控制系統、信號處理、圖像處理、模糊集合、神經網絡、小波分析等。1.1.3Matlab的基本組成(續(xù))

MATLAB產品由若干模塊組成,不同的模塊完成不同的功能,其中有:

實際上MATLAB本身就是一個極其豐富的資源庫,那么應該從哪一部分開始著手、學習使用MATLAB呢?這就有必要了解這一軟件產品的體系結構。MATLABCompiler這種編譯器可以將MATLAB程序文件編譯生成標準的C/C++語言文件,而生成的標準的C/C++文件可以被任何一種C/C++編譯器編譯生成函數庫或可執(zhí)行文件,以提高程序的運行效率。MATLABMATLABToolboxesMATLABCompilerSimulinkSimulinkBlocksetsReal-TimeWorkshopStateflowStateflowCoder由這些模塊產品之間的關系如上圖1.1.3表示。圖1.1.3MATLAB產品體系結構圍繞著MATLAB這個計算核心,形成了諸多針對不同應用領域的算法程序包,被稱為專用工具箱(Toolbox),這些工具箱的列表以及每個工具箱的使用詳見MATLAB在線幫助文檔。MATLAB本身所提供的工具箱大概有40多個,另外還有其他公司或研究單位開發(fā)提供的工具箱,這些工具箱的總數已有100多個,而且新的工具箱還在不斷增加。如果你有特別的應用領域,可以首先到網上查找是否已有相關的工具箱,很可能已有人將你要做的應用程序作成工具箱了。Simulink是窗口圖形方式的、專門用于連續(xù)時間或離散時間的動態(tài)系統建模、分析和仿真的核心。Real-TimeWorkshop是一種實時代碼生成工具,它能夠根據Simulink模型生成程序源代碼,并打包、編譯所生成的源代碼生成實時應用程序。Stateflow是基于有限狀態(tài)機理論針對復雜的事件驅動系統進行建模、仿真的工具。StateflowCoder是基于Stateflow狀態(tài)圖生成高效、優(yōu)化的程序代碼。圍繞著Simulink仿真核心所開發(fā)的應用程序包,稱為模塊集(Blocksets),MATLAB產品提供許多專用模塊集,如CommunicationBlockset、DSPBlockset、SimPowerSystemBlockset、SignalProcessingBlockset等,詳見MATLAB在線幫助文檔。MATLAB是MATLAB產品家族的計算核心與基礎,是集高性能數值計算與數據可視化于一體的高效編程語言。1.1.4Matlab的安裝購買(或下載)Matlab軟件(本校學生登錄進入目錄/soft/教育學習/Matlab/2012b即可下載該軟件)插入光盤,自動運行;或點擊安裝程序setup.exe安裝中選擇“不使用Internet安裝”接受許可協議輸入安裝密鑰(注意:自R2008a開始增加了激活要求)倒入許可協議設置快捷方式點擊“安裝”進行安裝等待安裝結束1.2.1Matlab的特點Matlab具有用法簡易、可靈活運用、程式結構強又兼具延展性。以下為其幾個特色:高階但簡單的程式環(huán)境。做為一種直譯式的程式語言,Matlab容許使用者在短時間內寫完程式,所花的時間約為用FORTRAN或C的幾分之一,而且不需要編譯(compile)及聯結(link)即能執(zhí)行,同時包含了更多及更容易使用的內建功能。MATLAB基本的語言環(huán)境提供了數以千計的計算函數,極大的提高了用戶的編程效率。如,一個fft函數即可完成對指定數據的快速傅里葉變換,這一任務如果用C語言來編程實現的話,至少要用幾十條C語言才能完成。1.2

Matlab的特點與功能MATLAB是一種腳本式(scripted)的解釋型語言,無論是命令、函數或變量,只要在命令窗口的提示符下鍵入,并“回車(Enter)”,MATLAB都予以解釋執(zhí)行。先進的資料視覺化功能。Matlab的物件導向圖形架構讓使用者可執(zhí)行視覺數據分,并制作高品質的圖形,完成科學性或工程性圖文并茂的文章。平臺無關性(可移植性)。MATLAB軟件可以運行在很多不同的計算機系統平臺上,如WindowsMe/NT/2000/XP、很多不同版本的UNIX以及Linux。無論你在哪一個平臺上編寫的程序都可以運行在其它平臺上,對于MATLAB數據文件也一樣,是平臺無關的。極大保護了用戶的勞動、方便了用戶。其繪圖功能也是平臺無關的。無論任何系統平臺,只要MATLAB能夠運行,其圖形功能命令就能正常運行。1.2

Matlab的特點與功能(續(xù))開放及可延伸的架構。Matlab容許使用者接觸它大多數的數學原使碼,檢視運算法,更改現存函數,甚至加入自己的函數使Matlab成為使用者所需要的環(huán)境。豐富的程式工具箱。Matlab的程式工具箱融合了套裝前軟體的優(yōu)點,與一個靈活的開放但容易操作之環(huán)境,這些工具箱提供了使用者在特別應用領域所需之許多函數?,F有工具箱有:符號運算(利用MapleV的計算核心執(zhí)行)、影像處理、統計分析、訊號處理、神經網路、模擬分析、控制系統、即時控制、系統確認、強建控制、弧線分析、最佳化、模糊邏輯、mu分析及合成、化學計量分析。1.2

Matlab的特點與功能(續(xù))1.2.2Matlab的功能Matlab符號計算功能

Matlab和著名的符號計算語言Maple相結合Matlab的繪圖功能

Matlab提供豐富的繪圖命令, 很方便實現數據的可視化Matlab的編程功能

Matlab具有程序結構控制、函數 調用、數據結構、輸入輸出、面向對象等程序語言特征,而且簡單易學、編程效率高。通過Matlab進行編程完成特定的任務1.2

Matlab的特點與功能(續(xù))Matlab豐富的工具箱(toolbox) 根據專門領域中的特殊需要而設計的各種可選工具箱Matlab的Simulink動態(tài)仿真集成環(huán)境 提供建立系統模型、選擇仿真參數和數值算法、啟動仿真程序對該系統進行仿真、設置不同的輸出方式來觀察仿真結果等功能SymbolicMathPDEOptimizationSignalprocessImageProcessStatisticsControlSystemSystemIdentification……1.2

Matlab的特點與功能(續(xù))例、用一個簡單命令求解線性系統

3x1+x2-x3=3.6x1+2x2+4x3=2.1-x1+4x2+5x3=-1.4A=[31-1;124;-145];b=[3.6;2.1;-1.4];x=A\bx=1.4818-0.46060.3848例、用簡短命令計算并繪制在0x6范圍內的sin(2x)、sinx2、sin2x。x=linspace(0,6)y1=sin(2*x),y2=sin(x.^2),y3=(sin(x)).^2;plot(x,y1,x,y2,x,y3)1.3MatlabR2012b的視窗環(huán)境1.3.1啟動與退出MATLAB啟動MATLAB 直接用鼠標雙擊桌面上MATLAB圖標 或Windows桌面的“開始”—〉“所有程 序”—〉“MATLAB”—〉“R2012b”—〉 “MATLABR2012b”退出MATLAB 關閉MATLAB桌面 或在命令窗口執(zhí)行quit或exit命令MATLAB缺省桌面(見下頁)1.3MatlabR2012b的視窗環(huán)境1.3MatlabR2012b的視窗環(huán)境(續(xù))HOMEPLOTSAPPSCommandwindowWorkspaceCommandHistoryCurrentFlolderDetails該桌面的上層鋪放著三個最常用的界面: 指令窗(CommandWindow)、當前目錄(CurrentDirectory)瀏覽器、Matlab工作內存空間(Workspace)瀏覽器、歷史指令(CommandHistory)窗。1.3MatlabR2012b的視窗環(huán)境(續(xù))1.3.2指令窗(CommandWindow)進入Matlab之后,會看道到一個視窗CommandWindow稱為指令視窗,它是你鍵入指令的地方也是Matlab將計算結果顯示在此。在該窗內,可鍵入各種送給Matlab運作的指令、函數、表達式;顯示除圖形外的所有運算結果;運行錯誤時,給出相關的出錯提示。1.3.2Matlab指令窗(續(xù))Matlab語句形式

>>變量=表達式;

當鍵入回車鍵時,該語句被執(zhí)行。語句執(zhí)行之后,窗口自動顯示出語句執(zhí)行的結果。如果希望結果不被顯示,則需在語句之后加上分號。此時盡管結果沒有顯示,但它依然被賦值并在Matlab工作空間中分配了內存。方向鍵可以編輯修改已輸入的命令 ↑:調出上一行語句; ↓:調出下一行語句;多行命令(…)如果命令語句超過一行或者太長希望分行輸入,則可以使用多行命令繼續(xù)輸入。例如:S=1-12+13+4+9-4-18;等價于:

S=1-12+13+4+…9-4-18;命令窗口的分頁輸出

moreoff:不允許分頁

moreon:允許分頁

more(n):指定每頁輸出的行數回車鍵顯示下一行,空格鍵顯示下一頁,q結束當前顯示。1.3.2Matlab指令窗(續(xù))在該瀏覽器中,展示著子目錄、M文件、MAT文件和MDL文件等。對該界面上的M文件,可直接進行復制、編輯和運行;界面上的MAT數據文件,可直接送入Matlab工作內存。此外,對該界面上的子目錄,可進行Windows平臺的各種標準操作。此外,在當前目錄瀏覽器正下方,還有一個“文件概況窗(Details)”。該窗顯示所選文件的概況信息。比如該窗會展示:M函數文件的H1行內容,最基本的函數格式;所包含的內嵌函數和其它子函數。1.3.3當前目錄(CurrentDirectory)瀏覽器1.3.3

當前目錄瀏覽器(續(xù))該瀏覽器默認地位于當前目錄瀏覽器的后臺。該窗口羅列出Matlab工作空間中所有的變量名、大小、字節(jié)數;在該窗中,可對變量進行觀察、圖示、編輯、提取和保存。1.3.4工作內存空間(Workspace)瀏覽器Matlab的workspace中的變量管理who:顯示當前工作空間中所有變量的一個簡單列表;whos:顯示出變量的大小、數據格式等詳細信息;clear:清除工作空間中所有的變量;clear變量名:清除指定的變量;1.3.4Matlab工作內存空間瀏覽器(續(xù))Matlab的workspace中的變量保存和載入save:將工作空間的所有變量存到Matlab.mat的二進制文件中。savefilename:將所有變量保存到磁盤文件filename中。savefilenamevariables:將variables所表示的變量列表保存到磁盤文件filename中。各個不同的變量之間只能用空格來分隔。load(filename)(variables):將數據文件載入Matlab工作空間。1.3.4Matlab工作內存空間瀏覽器(續(xù))該窗記錄已經運作過的指令、函數、表達式,及它們運行的日期、時間。該窗中的所有指令、文字都允許復制、重運行及用于產生M文件。1.3.5歷史指令(CommandHistory)窗【例1.3-1】計算半徑為5.2m的圓的周長和面積。>>radius=5.2;%圓的半徑>>area=pi*5.2^2,circle_len=2*pi*5.2area=

84.9487circle_len=

32.6726以上兩例,命令行中用到了等號“=”。計算結果不再賦給“ans”,而是賦給用戶指定的變量y、area、circle_len。無論是預定義變量還是用戶自定義變量都被存儲在系統的工作空間內,即系統定義的一個存儲窗口變量的內存空間。Who、whos命令用來顯示工作空間的變量clear命令用來清除工作空間的變量。>>who>>whosYourvariablesare:anscircle_lenyarearadius

Name SizeBytesClassans 1x18doublearrayarea 1x18doublearraycircle_len 1x18doublearrayradius 1x18doublearrayy 1x18doublearrayGrandtotalis5elementsusing40bytes>>cleary>>whoYourvariablesare:anscircle_lenarearadius

>>clearansarea>>whosYourvariablesare:NameSizeBytesClasscircle_len1x18doublearrayradius1x18doublearrayGrandtotalis2elementsusing16bytesMatlab兩種工作方式:指令行操作方式——鍵入命令行。執(zhí)行M文件方式——鍵入程序名。1.4Matlab基本命令help 啟動聯機幫助文件顯示

what 列出當前目錄下的有關文件

type 列出M文件

lookfor 對help信息中的關鍵詞查找

which 找出函數與文件所在的目錄名

demo 運行Matlab的演示程序

path 設置或查詢Matlab的路徑who 列出當前工作空間中的變量

whos 列出當前工作空間中的變量及信息或用 工具欄上的Workspace瀏覽器1.4.1常用的窗口命令cedit 設置命令行編輯與回調的參數

clc 清除命令窗口中的顯示

home 將光標移動到左上角位置

format 設置輸出格式

echo 顯示文件中的Matlab命令

more 控制命令窗口的輸出頁面1.4.2對命令窗口控制的常用命令1.4.3Matlab的輸出格式Matlab以雙精度執(zhí)行所有的運算,運算結果可以在屏幕上輸出,同時賦給指定變量;若無指定變量,則系統會自動將結果賦給變量“ans”Matlab中數的輸出格式可以通過format命令指定 注意:

輸出格式由format命令控制,只是影響屏幕顯示效果,不影響內部存儲和計算。格式解釋以pi為例format短格式(缺省顯示格式),同short3.1416formatshort短格式(缺省顯示格式),只顯示5位3.1416formatlong長格式,雙精度數15位,單精度數7位3.14159265358979formatshorte短格式e方式(科學計數格式)3.1416e+000formatlonge長格式e方式3.141592653589793e+000formatshortg短格式g方式3.1416formatlongg長格式g方式3.14159265358979formatcompact壓縮格式formatloose自由格式format+/formatbank/formatrat/formathex(詳情查看聯機幫助)1.4.3Matlab的輸出格式(續(xù))(1)↑或者Ctrl+p

調用上一次的命令(2)↓或者Ctrl+n

調用下一行的命令

(3)←或者Ctrl+b

退后一格

(4)→或者Ctrl+f

前移一格(5)Ctrl+←或者Ctrl+r

向右移一個單詞

(6)Ctrl+→或者Ctrl+l

向左移一個單詞(7)Home或者Ctrl+a

光標移到行首1.4.4其它常用功能(8)End或者Ctrl+e

光標移到行尾

(9)Esc或者Ctrl+u

清除一行

(10)Del或者Ctrl+d

清除光標后字符

(11)Backspace或者Ctrl+h

清除光標前字符

(12)Ctrl+k

清除光標至行尾字

(13)Ctrl+c

中斷程序運行(14)Tab鍵命令補全功能最后我們說一下Matlab的幫助系統,一開始學接觸Matlab的人不喜歡用幫助系統,因為里面的說明都是英文,我覺得大家應該養(yǎng)成有問題去求助help系統的習慣,問題最好還是能自己解決,這樣印象會比較深刻,不要碰到不懂的函數和問題就到論壇里問,幫助文件的英文描述語法還是比較簡單的,個別詞用詞霸查一下,用于幫助系統的功能十分強大,我覺得一半以上的問題是可以自己解決的。1.5Matlab幫助系統MATLAB提供的幫助信息有兩類簡單純文本幫助信息helplookfor(條件比較寬松)例:inverse窗口式綜合幫助信息(文字、公式、圖形)dochelpwin1.5Matlab幫助系統(續(xù))1.5.1

Matlab的幫助命令helpwin指令在命令窗口中鍵入helpwin,進入幫助窗口;helpdesk指令在命令窗口中鍵入helpdesk(或doc,或點擊工具條中的?按鈕),進入幫助窗口,顯示HTML格式的幫助內容。help命令

help:列出所有的幫助主題,每個幫助主題對應于Matlab搜索路徑中的一個目錄;

help庫名:得到庫中全部函數名;

help函數名或命令;得到函數或命令的幫助信息;lookfor命令 如在命令窗口中鍵入:lookforsu,則只要有與‘su’匹配的單詞就顯示出來。其收索條件比help命令寬。demo命令

demo:可得到Matlab及其所以工具箱中的全部演示程序。是學習Matlab的一種很好的途徑。提示:在MatlabR2012b開啟的狀態(tài)下按下F1也可以調出幫助系統。1.5.1

Matlab的幫助命令(續(xù))1.5.2

Matlab的幫助窗口雖然help可以隨時提供幫助,但必須知道準確的函數名稱。當不能確定函數名稱時,help就無能為力了。1.5.2

Matlab的幫助窗口(續(xù))>>helpwin1.5.2

Matlab的幫助窗口(續(xù))>>demo1.5.2

Matlab的幫助窗口(續(xù))鼠標單擊按鈕本章小結本章主要內容:介紹了MATLAB的發(fā)展、基本組成、主要功能及其特點,MATLAB命令窗口及文件管理,MATLAB幫助系統等工作環(huán)境的基本操作。重點和難點:命令行的輸入,用戶目錄及搜索路徑的設置。練習題1.標點符號—可以使命令不顯示結果,———用來表示注釋改行。2.用“format”命令設置數據輸出格式,————將Pi顯示為3.14159265358979,——將Pi顯示為3.1416e+000.3.輸入變量a=5

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論