Matlab傅里叶变换傅里叶逆变换-FFT-IFFT

Matlab傅里叶变换傅里叶逆变换-FFT-IFFT


2024年5月17日发(作者:)

Matlab傅里叶变换傅里叶逆变换

%% 信号经过傅里叶变换然后进行傅里叶逆变换后信号的变化

clear all;clc;

%------Author&Date------

%Author:

%Date: 2013/07/31

%================================================

==========================

Fs=8e3; %采样率

t=0:1/Fs:1; %采样点

len=length(t); %采样长度

f1=10; %频率1

f2=100; %频率2

f3=1000; %频率3

1 / 4下载文档可编辑

A1=1; %幅度1

A2=0.8; %幅度2

A3=0.3; %幅度3

MaxS=A1+A2+A3; %信号幅度的最大值

signal=A1*sin(2*pi*f1*t)+A2*sin(2*pi*f2*t)+A3*sin(2*pi*f3*t);

X=fft(signal,len); %傅里叶变换

magX=abs(X); %信号的幅度

angX=angle(X); %信号的相位

Y=magX.*exp(1i*angX); %信号的频域表示

y=ifft(Y,len); %信号进行傅里叶逆变换

y=real(y);

er=signal-y; %原始信号和还原信号的误差

subplot(311);plot(t,signal);axis([0 1 -MaxS MaxS]);xlabel('时间');ylabel('振幅

');title('原始信号');

2 / 4下载文档可编辑

subplot(312);plot(t,y);axis([0 1 -MaxS MaxS]);xlabel('时间');ylabel('振幅');title('还

原信号');

subplot(313);plot(t,er);xlabel('时间');ylabel('振幅');title('误差');

% End Script

原始信号

2

0

-2

00.10.20.30.40.50.6

时间

还原信号

0.70.80.91

2

0

-2

0

x 10

0.1

-15

0.20.30.40.5

时间

误差

0.60.70.80.91

2

0

-2

00.10.20.30.40.5

时间

0.60.70.80.91

15

15

10

1.998410

误差er的数量级为,误差绝对值的最大值()如下图:

3 / 4下载文档可编辑

(学习的目的是增长知识,提高能力,相信一分耕耘一分收获,努力就一定可以获得

应有的回报)

4 / 4下载文档可编辑


发布者:admin,转转请注明出处:http://www.yc00.com/web/1715945976a2696069.html

相关推荐

发表回复

评论列表(0条)

  • 暂无评论

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信