上传者: 38499553
|
上传时间: 2021-11-04 23:34:06
|
文件大小: 170KB
|
文件类型: -
matlab中蝶形运算代码
[TOC]
本文地址:
FFT快速算法的MATLAB示例:可以提供C语言的实现思路
FFT算法的实现,主要参考“《离散时间信号处理》第二版
--
奥本海姆
”
第九章实现的FFT算法,包括五种FFT快速算法的递归实现和非递归实现。下面主要介绍递归的实现,非递归的代码参考网上(我也不记得在哪儿来的了),递归实现的函数简要介绍如下:
fft_radix2t
是按时间抽选的基2-FFT递归算法,其程序实现流程如下:
function
X
=
fft_radix2t(x)
%
按时间抽选的基2,FFT递归算法,输入必须是2的整数次幂
%
参考:《离散时间信号处理》第二版
--
奥本海姆
513页
图9.3
x
=
x(:).';
N
=
length(x);
if
(N
==
2)
X
=
fft(x);%其实就是简单的一个蝶形运算
else
g
=
x(1:2:N-1);
%
N/2
点偶序列
x[n]:
x[0],
x[2],
x[4],
...,
x[N-2].
h
=
x(2:2:N);
%
N/2
点奇序列
x[n]:
x[1],
x[3],
x[5],