第一篇:MAtlab傅里葉變換實驗報告
班級
信工 142
學號
姓名
何巖
實驗組別
實驗日期
室溫
報告日期
成績
報告內(nèi)容:(目得與要求, 原理, 步驟, 數(shù)據(jù), 計算, 小結(jié)等)1、求信號得離散時間傅立葉變換并分析其周期性與對稱性;給定正弦信號 x(t)=2*cos(2*pi*10*t),fs=100HZ,求其DTFT。
(a)代碼: f=10;T=1/f;w=-10:0、2:10;t1=0:0、0001:1;t2=0:0。01:1;n1=-2;n2=8;n0=0;n=n1:0。01:n2;x5=[n>=0.01];x1=2*cos(2*f*pi*t1);x2=2*cos(2*f*pi*t2);x3=(exp(—j).^(t2’*w));x4=x2*x3;subplot(2,2,1);plot(t1,x1);axis([0 1 1、1*min(x2)1。1*max(x2)]);xlabel(’x(n)’);ylabel(’x(n)“);title('原信號 x1”);xlabel(“t”);ylabel(“x1’);subplot(2,2,3);stem(t2,x2);axis([0 1 1、1*min(x2)1。1*max(x2)]);title(’原信號采樣結(jié)果 x2');xlabel('t’);ylabel('x2”);subplot(2,2,2);stem(n,x5);axis([0 1 1、1*min(x5)1.1*max(x5)]);xlabel(’n’);ylabel('x2“);title(’采樣函數(shù)x2');subplot(2,2,4);stem(t2,x4);axis([0 1 —0、2+1。1*min(x4)1、1*max(x4)]);xlabel(’t”);ylabel('x4“);title(”DTFT結(jié)果 x4');(b)結(jié)果:
2、用以下兩個有限長序列來驗證 DTFT 得線性、卷積與共軛特性;x1(n)=[1 2 3 4 5 6 7 8 9 10 11 12];x2(n)=R 10(n)(1)線性:(a)代碼: w=linspace(-8,8,10000);nx1=[0:11];nx2=[0:9];x1=[1 2 3 4 5 6 7 8 9 10 11 12];x2=[1 1 1 1 1 1 1 1 1 1];x3=[x2,zeros(1,(length(x1)—length(x2)))];x4=2*x1+3*x3;X1=x1*exp(-j*nx1'*w);%頻率特性 X3=x3*exp(-j*nx1'*w);%頻率特性 X4=x4*exp(—j*nx1’*w);%頻率特性
subplot(5,3,1),stem(nx1,x1),axis([-1,13,0,15]);title('x1’), ylabel(“x(n)’);
subplot(5,3,2),stem(nx2,x2),axis([—1,13,0,5]);title(”x2');
subplot(5,3,3),stem(nx1,x4),axis([-1,13,0,26]);title(’x4=2*x1+3*x3“);
subplot(5,3,4),plot(w,abs(X1));ylabel('幅度’)
subplot(5,3,7),plot(w,angle(X1));ylabel(’相位')
subplot(5,3,10),plot(w,real(X1));ylabel(’實部’)
subplot(5,3,13),plot(w,imag(X1));ylabel(”虛部’)subplot(5,3,5),plot(w,abs(X3));
subplot(5,3,8),plot(w,angle(X3));
subplot(5,3,11),plot(w,real(X3));subplot(5,3,14),plot(w,imag(X3));
subplot(5,3,6),plot(w,abs(X4));
subplot(5,3,9),plot(w,angle(X4));
subplot(5,3,12),plot(w,real(X4));subplot(5,3,15),plot(w,imag(X4));
(b)結(jié)果:
(2)卷積:(a)代碼: nx1=0:11;nx2=0:9;nx3=0:20;
w=linspace(-8,8,40);%w=[—8,8]分 10000 份
x1=[1 2 3 4 5 6 7 8 9 10 11 12];x2=[1 1 1 1 1 1 1 1 1 1];x3=conv(x1,x2);% x1 卷積 x2 x4=x1*exp(-j*nx1“*w);% x1頻率特性 x5=x2*exp(-j*nx2’*w);% x2 頻率特性 x6=x3*exp(-j*nx3”*w);% x1 卷積 x2頻率特性 x7=x4、*x5;
subplot(2,2,1),stem(nx1,x1),axis([—1,15,0,15]),title(’x1“);su b plo t(2,2,2), s t em(nx2, x 2),ax i s([—1, 1
5,0,5]),title(’x2’);subplot(2,1,2),stem(nx3,x3),axis([—1,25,0,80]);title('x1卷積x2 結(jié)果 x3’);figure,subplot(2,2,1),stem(x4,”filled’),title(“x1得DTFT 結(jié)果x4’);
subplot(2,2,2),stem(x5,”filled'),title(’x2得 DTFT結(jié)果 x5’);
subplot(2,2,3),stem(x6,'filled’),title(’x3得 DTFT 結(jié)果 x6’);
subplot(2,2,4),stem(x7,“filled'),title('x4 得DTFT 結(jié)果x7’);
figure,subplot(3,2,1),stem(w,abs(x6)), ylabel(”幅度’),title(’x1 卷積 x2 得 DTFT');
subplot(4,2,3),stem(w,angle(x6)),ylabel(“相位”)
subplot(4,2,5),stem(w,real(x6)),ylabel(“實部’)
subplot(4,2,7),stem(w,imag(x6)),ylabel('虛部’)
subplot(4,2,2),stem(w,abs(x7)), title(’x1 與 x2 得 DTFT得乘積’);
subplot(4,2,4),stem(w,angle(x7));
subplot(4,2,6),stem(w,real(x7));
subplot(4,2,8),stem(w,imag(x7));
(b)結(jié)果:
(3)共軛:(a)代碼: x1n=[1 2 3 4 5 6 7 8 9 10 11 12];w=—10:10;N1=length(x1n);n1=0:N1—1;x1=real(x1n);x2=imag(x1n);x2n=x1—j*x2;
X1=x2n*(exp(-j)、^(n1'*w));X2=x1n*(exp(j)、^(n1’*w));x3=real(X2);x4=imag(X2);X2=x3—j*x4;figure,subplot(211);stem(w,X1,”.’);title(“x1n共軛得 DTFT’);
subplot(212);stem(w,X2,”、’);title(“x1n 得 DTFT 取共軛且反折”);(b)結(jié)果:
3。
求 LTI 系統(tǒng)得頻率響應(yīng) 給定系統(tǒng) H(Z)=B(Z)/A(Z),A=[0。98777 -0。31183 0、0256] B=[0.98997 0.989 0。98997],求系統(tǒng)得幅頻響應(yīng)與相頻響應(yīng)、(要求使用filter(B,A,δ(n))求解。
(a)結(jié)果: A=[0、98777-0。31183 0、0256];B=[0。98997 0、989 0、98997];C=[1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0] y=filter(B,A,C);subplot(2,2,1);stem(y,'、’);title(’原始序列“);
mag=abs(y);ph=angle(y);ph=ph*180/pi;subplot(2,2,2);stem(mag,”、');title('幅頻特性');xlabel('時間信號n“);ylabel('信號幅度');subplot(2,2,3);stem(ph,”、’);title(“相頻特性”);xlabel(“時間信號 n');ylabel(”信號相位“);(b)結(jié)果:
4.采樣與頻譜混疊 給定信號x(t)=100*exp(-100*t)*cos(2*pi*500*t),求該信號得頻譜;當采樣頻率分別為 fs1=2000HZ,fs2=1000HZ;fs3=500HZ;fs4=200HZ,時輸出序列得 DTFT。
(a)代碼: x=100*exp(-100*t)、*cos(2*pi*500*t);t=—2:0、1:2;w=-10:0。1:10;
y=x*(exp(-j)、^(t’*w));subplot(2,1,1),plot(t,x);subplot(2,1,2),plot(w,y);title(’原始信號得頻譜');figure,fs1=2000;Ts1=1/fs1;n1=-2:Ts1:2;
fs2=1000;Ts2=1/fs2;n2=-2:Ts2:2;
fs3=500;Ts3=1/fs3;n3=-2:Ts3:2;
fs4=200;Ts4=1/fs4;n4=—2:Ts4:2;x1=100。*exp(—100*n1)。*cos(2*pi*500*n1);y1=x1*(exp(-j)。^(n1”*w));subplot(221);plot(w,y1);title(“經(jīng) 2000Hz 采樣后信號得 DTFT”);x2=100。*exp(-100*n2)、*cos(2*pi*500*n2);y2=x2*(exp(-j)、^(n2'*w));subplot(222);plot(w,y2);title(’經(jīng) 1000Hz采樣后信號得 DTFT’);x3=100、*exp(—100*n3)、*cos(2*pi*500*n3);
y3=x3*(exp(—j)、^(n3“*w));subplot(223);plot(w,y3);title(’經(jīng)500Hz 采樣后信號得 DTFT”);x4=100.*exp(—100*n4)。*cos(2*pi*500*n4);y4=x4*(exp(—j)、^(n4’*w));subplot(224);plot(w,y4);title(’經(jīng) 200Hz采樣后信號得 DTFT');(b)結(jié)果:
收獲及感想: DFT針對得就是有限長數(shù)字信號得傅立葉變換或傅立葉時頻分析問題。但 以前得傅立葉變換就是定義在整個時間軸上得,而且一般針對得就是連續(xù)信號 ,獲得得就是一個連續(xù)得頻譜。
離散傅里葉變換(DFT),就是傅里葉變換在時域與頻域上都呈現(xiàn)離散得形式,將時域信號得采樣變換為在離散時間傅里葉變換(DTFT)頻域得采樣。在形式上,變換兩端(時域與頻域上)得序列就是有限長得,而實際上這兩組序
列都應(yīng)當被認為就是離散周期信號得主值序列。即使對有限長得離散信號作DFT,也應(yīng)當將其瞧作經(jīng)過周期延拓成為周期信號再作變換。在實際應(yīng)用中通常采用快速傅里葉變換以高效計算 DFT。
物理意義 設(shè) x(n)就是長度為 N 得有限長序列,則其傅里葉變換,Z 變換與離散傅里葉變換分別用以下三個關(guān)系式表示 X(e^jω)= ∑n={0,N-1}x(n)e^jωn X(z)= ∑n={0,N-1}x(n)z^-n X(k)= ∑n={0,N-1}x(n)e^-j2π/Nnk 單位圓上得 Z 變換就就是序列得傅里葉變換 離散傅里葉變換就是 x(n)得頻譜 X(ejω)在[0,2π]上得 N 點等間隔采樣,也就就是對序列頻譜得離散化,這就就是 DFT得物理意義
第二篇:matlab實驗報告
實驗二
特殊函數(shù)與圖形
一、實驗?zāi)康募耙饬x
掌握用Matlab軟件繪制簡單曲線、曲面圖形,并通過繪制一些特殊函數(shù)的圖形,更加深入地理解相關(guān)函數(shù)的性質(zhì),了解函數(shù)的性態(tài)。
二、實驗內(nèi)容
平面作圖、空間作圖,比較數(shù)值作圖與符號作圖的異同。
三、實驗步驟
1.在D盤建立一個自己的文件夾;
2.開啟軟件平臺——MATLAB,將你建立的文件夾加入到MATLAB的搜索路徑中。
3.4.5.6.7.利用幫助了解函數(shù)plot, surf, ezmesh,ezsurf等的功能和用法。
開啟MATLAB編輯窗口,鍵入你編寫的M文件(命令文件或函數(shù)文件);
保存文件(注意將文件存入你自己的文件夾)并運行;
若出現(xiàn)錯誤,修改、運行直到輸出正確結(jié)果;
寫出實驗報告,并淺談學習心得體會。
四、實驗要求與任務(wù)
根據(jù)實驗內(nèi)容和步驟,完成以下具體實驗,按要求寫出實驗報告。1.作出下圖所示的三維圖形:
圖1 提示:圖形為圓環(huán)面和球面的組合.2.作出下圖所示的墨西哥帽子及其剪裁圖形:
圖2
3.畫出橢球面、雙葉雙曲面、單葉雙曲面.
4.若要求田螺線的一條軸截面的曲邊是一條拋物線:y?0時x2?5z.試重新設(shè)計田螺線的參數(shù)方程,并畫出該田螺線.
5.作出下圖所示的馬鞍面(顏色為灰色,并有一個標題:“馬鞍面”):
圖3 6.繪制黎曼函數(shù)的圖形,要求分母的最大值n的數(shù)值由鍵盤輸入(提示:使用input語句).
第三篇:matlab實驗報告
求解:1.模擬比賽車道曲線和選手速度曲線;
2.估計車道長度和所圍區(qū)域面積;
3.分析車道上相關(guān)路段的路面狀況(用不同顏色或不同線型標記出來);
4.對參加比賽選手提出合理建議。
四.合理建議
1.通過賽道曲線可知,選手所經(jīng)過的賽道上不平整的地方很多,如果平常不多多嘗試不同的路況會造成比賽時的很多突發(fā)情況,都會造成選手的成績受到很大的干擾,甚至退賽等嚴重的后果。所以我建議選手平時要多在不同類型的路況上練習,以增強應(yīng)變能力,取得更好的成績。
2.選手的速度分配有一些不合理,在平直的沙土路段應(yīng)該全力加速,以最快速度通過這個路段,以達到最好的比賽效果。在經(jīng)過坑洼碎石路時盡量保持一個恒定的速度,因為如果速度一直在變化,很容易在這種路段上陷入或者熄火,造成比賽時的極大不利。將加速盡量用在沙土路等摩擦力較大的路上,以免耗費太多的動力。我們需要將動力的效率盡量的提高。
五.實驗的總結(jié)
我認為,本實驗的主要目的在于讓我們掌握對三次樣條差值來模擬離散點表示的曲線的運用,我認為我們已經(jīng)基本掌握,并且我們也掌握了用梯形法求不規(guī)則封閉圖形的面積的方法,除此之外,本實驗中還有考查所學知識外的方面,就是畫v-t圖。
事實上,根據(jù)題目所給的條件,并不能準確地畫出v-t圖,所以需要找到一種方法,來盡量 使結(jié)果接近真正的情況。我采用了中值的方法,這是我想到的一種比較有效的方法,并且在使用這種方法時,又運用到了三次樣條差值的方法,使我對三次樣條差值法理解地更加深刻,并且能更加靈活地運用。
所以我發(fā)現(xiàn)三次樣條差值的方法運用的范圍十分廣泛,不僅是對路徑的擬合,許多已知離散點,對應(yīng)的函數(shù)連續(xù)變化的問題也可以用此方法解決,比如已知一天中幾個離散時間點對應(yīng)的氣溫,估計出一天氣溫的變化趨勢,就可以用此方法。
最重要的是,我感到了數(shù)學建模的重要性,我發(fā)現(xiàn)原來生活中不少類似的問題,都是用數(shù)學建模的方法解決的。
第四篇:北航matlab上機實驗報告
MATLAB基礎(chǔ)上機指導(dǎo)書
實驗?zāi)康?/p>
MATLAB基礎(chǔ)上機實驗的目的主要是在深入理解和掌握課程中的基本概念和原理的基礎(chǔ)上培養(yǎng)學習者用計算機解決實際問題的意識,訓練和提高學生分析問題、仿真、程序設(shè)計和程序調(diào)試能力。實驗要求
1.整個學期的上機實踐共有4個。從實驗一的MATLAB的上機基本操作,到實驗四的GUI設(shè)計,都本著由淺入深、由易到難、逐步深入的原則,給出了不同的上機程序。一般每個實驗中有約5-7個不同難度的程序,按班級序號排列組合分組,每組學生包括5人,按組檢查程序。
2.每次實驗后要求學生提交上機報告,這也是整個實驗過程的一個重要環(huán)節(jié)。實驗結(jié)束后,要整理實驗結(jié)果并認真分析和總結(jié),根據(jù)教師要求寫出實驗報告。實驗報告一般包括如下內(nèi)容:
⑴ 實驗內(nèi)容:實驗題目與要求。⑵ 程序清單
(3)運行結(jié)果:原始數(shù)據(jù)、相應(yīng)的運行結(jié)果和必要的說明。
(4)分析與思考:調(diào)試過程及調(diào)試中遇到的問題及解決辦法;調(diào)試程序的心得與體會;其他函數(shù)算法的存在與實踐等。若最終未完成調(diào)試,要認真找出錯誤并分析原因等。常用命令參考
本節(jié)就一些常用的MATLAB命令進行介紹,使初學者盡快提高MATLAB上機調(diào)試程序的能力。
1、學會用help和doc函數(shù)。
2、輸入輸出文件:save/load
3、解線性方程組AX=B:X=AB
4、作圖時兩張曲線合并:hold on或者subplot作子圖
5、程序計算時間:tic,toc或者clock
6、變量顯示方式更改:format long/short/bank...7、數(shù)組元素求和:sum
8、求數(shù)組長度:length 求矩陣維數(shù):size或者ndims 矩陣元素個數(shù):numel
9、函數(shù)作圖:
餅圖:pie/pie3 誤差圖:errorbar 散點圖:scatter/scatter3 直方圖:hist 函數(shù)圖:fplot 動畫:movie
10、矩陣分析:
左右翻轉(zhuǎn):fliplr 上下翻轉(zhuǎn):flipud 轉(zhuǎn)置:transpose 矩陣求逆:inv 矩陣范數(shù):norm 條件數(shù):cond 初等變換:rref 特征值:eig/eigs
11、特殊矩陣:
元素全為1的矩陣:ones 元素全為0的矩陣:zeros 單位陣:eye 魔方陣:magic 線性變化數(shù)組:linspace 聚合矩陣:cat/horzcat/vertcat
12、隨機數(shù):
創(chuàng)建一個元素服從均勻分布的隨機數(shù)數(shù)組:rand 創(chuàng)建一個元素服從正態(tài)分布的隨機數(shù)數(shù)組:randn 二項分布:binornd 指數(shù)分布:exprnd F分布:frnd 幾何分布:geornd 超幾何分布:hygernd 泊松分布:poissrnd
正態(tài)分布:normrnd 離散均勻分布:unidrnd 連續(xù)均勻分布:unifrnd
13、清屏:clc 清理內(nèi)存:clear
14、字體顯示變更等:preferences
15、得到一個文件夾的所有文件名:ls
16、語句太長的話可以再句末加...換行。
實驗一 MATLAB快速入門操作
[實驗?zāi)康腯 1. 熟悉MATLAB的工作環(huán)境。2. 熟悉MATLAB的幫助系統(tǒng)。3. 掌握基本的運算表達。4. 掌握基本的數(shù)學函數(shù)。5. 掌握基本的字符串使用。[實驗內(nèi)容] 1.執(zhí)行MATLAB的啟動和退出。觀看DEMO程序,INTRO程序,HELP文件,練習MATLAB常用命令在命令窗口中計算數(shù)學表達式,輸入簡單矩陣,查看工作空間中的變量,命令窗口顯示清除,語句、變量及數(shù)據(jù)的表示,搜索路徑設(shè)置。
2.使用函數(shù)創(chuàng)建字符串數(shù)組,掌握char、strvcat、strcat之間的區(qū)別。>> c1=char('china','india');>> c3=strvcat('china','india');>> c4=strcat('china','india');char中各部分互相獨立,strvact豎直連接 strcat直接連接 >> c1=char('china','india')
c1 =
china india
>> c3=strvcat('china','india')
c3 =
china india
>> c4=strcat('china','india')
c4 =
chinaindia 也就是說strcat連接兩個字符串,而strvcat垂直連接兩個字符串.? i6c?2e3.設(shè)三個復(fù)數(shù)a=3+4i,b=1+2i,計算x=ab/c,注意復(fù)數(shù)的表達方式。
>> a=3+4i,b=1+2i,c=2*exp(pi/6*i)a =
3.0000 + 4.0000i
b =
1.0000 + 2.0000i
c =
1.7321 + 1.0000i
>> X=a*b/c X =
0.3349 + 5.5801i
sin?x??354.計算下式的結(jié)果,其中x=45°,572
注意函數(shù)參數(shù)的使用類型,掌握復(fù)雜表達式的計算。>> a=45/180*pi a =
0.7854
>> b=(sin(a)+35^(1/2))/72^(1/5)b =
2.8158
5.計算星球之間的萬有引力。包括地球和太陽,地球和月亮之間的距離。具體參數(shù)太陽質(zhì)量1.989×10^30千克,地球質(zhì)量5.976×10^27千克,太陽和地球的距離***0米,月亮質(zhì)量7.351×10^ 22千克,月亮和地球兩者間距384400000米,萬有引力系數(shù)K 6.67×10^-11,見P26 例2-3。
>> M1=1.989e30,M2=5.976e27,M3=7.351e22,d1=1.4960e11,d2=3.844e8 K=6.67e-11
M1 =
1.9890e+030
M2 =
5.9760e+027
M3 =
7.3510e+022
d1 =
1.4960e+011
d2 =
384400000
K =
6.6700e-011
>> F12=M1*M2*K/d1^2
F12 =
3.5426e+025
>> F23=M2*M3*K/d2^2
F23 =
1.9830e+023
?333??,以及數(shù)據(jù)的修改方法,盡量考2336.用兩種方法創(chuàng)建一個二維數(shù)組?????433??慮計算效率。在掌握二維數(shù)組基礎(chǔ)上掌握三維數(shù)組的創(chuàng)建方法。
創(chuàng)建:方法1;x=[3,3,3;2,3,3;4,3,3] x =
3 3 2 3 3 4 3 3 方法2 在workspace中點擊 new variable 就會在下面出現(xiàn)一個新變量unnamed 雙擊unnamed變量引出一個空白頁面,在里面進行編輯 >> unnamed
unnamed =
3 3 2 3 3 4 3 3 修改
直接在workspace中點擊需要修改的變量,在相應(yīng)位置修改變量,保存后在命令窗口重新調(diào)用函數(shù) 計算
[問題討論] 1.小結(jié)上機各個環(huán)節(jié)所出現(xiàn)的錯誤及解決的辦法。
[思考問題] 1.仿真是否“真實”,與什么因素有關(guān)? 仿真是在數(shù)字計算機上進行試驗的數(shù)字化技術(shù),包括數(shù)字和邏輯模型的某些模式,這些模型描述了某一事件或經(jīng)濟系統(tǒng)在若干周期內(nèi)的特征。仿真常常包括模型建立,仿真模型的建立和仿真試驗三個方面。從以上可以看出,仿真其實是建立在模型之上,通過計算機或者其他載體,并借助經(jīng)驗知識、統(tǒng)計數(shù)據(jù)和信息資料等對真實或假想的系統(tǒng)進行試驗,得出試驗結(jié)果的過程。
在這點上看,仿真并不真實,因為它并不能100%模擬出真實情況,而實際上“真實”的復(fù)雜多變也難以模擬。但是,仿真可以通過以上的手段在一定范圍內(nèi)對真實進行模擬和預(yù)測。其與真實結(jié)果的相關(guān)性,或者說仿真方法的優(yōu)劣性與其系統(tǒng)、模型和載體是密切相關(guān)的。
第五篇:信號與系統(tǒng) MATLAB實驗報告
院系:
年級:
姓名:
實驗時間:
實驗地點:
MATLAB實驗報告
專業(yè):
班號:
學號:
《信號與系統(tǒng)》
實驗一 連續(xù)時間信號的表示及可視化
實驗題目:
f(t)??(t);f(t)??(t);f(t)?eat(分別取a?0及a?0); f(t)?R(t);f(t)?Sa(?t);f(t)?Sin(2?ft)(分別畫出不同周期個數(shù)的波形)。
解題分析:
以上各類連續(xù)函數(shù),先運用t = t1: p:t2的命令定義時間范圍向量,然后調(diào)用對應(yīng)的函數(shù),建立f與t的關(guān)系,最后調(diào)用plot()函數(shù)繪制圖像,并用axis()函數(shù)限制其坐標范圍。
實驗程序:
(1)f(t)??(t)
t=-1:0.01:3 %設(shè)定時間變量t的范圍及步長 f=dirac(t)%調(diào)用沖激函數(shù)dirac()plot(t,f)%用plot函數(shù)繪制連續(xù)函數(shù) axis([-1,3,-0.5,1.5])%用axis函數(shù)規(guī)定橫縱坐標的范圍(2)f(t)??(t)
t=-1:0.01:3 %設(shè)定時間變量t的范圍及步長 f=heaviside(t)%調(diào)用階躍函數(shù)heaviside()plot(t,f)%用plot函數(shù)繪制連續(xù)函數(shù) title('f(t)=heaviside(t)')%用title函數(shù)設(shè)置圖形的名稱 axis([-1,3,-0.5,1.5])%用axis函數(shù)規(guī)定橫縱坐標的范圍(3)f(t)?eat
a=1時:
t=-5:0.01:5 %設(shè)定時間變量t的范圍及步長 f=exp(t)%調(diào)用指數(shù)函數(shù)exp()
plot(t,f)%用plot函數(shù)繪制連續(xù)函數(shù) title('f=exp(t)')%用title函數(shù)設(shè)置圖形的名稱 axis([-5,5,-1,100])%用axis函數(shù)規(guī)定橫縱坐標的范圍 a=2時:
t=-5:0.01:5 f=exp(2*t)%調(diào)用指數(shù)函數(shù)exp()plot(t,f)title('f=exp(2*t)')axis([-5,5,-1,100])a=-2時: t=-5:0.01:5 f=exp(-2*t)plot(t,f)title('f=exp(-2*t)')axis([-5,5,-1,100])(4)f(t)?R(t)
t=-5:0.01:5 f=rectpuls(t,2)%用rectpuls(t,a)表示門函數(shù),默認以零點為中心,寬度為a plot(t,f)title('f=R(t)')axis([-5 5-0.5 1.5])(5)f(t)?Sa(?t)
ω=1時: t=-20:0.01:20 f=sin(t)./t %調(diào)用正弦函數(shù)sin(),并用sin(t)./t實現(xiàn)抽樣函數(shù) plot(t,f)title('f(t)=Sa(t)')axis([-20,-20,-0.5,1.1])3
ω=5時: t=-20:0.01:20 f=sin(5*t)./(5*t)plot(t,f)title('f(t)=Sa(5*t)')axis([-20,-20,-0.5,1.1])(6)f(t)?Sin(2?ft)
ω=1時: t=-10:0.01:10 f=sin(t)%plot(t,f);title('f=sin(t)')axis([-10,10,-2,2])ω=5時: t=-10:0.01:10 f=sin(5*t)plot(t,f);title('f=sin(5*t)')axis([-10,10,-2,2])
實驗結(jié)果;
(1)
調(diào)用正弦函數(shù)sin()4
1.510.50-0.5-1-0.500.511.522.532)
f(t)=heaviside(t)1.510.50-0.5-1-0.500.511.522.533)((a=1時:
f=exp(t)***3020100-5-4-3-2-1012345a=2時:
f=exp(2*t)***3020100-5-4-3-2-1012345
a=-2時:
f=exp(-2*t)***3020100-5-4-3-2-1012345(4)
f=R(t)1.510.50-0.5-5-4-3-2-1012345
(5)ω=1時:
f(t)=Sa(t)10.80.60.40.20-0.2-0.4-20-15-10-505101520ω=5時:
f(t)=Sa(5*t)10.80.60.40.20-0.2-0.4-20-15-10-505101520(6)ω=1時:
f=sin(t)21.510.50-0.5-1-1.5-2-10-8-6-4-20246810
ω=5時:
f=sin(5*t)21.510.50-0.5-1-1.5-2-10-8-6-4-20246810
實驗心得體會:(1)在 MATLAB中,是用連續(xù)信號在等時間間隔點的樣值來近似地表示連續(xù)信號的,當取樣時間間隔足夠小時,這些離散的樣值就能較好地近似出連續(xù)信號。在 MATLAB 中t = t1: p: t2的命令定義時間范圍向量,t1為信號起始時間,t2為終止時間,p為時間間隔。
(2)plot()函數(shù)可用于連續(xù)函數(shù)的繪制。
(3)用axis()函數(shù)限制坐標范圍,可使圖像更加勻稱美觀。
改進想法:
本題中函數(shù)的表示方法都不只一種。如階躍函數(shù)可以借助符號函數(shù)來實現(xiàn)可視化。其程序和結(jié)果如下: t=-5:0.05:5 f=sign(t)%調(diào)用符號函數(shù)sign()axis([-5,5,-1.1,1.1])
ff=1/2+1/2*f %運用階躍函數(shù)與符號函數(shù)的關(guān)系,表示出階躍函數(shù)ff plot(t,ff)axis([-5,5,-0.1,1.1])
f=heaviside(t)10.80.60.40.20-5-4-3-2-1012345
實驗二 離散時間信號的表示及可視化
實驗題目:
f(n)??(n);f(n)??(n);f(n)?ean(分別取a?0及a?0);
f(n)?RN(n)(分別取不同的N值);f(n)?Sa(n?); f(n)?Sin(n?)(分別取不同的?值);
解題分析:
以上各類離散函數(shù),可仿照連續(xù)函數(shù)的可視化,先運用n =n1: p: n2的命令定義自變量的范圍及步長,然后調(diào)用對應(yīng)的函數(shù),建立f與t的關(guān)系,最后調(diào)用stem()函數(shù)繪制圖像,并用axis()函數(shù)限制其坐標范圍。
實驗程序:
(1)f(n)??(n)
n=-5:0.5:5 %設(shè)定時間變量n的范圍及步長 f=dirac(n)stem(n,f)%調(diào)用stem()繪制離散函數(shù) title('f=dirac(t)')axis([-5,5,-3,10])%用axis函數(shù)規(guī)定橫縱坐標的范圍(2)f(n)??(n)
n=-5:0.5:5 f=heaviside(n)stem(n,f)title('f=Heaviside(t)')axis([-5,5,-0.5,1.5])(3)f(n)?ean
a=1時:
n=-5:0.5:5 f=exp(n)stem(n,f)title('f=exp(n)')a=2時: n=-5:0.5:5 f=exp(2*n)stem(n,f)title('f=exp(2*n)')a=-2時: n=-5:0.5:5 f=exp(-2*n)stem(n,f)title('f=exp(-2*n)')(4)f(n)?RN(n)
n=-5:0.5:5 f=rectpuls(n,2)stem(n,f)title('f=R(n)')axis([-5,5,-0.5,1.5])(5)f(n)?Sa(n?)
ω=1時: n=-20:0.5:20 f=sin(n)./(n)stem(n,f)title('f=Sa(n)')axis([-20,-20,-0.5,1.1])ω=5時: n=-20:0.5:20 f=sin(5*n)./(5*n)13
stem(n,f)title('f=Sa(5*n)')axis([-20,-20,-1,5])(6)f(n)?Sin(n?)
ω=1時: n=-5:0.5:5 f=sin(n)stem(n,f)title('f=sin(n)')axis([-5,5,-2,2])ω=5時: n=-5:0.5:5 f=sin(5*n)stem(n,f)title('f=sin(5*n)')axis([-5,5,-2,2])
實驗結(jié)果;
(1)
f=dirac(t)1086420-2-5-4-3-2-10123452)
f=Heaviside(t)1.510.50-0.5-5-4-3-2-10123453)((a=1時:
f=exp(n)150100500-5-4-3-2-1012345a=2時:
2.5x 104f=exp(2*n)21.510.50-5-4-3-2-1012345
a=-2時:
4f=exp(-2*n)2.5x 1021.510.50-5-4-3-2-1012345(4)
f=R(n)1.510.50-0.5-5-4-3-2-1012345
(5)ω=1時:
f=Sa(n)10.80.60.40.20-0.2-0.4-20-15-10-505101520ω=5時:
f=Sa(5*n)0.250.20.150.10.050-0.05-0.1-0.15-0.2-20-15-10-505101520(6)ω=1時:
f=sin(n)21.510.50-0.5-1-1.5-2-5-4-3-2-1012345
ω=5時:
f=sin(5*n)21.510.50-0.5-1-1.5-2-5-4-3-2-1012345
實驗心得體會: 用plot()函數(shù)可以繪制離散序列,但是與連續(xù)序列有所不同,需要在括號內(nèi)加上'.'。但是plot()畫出來的函數(shù)圖像不直觀,顯得很凌亂。
改進想法:
(1)對于離散函數(shù),如果使用stem(n,f, '.')函數(shù),繪圖效果更好。如抽樣函數(shù)的程序: n=-20:0.5:20 f=sin(n)./(n)stem(n,f,'.')title('f=Sa(n)')axis([-20,-20,-0.5,1.1])繪圖結(jié)果如下:
f=Sa(n)10.80.60.40.20-0.2-0.4-20-15-10-505101520
對比可知此法做出的圖像更加清晰美觀。
(2)MATLAB 可以自動地根據(jù)曲線數(shù)據(jù)的范圍選擇合適的坐標系,從而使得曲線盡可能清晰地顯示出來,一般情況下不必選擇坐標系。但是,如果對 MATLAB自動產(chǎn)生的坐標軸不滿意,可以利用 axis 命令對坐標軸進行調(diào)整。
實驗三 系統(tǒng)的時域求解
實驗題目:
1.設(shè)h(n)?(0.9)nu(n),x(n)?u(n)?u(n?10),求y(n)?x(n)*h(n),并畫出x(n)、h(n)、y(n)波形。
y(n)?0.81y(n?2)?x(n)?x(n?2)的單位
j?2.求因果線性移不變系統(tǒng)抽樣響應(yīng)h(n),并繪出H(e)的幅頻及相頻特性曲線。
解題分析:
1.用heaviside()和exp()函數(shù) 表示出x(n)和h(n),然后調(diào)用conv()函數(shù)實現(xiàn)x(n)和h(n)的卷積y(n)。并且分別將三個函數(shù)圖像繪出。
2.通過給矩陣a,b賦值,建立系統(tǒng)差分方程,然后調(diào)用impz()函數(shù)求系統(tǒng)的沖激響應(yīng),再用函數(shù)freqs(b,a)進行系統(tǒng)頻率響應(yīng)的分析。
實驗程序:
(1)
n=-10:20 %設(shè)置變量范圍,默認步長為1 f=heaviside(n)x=heaviside(n)-heaviside(n-10)%階躍函數(shù)直接相減 figure(1)%產(chǎn)生圖像窗口1 stem(n,x)%繪制函數(shù)x title('x(n)')h=0.9.^n.*f %函數(shù)h的表達式 figure(2)%產(chǎn)生圖像窗口2 stem(n,h)%繪制函數(shù)h title('h(n)')n1=-20:40 y=conv(h,x)%調(diào)用conv()函數(shù)求h和x的卷積
figure(3)%產(chǎn)生圖像窗口3 stem(y)%繪制函數(shù)y title('y(n)=x(n)*h(n)')(2)
a=[1 0-0.81] %描述系統(tǒng)的差分方程的系數(shù) b=[1 0-1] %描述系統(tǒng)的差分方程的系數(shù) figure(1)h=impz(n,m,-10:10)%調(diào)用impz()函數(shù)求系統(tǒng)的沖激響應(yīng) stem(h)%繪制函數(shù)h的離散序列 title('h(n)')figure(2)freqs(b,a)%對連續(xù)系統(tǒng)頻率響應(yīng)H(jw)進行分析的函數(shù)freqs()
實驗結(jié)果;
(1)
x(n)10.90.80.70.60.50.40.30.20.10-10-505101520
h(n)0.90.80.70.60.50.40.30.20.10-10-505101520y(n)=x(n)*h(n)***05060702)
(h(n)1.210.80.60.40.20-0.20510152025
100.09udeti100.05agnM100.0110-210-1100101Frequency(rad/s)1)s0.5reeeg(d0e hasP-0.5-110-210-1100101Frequency(rad/s)
實驗心得體會:
(1)計算離散序列的卷積時,應(yīng)考慮其結(jié)果的橫坐標范圍的改變。(2)向量相乘時,注意用‘.’。
(3)借助MATLAB的內(nèi)部函數(shù)conv()可以很容易地完成兩個信號的卷積運算,并且其完成的是兩個多項式的乘法運算,在MATLAB中它們的系數(shù)構(gòu)成一個行向量來表示。
(3)表示系統(tǒng)的方法是用系統(tǒng)函數(shù)分子和分母多項式系數(shù)行向量來表示。
改進想法:
(1)n=-10:20 %f=heaviside(n)x=heaviside(n)-heaviside(n-10)%figure(1)%axis([-10,20,0,1])stem(n,x)%title('x(n)')h=0.9.^n.*f %figure(2)%stem(n,h)%axis([-10,20,0,1])title('h(n)')n1=-20:40 y=conv(h,x)%figure(3)%stem(y)%axis([0,62,0,7])title('y(n)=x(n)*h(n)')
運行結(jié)果:
設(shè)置變量范圍,默認步長為1
階躍函數(shù)直接相減 產(chǎn)生圖像窗口1 繪制函數(shù)x 函數(shù)h的表達式 產(chǎn)生圖像窗口2 繪制函數(shù)h 調(diào)用conv函數(shù)求h和x的卷積 產(chǎn)生圖像窗口3 繪制函數(shù)y 26
x(n)10.90.80.70.60.50.40.30.20.10-10-505101520h(n)10.90.80.70.60.50.40.30.20.10-10-505101520
y(n)=x(n)*h(n)***405060
實驗四 信號的DFT分析
實驗題目:
計算余弦序列x(n)?cos(?8n)RN(n)的DFT。分別對N=10、16、22時計算DFT,繪出X(k)幅頻特性曲線,分析是否有差別及產(chǎn)生差別的原因。
解題分析:
用矩陣代替門函數(shù)給變量n賦值,并設(shè)定不同的N值,然后調(diào)用fft()函數(shù)實現(xiàn)函數(shù)的傅里葉變換,然后用subplot()和stem()函數(shù)繪圖。
實驗程序:
(1)N=10時:
N=10 %設(shè)定N的值為10 n=[0:N-1] %用矩陣代替門函數(shù)給n賦值 x=cos((pi/8).*n)%調(diào)用cos()函數(shù)
y=fft(x)%調(diào)用fft()函數(shù)求x的傅里葉變換 subplot(2,1,1),stem(n,y)%繪制y的離散圖 title('DFT[cos((pi/8)*n]')subplot(2,1,2),stem(n,abs(y))%繪制y的幅頻特性曲線 title('X(k)')(2)N=16時:
N=16 %設(shè)定N的值為16 n=[0:N-1] %用矩陣代替門函數(shù)給n賦值 x=cos((pi/8).*n)%調(diào)用cos()函數(shù)
y=fft(x)%調(diào)用fft()函數(shù)求x的傅里葉變換 subplot(2,1,1),stem(n,y)%繪制y的離散圖 title('DFT[cos((pi/8)*n]')subplot(2,1,2),stem(n,abs(y))%繪制y的幅頻特性曲線
title('X(k)')(3)N=22時:
N=22 %設(shè)定N的值為22 n=[0:N-1] %用矩陣代替門函數(shù)給n賦值 x=cos((pi/8).*n)%調(diào)用cos()函數(shù)
y=fft(x)%調(diào)用fft()函數(shù)求x的傅里葉變換 subplot(2,1,1),stem(n,y)%繪制y的離散圖 title('DFT[cos((pi/8)*n]')subplot(2,1,2),stem(n,abs(y))%繪制y的幅頻特性曲線 title('X(k)')
實驗結(jié)果;
(1)N=10時:
DFT[cos((pi/8)*n]3210-10123456789X(k)64200123456789(2)N=16時:
DFT[cos((pi/8)*n]1050-5051015X(k)864200510153)N=22時:
DFT[cos((pi/8)*n]6420-20510152025X(k)***1(實驗結(jié)果分析:
由圖可知,不同的N值所對應(yīng)的DFT序列和幅頻響應(yīng)不同,是因為N代表DFT的變換區(qū)間長度,當N取不同的值時,函數(shù)所對應(yīng)的離散傅里葉變換和幅頻特性曲線也不同。
實驗心得體會: MATLAB是計算機運算,無法實現(xiàn)無限時間信號和無限大數(shù)量的計算,故而周期信號只能取有限個諧波分量近似合成,即N值有限,且N值越大,仿真結(jié)果越接近。所以手工求取的傅里葉變換系數(shù)與MATLAB求取存在差別。
實驗五 系統(tǒng)時域解的快速卷積求法
實驗題目:
用快速卷積法計算系統(tǒng)響應(yīng)
y(n)?x(n)*h(n),已知:
x(n)?sin(0.4n)R15(n),h(n)?0.9nR20(n)。要求取不同的L點數(shù),并畫出x(n)、h(n)、y(n)波形,分析是否有差別及產(chǎn)生差別的原因。
解題分析:
根據(jù)離散序列卷積及傅里葉變換的性質(zhì),可先求出兩函數(shù)x(n)和h(n)的L點傅里葉變換,分別得到Xk和Yk,然后求Xk和Yk之積Hk的傅里葉反變換,即得到了x(n)和h(n)的卷積y(n)。
實驗程序:
L=10時:
n1=[0:14] %用矩陣代替門函數(shù)給n1賦值 x=sin(0.4.*n1)%寫出x的表達式 n2=[0:19] %給n2賦值 y=0.9.^n2 %寫出y的表達式
Xk=fft(x,10)%調(diào)用fft()函數(shù)求x的L(=10)點傅里葉變換 Yk=fft(y,10)%求y的L點傅里葉變換 Hk=Xk.*Yk %寫出Hk的表達式
h=ifft(Hk)%調(diào)用ifft()函數(shù)求Hk的傅里葉反變換 subplot(3,1,1),stem(x)%繪制x的離散圖 title('x(n)')subplot(3,1,2),stem(y)%繪制y的離散圖 title('y(n)')subplot(3,1,3),stem(h)%繪制h的離散圖 title('h(n)')xlabel('L=10')%橫坐標處做標注
(2)L=18時: n1=[0:14] x=sin(0.4.*n1)n2=[0:19] y=0.9.^n2 Xk=fft(x,18)Yk=fft(y,18)Hk=Xk.*Yk h=ifft(Hk)subplot(3,1,1),stem(x)title('x(n)')subplot(3,1,2),stem(y)title('y(n)')subplot(3,1,3),stem(h)title('h(n)')xlabel('L=18')(3)L=28時: n1=[0:14] x=sin(0.4.*n1)n2=[0:19] y=0.9.^n2 Xk=fft(x,28)Yk=fft(y,28)Hk=Xk.*Yk h=ifft(Hk)subplot(3,1,1),stem(x)title('x(n)')subplot(3,1,2),stem(y)title('y(n)')subplot(3,1,3),stem(h)title('h(n)')34
xlabel('L=28')(4)L=35時: n1=[0:14] x=sin(0.4.*n1)n2=[0:19] y=0.9.^n2 Xk=fft(x,35)Yk=fft(y,35)Hk=Xk.*Yk h=ifft(Hk)subplot(3,1,1),stem(x)title('x(n)')subplot(3,1,2),stem(y)title('y(n)')subplot(3,1,3),stem(h)title('h(n)')xlabel('L=35')
實驗結(jié)果;
(1)L=10時:
x(n)10-1051015y(n)10.***1820h(n)42012345678910L=102)L=18時:
x(n)10-1051015y(n)10.***1820h(n)50-***8L=183)L=28時:
36((x(n)10-1051015y(n)10.***1820h(n)50-5051015202530L=284)L=35時:
x(n)10-1051015y(n)10.***1820h(n)50-***L=35
37(實驗結(jié)果分析:
由圖可知,當L取不同的值時,對應(yīng)的y(n)波形形狀相似,但是有所不同,產(chǎn)生這種差別的原因是L代表傅里葉變換區(qū)間長度,當L取不同的值時,所對應(yīng)的函數(shù)波形也有所差別。
實驗心得體會:(1)計算離散序列的卷積,雖然本實驗的快速卷積方法看上去多次變換了變量的域,使過程變復(fù)雜了,但實際上減少了計算量,是一種快速而簡單的方法。(2)用subplot繪圖函數(shù)可將圖形窗口分成若干等份,便于將多個圖像進行分組或者比較。
改進想法:
當L取不同的值時,matlab自動生成的圖像的橫縱坐標范圍不同,不便于相互比較,因此可以自己規(guī)定坐標軸范圍,這樣可以更加直觀地看出各波形間的差別。