problem with fft

hello i have this program that make ifft for some random vary maybe someone can help me with the fft? thanks
N=10;
fs=1e6;
T=1e-3;
% random signal
bit=randint(20,1); % 20 bits 0 or 1 1 x 20
% serial-to-parallel converter
par=reshape(bit,2,10); % 2 x 10 2 bits for sym
% mapper
sym=par'*[2;1]; % multiplay for mapper 00-0 01-1 10-2 11-3
phase=[-3*pi/4,3*pi/4,-pi/4,pi/4];
phase_sym=phase(sym+1); % every sym gets phase for example pi/4 will get '3'
% IFFT
for k=0:N-1
i=1;
for t=1/fs:1/fs:T
x(k+1,i)=cos((2*pi*k*t)/T+phase_sym(k+1))+j*sin((2*pi*k*t)/T+phase_sym(k+1));
i=i+1;
end
end

 采纳的回答

Why don't you use MATLAB's fft and ifft functions directly?
EDIT
For example, if you want it to have a length of 1000, it is very easy:
% Suppose "x" is the signal you want
x_fft = fft(x, 1000);
x_mag = abs(x_fft); % Magnitude
x_pha = angle(x_fft); % Phase

更多回答(2 个)

itsik
itsik 2011-5-20

0 个投票

cause i need the length of the fft will be 1000 do u know how i make it? with fft?
itsik
itsik 2011-5-20

0 个投票

maybe someone's know? or how to replace all this code in ifft command?

类别

帮助中心File Exchange 中查找有关 Fourier Analysis and Filtering 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by