I want to implement phase noise in matlab. Can anyone tell me why i can not see spreadning of my spectrum in frequency domain. Please help me out.In code, first I have plotted simple signal in frequency domain and after i have defined two noise components, one is syncronous and second is accumulating noise components and added into the signal.
fs = 200;
ts = 1/fs;
t = 0:ts:10000-ts;
fc = 50;
S = cos(2*pi*fc*t); %%% equation 7.1 noisless
L = length(S);
nfft = L*100;
res = fft(S,nfft)/nfft; % resize into nfft nr of element % normalize the amplitude
f = fs/2*linspace(0,1,nfft/2+1);
res = res(1:nfft/2+1);
figure, plot(f,abs(res));
sigma = 0.2;
phi_sync = sigma * randn(1,length(t)); %%%% random variable with gaussian distributed
phi_acc = sigma * randn(1,length(t)); %%%% random variable with gaussian distributed
% h = 0;
for i=1:length(S)
h = phi_sync + phi_acc(i);
end
S1 = cos(2*pi*fc*t + h);
L = length(S1);
nfft = L*100;
res = fft(S1,nfft)/nfft; % resize into nfft nr of element % normalize the amplitude
f = fs/2*linspace(0,1,nfft/2+1);
res = res(1:nfft/2+1);
figure, plot(f,abs(res))
return
t = 0:ts:1-ts
&plot(f, angle(res))
, and then find the phase noise is clear out there. – Gnimucsigma = 1.2
and you will get a spectrum with noise spreading over the whole frequency range. phase noise is just another "representation" of frequency noise, so it will definitely broaden spectrum. – Gnimuc