% % Written by: % -- % John L. Weatherwax 2009-04-21 % % email: wax@alum.mit.edu % % Please send comments and especially bug reports to the % above email address. % %----- close all; clc; clear; % EPage 137 nt = 512; T = 1; dt = T/nt; t = 0:dt:(T-dt); df = 1/T; fmax = nt/(2*T); f = 0:df:df*(nt/2-1); f_1 = 25; y = sin( 2*pi*f_1*t ); Y = fft(y); Ys = zeros(1,nt/2); Ys(1:nt/2) = (2/nt)*Y(1:nt/2); plot( f, abs(Ys), '-b' ); hold('on'); f_2 = 30.27; y = sin( 2*pi*f_2*t ); Y = fft(y); Ys = zeros(1,nt/2); Ys(1:nt/2) = (2/nt)*Y(1:nt/2); plot( f, abs(Ys), '-r' ); f_3 = 35.49; y = sin( 2*pi*f_3*t ); Y = fft(y); Ys = zeros(1,nt/2); Ys(1:nt/2) = (2/nt)*Y(1:nt/2); plot( f, abs(Ys), '-g' ); xlabel('frequency Hz'); ylabel('abs(DFT)'); grid('on'); title('DFT direct'); legend( 'f=25', 'f=30.27', 'f=35.49', 'location', 'best' ); %saveas( gcf, '../../WriteUp/Graphics/Chapter7/c_7_p_15_orig_dft_plot.eps', 'epsc' ); % Extract the Hanning window and apply this to each sample realization: % figure; wght = 0.5 * ( 1 - cos( 2 * pi * t / T ) ); y = sin( 2*pi*f_1*t ) .* wght; Y = fft(y); Ys = zeros(1,nt/2); Ys(1:nt/2) = (2/nt)*Y(1:nt/2); plot( f, abs(Ys), '-b' ); hold('on'); y = sin( 2*pi*f_2*t ) .* wght; Y = fft(y); Ys = zeros(1,nt/2); Ys(1:nt/2) = (2/nt)*Y(1:nt/2); plot( f, abs(Ys), '-r' ); y = sin( 2*pi*f_3*t ) .* wght; Y = fft(y); Ys = zeros(1,nt/2); Ys(1:nt/2) = (2/nt)*Y(1:nt/2); plot( f, abs(Ys), '-g' ); xlabel('frequency Hz'); ylabel('abs(DFT)'); grid('on'); title('DFT with weighting'); legend( 'f=25', 'f=30.27', 'f=35.49', 'location', 'best' ); %saveas( gcf, '../../WriteUp/Graphics/Chapter7/c_7_p_15_orig_weighted_dft_plot.eps', 'epsc' );