文档详情

信号与系统matlab综合实验第四章傅里叶变换.doc

发布:2017-04-19约字共5页下载文档
文本预览下载声明
如图4.4所示锯齿波信号,分别取一个周期的抽样数据X1(t),0=t=1和五个周期的数据X(t),0=t5,计算其傅立叶变换X1(w)和X(w),比较有和不同并解释原因。 图4.4 练习题2图 编程如下: %计算单位锯齿波和五个周期波形的傅立叶变换 %数值算法用矩阵实现,大大加快了运行速度;并且直接调用“sawtooth”生成5个周期的锯齿波 T1=1; %单个周期时域范围 N1=10000; %时域抽样点数 t1=linspace(0,T1-T1/N1,N1); %生成抽样时间点 f1=1-2*t1; %生成抽样函数值 OMG=32*pi; %频域范围 K1=100; %频域抽样点数 omg=linspace(-OMG/2,OMG/2-OMG/K1,K1); %生成抽样频率点 X1=T1/N1*exp(-j*kron(omg,t1.))*f1; %傅里叶正变换求解傅里叶系数 fs1=OMG/2/pi/K1*exp(j*kron(t1,omg.))*X1; %傅里叶逆变换还原时域函数 T2=5; %五个周期时域范围 N2=10000; %时域抽样点数 t2=linspace(0,T2-T2/N2,N2); %生成抽样时间点 fs2=0*t2; f2=sawtooth(t2*2*pi,0); %生成五个周期的锯齿波 X2=T2/N2*exp(-j*kron(omg,t2.))*f2; %傅里叶正变换求解傅里叶系数 fs2=fs2+OMG/2/pi/K1*exp(j*kron(t2,omg.))*X2; %傅里叶逆变换还原时域函数 figure; %生成一个2*2矩阵子图 subplot(2,2,1); plot(omg,abs(X1),r); %一个周期时的频谱图 xlabel(Frequency),ylabel(Amplitude) title(单个锯齿周期幅频特性曲线); subplot(2,2,2); plot(t1,fs1,r); %还原的时域函数 xlabel(Time),ylabel(Amplitude) title(Function after recovered); subplot(2,2,3); plot(omg,abs(X2),r); %五个周期时的频谱图 xlabel(Frequency),ylabel(Amplitude) title(五个锯齿周期幅频特性曲线); subplot(2,2,4); plot(t2,fs2,r); %还原的时域函数 xlabel(Time),ylabel(Function after recovered) title(Function after recovered); 阅读两函数后不难发现,其实就是改变了linspace的范围。 t=linspace(0,T-T/N,N); t=linspace(0,5*(T-T/N),N); 相关曲线: 请编写函数F=fsana(t,f,,N),计算周期信号f的前N个指数形式的傅立叶级数系数,t表示f对应的抽样时间(均为一个周期);再编写函数f=fssyn(F,t),由傅立叶级数系数F合成抽样时间t对应的函数。设计信号验证这两个是否正确。 编程如下: 编写fsana函数: function F=fsana(t,f,N) %函数功能:定义一个功能函数来计算周期信号f的前N个指数形式的傅立叶级数系数 , t表示f的抽样时间, f为一个周期内抽样函数值 , N为前几个指数形式的傅立叶级数系数. omg1=2*pi/(max(t)-min(t)); k=[-N:N]; %系数是双边的 F=1/length(t)*exp(-
显示全部
相似文档