how to get convolution for two signals without using conv command
4 次查看(过去 30 天)
显示 更早的评论
so i have two signals the first is h = e^-3t and the another is g = e^-5t
i already done the convoloution of these two using the conv command but i need another method without the command.
any help?
0 个评论
采纳的回答
Jan
2022-3-13
编辑:Jan
2022-3-13
If you read the documentation, you find the mathematical definition of conv:
doc conv
The code is easy to implement using loops. Try it. If you have specific problems, post your code here and ask for details.
If you spend the time for searching in the net (meta-message...), you find this also:
更多回答(2 个)
John D'Errico
2022-3-13
编辑:John D'Errico
2022-3-13
Several ways you could do this. If your signal is represented as a discrete sequence, then just use a double loop, accumulating the result into a vector of appropriate length.
If you were intended to work on the signals in symbolic form, then a z-transform can also be used for convolution.
syms t
ztrans(exp(-3*t))
I showed that much to explain how to write an exponential. Note that the exponential you wrote will use the function exp in MATLAB.
Or, can you solve a convolution problem using the Laplace tranform? If this is a convolution INTEGRAL, as opposed to the sum implied by a discretized signal, then Laplace transforms would be appropriate.
laplace(exp(-3*t))
You should see that both will be capable of computing the convolution of two signals, represented as functions. The Laplace transform applies to a convolution integral, a z transform to a discrete signal. My guess is, if you already did it using conv, then you would be intended to use a z-transform. (Hint.)
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Fourier Analysis and Filtering 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!