Why does this code give error?

1 visualizzazione (ultimi 30 giorni)
Sadiq Akbar
Sadiq Akbar il 4 Mag 2021
Commentato: Sadiq Akbar il 4 Mag 2021
clear all
close all
N=100;
fc=1.0e9;
fs=20*fc;
w=2*pi*fc/fs;
n=0:N-1;
s=sqrt(1.0)*exp(i*w*n);
wn=sqrt(0.1/2)*(randn(1,N)+i*randn(1,N));
x=s+wn;
w_est=0;
M=N;
for m=1:M-1
w_est=w_est+(1/(M-1))*arg((x(m))'*x(m+1));
end
error_1=w-w_est;
w_est=0;
M=N;
for m=1:M-1
p(m)=6*(m)*(M-m)/(M*(M^2-1));
w_est=w_est+p(m)*arg((x(m))'*x(m+1));
end
error_2=w-w_est;

Risposta accettata

DGM
DGM il 4 Mag 2021
Use angle() instead of arg() to get the argument of complex numbers.
  1 Commento
Sadiq Akbar
Sadiq Akbar il 4 Mag 2021
Thank you very much dear DGM for your prompt respose.

Accedi per commentare.

Più risposte (0)

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by