,按一下以編輯母片標題樣式,*,按一下以編輯母片,第二層,第三層,第四層,第五層,信號與系統實習,實習二:,Matlab,簡介(指令介紹),指導教授:沈岱範,助教:邱垂汶,信號與系統實習實習二:Matlab簡介(指令介紹)指導教授,1,教學目標,了解矩陣運算方式,對函數、運算子有初步概念,了解基本的繪圖技巧,教學目標了解矩陣運算方式,2,大綱,Matlab 參考資料,函數簡介,矩陣的表示與存取方式,運算子與數學函式簡介,基本繪圖技巧,範例,大綱Matlab 參考資料,3,Matlab 參考資料,張智星,Matlab 程式設計與應用,清蔚科技,網路版,http:/www.cs.nthu.edu.tw/jang/mlbook/,Matlab 參考資料張智星,Matlab 程式設計與應,4,函數,Matlab 內建函數,sin,cos,tan,abs,exp,.,提供 m-file 函數,mean,std,使用者自建函數,使用者自行撰寫所需的函式,以彌補 Matlab 和,Toolbox 的不足,以 Toolbox 方式提供,用來擴充,Matlab 功能,以適用於各種開發,環境,Matlab 核心提供,函數Matlab 內建函數使用者自行撰寫所需的函式,以彌補,5,矩陣的表示與存取(1/),4,10,1,6,2,8,1.2,9,4,25,7.2,5,7,1,11,0,0.5,4,5,56,23,83,13,0,10,1,2,Rows(m)3,4,5,Columns,(n),1 2 3 4 5,16111621,27121722,38131823,49141924,510152025,A=,A(2,4),A(17),參考 ex10_01_01.m,矩陣的表示與存取(1/)41016281.294257.2,6,4,10,1,6,2,8,1.2,9,4,25,7.2,5,7,1,11,0,0.5,4,5,56,23,83,13,0,10,1,2,3,4,5,1 2 3 4 5,16111621,27121722,38131823,49141924,510152025,A=,A(3,1),A(3),A(4:5,2:3),A(9 14;10 15),A(9)A(14);A(10)A(15),A(1:5,5),A(:,5),A(21:25),A(21:end),A(1:end,end),A(:,end),A,A(:,:),A(1:end,1:end),參考 ex10_01_01.m,矩陣的表示與存取(2/),41016281.294257.25711100.54556,7,4,10,1,6,2,8,1.2,9,4,25,7.2,5,7,1,11,0,0.5,4,5,56,23,83,13,0,10,1,2,3,4,5,1 2 3 4 5,16111621,27121722,38131823,49141924,510152025,A(:)的意義,4,8,7.2,0,23,10,1.2,10,56,參考 ex10_01_01.m,41016281.294257.25711100.54556,8,矩陣與陣列的運算子,(In order of precedence),(In order of precedence),可使用 help+得到下面的列表,矩陣與陣列的運算子(In order of preceden,9,布林函數運算子,可使用 help+得到上面的列表,布林函數運算子可使用 help+得到上面的列表,10,常用的數學函數,常用的數學函數,11,計算向量元素統計量的常用函數,計算向量元素統計量的常用函數,12,矩陣的基本演練,A=1 2 3;4 5 6;7 8 9,B=3 5 7;2 4 6;7 8 9,C=2,參考 ex10_01_02.m,矩陣的基本演練參考 ex10_01_02.m,13,矩陣乘法,A*B,ans=28 37 46,64 88 112,100 139 178,參考 ex10_01_02.m,矩陣乘法參考 ex10_01_02.m,14,取出矩陣的值,A(2,2),ans=5,A(1:2,1:2),ans=,1 2,4 5,參考 ex10_01_02.m,取出矩陣的值參考 ex10_01_02.m,15,純量乘法,A,.,*C,ans=,2 4 6,8 10 12,14 16 18,參考 ex10_01_02.m,純量乘法參考 ex10_01_02.m,16,矩陣冪次方,A.C,ans=,1 4 9,16 25 36,49 64 81,C.*B,ans=,6 10 14,4 8 12,14 16 18,參考 ex10_01_02.m,矩陣冪次方參考 ex10_01_02.m,17,轉置,A,ans=1 4 7,2 5 8,3 6 9,參考 ex10_01_02.m,轉置參考 ex10_01_02.m,18,基本的繪圖指令,基本的繪圖指令,19,基本繪圖,2-D繪圖,給定 X-data 以及(或)Y-data,定義圖形顏色以及線條樣式etc,繪製單一線條圖形,plot(xdata,ydata,color_linestyle_marker),20,基本繪圖2-D繪圖20,其他指令應用圖形範例,TITLE,TEXT,or,GTEXT,XLABEL,YLABEL,LEGEND,CURVES,參考 ex10_01_03.m,其他指令應用圖形範例TITLETEXTXLABELYLABE,21,x=1:0.1:2*pi;,y=sin(x);,z=cos(x);,subplot,(2,1,1),plot(x,y,r*);,subplot,(2,1,2),plot(x,z,g-);,Subplot 指令,參考 ex10_01_04.m,Subplot 指令參考 ex10_01_04.m,22,subplot,(2,1,1),subplot,(2,1,2),1,2,Subplot 說明,plot(x,y,r*);,plot(x,z,g-);,subplot(2,1,1)subplot(2,1,2)12,23,範例 1/7,畫一個cosine的連續訊號,假設有一函數 y=4cos(6t+/6),時間點介於0與1之間,每隔0.01取一點求值繪出連續圖形,則其MATLAB的程式為,t=0:0.01:1;,y=4*cos(6*pi*t+pi/6);,plot(t,y),參考 ex10_01_05.m,範例 1/7畫一個cosine的連續訊號參考 ex10_01,24,假設有一函數 y=4cos(6t+/6),時間點介於0與1之間,每隔 0.01 取一點,求值,試繪出離散圖形,則其MATLAB的程式為,n=0:0.01:1;,y=4*cos(6*pi*n+pi/6);,stem,(n,y),範例 2/7,參考 ex10_01_06.m,註:stem 用法同 plot,假設有一函數 y=4cos(6t+/6)範例 2/,25,假設有一函數,x(t)=Asin(,0,t+)exp(-at)A=15 ,0,=10 ,=0 ,a=6,t介於0到1之間,每隔0.01取一點求值,繪出連續與離散圖形,其MATLAB的方程式為,clear,clc,;,t=0:0.01:1.0;,y=15*sin(10*pi*t).*exp(-6*t);,plot(t,y,g),hold on,stem(t,y,r),hold off,;,範例 3/7,參考 ex10_01_07.m,註:,1.clear:清除workspace中的變數,2.clc:清空 command window,3.hold on:將目前描繪的圖形繪在上一個圖形中,假設有一函數範例 3/7參考 ex10_01_07.m註,26,hold on,plot(t,y,g),stem(t,y,r),stem(t,y,r),plot(t,y,g),stem(t,y,r),plot(t,y,g),hold on,plot(t,y,g),stem(t,y,r),之前的圖形被覆蓋,保留之前的圖形,hold onplot(t,y,g)stem(t,y,27,假設有一函數,x(n)=A*exp(-an),A=60 ,a=2,t介於-1與1之間,每隔0.05取一點求,值並繪出離散與連續圖形,其MATLAB的方程式為,x=-1:0.05:1;,y=60*(x.2).*exp(-2*x);,stem(x,y),hold on,plot(x,y,r),hold off,範例 4/7,參考 ex10_01_08.m,假設有一函數範例 4/7參考 ex10_01_08.m,28,clear,clc,t=0:0.05:2*pi;,f1=1,phase1=0;,f2=2,phase2=0;,x1=cos(2*pi*f1*t+phase1);,x2=cos(2*pi*f2*t+phase2);,subplot(311),plot(t,x1);,title(frequency=1 Hz);,subplot(312),plot(t,x2);,title(frequency=2 Hz);,subplot(313),plot(t,x1,g,t,x2,r);,legend(frequency=1,frequency=2),頻率為1與2的弦波圖形,範例 5/7,參考 ex10_01_09.m,clear,clc頻率為1與2的弦波圖形範例 5/7參考 e,29,弦波相乘做調變 1,t=0:0.01:2*pi;,f1=1,f2=2;,x1=sin(2*pi*f1*t),x2=cos(2*pi*f2*t);,x3=sin(2*pi*f1*t).*cos(2*pi*f2*t);,subplot(311),plot(t,x1);,subplot(312),plot(t,x2);,subplot(313),plot(t,x3);,shg,範例 6/7,參考 ex10_01_10.m,註:shg:將目前的視窗移到桌面的最上層,弦波相乘做調變 1t=0:0.01:2*pi;範例 6/7參,30,弦波相乘做調變 2,t=0:0.01:2*pi;,f1=1,f2=10;,x1=sin(2*pi*f1*t),x2=cos(2*pi*f2*t);,x3=sin(2*pi*f1*t).*cos(2*pi*f2*t);,subplot(311),plot(t,x1);,subplot(312),plot(t,x2);,subplot(313),plot(t,x3);shg,範例 7/7,參考 ex10_01_11.m,弦波相乘做調變 2t=0:0.01:2*pi;範例 7/7參,31,實作與問題討論,實作與問題討論,32,