MATLAB Answers

MATLAB CODING - SIGNAL CONVOLUTION

5 views (last 30 days)
long le
long le on 22 Oct 2020
Edited: long le on 24 Oct 2020
I have a convolution operator as a linear system which transforms a signal x(n) into a signal y(n) through an impulse response h(n):
x(n)=[ 1 2 -2 4 6] and h(n)=[ -1 2 3]
I calculated manually the output y(n), represented the signal, and compared to MATLAB conv function as below:
Now, I would like to know how would it be possible to describe a matrix H so that: y=H.x
How to provide a corresponding code and make sure that from this equation?
I look forward to hearing from anyone.
Many thanks and Best regards!

  1 Comment

Mathieu NOE
Mathieu NOE on 22 Oct 2020
Hi
I am not sure if I answer the question, but what you are doing is basically a FIR filter operation
your code could be much more compact by doing y = filter(h,1,x) with h = your impulse response function

Sign in to comment.

Accepted Answer

Bruno Luong
Bruno Luong on 22 Oct 2020
x=[ 1 2 -2 4 6];
h=[ -1 2 3];
c=conv(x,h)
M=convmtx(h,length(x))
x*M % return c

  0 Comments

Sign in to comment.

More Answers (0)

Community Treasure Hunt

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

Start Hunting!