[Matlab-3]傅里叶变换(Fourier Transformation)

在这里插入图片描述

连续的傅里叶变换(C.T)

在这里插入图片描述
在这里插入图片描述

离散的傅里叶变换(D.T)

在这里插入图片描述
在这里插入图片描述

符号法下的傅里叶变换与傅里叶逆变换

在这里插入图片描述
在这里插入图片描述

快速傅里叶变换

数值法

与直接法相比,快速傅里叶变换有一个弊端,我们需要将它平移后才可以得到直接法的图像。稍后会讲到
在这里插入图片描述
在这里插入图片描述
实际上这里图像右边的这部分应该在x轴的负半轴和右边的这部分关于Y轴对称

获取幅频曲线

使用abs或者real都可以
在这里插入图片描述
在这里插入图片描述

样例

求x = 1cos(2pi10.t)+2sin(2pi15.t)+3cos(2pi*20.*t)的傅里叶变换

clear; clf;
N =256; #一般取2的幂次
Fs = 100;
df = Fs/N;
dt = 1/Fs;
t = (0:N-1)*dt;
x = 1*cos(2*pi*10.*t)+2*sin(2*pi*15.*t)+3*cos(2*pi*20.*t);
Y = fft(x);
f = (0:N-1)*df;
plot(f,abs(Y));
title('amplitude-frequency');xlabel('f(Hz)');ylabel('abs(F)');

在这里插入图片描述

如果我们要进行调频的话

clear;clf;
N = 256;
Fs = 100;
df = Fs/N;
dt = 1/Fs;
t = (0:N-1)*dt;
f = (0:N-1)*dt;
x = 1*cos(2*pi*10.*t)+2*sin(2*pi*15.*t)+3*cos(2*pi*20.*t);
Y =fft(x);
Yabs = abs(Y);
%Adjustment
Yabs = 2*Yabs/N;
%the first element do not need to multiplied by 2
Yabs(1) = Yabs(1)/2;
%select the first part
Yabs = Yabs(1:N/2);
f = f(1:N/2);
plot(f,Yabs)
title('amplitude-frequency');xlabel('f(Hz)');ylabel('abs(F)');

在这里插入图片描述

傅里叶逆变换

求F(jw)=1/(2+iw)的傅里叶逆变换

syms t w
ifourier(1/(2+1i*w),t)

用傅里叶变换解高阶微分方程

在这里插入图片描述
解出来就完事
在这里插入图片描述

栗子(fft的平移问题)

这道题我们要用原始的方法和fft分别实现傅里叶变换
在这里插入图片描述
我们知道这个函数可以写作这两个函数的差,或者两端中间为1,四周为0的函数的卷积,这里我们选择前者
在这里插入图片描述
这里为了使两者重合需要将fft平移

clear;clf;
N = 400;
dt = 0.05;
Fs =1/dt;
df = Fs/N;
w1 = (-N/2:N/2-1)*df*2*pi;
t = (0:N-1)*dt;
y1 = 0.*(t<0)+t.*(t>=0 & t<2) + (4-t).*(t>=2 & t<=4) + 0.*(t>4);
y2 = 0.*(t<1)+ (t-1).*(t>=1 & t<2)+ (3-t).*(t>=2 & t<=3)+ 0.*(t>3);
M =300;
f_range = 10;
w2 = 2*pi*f_range;
dw =w2/M;
k = -M:M; w = k*dw;
F1 = y1*exp(-1i*t'*w)*dt;
F2 = y2*exp(-1i*t'*w)*dt;
plot(w,abs(F1-F2),'r');hold on;
df = Fs/N;
Y1 = fft(y1);
Y2 = fft(y2);
Y = abs(Y1-Y2)*dt;
F = fftshift(Y);
plot(w1,F,"--g");xlim([-20,20]);

输出为
在这里插入图片描述

结尾

写到这里感觉差不多了,初学者应该都能学会了,也比网上大多数的教学全,就这样

  • 4
    点赞
  • 55
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值