




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、MATLAB語言實驗及課程設計指導書 實驗部分 實驗一 基本操作和簡單語句輸入 一、實驗環(huán)境 計算機 MATLAB軟件 二、實驗目的 1熟悉MATLAB的命令窗口。 2掌握MATLAB的一些基本操作,能夠進行一般的數(shù)值計算。 3實現(xiàn)語句的重調(diào)和修改。 三、預備知識 1MATLAB的窗口組成 MATLAB主窗口中,層疊平鋪了Command window(命令窗口),Launch pad(發(fā)射臺),Workspace(工作空間),Command history(命令歷史記錄),Current directory(當前目錄)等子窗口。其中Command window窗口是MATLAB界面中重要組成部
2、分,利用這個窗口可以和MATLAB交互操作,即對輸入數(shù)據(jù)或命令進行相應的計算;Launch pad窗口中啟動某個工具箱的應用程序;Workspace窗口記錄工作空間;Command history窗口主要記錄已執(zhí)行過的命令,Current directory記錄當前目錄。 2命令窗口菜單欄 單擊菜單欄上的“File”選項,就會彈出一個下拉菜單。 “New”:單擊“New”選項,你會看到一個包含三項內(nèi)容的右拉式子菜單。單擊“M-file”,就會打開指定的編輯器,并且隨之產(chǎn)生一個空白的M文件。M文件是包含MATLAB源代碼的文本文件。MATLAB自帶了大量M文件,當然你也可以在空白M文件中編制自己
3、想要的源代碼文件,這在MATLAB數(shù)值計算中是一項很重要的功能。 “Open”:單擊“Open”選項,會彈出一個對話框,要求你輸入想要打開的文件,可以是M或Fig文件,也可以是其他類型的有效文件。 1 MATLAB語言實驗及課程設計指導書 “Open Selection”:通常情況下這個選項呈現(xiàn)灰色,只有你在命令窗口的編輯區(qū)內(nèi)選中一個M 文件時,才變成可用。單擊此選項將會用特定編輯器打開被選中的M文件。 “Run Script”:單擊“Run Script”選項,在對話框內(nèi)輸入或選中可執(zhí)行的目標文件,單擊“OK”,MATLAB將會執(zhí)行被選中的目標文件。 “Save Workspace As”:
4、單擊“Save Workspace As”選項,在彈出的對話框里填入一個文件名,就會把當前工作空間里的變量以“.Mat”形式存儲起來。你可以自己設置存儲路徑,文件名就是剛才填入的那一個名字。 “Set Path”:單擊“Set Path”選項,就會彈出MATLAB的路徑瀏覽器,可以在彈出的路徑瀏覽器中更改MATLAB的搜索路徑。(在利用MATLAB進行數(shù)值計算過程中,有時會出現(xiàn)路徑設置問題,這時就需要打開“Set Path”,然后按照文件的存儲位置對將要調(diào)用文件的搜索路徑進行更改。)“Path”窗口里顯示了MATLAB的兩個系統(tǒng)默認路徑“Toolbox”和“Work”。用鼠標雙擊“Path”窗
5、口列表里的任意一個分項,右邊的“File in general”就會給出該分項所包含文件的信息。 “Preferences”:單擊“Preferences”選項,打開命令窗口的顯示格式選項卡,通過對選修卡的設置,可以改變命令編輯區(qū)的格式。 “Print Setup”:“Print Setup”選項在未安裝打印機前呈灰色, “Print”:“Print”選項在未安裝打印機前呈灰色,安裝打印機后,單擊此項,即可進行打印。 “Exit MATLAB”:單擊“Exit MATLAB”或者使用快捷鍵【ctrl+Q】,將退出MATLAB。 3 命令窗編輯功能 表1 命令窗編輯功能 按鍵操作 作用 按鍵操作
6、 作用 Ctrl+P 調(diào)出前一行 Home Ctrl+A 光標移動到行首 Ctrl+N 調(diào)出后一行 End Ctrl+E 光標移動到行尾 Ctrl+B 光標前移一個字符 Esc Ctrl+U 清除一行 Ctrl+F 光標后移一個字符Del Ctrl+D 清除光標后的字符 Ctrl+ Ctrl+R 光標前移一個字 Backspace Ctrl+H 清除光標前的字符 Ctrl+Ctrl+L 光標后移一個字 Ctrl+K 刪除到行尾 2 MATLAB語言實驗及課程設計指導書 Command window窗口的設置 4在MATLAB主窗口選擇file/preference命令可以在打開的prefere
7、nce對話框中設置MATLAB的工作環(huán)境參數(shù)。選擇command window選項,則可以設置command window窗口的參數(shù)。 text display選項組 該選項組用來設置command window窗口的文本顯示格式。 numeric format 該下拉列表框用來設置command window窗口的數(shù)值顯示格式,顯示格式有short(5位定點表示)、short E(5位浮點表示)、short G(系統(tǒng)選擇short和short E中最好的表示)、long(15位定點表示)、long E(15位浮點表示)、long G(系統(tǒng)選擇long和long E中最好的表示)、bank(用
8、元、角、分定點表示)、+(僅顯示數(shù)值的符號)、ration(近似的有理數(shù)表示)、hex(十六進制表示)。 盡管MATLAB計算中所有的量為雙字長浮點數(shù),但為了方便顯示卻遵循下面的規(guī)則,在默認情況下,當結(jié)果為整數(shù)時,MATLAB將它作為整數(shù)顯示,當結(jié)果為實數(shù)時,MATLAB以小數(shù)點后4位的精度近似顯示,如果結(jié)果中的有效數(shù)字超出了這一范圍,MATLAB以科學計數(shù)法顯示結(jié)果,除可以用菜單方式來改變輸出顯示格式以外,MATLAB還可以使用format命令來改變顯示格式,調(diào)用格式為:format 控制參數(shù) 四、實驗內(nèi)容與步驟 1啟動MATLAB 2觀察MATLAB窗口的各個組成部分 了解菜單欄各菜單項的
9、功能,用鼠標打開MATLAB的各個菜單,在狀態(tài)欄里顯示當前鼠標所指的菜單項的含義。 用鼠標指向常用工具欄的每個工具按鈕,了解各工具按鈕的含義。 3命令窗口的打開和關(guān)閉 查看菜單窗口中有哪些菜單命令。 在命令窗口中輸入命令a=3;b=4;y=a*b+a/b,然后回車,查看命令顯示結(jié)果。 利用MATLAB中編輯命令行時常用的按鍵功能,調(diào)出上一個語句, 3 TLAB語言實驗及課程設計指導書MA word,并把運行結(jié)果復制到對它進行修改(如把分號改成逗號,看運行結(jié)果) 中保存。 關(guān)閉命令窗口。 打開命令窗口。 幫助4使用MATLAB 的幫助系統(tǒng),通過幫助系統(tǒng)了解有關(guān)內(nèi)容。熟悉MATLAB的演示窗,通過
10、演示窗,MATLAB在命令窗中輸入demo,將出現(xiàn)5 的功能進行一次瀏覽。對MATLAB 五、練習 的演示實例。MATLABstateflow1調(diào)出1233),x=2,x=3時的值。/ -5(2計算y=+)980.?(x)x(?1.25xx x29? cos60計算-322C 4已知:a=3,A=4,b=-1,c=a+A-2B,C=a+B+2c,B=求:ab?zzi 21?zi1?2?z1?3iz ,求,5. 復數(shù),e2z?6 213z3實驗二 矩陣和數(shù)組的操作 一、實驗環(huán)境 同實驗一 二、實驗目的 1掌握矩陣和數(shù)組的一般操作,包括創(chuàng)建、保存、修改和調(diào)用等。 2學習矩陣和數(shù)組的加減運算與乘法。
11、 3掌握對數(shù)組中元素的尋訪與賦值,會對數(shù)組進行一般的操作。 三、預備知識 1常用的產(chǎn)生特殊矩陣的函數(shù) ?eye(m,n) 單位陣 4 MATLAB語言實驗及課程設計指導書 ?rand(m,n) 隨機矩陣 ?randn(m,n) 正態(tài)分布的隨機矩陣 ?zeros(m,n) 零矩陣 ?ones(m,n) 全部元素都為1的矩陣 ?compan(A) 矩陣A的伴隨矩陣 ?bankel(m,n) n維Hankel矩陣 ?invhilb(n) n維逆Hilbert矩陣 ?magic(n) n維Magic矩陣 ?toeplitz(m,n) Toeplitz矩陣 ?wilkinson(n) n維Wilkins
12、on特征值測試矩陣 ?handamard(n) n維Handamard矩陣 ?hilb(n) n維Hilbert矩陣 ?kron(A,B) Kronecker張量積 ?pascal(n) n維Pascal矩陣 ?vander(A) 由矩陣A產(chǎn)生Vandermonde矩陣 2通過矩陣的結(jié)構(gòu)變換,獲得新矩陣 矩陣結(jié)構(gòu)變化產(chǎn)生新矩陣2 表L=tril(A) 較精確的函數(shù)圖形 fplot 實心圖 fill 羽狀圖 feather 矢量圖 compass 0.5L主對角線及以下元素取矩陣A 的元素,其余為0 L=tril(A,k) 二維圖形函數(shù)L及第k條對角線及以下元素取矩陣A的元素,其余為0 說明 U
13、=triu(A) bar U主對角線及以上的元素取矩陣A的元素,其余為0 直方圖 U=triu(A,k) U第k條對角線及以上的元素取矩陣A的元素,其余為0 B=rot90(A) errorbar 矩陣A逆時針旋轉(zhuǎn)90得到B 給圖形加上誤差范圍 B=rot90(A,k) stem A B 矩陣A逆時針旋轉(zhuǎn)k*90得到B 柄圖(又稱針狀圖) AB xor(A,B) A B AB=fliplr(A) polar 矩陣A左右翻轉(zhuǎn)得到B 極坐標圖 B=flipud(A) 矩陣A上下翻轉(zhuǎn)得到B B=reshape(A,m,n) hist rose stairs 將矩陣A的元素重新排列,得到m*n的新矩陣
14、(m*n就等于A的行列式之積。若A為3*4,則m,n可為2,6或4,3等 頻數(shù)累計柱狀圖 極坐標累計圖 階梯圖 數(shù)組(矩陣)操作 3對數(shù)組或矩陣的基本操作有插入、重新排列、提取、按列拉長、置空(去掉某行或某列)、置零、用單信下標操作一個矩陣,用邏輯數(shù)組操作一個矩陣、按指定條件求子數(shù)組,求數(shù)組的規(guī)模等,下面一一舉例說明(對數(shù)組和矩陣不加區(qū)別)。 X=4:6 x=4 5 6 插入 通過對x進行插入運算創(chuàng)建矩陣A 5 MATLAB語言實驗及課程設計指導書 A=x-3;x;x+3 A=1 2 3 4 5 6 7 8 9 重新排列 以逆序重排A的各行形成矩陣B B=A(3:-1:1,1:3) B=7 8
15、 9 4 5 6 1 2 3 提取 提取A的前兩行的后兩列形成矩陣C C=A(1:2,2:3) C=2 3 5 6 按列拉長 對C按列拉長形成矩陣D D=C(:) D=2 5 3 6 置空 刪除B的第2 列 B(:,2)= B=7 9 4 6 1 3 置零 將矩陣B的第2行第2列的元素置為1 B2,2=0 B=7 9 4 0 1 3 用單個下標操作一個矩陣 MATLAB對矩陣中的元素賦予一個序號,序號值按列從第1列第1行到第1列第2行到第2列第1行到第2列第2行,直至最后一列最后一行的順序計數(shù)。 B(3) ans=1 B(5) ans=0 B(2:4) ans=4 1 9 用邏輯數(shù)組操作一個矩
16、陣 x=-4:4 x=-4 3 2 1 0 1 2 3 4 6 MATLAB語言實驗及課程設計指導書 %判斷數(shù)組中的元素的絕對值大于3的情況,絕對值大于3的元素置為1,否則為0。 abs(x)3 ans=1 0 0 0 0 0 0 0 1 對矩陣可進行同樣操作: A=1,2,3;4,5,6;7,8,9 A=1 2 3 4 5 6 7 8 9 abs(A)3 ans=0 0 0 1 1 1 1 1 1 按指定條件求子數(shù)組 首先由條件表達式生成一個邏輯數(shù)組,然后使用系統(tǒng)提供的函數(shù)即可,函數(shù)在已知數(shù)組中按邏輯數(shù)組的元素值查找所需的元素下標。 a=abs(x)2 a=1 1 0 0 0 0 0 1 1
17、 b=find(a) b=1 2 8 9 y=x(b) y=-4 3 3 4 函數(shù)find也可用于矩陣。 A=1:3;4:6;7:9 A=1 2 3 4 5 6 7 8 9 B=A4 B=0 0 0 0 1 1 1 1 1 r,s=find(B) r=3 s=1 2 2 3 2 2 3 3 3 四、實驗內(nèi)容與步驟 1用三種方法創(chuàng)建一個33矩陣,然后利用矩陣編輯器,將其擴充為45矩陣,并保存,試著調(diào)用它。 7 MATLAB語言實驗及課程設計指導書 直接輸入法 如在命令區(qū)輸入A=3,2,1;4,5,6;7,8,9。 直接利用MATLAB提供的函數(shù)創(chuàng)建一個33矩陣 如在命令區(qū)輸入rand(3,3)即
18、得到一個33的隨機矩陣。 利用MATLAB提供的“Matrix Editor”完成輸入 步驟1 在命令區(qū)輸入A=1。 步驟2 用鼠標單擊工具欄的工作區(qū)瀏覽器,MATLAB彈出變量瀏覽器,選中變量A,鼠標左鍵雙擊A,打開矩陣編輯器。 步驟3 在左下腳的兩個文本框中分別輸入希望得到的矩陣的行數(shù)和列數(shù):3行3列,即得到一個33矩陣。 步驟4 要將上面矩陣改為一個45矩陣,只需改變矩陣的行數(shù)和列數(shù)即可。如將3行3列改為4行5列,即可得到一個45矩陣。若想修改其中的元素,只需用鼠標選中表格中我們想要修改的元素,將原來的元素修改為我需要的值。 步驟5 要命令區(qū)輸入save data A(data為我們給變
19、量文件起的名稱,系統(tǒng)會自動沿設定好的路徑以“.mat”格式存儲文件),即可保存上面例子中創(chuàng)建的矩陣A。 步驟6 在命令區(qū)輸入load data即可把保存在文件中的矩陣讀到MATLAB的工作區(qū)的內(nèi)存中來。 2建立一個等差數(shù)列,然后由它產(chǎn)生一個對角陣。 步驟1 在命令區(qū)輸入a=linspace(0,1.5,5)產(chǎn)生一個等差數(shù)列。 步驟2 在命令區(qū)輸入B=diag(a)產(chǎn)生一個對角陣。 3利用MATLAB的函數(shù)inv(A)求方陣A的逆矩陣。 步驟1 在命令區(qū)輸入A=1,2;5,6得到一個22的方陣。 步驟2 再輸入B=inv(A)求出A 的逆矩陣。 五、練習 1創(chuàng)建一個55矩陣,提取主對角線以上的部
20、分。 2A=rand(3),B=magic(3),C=rand(3,4),計算ABC 3創(chuàng)建一個33矩陣,并求其轉(zhuǎn)置,逆矩陣。 4用兩種方法求Ax=b的解(A為4階隨機矩陣,b為4階列向量)。 3A。A,計算 階隨機矩陣5創(chuàng)建一個4 8 MATLAB語言實驗及課程設計指導書 6求100-999之間能被21整除的數(shù)的個數(shù)。 (提示:先利用冒號表達式,再利用find和length函數(shù)。) 7設有矩陣A和B 123453016?10917789?66? ?BA?415?01112131423?2016970171819?112423425132122?1 求它們的乘積C=AB。 2 將矩陣C的右下角
21、32子矩陣賦給D。 8. 求解下列方程組 3?2x?5x?0 1 3x?11x?2x?8?312?x?x?2x?4 2 ?312?x?x?x?3?123?時的解。 y(0)=0當 9. 求微分方程、 100)y?(t)?2yt()?2y?y實驗三 MATLAB繪圖 一、實驗環(huán)境 同上 二、實驗目的 1掌握MATLAB的基本繪圖命令。 2掌握運用MATLAB繪制一維、二維、三維圖形的方法。 3給圖形加以修飾。 三、預備知識 1基本繪圖命令plot plot繪圖命令一共有三種形式: plot(y)是plot命令中最為簡單的形式,當y為向量時,以y的元素為縱坐標,元素相應的序列號為橫坐標,繪制出連線
22、;若y為實矩陣,則按 9 MATLAB語言實驗及課程設計指導書 照列繪出每列元素和其序列號的對應關(guān)系,曲線數(shù)等于矩陣的列數(shù);當y為復矩陣時,則按列以每列元素的實部為橫坐標,以虛部為縱坐標,繪出曲線,曲線數(shù)等于列數(shù)。 plot(x,y,linspec)其中l(wèi)inspec是可選的,用它來說明線型。 當x和y為同維向量時,以x為橫坐標,y為縱坐標繪制曲線;當x是向量,y是每行元素數(shù)目和x維數(shù)相同的矩陣時,將繪出以x為橫坐標,以y中每行元素為縱坐標的多條曲線,曲線數(shù)等于矩陣行數(shù);當x為矩陣,y為相應向量時,使用該命令也能繪出相應圖形。 plot(x1,y1,x2,y2,x3,y3) 能夠繪制多條曲線,
23、每條曲線分別以x和y為橫縱坐標,各條曲線互不影響。 2線型和顏色 MATLAB可以對線型和顏色進行設定,線型和顏色種類如下: 線:實線 :點線 .虛點線 折線 點:.圓點 +加號 *星號 x x型 o 空心小圓 顏色:y 黃 r 紅 g 綠 b 藍 w 白 k 黑 m 紫 c 青 3特殊的二維圖形函數(shù) 維繪圖函數(shù)25 特殊表 向量場圖(又稱二維箭頭圖)quiver 10 MATLAB語言實驗及課程設計指導書 1 直方圖 在實際中,常會遇到離散數(shù)據(jù),當需要比較數(shù)據(jù)、分析數(shù)據(jù)在總量中的比例時,直方圖就是一種理想的選擇,但要注意該方法適用于數(shù)據(jù)較少的情況。直方圖的繪圖函數(shù)有以下兩種基本形式。 bar
24、(x,y) 繪制m*n矩陣的直方圖。其中y為m*n矩陣或向量,x必須單向遞增。 bar(y) 繪制y向量的直方圖,x向量默認為x=1:m close all; %關(guān)閉所有的圖形視窗。 x=1:10; y=rand(size(x); bar(x,y); %繪制直方圖。 1 0.50 10975681234Bar()函數(shù)還有barh()和errorbar()兩種形式,barh()用來繪制水平方向的直方圖,其參數(shù)與bar()相同,當知道資料的誤差值時,可用errorbar()繪制出誤差范圍,其一般語法形式為:errorbar(x,y,l,u)其中x,y是其繪制曲線的坐標,l,u是曲線誤差的最小值和最
25、大值,制圖時,l向量在曲線下方,u向量在曲線上方。 或用errorbar(x,y,e)繪制誤差范圍是y-e,y+e的誤差直方圖。 下面看一個例子。 x=linspace(0,2,20)*pi y=sin(x) e=std(y)*ones(size(x); %設置誤差為原始數(shù)據(jù)的標準差。 errorbar(x,y,e); %繪制以標準差為誤差范圍的誤差直方圖。 11 MATLAB語言實驗及課程設計指導書 2 10-1-28624-20 2 柄圖 柄圖又稱火柴桿圖或針狀圖,主要用來繪制數(shù)位信號。該圖把每個數(shù)據(jù)點畫成一條直線,在直線未端用點表示數(shù)據(jù),所以形象地稱作火柴桿圖或針狀圖(大頭針)。 繪制此
26、圖形的函數(shù)為stem()函數(shù),常用格式如下: stem(y) 向量y的值作為柄的長度從x軸延伸,x值自動產(chǎn)生,當y為矩陣時,每一行的值在同一個柄上生成。 stem(x,y) 繪制x對y的列向量的柄圖。x和y可以是同樣大小的向量或矩陣,當x為行或列向量時,y行數(shù)必須與x的長度相同。 stem(,fill) fill 參數(shù)確定是否填充柄的頭部 stem(,linespec) linespec確定柄圖線的屬性,如線型,顏色及標記等。 下面是繪制柄圖的一個簡單的例子。 x=linspace(0,10,50); y=sin(x).*exp(-x/3); stem(x,y); %繪制柄圖 1 0.50-0
27、.51082460 階梯圖3 12 MATLAB語言實驗及課程設計指導書 和柄圖類似,stairs()函數(shù)也常用來繪制橫坐標是時間序列的數(shù)位信號,又稱階梯圖。不同的是stairs()函數(shù)繪制出的階梯圖其相鄰數(shù)據(jù)點間不用直線連接,而是相鄰兩點間的值全取起點數(shù)據(jù)的值,該函數(shù)的常用語法格式與stem()函數(shù)類似的有: stairs(y) stairs(x,y) stairs(,linespec) 變量的含義與stem()函數(shù)類似。 Stairs()函數(shù)畫出階梯圖例子如下所示: x=linspace(0,10,50); y=sin(x).*exp(-x/3); stairs(x,y); %繪制函數(shù)y的
28、階梯圖 title(stair函數(shù)) stair函函1 0.50-0.50246810 4 餅圖 餅圖與直方圖的功能類似,都表示資料中某個分量在總量中所占的比例,它的基本命令格式為: pie(x) 繪制向量x的餅圖,x中的值被x/sum(x)規(guī)范化以確定餅圖中每一片的大小。如果sum(x)1,則只畫出餅圖的一部分。 pie(x,explode) 用來從x的餅圖中去掉explode向量表示的片,explode必須與x大小相同。explode向量被置1的分量對應片與此餅圖分開。 pie(x,label) 用來標注餅圖中片的名稱。 下面是一個用函數(shù)繪制餅圖的例子。 x=11.4,23.5,35.4,
29、15.6; %某工廠4個季度的生產(chǎn)量。 13 MATLAB語言實驗及課程設計指導書 explode=zeros(size(x); %生成零向量。 c,offset=min(x); %c=1,求最小值的下標offset,c=1。 explode(offset)=1; %指定占比例最小的一塊和整個餅分離。 pie(x,explode); %繪制有分離的餅圖。 13%18% 27%41% 5 頻數(shù)累計柱狀圖 頻數(shù)累計柱狀圖主要用于在笛卡爾坐標系中統(tǒng)計在一定范圍內(nèi)數(shù)據(jù)的頻數(shù),并用柱狀圖表示出來,可用大量的資料顯示其分布情況和統(tǒng)計特性。函數(shù)hist()的常用語法格式為: n=hist(y) 把y向量中的
30、數(shù)據(jù)等劃分為10個區(qū)間進行統(tǒng)計,最后畫出10個柱形。如果y為矩陣,則按列計算。 n=hist(y,x) 其中y為要統(tǒng)計的。當x為標量時,x指定了統(tǒng)計的區(qū)間數(shù);當x為向量時,以該向量中各元素為中心進行統(tǒng)計,區(qū)間數(shù)等于x向量的長度。 n=hist(y,n) 其中n為要繪出的柱形數(shù)。 下面是柱形圖的一個例子。 x=randn(5000,1); %產(chǎn)生5000個m=0,s=1,的高斯亂數(shù) hist(x,20); 代表長條的個數(shù)。 800 6004002000-4-2024 14 MATLAB語言實驗及課程設計指導書 6極坐標圖 極坐標圖在工程計算中應用十分廣泛,MATLAB用polar()函數(shù)繪制極坐
31、標圖,函數(shù)的常用語法格式為: polar(theta,rho) 用角度theta對極半徑rho作圖。其中theta必須用弧度表示,如用角度需先轉(zhuǎn)換。 polar(theta,rho,s) theta與rho同前,s為曲線使用的線型。 應用如下,得到的結(jié)果如圖所示。 theta=linspace(0,2*pi); r=cos(4*theta); polar(theta,r); title(極坐標圖) 函函函函 19012060 0.8 0.630150 0.4 0.21800330210300240270 另外,還可以用rose()函數(shù)在極坐標系中繪制頻數(shù)累計柱狀圖角度直方圖(又稱玫瑰圖)。ro
32、se和hist很接近,只不過是將數(shù)據(jù)大小視為角度,數(shù)據(jù)個數(shù)視為距離,并用極坐標繪制表示。該函數(shù)的常用語法格式為: rose(theta) 用相角theta繪制角度直方圖 rose(theta,nbins) 其中nbins是一個整數(shù),把0-2分成等份,默認值為20。 rose(theta,x) 其中x是一個向量,用theta對向量x作圖。 接下來繪制離散隨機序列的角度直方圖。 x=randn(1000,1); rose(x); title(隨機序列的角度直方圖) 運行后的結(jié)果如圖所示。 15 TLAB語言實驗及課程設計指導書MA 函函函函函函函函函函 1509012060 10015030 50
33、1800330210300240270 四、實驗內(nèi)容和步驟 1創(chuàng)建一個55魔方矩陣,并畫出表示這個矩陣的圖形。 在命令區(qū)輸入:A=magic(5); plot(A) 2在同一坐標軸里繪出y=sin(x),z=cos(x)兩條曲線。 在命令區(qū)輸入:x=linspace(0,2*pi,50); y=sin(x); plot(x,y) hold on z=cos(x); plot(x,z) hold off 16 TLAB語言實驗及課程設計指導書MA 1xy=在這曲線上加入相同區(qū)間里的)。(-5,5)3.畫出y=x2的曲線(x3的曲線,并且要求采用綠色折線標識。 在命令區(qū)輸入;x=linspace(
34、-5,5,100); y=x.2; plot(x,y) hold on z=x.(1/3); plot(x,z,g-) hold off ,y3=cinh(x),y2=cosx,y1=sinx不同坐標系里分別繪出在同一窗口,4 個圖形。y4=cosh(x)4x=linspace(0,2*pi,30); 在命令區(qū)輸入:subplot(2,2,1);plot(x,sin(x); subplot(2,2,2);plot(x,cos(x); subplot(2,2,3);plot(x,sinh(x); 17 語言實驗及課程設計指導書MATLAB subplot(2,2,4);plot(x,cosh(x
35、); z=p。x=cosp,y=sinp,5繪制一個三維曲線p=0:pi/10:20*pi; 在命令區(qū)輸入:x=cos(p);y=sin(p);z=p; plot3(x,y,z) 五、練習 y=cosx的曲線。,15)上的函數(shù)1畫出橫坐標在(-151? y=|(n-6)|,并加入網(wǎng)格。2用圖形表示離散函數(shù) 及其包絡線。3用圖形表示連續(xù)調(diào)制波形y=sin(t)sin(9t)三維曲zy、45區(qū)間內(nèi)畫出x、x=zsin3z4. 設,y=zcos3z,要求在-45 線。22 繪制函數(shù)的三維曲面圖,其中。5. y?r?xr/r)?zsin( 18 MATLAB語言實驗及課程設計指導書 實驗四 M文件的編
36、寫 一、實驗環(huán)境 同上 二、實驗目的 1學習MATLAB中的關(guān)系運算和邏輯運算,掌握它們的表達形式和用法。 2掌握MATLAB中的選擇結(jié)構(gòu)和循環(huán)結(jié)構(gòu)。 3學會用MATLAB進行M文件的編寫和調(diào)用。 三、預備知識 1關(guān)系和邏輯運算 關(guān)系運算符用來完成關(guān)系運算,在控制程序流程方面有著極為重要的作用。MATLAB常用的關(guān)系符有:、=大于或等于、=等于、=不等于。 關(guān)系運算符可以用來比較兩個數(shù)值,若所描述的關(guān)系成立,則結(jié)果為1,表示邏輯真,反之,若所描述的關(guān)系不成立,結(jié)果為0,表示邏輯假。 MATLAB中的邏輯運算符有與、或、非。 邏輯運算法則 1 0 0 0 0 0 1 1 1 0 0 1 1 0
37、1 0 0 1 1 1 0 0 1 1 2選擇結(jié)構(gòu) 語句和switch語句if if語句的一般形式如下:1 %if A1 表達式1 B1 %命令 19 語言實驗及課程設計指導書MATLAB 2 表達式A2 %else if 2 命令B2 %3 命令 %else B3 end 語句的一般結(jié)構(gòu)如下:switch 讀入一個語句 %switch a 1 情況 %case A1 1 命令 %B1 A2 case B2 .case %其余情況other case %最后一個命令 Bn 3循環(huán)結(jié)構(gòu) for語句一般用于循環(huán)次數(shù)已知的情況,而while語句一般用于循環(huán)次數(shù)未知的情況。 for語句的格式為:for
38、 變量=表達式 命令1 命令2 end while語句的格式為:while 表達式 命令 end 四、 實驗內(nèi)容和步驟 1創(chuàng)建一個矩陣,用函數(shù)all和any作用于該矩陣,比較結(jié)果。 創(chuàng)建一個矩陣a=1,2,0,3;2,0,1,4; b=all(a),c=any(a),d=all(b),e=any(b) 比較結(jié)果b=1 0 0 1 c=1 1 1 1 20 MATLAB語言實驗及課程設計指導書 d=0 e=1 2編寫一個switch語句,判斷輸入數(shù)的奇偶性。 n=input(n=); switch mod(n,2); case 1 A=奇, case 0 A=偶, otherwise A=空,
39、end 3編寫一個程序畫出下列分段函數(shù)所表示的曲面,并用M文件存儲。 22?x5?1.75x?3.75x.?0x?x?10.5457e11221?22x?6?x 1x?e1?x?f,xx7575?0.?122112?22x?x?0.75?3.75x1.5x0.?x?5457e1121?21步驟1 打開MATLAB的M文件編輯器file/new/M-file,編寫以下內(nèi)容: %first.m This is my first example a=2;b=2; clf; x=-a:0.2:a;y=-b:0.2:b; for i=1:length(y)for j=1:length(x) if x(j
40、)+y(i)1 z(i,j)=0.5457*exp(-0.75*y(i)2-3.75*x(j)2-1.5*x(j); else if x(j)+y(i)=-1 z(i,j)=0.5457*exp(-0.75*y(i)2-3.75*x(j)2+1.5*x(j); else z(i,j)=0.7575*exp(-y(i)2-6*x(j)2); end end end 21 MATLAB語言實驗及課程設計指導書 end axis(-a,a,-b,b,min(min(z),max(max(z); colormap(flipud(winter);surf(x,y,z); 步驟2 選擇file/save命
41、令,將文件保存,命名為first.m。 步驟3 在command window窗口輸入文件名,可看到圖形。 五、 練習 1編寫一程序計算n的階乘。 99的最小整數(shù)。 2編寫一個程序求出階乘大于或等于993. 使用for函數(shù)編寫一個程序?qū)崿F(xiàn)sum(A)的功能,其中A為矩陣。 4. 使用循環(huán)結(jié)構(gòu)和向量化兩種方法實現(xiàn)求數(shù)組的平方和平方根的計算,并計算程序運行時間。 編寫一個函數(shù)文件,用于生成等比數(shù)列。5. 22 MATLAB語言實驗及課程設計指導書 課程設計部分 設計一 離散系統(tǒng)的MATLAB實現(xiàn) 一、設計目的 通過該設計,理解系統(tǒng)的單位抽樣響應,頻率響應及零極點增益的概念及意義。 二、設計內(nèi)容及其
42、主要MATLAB函數(shù) 如圖所示的一個離散系統(tǒng) ?1?nyz nx0.2 1? z0.4 0.1 1 離散系統(tǒng)的信號流圖圖 該離散系統(tǒng)對應的輸入輸出差分方程為:?1n?0.5y1n?2?0.2xxnyyn?0.41n?.?0 求該系統(tǒng)的單位抽樣響應,頻率響應及零極點增益。 單位抽樣響應1 系統(tǒng)的單位抽樣響應是當輸入信號為單位抽樣信號時系統(tǒng)的輸出響應。函數(shù)和filterMATLAB中有兩個函數(shù)可以計算系統(tǒng)的單位抽樣響應: 函數(shù)。impz filter函數(shù)1) 函數(shù)是利用遞歸濾波器或非遞歸濾波器對數(shù)據(jù)進行濾波。因為一filter系統(tǒng)的輸出就是輸入經(jīng)過濾波器濾波的結(jié)個離散系統(tǒng)可以看作一個濾波器。 fi
43、lter函數(shù)的格式為:果。y=filter(b,a,x) 如果輸入為單位抽樣組成的系統(tǒng)對輸入進行濾波,a和b此函數(shù)是對由 23 MATLAB語言實驗及課程設計指導書 ?,那么輸出就是系統(tǒng)的單位抽樣響應。信號 n2) impz函數(shù) impz函數(shù)的格式為: impz(b,a)可直接給出系統(tǒng)的單位抽樣響應。 ?jw 2頻率響應eH由向量a和b組成的系統(tǒng)的頻率響應為 M?jwrebr?jwr?0 ?eH N?jwk?eak1?1?kMATLAB中的freqz函數(shù)使用基于FFT的算法來計算由向量a和b組成的系統(tǒng)的頻率響應。其一般用法為: h,f=freqz(b,a,n,Fs) 其中向量a和b由離散系統(tǒng)決
44、定,F(xiàn)s為采樣頻率,在0,F(xiàn)s/2頻率范圍內(nèi)選取n個頻率點,并記錄在f中。由于freqz函數(shù)是采用基2的FFT算法,n常取2的冪次方,這樣可以提高運算速度。 3零極點增益 利用MATLAB中roots的函數(shù)可求得系統(tǒng)的零、極點,從而得到系統(tǒng)的零極點增益表示。其一般用法為: zr=roots(b) zp=roots(a) 三、設計報告要求 1 按題目要求進行設計,寫出設計報告,給出源程序。 2 分別利用filter函數(shù)和impz函數(shù)畫出給定的離散系統(tǒng)的單位抽樣響應。 3 畫出給定離散系統(tǒng)的頻率響應。 4 畫出系統(tǒng)的零、極點圖。 24 MATLAB語言實驗及課程設計指導書 設計二 MATLAB用于
45、語音信號的處理 一、設計目的 通過該設計,要求對語音信號的采集、處理、傳輸、顯示和存儲等有一個系統(tǒng)的掌握和理解。理解信號采樣頻率的概念,掌握對語音信號進行時域和頻域分析方法,了解濾波器的概念及原理。 二、設計內(nèi)容及其主要MATLAB函數(shù) 1語音信號的采集 利用Windows下的錄音機,錄制一段自己的話音,時間在1s內(nèi)。然后在MATLAB軟件平臺下,利用函數(shù)wavread對語音信號進行采樣,記住采樣頻率和采樣點數(shù)。理解采樣頻率、采樣位數(shù)等概念。 MATLAB函數(shù):wavread 功能對語音信號進行采樣,wavread函數(shù)的格式為: y=wavread(filename.wav,n1,n2),返回
46、文件中語音信號從n1到n2之間的樣本。 2語音信號的頻譜分析 要求首先畫出語音信號的時域波形;然后對語音號進行快速傅里葉變換,得到信號的頻譜特性,從而加深對頻譜特性的理解。 MATLAB函數(shù):fft 功能是實現(xiàn)快速傅立葉變換,fft函數(shù)的格式為: y=fft(x),返回向量x的不連續(xù)fourier變換。 3設計數(shù)字濾波器 低通濾波器的性能指標: fb1000Hz,fc1200Hz,Rs100dB,Rp1dB。 MATLAB函數(shù):ellipord功能是求低通濾波器的參數(shù),ellipord函數(shù)的格式為: N,Wn= ellipord(Wp,Ws,Rp,Rs),返回設計濾波器的階數(shù)和截止頻率。 el
47、lip功能是設計IIR濾波器,ellip函數(shù)的格式為: b,a=ellip(n,Rp,Rs,Wn),返回設計的低通濾波器的參數(shù)。 4用濾波器對信號進行濾波 25 MATLAB語言實驗及課程設計指導書 要求用設計的濾波器對采集的語音信號進行濾波。 MATLAB函數(shù):filter功能對信號進行濾波,filter函數(shù)的格式為: y=filter(b,a,x),由給定的濾波器對x進行濾波。 5回放語音信號 對濾波前后的語音信號進行回放,對比濾波前后聲音的變化。 MATLAB函數(shù):sound 轉(zhuǎn)化向量為音符的發(fā)聲指令。 sound (y,fs),把以采樣頻率fs的語音信號y以聲音的形式播放。 三、設計報告要求 1按題目要求進行設計,寫出設計報告,給出源程序。 2畫出采樣后語音信號的時域波形和頻譜圖。 3畫出濾波器的頻率響應。 4畫出濾波后信號的時域波形和頻譜。 設計三 MATLAB用于圖像處理 一、設計目的 通過該設計,要求對圖像的采集、顯示、處理和存儲等有一個系統(tǒng)的掌握和理解,并且掌握對二維數(shù)據(jù)進行處理的方法。 二、設計內(nèi)容及其主要MATLAB函數(shù) 1圖像的采集與顯示 采集一張格式為*.jpg、*.cur、*.bmp、*.tif、*.hdf、*.ico、*.pcx、*.xwd的任一幅圖像,用MATLAB的imread函數(shù)讀入圖像文件,并用
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 【正版授權(quán)】 ISO/TR 24107:2024 EN Air quality - Validation of air quality measurement methods in the standardization process
- 【正版授權(quán)】 ISO 8000-115:2024 EN Data quality - Part 115: Master data: Exchange of quality identifiers: Syntactic,semantic and resolution requirements
- 2025年度地坪工程環(huán)保驗收服務承包合同樣本
- 2025年度汽車貸款擔保合同會計處理與風險控制要點
- 2025年度法制副校長履職評價及激勵措施合同
- 2025年度老舊城區(qū)拆除工程承包合同范本
- 2025感恩廣場二期商鋪投資合作協(xié)議
- 2025年白喉、百日咳、破傷風、乙肝四聯(lián)制劑項目發(fā)展計劃
- 文化機構(gòu)安全隱患排查與防范計劃
- 讓孩子們愛上數(shù)學的活動安排計劃
- PFMEA模板完整版文檔
- 論生產(chǎn)安全對于家庭的重要性
- 風力發(fā)電變槳系統(tǒng)外文翻譯
- ECMO IABP完整版可編輯
- 【高考作文指導】用思辨來寫現(xiàn)象類作文(共39張PPT)
- GB/T 4513-2000不定形耐火材料分類
- GB/T 4214.1-2017家用和類似用途電器噪聲測試方法通用要求
- GB/T 11822-2000科學技術(shù)檔案案卷構(gòu)成的一般要求
- 水輪發(fā)電機組及其附屬設備招標文件
- 壓力管道基本知識課件
- 讀李玫瑾教授《心理撫養(yǎng)》有感
評論
0/150
提交評論