For loop and Fast Fourrier Transfrom
Infos
Cette question est clôturée. Rouvrir pour modifier ou répondre.
Afficher commentaires plus anciens
Dear colleagues, I have a question related to Fast fourier transfrom. I want to calculate the phase and make FFT to draw power spectral density. However when calculate the phase "theta", there was some errors. So sorry because I am new to Matlab. This is my program code. Please help. Thanks so much !
n = 1:32768;
T = 0.2*10^-9; % Sampling period
Fs = 1/T; % Sampling frequency
Fn = Fs/2; % Nyquist frequency
omega = 2*pi*200*10^6; % Carrier frequency
L = 32768; % % Length of signal
t = (0:L-1)*T; % Time vector
x_signal(n) = cos(omega*T*n + 0.1*randn(size(n))); % Additive phase noise (random)
y_signal(n) = sin(omega*T*n + 0.1*randn(size(n))); % Additive phase noise (random)
theta(n) = atan(y_signal(n)/x_signal(n));
f = (theta(n)-theta(n-1))/(2*pi)
Y = fft(f,t);
PSD = Y.*conj(Y); % Power Spectral Density
%Fv = linspace(0, 1, fix(L/2)+1)*Fn; % Frequency Vector
3 commentaires
Star Strider
le 11 Mar 2017
Calculate the phase from the fft using the angle function.
Xuan Hiep Dinh
le 12 Mar 2017
Xuan Hiep Dinh
le 12 Mar 2017
Réponses (0)
Cette question est clôturée.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!