What is the difference between using conv function and manual coding method using MATLAB?

Here I Have mentioned two different options and the option 01 has used conv function and the option 02 has used manual coding method to find discrete Convolution.
Option 1
clc
clear all
close all
n = 1: 1: 1000;
N = randn (1,1000);
s = 10*cos(0.05*n);
figure (1)
plot (s,'r')
x = s + N;
figure (2)
plot (x,'g')
h = 0.1*ones(1,10);
y1=conv (x,h);
figure (3)
plot (y1)
figure (4)
plot (s,'r')
hold on
plot (x,'g')
hold on
plot (y1)
Option 2
m = length (x);
n = length (h);
X = [x,zeros(1,n)];
H = [h,zeros(1,m)];
for i = 1: n+m-1
Y(i) = 0;
for j = 1: m
if (i - j+1 > 0)
Y(i) = Y(i)+X(j)*H(i-j+1);
else
end
end
end
figure (5)
plot (Y);
hold on

回答(1 个)

Your twin brother/sister/class mate is faster, he/she asked the same question earlier.
Don't copy the same answer, your teacher might notice it.

类别

帮助中心File Exchange 中查找有关 Graphics Objects 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by