C
claudiocamera
Guest
Bok,
Ja sam težak to razviti u Matlab funkciju za izračunavanje pomoću FFT DIF RADIX 2.Da bi se test, prvo sam raditi sa signalom sa dužina = 8 x = [0 1 2 3 4 5 6 7].Nažalost, to se ne vraća točan rezultat, ja licemjerje nađi ono što nije u redu sa algoritmom.
Ako netko realizirati ono što je loše u kod ispod, molimo vas javite mi.
Thxs
% X = Imput podataka
x = [0 1 2 3 4 5 6 7];
% Dužina imput podataka
N = length (x);x;% Buffer x
% Twidle faktor
WN = exp (-j * 2 * pi / N);
% FFT potprogramPasso = N / 2;
Ni za = 1: est
h = 2 ^ (Ni-1);
V = N / h;
za m = 0: v: N-1
za z = 1: Passo
xnew (z m) x = (z m) x (z Passo m);
xnew (z Passo m) x = (z m)-x (z Passo m) * WN ^ ((z-1) * h);
kraj
krajPasso = Passo / 2;
x = xnew;kraj% Bit reverse potprogram
XBR = zeros (1, N);
prosinac = [0: N-1];
bin = dec2bin (DEC);
dec1 = BIN2OCT (fliplr (kanta)) ';
dec1 = dec1 one (1, N);
za i = 1: N;
XBR (i) = x (dec1 (i));
kraj
Ja sam težak to razviti u Matlab funkciju za izračunavanje pomoću FFT DIF RADIX 2.Da bi se test, prvo sam raditi sa signalom sa dužina = 8 x = [0 1 2 3 4 5 6 7].Nažalost, to se ne vraća točan rezultat, ja licemjerje nađi ono što nije u redu sa algoritmom.
Ako netko realizirati ono što je loše u kod ispod, molimo vas javite mi.
Thxs
% X = Imput podataka
x = [0 1 2 3 4 5 6 7];
% Dužina imput podataka
N = length (x);x;% Buffer x
% Twidle faktor
WN = exp (-j * 2 * pi / N);
% FFT potprogramPasso = N / 2;
Ni za = 1: est
h = 2 ^ (Ni-1);
V = N / h;
za m = 0: v: N-1
za z = 1: Passo
xnew (z m) x = (z m) x (z Passo m);
xnew (z Passo m) x = (z m)-x (z Passo m) * WN ^ ((z-1) * h);
kraj
krajPasso = Passo / 2;
x = xnew;kraj% Bit reverse potprogram
XBR = zeros (1, N);
prosinac = [0: N-1];
bin = dec2bin (DEC);
dec1 = BIN2OCT (fliplr (kanta)) ';
dec1 = dec1 one (1, N);
za i = 1: N;
XBR (i) = x (dec1 (i));
kraj