Line 16: Line 16:
 
7. Convolution implementation Write a Matlab function that per-
 
7. Convolution implementation Write a Matlab function that per-
 
forms convolution of two discrete-time input signals. Note that the
 
forms convolution of two discrete-time input signals. Note that the
theoretical convolution defined in class has signals x[n] defined for
+
theoretical convolution defined in class has signals <math>x[n]</math> defined for
n 2 (−1,1). Since this is not practically realizable, have your code
+
<math> n \in ( -\infty , \infty )</math>. Since this is not practically realizable, have your code
 
assume that a finite-length input signal is such that it is zero outside of
 
assume that a finite-length input signal is such that it is zero outside of
the specified range. For example, both signals x1[n] and x2[n] plotted
+
the specified range. For example, both signals <math>x_1[n]</math> and <math>x_2[n]</math> plotted
 
below can be represented by a vector in Matlab as [2, 3, 1]. Compare
 
below can be represented by a vector in Matlab as [2, 3, 1]. Compare
 
your code’s functionality against the builtin Matlab function conv (type
 
your code’s functionality against the builtin Matlab function conv (type
 
“help conv” on the command line for more information).
 
“help conv” on the command line for more information).
  
So, are you saying that our code cannot call the function conv, but can use for loops even though they are slow. Just clarifying-- Adam Frey
+
* So, are you saying that our code cannot call the function conv, but can use for loops even though they are slow. Just clarifying-- Adam Frey
 
+
* Yes, your function may use loops, but should not call the conv function.  I simply want you to write a function that works identically to conv.  If you are feeling ambitious, you can try this without loops, though I would strongly recommend writing it using for-loops first. [[User:Huffmalm|Huffmalm]]
 
Back to [[Homework]]
 
Back to [[Homework]]

Revision as of 06:50, 30 June 2009

Problem 1

Problem 2

Problem 3

Problem 4

Problem 5

Problem 6

Add your Rhea contribution to the Course-Related_Material page

Problem 7

Adam has posted some Helpful Youtube videos which will be very helpful in working this problem. Nice find! - Landis

7. Convolution implementation Write a Matlab function that per- forms convolution of two discrete-time input signals. Note that the theoretical convolution defined in class has signals $ x[n] $ defined for $ n \in ( -\infty , \infty ) $. Since this is not practically realizable, have your code assume that a finite-length input signal is such that it is zero outside of the specified range. For example, both signals $ x_1[n] $ and $ x_2[n] $ plotted below can be represented by a vector in Matlab as [2, 3, 1]. Compare your code’s functionality against the builtin Matlab function conv (type “help conv” on the command line for more information).

  • So, are you saying that our code cannot call the function conv, but can use for loops even though they are slow. Just clarifying-- Adam Frey
  • Yes, your function may use loops, but should not call the conv function. I simply want you to write a function that works identically to conv. If you are feeling ambitious, you can try this without loops, though I would strongly recommend writing it using for-loops first. Huffmalm

Back to Homework

Alumni Liaison

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

Francisco Blanco-Silva