找回密码
 注册
关于网站域名变更的通知
查看: 1138|回复: 1
打印 上一主题 下一主题

看看这篇Matlab 傅里叶变换傅里叶逆变换-FFT-IFFT

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2019-12-11 09:44 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x
Matlab 傅里叶变换傅里叶逆变换-FFT-IFFT
5 V; t! V' U! v4 p, s% O9 A6 P! J
, V1 V, |& H- e%% 信号经过傅里叶变换然后进行傅里叶逆变换后信号的变化
3 @8 r" b& O# lclear   all;   clc;
, m% V7 d' ^* [# k" j/ T0 b, ]  ^6 p%------Author&Date------
$ p9 L& s  G- V! j9 M: ]9 U; }%Author: 2 A/ W. d0 ?- L7 H2 F% x# {
%Date: 2013/07/314 N% E3 i2 E. o8 {3 J
%==========================================================================
4 v, Q7 l3 P8 p! XFs=8e3;                      %采样率* f7 V* O) O$ ~4 f8 v" w5 E
t=0:1/Fs:1;                       %采样点4 O' O8 G( Z1 O) ~
len=length(t);                       %采样长度
  E" E7 x8 Z7 q0 Bf1=10;                       %频率 12 ?% q" \: t9 |+ c* M- J
f2=100;                      %频率 2
) J% b% ^' e5 m7 G2 hf3=1000;                      %频率 3+ D! s; D; a9 P+ f0 w. G
A1=1;                       %幅度 1
+ a' A5 f9 ?3 y6 S  x, h* kA2=0.8;                      %幅度 2
4 v4 N% I- G5 ~( |- GA3=0.3;                       %幅度 39 O  G: h! n9 j& R( E
MaxS=A1+A2+A3;                      %信号幅度的最大值% a: C1 n; z8 F* o; n/ C* i
signal=A1*sin(2*pi*f1*t)+A2*sin(2*pi*f2*t)+A3*sin(2*pi*f3*t);% |7 ?  T% F( H+ R6 O* W
X=fft(signal,len);                       %傅里叶变换3 y- o0 ?+ R! ?3 _' b, D
magX=abs(X);                       %信号的幅度" d9 t; U' e+ j% h& m3 }) Q& \
angX=angle(X);                       %信号的相位
0 o% ?8 b+ J( W& x6 G8 m: E! DY=magX.*exp(1i*angX);                       %信号的频域表示9 z: u) M( T( ]% o  |
y=ifft(Y,len);                       %信号进行傅里叶逆变换
/ D1 R% b2 D  l% [, a8 oy=real(y);& W, U$ }) `6 R0 W: O9 u/ y, @
er=signal-y;                       %原始信号和还原信号的误差
- v7 D; u8 _, usubplot(311);plot(t,signal);axis([0 1 -MaxS MaxS]);xlabel( ' 时间 ' );ylabel( ' 振幅' );title( ' 原始信号 ' );
7 o4 Y9 f6 [8 v0 Q$ p* C' Tsubplot(312);plot(t,y);axis([0 1 -MaxS MaxS]);xlabel( ' 时 间 ' );ylabel( ' 振 幅 ' );title( ' 还原信号 ' );9 [9 X: c+ d7 G7 h( U% k3 [" Q2 y# U5 @
subplot(313);plot(t,er);xlabel( ' 时间 ' );ylabel( ' 振幅 ' );title( ' 误差 ' );* @# U: M: z0 P
% End Script
" x: \2 ?+ j( U( e- o7 h
0 y- ]/ h- R; U! s  H3 a' Q( A8 |' m* n4 n3 Q3 o

2 U. x) j9 `' t: o7 z# k. I& I$ \6 I+ _) S) v6 H
误差er的数量级为 ,误差绝对值的最大值( )如下图:
* F! M% e8 c% ?$ x1 ~
: Y1 H* \2 I6 Y) D$ ^

8 U* i) c9 C+ k: G: W# G- {) {( Q
$ Z9 F4 f/ s' B( _
; B) L' |- u1 J+ U- a# ^% s( T
$ m+ t. s, C3 K' ?, o2 r

# p, i/ n/ i6 @9 q  J/ `  _
1 x: P5 s  {: n  ]; G
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-7-19 13:26 , Processed in 0.125000 second(s), 26 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

快速回复 返回顶部 返回列表