连续时间傅立叶变换_第1页
连续时间傅立叶变换_第2页
连续时间傅立叶变换_第3页
连续时间傅立叶变换_第4页
连续时间傅立叶变换_第5页
已阅读5页,还剩15页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、信号与系统实验报告 实验四 连续时间傅立叶变换4.1连续时间傅立叶变换的数字近似1 求ctft的解析表达式。可将看作,。g=sym(exp(-2*t)*heaviside(t);g2=subs(g,-t,t);x=g+g2;fx=fourier(x);2 创建一个向量,它包含了在区间t=0:tau:t-tau 上(其中和),信号的样本。clc;t=0:0.01:10-0.01;y=exp(-2*(t-5).*(0.5+0.5*sign(t-5)+exp(2*(t-5).*(0.5+0.5*sign(-t+5);plot(t,y);3 键入y=fftshift(tau*fft(y)计算样本。因为

2、对于基本上为零,就能近似用个样本分析中计算出信号的ctft。clc;t=0:0.01:10-0.01;y=exp(-2*(t-5).*(0.5+0.5*sign(t-5)+exp(2*(t-5).*(0.5+0.5*sign(-t+5);y=fftshift(0.01.*fft(y);y=abs(y);plot(t,y);axis(4,6,-0.1,1.2);4.构造一个频率样本向量w,它按照 w=-(pi/tau)+(0:n-1)*(2*pi/(n*tau);与存在向量y中的值相对应。5.因为是通过时移与相联系的,所以ctft就以线性相移项与相联系。利用频率向量w直接由y计算的样本,并将结果

3、存入x中。clc;t=0:0.01:10-0.01;tau=0.01;n=10/0.01;y=exp(-2*(t-5).*(0.5+0.5*sign(t-5)+exp(2*(t-5).*(0.5+0.5*sign(-t+5);y=fftshift(0.01.*fft(y);w=-(pi/tau)+(0:n-1)*(2*pi/(n*tau);x=exp(j*5*w).*y;6.利用abs和angle画出在w标定的频率范围内x的幅值和相位。对于相同的值,也画出在1中所导出的解析式表达式的幅值和相位。ctft的近似值与解析导得的相符吗?若想在一张对数坐标上画出幅值,可以用semilogy,这是会注意

4、到,在较高的频率上近似不如在较低的频率上好。因为用了样本近似,所以在时间段长度内,信号变化不大的那些信号的频率分量近似程度会更好一些。clc;tau=0.01;t=10;t=0:tau:t-tau;n=t/tau;y=exp(-2*(t-5).*(0.5+0.5*sign(t-5)+exp(2*(t-5).*(0.5+0.5*sign(-t+5);y=fftshift(0.01.*fft(y);w=-(pi/tau)+(0:n-1)*(2*pi/(n*tau);x=exp(i*5*w).*y;xp=abs(x);xf=angle(x);subplot(211)plot(t,xp);subplo

5、t(212)plot(t,xf);7.利用abs和angle画出y的幅值和相位,它们与x的图比较后怎样?能估计到这一结果吗?clcsyms s w;g=sym(exp(-2*s)*heaviside(s);g2=subs(g,-s,s);y=g+g2;fw=fourier(y,s,w);ff=atan(imag(fw)/real(fw);fp=abs(fw);tau=0.01;t=10;t=0:tau:t-tau;n=t/tau;y=exp(-2*(t-5).*(0.5+0.5*sign(t-5)+exp(2*(t-5).*(0.5+0.5*sign(-t+5);y=fftshift(0.01

6、.*fft(y);w=-(pi/tau)+(0:n-1)*(2*pi/(n*tau);x=exp(i*5*w).*y;xp=abs(x);xf=angle(x);subplot(211)hold onplot(t,xp);ezplot(fp,-10:10)hold offsubplot(212)hold onplot(t,xf);ezplot(ff,-10:10)hold off4.2连续时间傅立叶变换性质1键入y=fftshift(fft(y),计算向量y的傅立叶变换。键入 w=-pi:2*pi/n:pi-pi/n*fs;将对应的频率值存入向量w中。利用w和y在区间内画出该连续时间傅立叶变换

7、的幅值。 函数ifft是fft的逆运算。对于偶数长度的向量,fftshift就是它本身的逆。对于向量y,n=8192,这个逆傅立叶变换能用键入以下命令而求得 y=ifft(fftshift(y); y=real(y);由于原时域信号已知是实的,所以这里用了函数real。然而,在fft和ifft中的数值舍入误差都会在y中引入一个很小的非零虚部分量。一般说来,逆ctft不必是一个实信号,而虚部可以包含有显著的能量。当已知所得信号一定是实信号时,并且已经证实所除掉的虚部分量是没有意义的,real函数才能用于ifft的输出上load splaty=y(1:8192);n=8192;fs=8192;y=

8、fftshift(fft(y);sound(y,fs);w=(-pi:2*pi/n:pi-pi/n)*fs;subplot(211)plot(w,y);title(y);y=ifft(fftshift(y);y=real(y);subplot(212)plot(w,y);title(y);2 置y1=conj(y)并将y1的逆傅立叶变换存入y1中,用real(y1)以确保y1是实的,用sound(y1,fs)将y1放出。已知的逆傅立叶变换是如何与联系的,能解释刚才听到的是什么吗?load splaty=y(1:8192);n=8192;fs=8192;y=fftshift(fft(y);y1=

9、conj(y);y1=ifft(fftshift(y1);sound(y1,fs);w=(-pi:2*pi/n:pi-pi/n)*fs;plot(w,y1);答:刚才听到的是y信号反过来放的声音。 的ctft可以用它的幅值和相位写成 式中。对于许多信号,单独用相位或幅值都能构造出一个有用的信号的近似。例如,考虑信号和,其ctft为 3.只要是实信号,用解析方法说明和一定是实的。解:因为即y(t)=又因为是实信号故和一定是实的。4.构造一个向量y2等于y的幅值,并将y2的逆傅立叶变换存入向量y2中,用sound放出这个向量。load splaty=y(1:8192);n=8192;fs=8192

10、;y=fftshift(fft(y);sound(y,fs);w=(-pi:2*pi/n:pi-pi/n)*fs;y2=abs(y);y2=ifft(fftshift(y2);sound(y2,fs);plot(w,y2);5.构造一个向量y3,它有与y相同的相位,但是幅值对每个频率都等于1。并将y3的逆傅立叶变换存入向量y3中,用sound放出这个向量。load splaty=y(1:8192);n=8192;fs=8192;y=fftshift(fft(y);sound(y,fs);w=(-pi:2*pi/n:pi-pi/n)*fs;y3=y./abs(y);y3=ifft(fftshif

11、t(y3);sound(y3,fs);plot(w,y3);6.根据刚才听到的这两个信号,代表一个声音信号你认为傅立叶变换的那个部分是最关键的:幅值或相位?答:相位是最关键的。 7.用向量y创建一个向量y4,它包含有本该以8192hz从采样所得到的样本。load splaty=y(1:8192);n=8192;fs=8192;sound(y,fs);y4=y(1:2:8192);sound(y4,fs);w=(-pi:2*pi/n:pi-pi/n)*fs;w4=(-pi:2*pi/(n/2):pi-pi/(n/2)*(fs/2);subplot(211)plot(w,y);title(y);s

12、ubplot(212)plot(w4,y4);title(y4);8.用y4=sound(y4,fs)放出y4。利用比较y4的傅立叶变换与y的傅立叶变换,能说明在高音上的变化吗?信号压缩是如何影响它的傅立叶变换的?load splaty=y(1:8192);n=8192;fs=8192;sound(y,fs);y4=y(1:2:8192);sound(y4,fs);y=fftshift(fft(y);y4=fftshift(fft(y4);w=(-pi:2*pi/n:pi-pi/n)*fs;w4=(-pi:2*pi/(n/2):pi-pi/(n/2)*(fs/2);subplot(211)pl

13、ot(w,y);title(y);subplot(212)plot(w4,y4);title(y4);信号在时域中压缩(a1)等效于在频域中扩展。9创建向量x,它由下式给出 注意,x是一个长度为2*n的向量。load splaty=y(1:8192);n=8192;fs=8192;sound(y,fs);j=1;for i=1:2:(2*8192) x(i)=0; x(i+1)=y(j); j=j+1;end10.利用函数filter完成在x上的线性内插。这里要用到的线性内插器的单位冲激响应是h=1 2 1/2。load splaty=y(1:8192);n=8192;fs=8192;soun

14、d(y,fs);j=1;for i=1:2:(2*8192) x(i)=0; x(i+1)=y(j); j=j+1;endh=1 2 1;a=2;y=filter(h,a,x);11.用sound(y5,fs)放出y5。用比较y5和y的傅立叶变换,能解释在音调上的变化吗?load splaty=y(1:8192);n=8192;fs=8192;sound(y,fs);j=1;w=(-pi:2*pi/n:pi-pi/n)*fs;w5=(-pi:2*pi/(n*2):pi-pi/(n*2)*(fs*2);for i=1:2:(2*8192) y5(i)=0; y5(i+1)=y(j); j=j+1

15、;endsound(x,fs);y=fftshift(fft(y);y5=fftshift(fft(y5);subplot(211)plot(w,y);subplot(212)plot(w5,y5)4.3连续时间傅立叶变换的符号计算1定义符号表达式x1和x2代表下面连续时间信号: 需要用函数heaviside来表示单位阶跃函数。x1=sym(heaviside(t)*0.5*exp(-2*t);x2=sym(heaviside(t)*exp(-4*t);2 对于1中所定义的和,用解析方法计算它们的ctft在的值,即(不应该先求来作这道题)ctft在的值是怎样与时域信号关联的?clc; syms

16、 tx1=sym(heaviside(t)*0.5*exp(-2*t);x2=sym(heaviside(t)*exp(-4*t);fx1=simple(int(x1, t, -inf, inf);fx2=simple(int(x2, t, -inf, inf);31所定义的信号中,哪一个在时域衰减得更快?根据这一点,你能预期在频域哪一个衰减得更快?x1=sym(heaviside(t)*0.5*exp(-2*t);x2=sym(heaviside(t)*exp(-4*t);subplot(211);ezplot(x1,-1:5);axis(-1,5,-0.1,0.8)subplot(212)

17、;ezplot(x2,-1:5);axis(-1,5,-0.1,1.2)x2在时域衰减得更快,x1在频域衰减得更快.4 用函数fourier计算和得ctft。定义x1和x2是由fourier产生的符号表达式。用ezplot产生和的幅值图。这些图能对2和3中的答案进行确认吗?syms t w;x1=sym(heaviside(t)*0.5*exp(-2*t);x2=sym(heaviside(t)*exp(-4*t);fw1=fourier(x1,t,w);fw2=fourier(x2,t,w);ffw1=maple(convert,fw1,piecewise);ffw2=maple(conve

18、rt,fw2,piecewise);ffp1=abs(ffw1);ffp2=abs(ffw2);subplot(211);ezplot(ffp1,-100:100);axis(-20,20,-0.1,0.3);title(fourier(x1);subplot(212);ezplot(ffp2,-100:100);axis(-20,20,-0.1,0.3);title(fourier(x2);5定义符号表达式y1代表下面连续时间信号: 它可以作为两个heaviside函数之差。y1=sym(heaviside(t+2)-heaviside(t-2);6.用解析方法求的ctft,。syms t

19、w;y=sym(heaviside(t+2)-heaviside(t-2);f=int(y*exp(-1i*w*t),t, -inf, inf);ezplot(f,-4*pi:4*pi);axis(-4*pi 4*pi 0 5)title(fourier(y1);7定义符号表达式y2表示信号。你能像对y1那样用两个heaviside函数之差来完成,或者恰当地对y1应用subs。syms t w;y1=sym(heaviside(t+2)-heaviside(t-2);y2=subs(y1,t-2,t);fw=fourier(y2,t,w);ffw=maple(convert,fw,piecew

20、ise);ffp=abs(ffw);ezplot(ffp,-4*pi:4*pi);axis(-4*pi 4*pi 0 2.5)title(fourier(y2);8利用fourier求y1和y2的ctft,并将它们存入y1和y2中。倘若y1不是你所期望得到的表达式,那么试试在所得表达式上用simple以便得出更为熟悉的形式。syms t w;y1=sym(heaviside(t+2)-heaviside(t-2);y2=subs(y1,t-2,t);y1=fourier(y1,t,w);y2=fourier(y2,t,w);9用ezplot产生和的幅值图。比较这两张图情况如何?由这两个信号在时域之间的关系能预测到这个结果吗?syms t w;y1=sym(heaviside(t+2)-heaviside(t-2);y2=subs(y1,t-2,t);y1=fourier(y1,t,w);fy1=maple(convert,y1,piecewise);fpy1=abs(fy1);y2=fourier(y2,t,w);fy2=maple(convert,y2,piecewise);fpy2=abs(fy2);hold onezplot(fpy1,-4*pi:4*pi);ezplot(fpy2,-4*pi:4*

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论