Comparing a signal reconstruction with given equation

4 ビュー (過去 30 日間)
James Stringer
James Stringer 2016 年 2 月 15 日
回答済み: Arnab Sen 2016 年 2 月 23 日
I am supposed to compare a signal reconstruction with the given equation g_t = sum(n = 1:20) of g_a*(n/2B)sinc(2piBt-npi) . I am given the values for g_t but mine don't match, can anyone see why? first couple should be 0, 0.016, 0.037...etc
clear; clc
t = 0:0.005:1;
g_t = 0;
g_a = sin(2*pi*t)+(0.5*cos(6*pi*t))+(0.25*cos(18*pi*t));
e_t = 0;
B = 10;
prod1 = 0;
prod7 = 0;
%------------------------------Equation----------------------------------
for n = 1:20
g_t = g_t+(n/20).*g_a.*((sin((2*pi*B*t)-(n*pi)))./((2*pi*B*t)-(n*pi)));
end
e_t = g_a - g_t;
%----------------------------------Plots----------------------------------
figure(1);
hold on;
box on;
plot(t,g_t,'r');
plot(t,g_a,'b');
plot(t,e_t,'y');
ylabel('amplitude g(t)');
xlabel('time t');
title('sync waveform reconstruction');
axis([0 1 -2 2]);
fileID = fopen('Signal Reconstruction.txt', 'w');
fprintf(fileID, '%34s\n','Signal Reconstruction');
fprintf(fileID, '%38s\n','Using Sinc Waveform');
fprintf(fileID, '%2s %8s %7s %9s %7s\n','i','prod1','prod7',...
'gr(t)','delta');
for i = 1:99
fprintf(fileID,'%2.0f %+8.3f %+8.3f %+8.3f %+8.3f\n',i,...
prod1,prod7,g_t(i),e_t(i));
end

回答 (1 件)

Arnab Sen
Arnab Sen 2016 年 2 月 23 日
Hi James ,
I observe some inconsistency in the definition of 'g_t' and compute of 'g_t' in the code.
I think as per the definition 'g_t' should be as follows:
for n = 1:20
g_t = g_t+(n/2*B).*g_a.*(sinc((2*pi*B*t)));
end

カテゴリ

Help Center および File ExchangeParametric Spectral Estimation についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by