Matlab实现傅里叶性质

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

信号与系统课程设计报告书

用MATLAB实现傅里叶变换的对称性课题名称

质和频移性质

姓名

学号

院、系、部电子系

专业电子信息工程

指导教师

201 年月日

-

【设计题目】

试用MATLAB实现傅里叶变换的

(1)对称性质,以Sa(w0t)和gτ(t)为例

(2)频移性质,以ε(t)和cosw0(t)ε(t)为例

【设计目的】

1.学习完信号与系统这门课后,按照基本原理,综合运用所学知识,理解了题目的基本意思。

2.学会在MATLAB上实现傅里叶变换.了解程序算法

3.学会在MATLAB中仿真显示幅度谱

【设计要求】

1.设计的程序能够正常运行。

2.可读性:源代码清晰,有层次。

【设计原理】

正交级数的展开是傅里叶变换的理论基础!将一个在时域收敛的函数展开一系列不同频率谐波的叠加,从而达到解决周期函数问题的目的。在此基础上进行推广,从而可以对一个非周期函数进行时频变换。从分析的角度看,是用简单的函数去逼近(或替代)复杂函数,从几何的角度看,他是以一族正交函数为基向量,他建立了周期函数与序列的对应关系,而从物理意义上看,他将信号分解为一些列的简谐波复合,从而建立了频谱理论。

- 【具体算法】

1.时-频对称性F(t)↔2pi*f(w)

2.频移特性f(t)*e^±jw0t=F[(w±w0)]

【实验程序】

频移性质

N=256;M=500; t=linspace(-2,2,N);

w=linspace(-10*pi,10*pi,M); %在[-10*pi,10*pi]内进行频率分割

dt=4/(N-1);

f=heaviside(t);

f1=f.*cos(20*t);

f2=f.*exp(-j*20*t);

F=f*exp(-j*t'*w)*dt; %求f(t)的傅立叶变换

F1=f1*exp(-j*t'*w)*dt;

%F2=f2*exp(-j*t'*w)*dt;

subplot(2,1,1);

plot(w,real(F),w,real(F1),'r'),

grid on

xlabel('w');ylabel('real(F(w))');

title('信号傅立叶变换的实部')

subplot(2,1,2);

plot(w,abs(F),w,abs(F1),'r'),

- grid on

xlabel('w');ylabel('abs(F(w))');

title('信号的幅度谱')

对称性质

N=3001;

t=linspace(-15,15,N);

f=pi*[heaviside(t+1)-heaviside(t-1)];

dt=30/(N-1); M=500;

w=linspace(-5*pi,5*pi,M);

F=f*exp(-j*t'*w)*dt;

subplot(2,2,1),plot(t,f);grid on

axis([-2,2,-1,4]);

xlabel('t');ylabel('f(t)');

subplot(2,2,2), plot(w,real(F)); axis([-20,20,-3,7]);

xlabel('w');ylabel('F(w)=F[f(t)]'); f1=sinc(t/pi);

F1=f1*exp(-j*t'*w)*dt;

subplot(2,2,3),plot(t,f1);

xlabel('t');ylabel('f1(t)=F(t)/2*pi'); subplot(2,2,4),plot(w,real(F1)); axis([-2,2,-1,4]);

xlabel('w');

ylabel('F1(w)=F[f1(t)]=f(w)');

【实验调试】

实验中在编写代码的时候遇到一些特殊的算法不会,通过网上查找资料和询问同学得以解决,代码输入的时候也出现一些错误,改正后才正常运行。

【实验总结】

通过本次课程设计,我对傅里叶性质有了更深层次的了解,熟悉了MATLAB软件的应用,同时也发现自己在理解问题,解决问题时还有很多不足。虽然在理论上对问题有一点的了解,但在实际应用中有很多问题,不过在同学和老师的帮助下都得以解决。

相关文档
最新文档