Help with discrete convolution

17 Ansichten (letzte 30 Tage)
iz
iz am 5 Aug. 2019
Kommentiert: ANIKET RAJAPURE am 6 Aug. 2022
Hi,
I need help with compute convolution between z1 and z2. I don't know how to define the functions(start from 0).
z1=U[n]-U[n-5] (z1= 1 for n=0,1,2,3,4)
z2=delta[n-5]
thank you.
  2 Kommentare
Guillaume
Guillaume am 5 Aug. 2019
" I don't know how to define the functions(start from 0)."
What function?
What is U and what is delta?
Walter Roberson
Walter Roberson am 6 Aug. 2019
U[] typically denotes the unit step function.

Melden Sie sich an, um zu kommentieren.

Akzeptierte Antwort

Jon
Jon am 6 Aug. 2019
This is a good reference that explains discrete convolution specifically using MATLABhttps://www.ling.upenn.edu/courses/cogs501/ImpulseResponse.html
I am not very clear from your description exactly what you are trying to do, however I think your concern is with what terms such as delta(n-2) that would give non-positive indices for n<=2. In this case, you just take advantage of the shift invariance of linear systems. Specifically shift everything by an amount necessary to keep your indices positive, and then when you are done shift the sequences backward.
  2 Kommentare
iz
iz am 7 Aug. 2019
Thank you.
That's was my problem. now i know there isn't negative indexes
ANIKET RAJAPURE
ANIKET RAJAPURE am 6 Aug. 2022
Thanks a lot

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (1)

Jon
Jon am 5 Aug. 2019
Bearbeitet: Jon am 5 Aug. 2019
You need to first form two vectors, z1 and z2 where z1 hold the values of your first series, and z2 holds the values of your second series. You can then use the conv function, so for example:
z1 = [1 8 7 2 3 4 5 9 2.3 11] % just made up data for example
z2 = [2 9 22 1.3 9 4 2.8 7 9] % just made up data for example
y = conv(z1,z2)
In my made up example, I just assigned the vectors to some numerical values. You may have a function, or some experimental data that you will use to obtain values that are then assigned to the vectors z1 and z2
  1 Kommentar
iz
iz am 6 Aug. 2019
But how can i use negative x axis values?
I mean if i have the next sequences and i want to do convolution:
‏‏conv.PNG
If i write z1=[1] for example it will get 1 in n=1.
how can i get z=1 at n=-1?

Melden Sie sich an, um zu kommentieren.

Community Treasure Hunt

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

Start Hunting!

Translated by