%%% dft1demo1
% show a signal and an unshifted dft pair
%
% S. Allen Broughton - 29 Sep 10

%% define signal, sample rate, sample domain
% define sample points and parameters for signal definition
N = 128;
t = (0:1:(N-1))/N;
I = sqrt(-1);
SD = 0:(N-1);  % sample or time as integer points

% uncomment the desired signal
%sig = 2*cos(5*2*pi*t)+0.5*sin(24*2*pi*t);
%sig = 2*cos(5*2*pi*t)+0.5*cos(24*2*pi*t);
k = round(0.1*N); sig = [ones(1,k),zeros(1,N-k)]*(N/k);
%k = 2; sig = [ones(1,k),zeros(1,N-k)]*(N/k);
%sig = rand(1,N);
%sig = 2*rand(1,N)-1;
%sig = 2*cos(5*2*pi*t)+ I*0.5*sin(24*2*pi*t);

% define frequency domain and get DFT 
FD = 0:(N-1);
fsig = fft(sig); 

%% display signal and DFT 
figure(1)
subplot(2,1,1)
plot(SD,real(sig),'r',SD,imag(sig),'g')
title('sampled signal');
axis tight
subplot(2,1,2)
plot(FD, real(fsig),'r-',FD,imag(fsig),'g-')
title('DFT of signal')
axis tight

%% display magnitude and phase
% note that the phase is meaningless 
% if many of the coefficients are nearly zero

figure(2)
subplot(2,1,1)
plot(FD, abs(fsig),'r-' )
title('magnitude of DFT')
axis tight
subplot(2,1,2)
plot(FD, angle(fsig),'g-' )
title('phase of DFT')
axis tight
 




