Location:
Search - fft.l
Search list
Description: DSP编程代码,FFT算法,经典!!
FFT实验
一、 理论:
公式(1)FFT运算公式
FFT并不是一种新的变换,它是离散傅立叶变换(DFT)的一种快速算法。由于我们在计算DFT时一次复数乘法需用四次实数乘法和二次实数加法;一次复数加法则需二次实数加法。每运算一个X(k)需要4N次复数乘法及2N+2(N-1)=2(2N-1)次实数加法。所以整个DFT运算总共需要4N^2次实数乘法和N*2(2N-1)=2N(2N-1)次实数加法。如此一来,计算时乘法次数和加法次数都是和N^2成正比的,当N很大时,运算量是可观的,因而需要改进对DFT的算法减少运算速度。
根据傅立叶变换的对称性和周期性,我们可以将DFT运算中有些项合并。
我们先设序列长度为N=2^L,L为整数。将N=2^L的序列x(n)(n=0,1,……,N-1),按N的奇偶分成两组,也就是说我们将一个N点的DFT分解成两个N/2点的DFT,他们又从新组合成一个如下式所表达的N点DFT:
一般来说,输入被假定为连续、合成的。当输入为纯粹的实数的时候,我们就可以利用左右对称的特性更好的计算DFT。
我们称这样的RFFT优化算法是包装算法:首先2N点实数的连续输入称为“进包”。其次N点的FFT被连续被运行。最后作为结果产生的N点的合成输出是
Platform: |
Size: 439370 |
Author: 徐克 |
Hits:
Description: 说明:
pr[n]——输入的实部
pi[n]——数入的虚部
n,k——满足n=2^k
fr[n]——输出的实部
fi[n]——输出的虚部
l——0 FFT,1 IFFT
il——0 输出按实部/虚部;1 输出按模/幅角-: pr [n] -- imported real pi [n] -- the number-n, the imaginary part, k -- meet n = 2 ^ k fr [n] -- the real output fi [n] -- output of the imaginary part 1 -- 0 FF T, a IFFT il -- 0 output in real / imaginary parts; Die output by 1 / Angle
Platform: |
Size: 1131 |
Author: 郑进 |
Hits:
Description: 数字信号处理中,用FFT模拟维纳滤波器,其中L为输入信号的样本点数-digital signal processing using FFT simulation Wiener filter, which L input signal samples Points
Platform: |
Size: 1234 |
Author: 胡博 |
Hits:
Description: 根据DFT的基二分解方法,可以发现在第L(L表示从左到右的运算级数,L=1,2,3…M)级中,每个蝶形的两个输入数据相距B=2^(L-1)个点,同一旋转因子对应着间隔为2^L点的2^(M-L)个蝶形。从输入端开始,逐级进行,共进行M级运算。在进行L级运算时,依次求出个2^(L-1)不同的旋转因子,每求出一个旋转因子,就计算完它对应的所有的2^(M-L)个蝶形。因此我们可以用三重循环程序实现FFT变换。同一级中,每个蝶形的两个输入数据只对本蝶形有用,而且每个蝶形的输入、输出数据节点又同在一条水平线上,所以输出数据可以立即存入原输入数据所占用的存储单元。这种方法可称为原址计算,可节省大量的存储单元。附件包含算法流程图和源程序。
Platform: |
Size: 36559 |
Author: 鲍晓 |
Hits:
Description: 说明:
pr[n]——输入的实部
pi[n]——数入的虚部
n,k——满足n=2^k
fr[n]——输出的实部
fi[n]——输出的虚部
l——0 FFT,1 IFFT
il——0 输出按实部/虚部;1 输出按模/幅角-: pr [n]-- imported real pi [n]-- the number-n, the imaginary part, k-- meet n = 2 ^ k fr [n]-- the real output fi [n]-- output of the imaginary part 1-- 0 FF T, a IFFT il-- 0 output in real/imaginary parts; Die output by 1/Angle
Platform: |
Size: 1024 |
Author: 郑进 |
Hits:
Description: 数字信号处理中,用FFT模拟维纳滤波器,其中L为输入信号的样本点数-digital signal processing using FFT simulation Wiener filter, which L input signal samples Points
Platform: |
Size: 1024 |
Author: 胡博 |
Hits:
Description: ogg音频编码源代码,可用于视频会议电视或者VOIP中,包含编解码-ogg audio coding source code can be used for video conferencing or VoIP television, including codecs
Platform: |
Size: 528384 |
Author: 黄河 |
Hits:
Description: 32位arm9微处理器S3C2440的led测试源代码-32-bit ARM9 microprocessor S3C2440 the led test source code
Platform: |
Size: 44032 |
Author: sonny |
Hits:
Description: 根据DFT的基二分解方法,可以发现在第L(L表示从左到右的运算级数,L=1,2,3…M)级中,每个蝶形的两个输入数据相距B=2^(L-1)个点,同一旋转因子对应着间隔为2^L点的2^(M-L)个蝶形。从输入端开始,逐级进行,共进行M级运算。在进行L级运算时,依次求出个2^(L-1)不同的旋转因子,每求出一个旋转因子,就计算完它对应的所有的2^(M-L)个蝶形。因此我们可以用三重循环程序实现FFT变换。同一级中,每个蝶形的两个输入数据只对本蝶形有用,而且每个蝶形的输入、输出数据节点又同在一条水平线上,所以输出数据可以立即存入原输入数据所占用的存储单元。这种方法可称为原址计算,可节省大量的存储单元。附件包含算法流程图和源程序。-err
Platform: |
Size: 35840 |
Author: 鲍晓 |
Hits:
Description: // 入口参数:
// l: l = 0, 傅立叶变换 l = 1, 逆傅立叶变换
// il: il = 0,不计算傅立叶变换或逆变换模和幅角;il = 1,计算模和幅角
// n: 输入的点数,为偶数,一般为32,64,128,...,1024等
// k: 满足n=2^k(k>0),实质上k是n个采样数据可以分解为偶次幂和奇次幂的次数
// pr[]: l=0时,存放N点采样数据的实部
// l=1时, 存放傅立叶变换的N个实部
// pi[]: l=0时,存放N点采样数据的虚部
// l=1时, 存放傅立叶变换的N个虚部
//
// 出口参数:
// fr[]: l=0, 返回傅立叶变换的实部
// l=1, 返回逆傅立叶变换的实部
// fi[]: l=0, 返回傅立叶变换的虚部
// l=1, 返回逆傅立叶变换的虚部
// pr[]: il = 1,i = 0 时,返回傅立叶变换的模
// il = 1,i = 1 时,返回逆傅立叶变换的模
// pi[]: il = 1,i = 0 时,返回傅立叶变换的辐角
// il = 1,i = 1 时,返回逆傅立叶变换的辐角-err
Platform: |
Size: 1024 |
Author: bluefeifei |
Hits:
Description: 基于Avr单片机的FFT算法,LCD显示-Avr MCU-based FFT algorithm, LCD display
Platform: |
Size: 23552 |
Author: jeans |
Hits:
Description: 序执行时要求输入序列的长度N_pre,N_pre 是最初输入序列的长度,任意长度都可以。N是指补零后的序列长度,满足2^L.
然后逐个输入各个元素的实部和虚部,补零部分不必输入。
显示FFT变换的结果。-Order execution when the input sequence length requirements N_pre, N_pre are the initial input sequence length, can be of any length. N refers to zero after the sequence length, then 2 ^ L. Satisfied by the importation of all elements of real and imaginary parts, some do not have to enter zero. Shows the results of FFT transform.
Platform: |
Size: 202752 |
Author: 李昊然 |
Hits:
Description: 这是一个数字信号处理的函数库,包括FFT变换各种滤波算法如果你要编写数字信号处理相关的程序这是个不错的选择-This is a digital signal processing library, including all kinds of filtering algorithm FFT transform you to be prepared if the digital signal processing-related procedures This is a good choice
Platform: |
Size: 38912 |
Author: 阿飞 |
Hits:
Description: OFDM程序,这么安排矩阵的目的是为了构造共轭对称矩阵
共轭对称矩阵的特点是 在ifft/fft的矢量上 N点的矢量
在0,N/2点必须是实数 一般选为0
1至N/2点 与 (N/2)+1至N-1点关于N/2共轭对称- BPSK simulation using a carrier cosine wave with ISI
clc
close all
clear all
figure(1)
n=160
for i=1:n
data(i)= 2*round(rand)-1
end
create modulated BPSK signal
first expand the bit stream
exdata=[]
for i=1:length(data)
for rep=1:5
exdata= [exdata data(i)]
end
end
ts=.1
t=1:ts:80.9
carrier=cos(pi*t)
multiply expanded bitstream by cosine wave with carrier frequency
this is the BPSK that is to be transmitted over the channel
bpsk=carrier.*exdata
bpsk=[bpsk(length(bpsk)-1) bpsk(length(bpsk)) bpsk]
plot(bpsk)
generating the noise
p=rand(1,800)*2*pi
p=rand*2*pi
snr=10
r=sqrt(-1*(1/snr*log(1- rand)))
no = 5*(r.* exp(j*p))
no = (r.* exp(j*p))
value of alpha
al=rand+j*rand
al=1
Spreading channel with the alpha as the variable
for k=5:5:795
for l = 1:5
al=round(rand)+j*round(rand)
rec(k+l)=bpsk(k+l)+al*bpsk(k-5+l)
end
end
rxdata=rec+ no
begin demodulation
first multiply recie
Platform: |
Size: 6146048 |
Author: 卞敏捷 |
Hits:
Description: stm dsp的源文件 和例程 ,做一些简单的dsp开发和学习-stm dsp source files and routines, do some simple dsp development and learning
Platform: |
Size: 1970176 |
Author: shang |
Hits:
Description: 1. BCB建立lib,在命令提示字元下執行:
implib -a fftw3-3.lib libfftw3-3.dll
implib -a fftw3f-3.lib libfftw3f-3.dll
implib -a fftw3l-3.lib libfftw3l-3.dll
VC則
2.將 *.dll 複製到 c:\windows\system32
3.將fftw*.lib 加入專案
4.專案#include "fftw3.h"-FFT
Platform: |
Size: 1511424 |
Author: chin |
Hits:
Description: 稀疏分量分解。
function [y A]=sparseBSS1(X,L,langda,G,h,delta)-function [y A]=sparseBSS1(X,L,langda,G,h,delta)
----------------------------------------------------------------
2009-04-15 YangZhicong
X: observed signal,each row correspond to a sensor observations
L: the length of FFT (or the length of Hanning window)
langda: adjust the desired angular width
G: discretize the potential field by taking a sample of G points
h: threshold
y: estimated sourses
A: estimated mix matrix
Platform: |
Size: 2048 |
Author: 沥青 |
Hits:
Description: 快速傅立叶变换子程序
//l=0时,pr存放采样输入的实部,返回离散傅立叶变换的模;l=1时,pr存放傅立叶变换的实部,返回逆傅立叶变换的模
//l=0时,pi存放采样输入的虚部,返回离散傅立叶变换的幅角;l=1时,pi存放傅立叶变换的虚部,返回逆傅立叶变换的幅角
//l=0时,fr返回傅立叶变换的实部 l=1时返回逆傅立叶变换的实部
//l=0时,fi返回傅立叶变换的虚部 l=1时返回逆傅立叶变换的虚部 (l=0时正变换,l=1时逆变换)
//il=0时,表示不要求本函数计算傅立叶变换或逆傅立叶变换的模或幅角
//il=1时,表示要求本函数计算傅立叶变换或逆傅立叶变换的模或幅角-Fast Fourier Transform subroutine
Platform: |
Size: 1024 |
Author: zhengru |
Hits:
Description: 基于FFT算法的重叠保留法算卷积,有注释说明过程-Overlapping FFT algorithm convolution calculation method retained, notes illustrate the process
Platform: |
Size: 1024 |
Author: 顾珺 |
Hits:
Description: Wilson H.B., Turcotte L.H., Halpern D. Advanced Mathematics and Mechanics Applications Using MATLAB
3. Linear Algebra.
4. Differentiation and numerical interpolation
5. gaussian integration
6. Fourier series and FFT
7. Dynamic response of second order systems
8. Integration of nonlinnear initial value problems.
9. Boundary value problems
10. Eigenvalue problems.
11. Bending analysis of beams
12. Application of analytic functions
Platform: |
Size: 4921861 |
Author: diego_velasquez |
Hits: