Line 1: Line 1:
% Jamis Martin
+
% Jamis Martin <br>
% ECE301 - HW2
+
% ECE301 - HW2 <br>
% Convolution Program
+
% Convolution Program <br>
 
+
<br>
close all
+
close all <br>
 
+
<br>
clear all
+
clear all <br>
 
+
<br>
x = input('Enter first array x[n] (ex: [1 2 3 .. n]): ');
+
x = input('Enter first array x[n] (ex: [1 2 3 .. n]): '); <br>
 
+
<br>
h = input('Enter second array y[n] (ex: [1 2 3 .. n]): ');
+
h = input('Enter second array y[n] (ex: [1 2 3 .. n]): '); <br>
 
+
<br>
len_x = length(x);
+
len_x = length(x); <br>
 
+
<br>
len_h = length(h);
+
len_h = length(h); <br>
 
+
<br>
len_y = len_x + len_h - 1;
+
len_y = len_x + len_h - 1; <br>
 
+
<br>
x = [x, zeros(1, len_x)];
+
x = [x, zeros(1, len_x)]; <br>
 
+
<br>
h = [h, zeros(1, len_h)];
+
h = [h, zeros(1, len_h)]; <br>
 
+
<br>
y = zeros(1, len_y);
+
y = zeros(1, len_y); <br>
 
+
<br>
for(a = 1:len_y)
+
for(a = 1:len_y) <br>
 
+
<br>
for(b = 1:len_x)
+
for(b = 1:len_x) <br>
 
+
<br>
if(a - b + 1 > 0)
+
if(a - b + 1 > 0) <br>
 
+
<br>
y(a) = y(a) + x(b) * h(a - b + 1);
+
y(a) = y(a) + x(b) * h(a - b + 1); <br>
 
+
<br>
end
+
end <br>
 
+
<br>
end
+
end <br>
 
+
<br>
end
+
end <br>
 
+
<br>
%Display the answer y = x * h
+
%Display the answer y = x * h <br>
y
+
y <br>
 +
<br>

Revision as of 00:50, 2 July 2009

% Jamis Martin
% ECE301 - HW2
% Convolution Program


close all


clear all


x = input('Enter first array x[n] (ex: [1 2 3 .. n]): ');


h = input('Enter second array y[n] (ex: [1 2 3 .. n]): ');


len_x = length(x);


len_h = length(h);


len_y = len_x + len_h - 1;


x = [x, zeros(1, len_x)];


h = [h, zeros(1, len_h)];


y = zeros(1, len_y);


for(a = 1:len_y)


for(b = 1:len_x)


if(a - b + 1 > 0)


y(a) = y(a) + x(b) * h(a - b + 1);


end


end


end


%Display the answer y = x * h
y


Alumni Liaison

Ph.D. on Applied Mathematics in Aug 2007. Involved on applications of image super-resolution to electron microscopy

Francisco Blanco-Silva