Convolution Computations results for a system response.
1 次查看(过去 30 天)
显示 更早的评论
Prasad Edirisuriya Mudiyanselage
2019-9-16
评论: Prasad Edirisuriya Mudiyanselage
2019-9-16
Can anyone tell the difference of these plots that I used following two codes to plot the results of convolution computations given and need to know the reason for having following difference?
I have attached the results I got for these codes.
0 个评论
采纳的回答
Bruno Luong
2019-9-16
编辑:Bruno Luong
2019-9-16
You make few mistakes, indexing and flipping (see careful conv documentation, the subtility is there, though TMW never mention whereas CEIL or FLOOR must be applied on even-length kernel, shame on them).
This code will show the correction and match both calculations (roundoff beside)
n=[1:1:1000];
s=10*cos(0.05*n);
N=randn(1,1000);
x=s+N;
h=0.1*ones(1,10);
y = conv(x,h,'same'); % 'same'
yy = zeros(1,length(n));
for i = 1: length(n)
for j = 1:length(h)
k = i-j+ceil((length(h)+1)/2); % shift by ceil(...) which correspond to "same"
if k>=1 && k<=length(x) % overflow check
yy(i) = yy(i) + h(j)*x(k);
end
end
end
close all
figure
plot(yy)
hold on
plot(y)
Related post here
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Graphics Object Properties 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!