《信號與線性系統(tǒng)分析.ppt》由會員分享,可在線閱讀,更多相關(guān)《信號與線性系統(tǒng)分析.ppt(42頁珍藏版)》請在裝配圖網(wǎng)上搜索。
1、信號與線性系統(tǒng)分析基于MATLAB的方法實現(xiàn),連麗紅 E-mail: 電話:15959278423,實驗課程整體介紹,目標(biāo): 了解MATLAB,能夠熟練掌握數(shù)學(xué)(矩陣)運算,簡單編程,簡單的數(shù)據(jù)處理及基本圖形繪制。 能夠結(jié)合信號與系統(tǒng)理論課,使用MATLAB進行計算機模擬與仿真,加深對信號與系統(tǒng)基本原理、方法及應(yīng)用的理解。 考核方式 平時上課表現(xiàn)及實驗報告(50) 考試采用上機考試的方式(50),實驗要求,實驗上課期間不準(zhǔn)上網(wǎng),玩游戲,發(fā)現(xiàn)三次則取消考試資格 實驗程序及實驗報告(word文檔)必須上傳. 實驗報告要求: 實驗?zāi)康模?0%) 實驗程序及結(jié)果,若有必要需對結(jié)果作必要的說明(60%)
2、 實驗的心得與體會(30),主要內(nèi)容,MATLAB應(yīng)用基礎(chǔ) MATLAB入門與操作 MATLAB的數(shù)值計算 MATLAB的符號運算功能 MATLAB程序設(shè)計語言 MATLAB的數(shù)據(jù)圖形可視化 圖形用戶界面(GUI)設(shè)計 信號與系統(tǒng)在MATLAB的實現(xiàn) 信號的可視化及時域運算與變換 基于MATLAB的LTI系統(tǒng)時域分析與實現(xiàn) 周期信號的傅里葉級數(shù)分析及MATLAB實現(xiàn) 連續(xù)時間信號的頻域分析及MATLAB實現(xiàn) 連續(xù)時間信號的采樣與重構(gòu) 連續(xù)時間信號與系統(tǒng)的復(fù)頻域分析及MATLAB實現(xiàn) 離散系統(tǒng)的Z域分析及MATLAB實現(xiàn),最終目標(biāo),MATLAB入門與操作,學(xué)習(xí)要求,基本了解MATLAB語言的基本
3、特點; 熟悉其視窗環(huán)境的基本使用方法; 初步具備將一般數(shù)學(xué)問題轉(zhuǎn)化成對應(yīng)的計算機模型并進行處理的能力。,MATLAB簡介,matlab語言是由美國的Clever Moler博士于1980年開發(fā)的,設(shè)計者的初衷是為解決“線性代數(shù)”課程的矩陣運算問題,取名MATLAB即Matrix Laboratory矩陣實驗室的意思。 經(jīng)過二十幾年的發(fā)展,MATLAB已經(jīng)不僅僅是一個“矩陣實驗室”了,它集科學(xué)計算、圖象處理、數(shù)字信號處理等于一身,并提供了豐富的圖形界面設(shè)計方法。已成為國際公認(rèn)的最優(yōu)秀的工程應(yīng)用開發(fā)環(huán)境。,在科學(xué)研究和工程應(yīng)用中,往往要進行大量的數(shù)學(xué)計算,其中包括矩陣運算。一般來說,這些運算難以用
4、手工精確、快捷地進行,而要借助計算機編制相應(yīng)的程序來作近似計算。,MATLAB的典型應(yīng)用,數(shù)學(xué)計算 科學(xué)算法開發(fā) 數(shù)據(jù)采集及信號處理 建模及原型仿真 數(shù)據(jù)分析和數(shù)據(jù)可視化 科學(xué)與工程繪圖 應(yīng)用程序開發(fā)(包括建立圖形化用戶界面),MATLAB基本功能,強大的數(shù)值(矩陣)運算功能 廣泛的符號運算功能 高級與低級兼?zhèn)涞膱D形功能(計算結(jié)果的可視化功能) 可靠的容錯功能 應(yīng)用靈活的兼容與接口功能 信息量豐富的聯(lián)機檢索功能,矩陣運算功能,MATLAB提供了豐富的矩陣運算處理功能,是基于矩陣運算的處理工具。 變量 矩陣,運算 矩陣的運算 例如 C = A + B ,A,B,C都是矩陣,是矩陣的加運算 即使一
5、個常數(shù),Y=5,MATLAB也看做是一個11的矩陣,,例、用一個簡單命令求解線性系統(tǒng) 3x1+ x2 - x3 = 3.6 x1+2x2+4x3 = 2.1 -x1+4x2+5x3 = -1.4 A=3 1 -1;1 2 4;-1 4 5;b=3.6;2.1;-1.4; x=Ab x = 1.4818 -0.4606 0.3848,符號運算功能,符號運算即用字符串進行數(shù)學(xué)分析 允許變量不賦值而參與運算 用于解代數(shù)方程、微積分、復(fù)合導(dǎo)數(shù)、積分、二重積分、有理函數(shù)、微分方程、泰樂級數(shù)展開、尋優(yōu)等等,可求得解析符號解,豐富的繪圖功能與計算結(jié)果的可視化,具有高層繪圖功能兩維、三維繪圖 具有底層繪圖
6、功能句柄繪圖 使用plot函數(shù)可隨時將計算結(jié)果可視化,例、用簡短命令計算并繪制在0 x6范圍內(nèi)的sin(2x)、sinx2、sin2x。 x=linspace(0,6) y1=sin(2*x),y2=sin(x.2),y3=(sin(x)).2; plot(x,y1,y,x, y2,r,x, y3,b),圖形化程序編制功能,動態(tài)系統(tǒng)進行建模、仿真和分析的軟件包 用結(jié)構(gòu)圖編程,而不用程序編程 只需拖幾個方塊、連幾條線,即可實現(xiàn)編程功能,豐富的MATLAB工具箱,MATLAB主工具箱 符號數(shù)學(xué)工具箱 SIMULINK仿真工具箱 控制系統(tǒng)工具箱 信號處理工具箱 圖象處理工具箱 通信工具箱 系統(tǒng)辨識工
7、具箱 神經(jīng)元網(wǎng)絡(luò)工具箱 金融工具箱,MATLAB的兼容功能,可與C語言、FORTARN語言跨平臺兼容 用函數(shù)CMEX、FMEX實現(xiàn),MATLAB的容錯功能,非法操作時,給出提示,并不影響其操作 1/0 Warning: Divide by zero ans = Inf,MATLAB的開放式可擴充結(jié)構(gòu),matlab 所有函數(shù)都是開放的 用戶可按自己意愿隨意更改 正因為此功能,使得matlab的應(yīng)用越來越廣泛,強大的聯(lián)機檢索幫助系統(tǒng),可隨時檢索matlab函數(shù) 可隨時查詢matlab函數(shù)的使用方法,MATLAB頂層目錄結(jié)構(gòu)表,MATLAB的應(yīng)用開發(fā)環(huán)境,,,命令窗口,命令窗口,,,,,,,命令窗口
8、,在MATLAB環(huán)境下可以通過Ctrlc組合來中斷正在執(zhí)行的命令或程序,,,Format命令可以控制數(shù)值在屏幕上的顯示方式,該命令可以改變數(shù)值的顯示,并不會對數(shù)值本身造成影響。,Format short format long Format short e format long e Format short g format long g Format bank format rat Format hex,,續(xù)行符:“”(注意:一行最多可以輸入4096個字符),M文件,MATLAB的源程序都是以后綴為m的文件來存放的,這種.m文件(或者稱為M文件)其實就是一個純文
9、本文件,它采用的是MATLAB所特有的一套語言及其語法規(guī)則。信號與系統(tǒng)實驗實際上就是編輯和運行這種.m文件來完成一些跟信號與系統(tǒng)相關(guān)的分析和處理任務(wù)。,,,M文件有兩種寫法,一種稱為腳本(Script)(命令文件),就像批處理文件一樣,包含了一連串的MATLAB命令,執(zhí)行時依序執(zhí)行;另一種稱為函數(shù)(Function),與在命令行中輸入的命令(如plot命令)一樣,函數(shù)能接受輸入的參數(shù),然后執(zhí)行并輸出結(jié)果。,M文件,M文件的編輯與運行,,在命令窗口點擊File菜單中的New:Mfile,或直接點擊工具欄中的快捷鍵,或直接在命令窗口輸入edit命令,就可以新建.m文件,,保存.m文件所用的文件名只
10、能為字母、數(shù)字、下劃線,不能以數(shù)字開頭,其中不能包含中文字,也不能包含“.”、“”、“”、“”和空格等特殊字符(但可以包含下劃線“_”),也不能與當(dāng)前工作空間中的參數(shù)、變量、元素同名,而且也不能與matlab系統(tǒng)固有內(nèi)部函數(shù)如sin,cos等同名。,,Edit AAA/AAA.m ;open AAA/AAA.m type AAA/AAA.m,M文件的編輯與運行,,在命令窗口中直接輸入.m文件名,然后回車,文件名中不要帶“.m”后綴。,,在命令窗口輸入run m文件名(不要帶“.m”后綴) Run AAA Run c:matlabAAA.m/AAA,,在編輯/調(diào)試器中打開.m文件后,直接按ru
11、n執(zhí)行,另外還可對其進行單步運行,斷點運行等調(diào)試工作,當(dāng)前工作目錄與搜索路徑,在編輯和運行.m文件之前,還有一個很重要的工作要做,就是設(shè)置MATLAB的當(dāng)前工作目錄及搜索路徑。MATLAB有一個專門用以尋找.m文件的路徑搜索器。.m文件是以目錄或文件夾的方式分布于硬盤的文件系統(tǒng)中的,有一部分.m文件的目錄是MATLAB所安裝目錄的子目錄。,設(shè)置MATLAB的當(dāng)前工作目錄,首先新建一個目錄作為自己的工作目錄,用來存放自己編寫的.m源程序文件。,,,Windows版本的matlab系統(tǒng)中,最初默認(rèn)的當(dāng)前工作目錄是matlab安裝目錄下的work子目錄。,,,在matlab快捷方式上單擊鼠標(biāo)右鍵,再
12、選擇“屬性”,通過修改“起始位置”來改變默認(rèn)的當(dāng)前工作目錄。,在命令窗口輸入“cd c:matlab”命令即可將當(dāng)前工作目錄設(shè)為c:matlab目錄。,,直接在窗口上的current directory上修改。,設(shè)置MATLAB的搜索路徑,Path:返回當(dāng)前的搜索路徑,,,,Path(path,s):其中s是一個用單引號括起來的字符串,用以將所表示的路徑s添加到當(dāng)前的搜索路徑中去。但是要謹(jǐn)慎使用。因為s會覆蓋掉所有的搜索路徑,可能會造成matlab工作不正常。,addpath:addpath c:matlabwork,,rmpath:rmpath c:matlabwork從當(dāng)前搜索路徑中刪除指
13、定的路徑。,,當(dāng)前搜索的路徑記錄在toolboxlocal目錄下的pathdef.m文件中,可以直接使用普通的文本編輯器或者matlab編輯/調(diào)試器來編輯改文件,,通過菜單File中的Set Path來改變,或者工具欄中的Path Browser來改變,工作空間,幫助,,Help help elfun(基本函數(shù)庫) help specfun (特殊函數(shù)庫) help elmat(初等矩陣庫,時間和日期函數(shù)庫) help funfun(函數(shù)功能和數(shù)值積分庫) help general(通用命令庫),例1:求解,的根,,其中,分析:,一元二次方程的求根公式為:,1、由于要用到開平方,所以首先想到利用help elfun幫助命令找到相應(yīng)的函數(shù),2、程序及結(jié)果,a=1;b=2;c=3; d=sqrt(b*b-4*a*c); x1=(-b+d)/(2*a) X1 = -1.0000+1.4142i x2=(-b-d)/2*a X2 = -1.0000-1.4142i,課堂作業(yè)(編寫命令文件):,1、設(shè),計算,2、設(shè),計算,3、使用Help菜單中的demos,運行Demos菜單中Desktop Tools and Development Environment中的各項內(nèi)容,