信号与系统实验二00002.docx
《信号与系统实验二00002.docx》由会员分享,可在线阅读,更多相关《信号与系统实验二00002.docx(16页珍藏版)》请在冰豆网上搜索。
信号与系统实验二00002
信号与系统实验二
信号与系统
实验报告
实验二
实验名称:
连续时间信号的频域分析
指导老师:
苏永新
班级:
09通信工程1班
学号:
2009963924
姓名:
王维
弦周期信号。
指数形式的傅里叶级数为:
2.3
其中,
为指数形式的傅里叶级数的系数,按如下公式计算:
2.4
指数形式的傅里叶级数告诉我们,如果一个周期信号x(t),满足狄里克利条件,那么,它就可以被看作是由很多不同频率的互为谐波关系(harmonicallyrelated)的周期复指数信号所组成,其中每一个不同频率的周期复指数信号称为基本频率分量,其复幅度(complexamplitude)为
。
这里“复幅度(complexamplitude)”指的是
通常是复数。
上面的傅里叶级数的合成式说明,我们可以用无穷多个不同频率的周期复指数信号来合成任意一个周期信号。
然而,用计算机(或任何其它设备)合成一个周期信号,显然不可能做到用无限多个谐波来合成,只能取这些有限个谐波分量来近似合成。
假设谐波项数为N,则上面的和成式为:
2.5
显然,N越大,所选项数越多,有限项级数合成的结果越逼近原信号x(t)。
本实验可以比较直观地了解傅里叶级数的物理意义,并观察到级数中各频率分量对波形的影响包括“Gibbs”现象:
即信号在不连续点附近存在一个幅度大约为9%的过冲,且所选谐波次数越多,过冲点越向不连续点靠近。
这一现象在观察周期矩形波信号和周期锯齿波信号时可以看得很清楚。
三、实验内容和要求
实验前,必须首先阅读本实验原理,读懂所给出的全部范例程序。
实验开始时,先在计算机上运行这些范例程序,观察所得到的信号的波形图。
并结合范例程序应该完成的工作,进一步分析程序中各个语句的作用,从而真正理解这些程序。
实验前,一定要针对下面的实验项目做好相应的实验准备工作,包括事先编写好相应的实验程序等事项。
Q2-1编写程序Q2_1,绘制下面的信号的波形图:
其中,ω0=0.5π,要求将一个图形窗口分割成四个子图,分别绘制cos(ω0t)、cos(3ω0t)、cos(5ω0t)和x(t)的波形图,给图形加title,网格线和x坐标标签,并且程序能够接受从键盘输入的和式中的项数。
抄写程序Q2_1如下:
clear,
closeall
dt=0.00001;t=-2:
dt:
4;
w0=0.5*pi;
x1=cos(w0.*t);
x2=cos(3*w0.*t);
x3=cos(5*w0.*t);
N=input('TypeinthenumberoftheharmoniccomponentsN=');
x=0;
forq=1:
N;
x=x+(sin(q*(pi/2)).*cos(q*w0*t))/q;
end
subplot(221),
plot(t,x1)
axis([-24-22]);
gridon,
title('signalcos(w0.*t)'),
subplot(222),
plot(t,x2)
axis([-24-22]);
gridon
title('signalcos(3*w0.*t))'),
subplot(223)
plot(t,x3)
axis([-24-22]);
gridon
title('signalcos(5*w0.*t))'),
xlabel('timet(sec)')
subplot(224)
plot(t,x)
axis([-24-22]);
gridon
title('signalx(t)'),
xlabel('timet(sec)')
执行程序Q2_1所得到的图形如下:
Q2-2给程序Program2_1增加适当的语句,并以Q2_2存盘,使之能够计算例题2-1中的周期方波信号的傅里叶级数的系数,并绘制出信号的幅度谱和相位谱的谱线图。
通过增加适当的语句修改Program2_1而成的程序Q2_2抄写如下:
clear,closeall
T=2;dt=0.00001;t=-2:
dt:
2;
x1=u(t+0.2)-u(t-0.2-1-dt);x=0;
form=-1:
1
x=x+u(t+0.2-m*T)-u(t-0.2-1-m*T-dt);
end
w0=2*pi/T;
N=10;
L=2*N+1;
fork=-N:
1:
N;
ak(N+1+k)=(1/T)*x1*exp(-j*k*w0*t')*dt;
end
phi=angle(ak);
y=0;forq=1:
L;
y=y+ak(q)*exp(j*(-(L-1)/2+q-1)*2*pi*t/T);
end;
subplot(221),
plot(t,x),title('Theoriginalsignalx(t)'),axis([-2,2,-0.2,1.2]),
subplot(223),
plot(t,y),title('Thesynthesissignaly(t)'),axis([-2,2,-0.2,1.2]),xlabel('Timet'),
subplot(222)
k=-N:
N;stem(k,abs(ak),'k.'),title('Theamplitude|ak|ofx(t)'),axis([-N,N,-0.1,0.6])
subplot(224)
stem(k,phi,'r.'),title('Thephasephi(k)ofx(t)'),axis([-N,N,-2,2]),xlabel('Indexk')
执行程序Q2_2得到的图形
Q2-3反复执行程序Program2_2,每次执行该程序时,输入不同的N值,并观察所合成的周期方波信号。
通过观察,你了解的吉伯斯现象的特点是:
N=30
N=100
吉伯斯现象的特点是:
随着N增加,部分和的起伏就向不连续点压缩,但是对任何有限的N值,起伏的峰值大小保持不变,一个周期信号在一个周期有内断点存在,那么,引入的误差将除了产生纹波之外,还将在断点处产生幅度大约为9%的过冲
1、周期信号的傅里叶级数与GIBBS现象
给定如下两个周期信号:
Q2-4分别手工计算x1(t)和x2(t)的傅里叶级数的系数。
信号x1(t)在其主周期内的数学表达式为:
计算x1(t)的傅里叶级数的系数的计算过程如下:
计算得到的x1(t)的傅里叶级数的系数的数学表达式是:
信号x2(t)在其主周期内的数学表达式为:
计算x2(t)的傅里叶级数的系数的计算过程如下
:
通过计算得到的x1(t)的傅里叶级数的系数的数学表达式是:
用MATLAB帮助你计算出你手工计算的傅里叶级数的系数ak从-10到10共21个系数。
Q2-5仿照程序Program2_1,编写程序Q2_5,以计算x1(t)的傅里叶级数的系数。
程序Q2_5如下:
clear,
closeall
T=2;
dt=0.00001;
t=-2:
dt:
2;
x1=u(t+0.2)-u(t-0.2-dt);
>>x=0;
>>form=-1:
1
x=x+u(t-m*T)-u(t-1-m*T-dt);
end
>>w0=2*pi*T;
>>N=10;
>>L=2*N+1;
>>fork=-N:
N;
ak(N+1+k)=(1/T)*x1*exp(-j*k*w0*t')*dt;
end
>>phi=angle(ak);
>>ak
执行程序Q2_5所得到的x1(t)的傅里叶级数的ak从-10到10共21个系数如下:
ak=
Columns1through3
0.0000+0.0000i-0.0052-0.0000i0.0095+0.0000i
Columns4through6
-0.0108-0.0000i0.0078+0.0000i0.0000+0.0000i
Columns7through9
-0.0117-0.0000i0.0252+0.0000i-0.0378-0.0000i
Columns10through12
0.0468+0.0000i0.20000.0468-0.0000i
Columns13through15
-0.0378+0.0000i0.0252-0.0000i-0.0117+0.0000i
Columns16through18
0.0000-0.0000i0.0078-0.0000i-0.0108+0.0000i
Columns19through21
0.0095-0.0000i-0.0052+0.0000i0.0000-0.0000i
Q2-6仿照程序Program2_1,编写程序Q2_6,以计算x2(t)的傅里叶级数的系数(不绘图)。
程序Q2_6如下:
clear,closeall
T=2;dt=0.00001;t=-2:
dt:
2;
x1=u(t)-u(t-1-dt);x=0;
form=-1:
1
x=x+u(t-m*T)-u(t-1-m*T-dt);
end
w0=2*pi/T;
N=10;
L=2*N+1;
fork=-N:
N;
ak(N+1+k)=(1/T)*x1*exp(-j*k*w0*t')*dt;
end
phi=angle(ak);
执行程序Q2_6所得到的x2(t)的傅里叶级数的ak从-10到10共21个系数如下:
ak=
Columns1through4
0.0000+0.0000i0.0000+0.0354i0.0000-0.0000i0.0000+0.0455i
Columns5through8
0.0000-0.0000i0.0000+0.0637i0.0000-0.0000i0.0000+0.1061i
Columns9through12
0.0000-0.0000i0.0000+0.3183i0.50000.0000-0.3183i
Columns13through16
0.0000+0.0000i0.0000-0.1061i0.0000+0.0000i0.0000-0.0637i
Columns17through20
0.0000+0.0000i0.0000-0.0455i0.0000+0.0000i0.0000-0.0354i
Column21
0.0000-0.0000i
与你手工计算的ak相比较,是否相同,如有不同,是何原因造成的?
答:
与手工相同。
Q2-8利用单位阶跃信号u(t),将x1(t)表示成一个数学闭式表达式,并手工绘制x1(t)和x2(t)的时域波形图。
信号x1(t)的闭式数学表达式为:
x1(t)=t+2(u(t+2)-u(t+1))+(u(t+1)-u(t-1))+2-t(u(t-1)-u(t-2))
手工绘制的x1(t)的时域波形图手工绘制的x2(t)的时域波形图
Q2-10编写MATLAB程序Q2_10,能够接受从键盘输入的时域信号表达式,计算并绘制出信号的时域波形、幅度谱。
程序Q2_10抄写如下
clear,closeall
T=0.01;dw=0.1;
t=-10:
T:
10;
w=-4*pi:
dw:
4*pi;
x=input('peleasinputasignal,Iwilldrawitsplotforyou.Signalx=');
X=x*exp(-j*t'*w)*T;
X1=abs(X);
phai=angle(X);
subplot(211)
t=-10:
T:
10;
plot(t,x)%PlotX
axis([-33-0.21.2]);
gridon,
title('ThesignalX(t)');
xlabel('Timet(sec)');
w=-4*pi:
dw:
4*pi;
subplot(212);
plot(w,X1)%PlotX;
axis([-4*pi4*pi-0.13]);
gridon;
title('TheamplitudespectrumofX(t)');
xlabel('Frequencyindexw');
执行程序Q2_10,输入信号x1(t)的数学表达式,得到的信号时域波形、幅度谱和相位谱如下:
执行程序Q2_10,输入信号x2(t)的数学表达式,得到的信号时域波形、幅度谱和相位谱如下:
Q2-17:
回答如下问题:
1、从信号分解的角度,谈谈你对周期信号的傅里叶级数的理解。
答:
任何一个周期为T1的正弦周期信号,只要满足狄利克利雷条件,就可以展开成傅里叶级数。
指数形式的傅里叶级数为:
其中,
为指数形式的傅里叶级数的系数,按如下公式计算:
指数形式的傅里叶级数告诉我们,如果一个周期信号x(t),满足狄里克利条件,那么,它就可以被看作是由很多不同频率的互为谐波关系(harmonicallyrelated)的周期复指数信号所组成,其中每一个不同频率的周期复指数信号称为基本频率分量,其复幅度(complexamplitude)为
。
这里“复幅度(complexamplitude)”指的是
通常是复数。
上面的傅里叶级数的合成式说明,我们可以用无穷多个不同频率的周期复指数信号来合成任意一个周期信号。
2、从信号分解的角度,谈谈你对傅里叶变换及其物理意义的理解,谈谈你对信号频谱概念的理解。
答:
连续时间傅里叶变换主要用来描述连续时间非周期信号的频谱。
任意非周期信号,如果满足狄里克利条件,那么,它可以被看作是由无穷多个不同频率(这些频率都是非常的接近)的周期复指数信号ejωt的线性组合构成的,每个频率所对应的周期复指数信号ejωt称为频率分量,其相对幅度为对应频率的|X(jω)|之值,其相位为对应频率的X(jω)的相位。
傅里叶变换在信号分析中具有非常重要的意义,它主要是用来进行信号的频谱分析的。
傅里叶变换和其逆变换定义如下:
四、实验总结
通过第二次的上机操作实验,让我们更加熟悉并灵活运用MATAB软件书写简单c程序并加以运行,结合显示图形特点分析更加加深连续时间信号的傅里叶级数的分析方法和物理意义。
通过连续时间周期信号的傅里叶级数CTFS分析,以及观察截短傅里叶级数而产生的“吉布斯现象”,通过学习利用MATLAB语言编写计算CTFS、CTFT和DTFT的仿真程序,并利用这些程序对一些典型信号进行频谱分析,验证CTFT、DTFT的若干重要性质。
通过程序图形仿真,加深对理论知识的掌握。
实践和理论相结合,更加凸显软件工具在理论分析中的作用!