离散时间傅里叶变换和离散傅里叶变换

离散时间傅里叶变换和离散傅里叶变换

{ X ( k ) = DFT [ x ( n ) ] = ∑ n = 0 N − 1 x ( n ) W N n k k = 0 , 1 , . . . , N − 1 x ( n ) = IDFT [ X ( k ) ] = 1 N ∑ n = 0 N − 1 x ( n ) W N − n k n = 0 , 1 , . . . , N − 1 \begin{cases} X(k)=\textbf{DFT}[x(n)]=\sum\limits_{n=0}^{N-1}x(n)W_N^{nk}\quad k=0,1,...,N-1 \\ x(n)=\textbf{IDFT}[X(k)]=\frac{1}{N}\sum\limits_{n=0}^{N-1}x(n)W_N^{-nk}\quad n=0,1,...,N-1 \end{cases} X(k)=DFT[x(n)]=n=0N1x(n)WNnkk=0,1,...,N1x(n)=IDFT[X(k)]=N1n=0N1x(n)WNnkn=0,1,...,N1

{ X ( e j ω ) = DTFT [ x ( n ) ] = ∑ n = − ∞ ∞ x ( n ) e − j ω n k = 0 , 1 , . . . , N − 1 x ( n ) = IDTFT [ X ( e j ω ) ] = 1 2 π ∫ − π π X ( e j ω ) e j ω n d ω \begin{cases} X(e^{j\omega})=\textbf{DTFT}[x(n)]=\sum\limits_{n=-\infty}^{\infty}x(n)e^{-j\omega n}\quad k=0,1,...,N-1 \\ x(n)=\textbf{IDTFT}[X(e^{j\omega})]=\frac{1}{2\pi}\int_{-\pi}^{\pi}X(e^{j\omega})e^{j\omega n}d\omega \end{cases} X(e)=DTFT[x(n)]=n=x(n)ejωnk=0,1,...,N1x(n)=IDTFT[X(e)]=2π1ππX(e)ejωndω

自定义dtft()

function [w,X] = dtft(x)
    % DTFT变换
    N = length(x);
    n = 0:N-1;
    w = linspace(-2*pi,2*pi,500); %将[-2pi,2pi]分割成500份
    X = x * exp(-1j*n'*w);
end

自定义dft()

function X = dft(xn)
% 计算离散傅立叶变换(DFT)
N = length(xn);  % 获取序列长度
n = 0:N-1;  % 时间序列
X = zeros(1, N);  % 初始化频域序列
	for k = 0:N-1
	    X(k+1) = sum(xn .* exp(-1i*2*pi*k*n/N));  % 计算DFT的每个频率分量
	end
end

例子:

% DTFT
clear;
xn = [0 1 2 3 4 5 6 7];
[w,X] = dtft(xn);
N = length(xn);
n = 0:N-1;

figure('Color','w');
subplot(2 ,2 ,[1,2])
stem(xn,"filled");
subplot(223)
plot(w,abs(X));
subplot(224)
plot(w,angle(X));

% DFT

clear;
xn = [0 1 2 3 4 5 6 7 zeros(1,92)];
X = dft(xn);
N = length(xn);
n = 0:N-1;

figure('Color','w');
subplot(2 ,2 ,[1,2])
stem(xn,"filled");
subplot(223)
stem(abs(X),'filled');
subplot(224)
stem(angle(X),'filled');
  • 14
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

暮光启行

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值