matlab傅里叶正逆变换详细说明+图例.doc
《matlab傅里叶正逆变换详细说明+图例.doc》由会员分享,可在线阅读,更多相关《matlab傅里叶正逆变换详细说明+图例.doc(4页珍藏版)》请在装配图网上搜索。
MATLAB作业方法一:N=200;dt=0.001;n=1:200;x=3*sin(2*pi*10*n*dt)+3*sin(2*pi*30*n*dt)+sin(2*pi*40*n*dt)+sin(2*pi*50*n*dt)+sin(2*pi*60*n*dt)+6*sin(2*pi*80*n*dt);%建立时间序列X=zeros(1,200); %给X一个预先的内存空间,提高运行速度figure(1),plot(n,x); %画出时间系列图像%傅里叶变换for k=1:200 for n=1:200 X(k)=X(k)+x(n)*exp(-i*2*pi*n*k/N); endendf=abs(X); %对傅里叶变换后的图像取正数部分figure(2),plot(f); %画出傅里叶变换后的图像%滤波H=ones(200);H(8:14)=0;H(186:193)=0; %建立40、50、60Hz的时间序列所在空间域数值为0的一维矩阵for k=1:200 Y(k)=X(k)*H(k);endk=1:200;figure(3);plot(k,abs(Y); %画出滤波之后的时间序列%傅里叶逆变换y=zeros(1,200)% 给y一个预先的内存空间,提高运行速度 for n=1:200 for k=1:200 y(n)=Y(k)*exp(i*2*pi*n*k/N)+y(n); end y(n)=y(n)/N;endfigure(4) ;n=1:200;plot(n,y,r-,n,x,b-);% 画出原时间序列和滤波后的时间序列,可见滤波之后的时间序列振幅明显变小方法二:N=200;dt=0.001;n=1:200;x=3*sin(2*pi*10*n*dt)+3*sin(2*pi*30*n*dt)+sin(2*pi*40*n*dt)+sin(2*pi*50*n*dt)+sin(2*pi*60*n*dt)+6*sin(2*pi*80*n*dt);X=zeros(1,200);figure(1),plot(n,x);X=fft(x,N);f=abs(X);figure(2),plot(f);H=ones(200);H(8:14)=0;H(186:194)=0;%滤波for k=1:200 Y(k)=X(k)*H(k);endk=1:200;figure(3);plot(k,abs(Y);%傅里叶逆变换y=zeros(1,200);y=ifft(Y,N) ;figure(4) ;n=1:200;plot(n,y,r-,n,x,b-);Figure1:figure2:figure3:Figure4:- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- matlab 傅里叶正逆 变换 详细 说明 图例
装配图网所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
关于本文