PSD (Power Spectral Density), and Amplitude Spectrum with adjusted FFT
Function [fy]=FFT(y,Fs)
1)computes the Power spectral density and Amplitude spectrum (P(f),F(f))
of 1d signal y(t) with sample rate Fs (Nyquist rate) which is known% apriori. The results are plotted in 3 figures which correspond to simple
PSD,logarithmic PSD (dB) and Amplitude Specturm respectively.
_____________
Ampitude(f) = \/ PSD(f)
2)The usefulness of this function is the adjustment of the frequency axis.
3)The fast Fourier transform is computed with Matlab built-in function
fft, but for signals whose lengths <1000 points, one can use the nested
function y=Fast_Fourier_Transform(X,N) .
Demo :
Fs=800;
Tf=2;
t=0:1/Fs:Tf;
f=[40 75];
Amp=[4.5 9.22];
sigma=1.33;
y=Amp(1)*exp(j*2*pi*t*f(1))
+Amp(2)*exp(j*2*pi*t*f(2));
N=(sigma/sqrt(2))* (randn(size(t))+j*randn(size(t)));
y=y+N;
figure, plot(t,y),xlabel('time (s)'),ylabel('Voltage (v)'),
title(strcat('Signal corrupted with AWGN, \sigma=',num2str(sigma))),
fy=FFT(y,Fs);
in the M-file Demo_FFT:
1st Part : we compute the spectrum of sinusoidal signal Y(t) with frequency Fc
2nd Part : FFT[Y²(t)]
The demo is adjusted with sample rate Fs>=4*Fc.