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

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

[复制链接]

该用户从未签到

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

EDA365欢迎您登录!

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

x
Matlab 傅里叶变换傅里叶逆变换-FFT-IFFT0 g5 `" O$ E5 `: L! W) |* }

' P8 [; w( W7 A* j9 X- x%% 信号经过傅里叶变换然后进行傅里叶逆变换后信号的变化4 y6 `2 Z- B" j2 y; k
clear   all;   clc;
, _" |" e. A3 @( R%------Author&Date------, c# Q/ I8 v& l' w  E) ~1 L$ c( C5 w( t
%Author:
3 x2 D9 }- n+ f4 c6 G%Date: 2013/07/31
# I$ c- w4 z( L5 \( I6 g6 h( W%========================================================================== : A3 ]  ]: t, ]1 D3 \
Fs=8e3;                      %采样率
9 ^- ?9 {1 d- {$ @& \5 b) ?t=0:1/Fs:1;                       %采样点
9 d: y( L+ f& T2 g7 Y  h- m0 N, Slen=length(t);                       %采样长度
# @& @" [" I( R+ X7 I" t. N' af1=10;                       %频率 1. B8 b' D* H" `" r& d! Y
f2=100;                      %频率 2% L- T% H& Q8 O! Q8 E6 }9 \0 {" {
f3=1000;                      %频率 3+ b& t+ [+ {/ `. l9 j; N1 A
A1=1;                       %幅度 1
- q& C, S8 v) _, JA2=0.8;                      %幅度 2
/ h  c( _- V6 M# tA3=0.3;                       %幅度 3$ [" `& R) i3 [- H7 o" s+ ^) U
MaxS=A1+A2+A3;                      %信号幅度的最大值
! S& P4 u+ Z( I* usignal=A1*sin(2*pi*f1*t)+A2*sin(2*pi*f2*t)+A3*sin(2*pi*f3*t);
6 ^# X* P: [) _/ m) L1 _X=fft(signal,len);                       %傅里叶变换
6 |  d% M* A7 Z, R+ fmagX=abs(X);                       %信号的幅度1 Q/ P1 p. V+ z  S
angX=angle(X);                       %信号的相位' C  a" a3 Q% Z" ~  W/ j! i- F" w
Y=magX.*exp(1i*angX);                       %信号的频域表示
( O  Y  v* K& G( D: p: Cy=ifft(Y,len);                       %信号进行傅里叶逆变换8 ~  s+ t7 s8 Q
y=real(y);
* o6 G* _- |8 G6 l8 r& Her=signal-y;                       %原始信号和还原信号的误差
, {. S$ T4 B' l' e4 r1 Jsubplot(311);plot(t,signal);axis([0 1 -MaxS MaxS]);xlabel( ' 时间 ' );ylabel( ' 振幅' );title( ' 原始信号 ' );9 @. b1 k* l9 B9 K; w! t
subplot(312);plot(t,y);axis([0 1 -MaxS MaxS]);xlabel( ' 时 间 ' );ylabel( ' 振 幅 ' );title( ' 还原信号 ' );. M% e4 H& H. y3 a
subplot(313);plot(t,er);xlabel( ' 时间 ' );ylabel( ' 振幅 ' );title( ' 误差 ' );
5 ]8 ^- a/ D; \/ ?! g% End Script
$ N7 h5 i6 ^0 M2 I6 x* t, C
2 X: t5 b7 x- E+ V5 i4 e: i! i; V/ s3 c3 ~3 b

0 k1 L& T$ D  [0 w. @( C4 J+ G( X! g3 c- n/ G7 ~* V, ]$ H
误差er的数量级为 ,误差绝对值的最大值( )如下图: % V" C; M* }1 \6 {: _$ X

. z. |( p5 `! L* Y & q! V% U1 }6 p( k. d, H
, V; U3 S+ ?4 a9 Z
, |9 D2 ^- @3 p" I0 i$ a
; I* \& w0 D. r) D/ M) b

% M3 H. [$ Z! G7 w8 G! n7 W" P! ^, s  _6 r. d- p# {: H
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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

EDA365公众号

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

GMT+8, 2025-11-23 19:47 , Processed in 0.156250 second(s), 26 queries , Gzip On.

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

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

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