实验四

更新时间:2024-05-04 02:57:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

实 验 报 告 学 号: 实验名称: 连续时间傅里叶变换 §4.1连续时间傅立叶变换的数字近似 基本题

1. 求x(t)?e?2tCTFT的解析表达式。可将x(t)看作x(t)?g(t)?g(?t),g(t)?e?2tu(t)。 代码: clc; syms t,w;

x = exp (-2*abs(t)); y = fourier (x) %F = abs(y); ezplot(y,[-10,10]); 结果:

ans = 4/(4+w^2)

总 分: 实验日期: 姓 名:

2. 创建一个向量,它包含了在区间t=[0:tau:T-tau] 上(其中??0.01和T?10),信号y(t)?x(t?5)的样本。 clc;

t=[0:0.01:10]; syms y;

y = exp(-2*abs(t-5)) plot(t,y);

3.键入y=fftshift(tau*fft(y))计算样本Y(j?k)。因为x(t)对于t?5基本上为零,就能近似用N?T?个样本分析中计算出信号y(t)?x(t?5)的CTFT. clc;

t=[0:0.1:10]; syms y;

y = exp(-2*abs(t-5)); %stem(t,y);

y=fftshift(0.1*fft(y)); %stem(t,y); plot(t,abs(y));

4.构造一个频率样本向量w,它按照 >> w=-(pi/tau)+(0:N-1)*(2*pi/(N*tau)); 与存在向量Y中的值相对应。

5.因为y(t)是通过时移与x(t)相联系的,所以CTFTX(j?)就以线性相移项ej5?与

Y(j?)相联系。利用频率向量

w直接由Y计算X(j?)的样本,并将结果存入x中。

clc; tau = 0.1; N =10/tau; t=[0:tau:10-tau];

w=-(pi/tau)+(0:N-1)*(2*pi/(N*tau)); y = exp(-2*abs(t-5)); F=fftshift(tau*fft(y)); x= F.* exp(j*5*w);

plot(w,abs(x));

6.利用abs和angle画出在w标定的频率范围内X的幅值和相位。对于相同的?值,也画出在1中所导出的X(j?)解析式表达式的幅值和相位。CTFT的近似值与解析导得的相符吗?若想在一张对数坐标上画出幅值,可以用semilogy,这是会注意到,在较高的频率上近似不如在较低的频率上好。因为用了样本x(n?)近似

x(t),所以在时间段?长度内,信号变化不大的那些信号的频率分量近似程度会

更好一些。 clc; tau=0.01; T=10;

t=[0:tau:T-tau]; N=length(t)

w=-(pi/tau)+(0:N-1)*(2*pi/(N*tau)); y=exp(-2*abs(t-5));

subplot(211);

ezplot(ffp1,-100:100); title('x1幅值'); subplot(212);

ezplot(ffp2,-100:100); title('x2幅值');

中等题

5.定义符号表达式y1代表下面连续时间信号: y1(t)???1 ?2?t?2

0 其余t?它可以作为两个Heaviside函数之差。 clc; syms t w;

y1=sym('heaviside(t+2)'); y2=sym('heaviside(t-2)'); y1t=y1-y2

6.用解析方法求y1(t)的CTFT,Y1(j?)。 clc; syms t w;

y1=sym('heaviside(t+2)-heaviside(t-2)'); ex1=sym('exp(-i*w*t)');

Y1=simple(int(y1*ex1,t,-inf,inf)) ezplot(Y1,-4*pi:4*pi); title('Y1傅里叶');

7.定义符号表达式y2表示信号y2(t)?y1(t?2)。你能像对y1那样用两个Heaviside函数之差来完成,或者恰当地对y1应用subs。

clc;

y2t=subs(y1t,t,t-2) figure;

title('heaviside(t)-heaviside(t-4)'); ezplot(y2t,[-2,6]) grid on;

8.利用fourier求y1和y2的CTFT,并将它们存入Y1和Y2中。倘若Y1不是你所期望得到的表达式,那么试试在所得表达式上用simple以便得出更为熟悉的形式。 clc; 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产生Y1(j?)和Y2(j?)的幅值图。比较这两张图情况如何?由这两个信号在时域之间的关系能预测到这个结果吗? clc; 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 on

ezplot(fpY1,-4*pi:4*pi); ezplot(fpY2,-4*pi:4*pi);

10.下面几部分v(t)?e?2t的CTFT。将v(t)写成v1(t)和v2(t)两个信号之和。将v1(t)选为因果信号,v2(t)选为反因果信号,即v2(t)?0,t?0。用解析方法计算v(t)的CTFT,

V(j?)。

clc; syms t w;

ut1=sym('heaviside(t)'); ut2=subs(ut1,'t','-t') v1=sym('exp(-2*t)'); v2=sym('exp(2*t)'); v1t=v1*ut1; v2t=v2*ut2; vt=v1t+v2t

vf=int(vt*exp(-i*w*t),t, -inf, inf);

11.用fourier求v的CTFT的符号表达式V。这个表达式等效于在10中用解析法求得的表达式吗?

clc;

syms t w;

v1=sym('exp(-2*t)*Heaviside(t)'); v2=sym('exp(2*t)*Heaviside(-t)'); vt=v1+v2;

V=fourier(vt); 深入题

12.定义f是信号f(t)?e?atu(t)的符号表达式,用fourier定义F是f的CTFT的符号表达式。注意,F中含有一个未被求值的积分。这个未被求值的积分对所有

a值都收敛吗?

syms t a w;

f=sym('exp(-a*t)*Heaviside(t)'); F=fourier(f);

答:F不是对对所有的a值都收敛,只有a<0时才会收敛的。

14.用subs设置F1中的a值等于5,然后在这个置换的结果应用simple。所得结果是所期望的吗? clc; syms t a;

f=sym('exp(-a*t)*Heaviside(t)'); F=fourier(f); F1=subs(F,a,5)

结果:F1 =1/(5+i*w)

本文来源:https://www.bwwdw.com/article/abig.html

Top