how to get convolution for two signals without using conv command

14 ビュー (過去 30 日間)
mohammad yaman habra
mohammad yaman habra 2022 年 3 月 13 日
編集済み: John D'Errico 2022 年 3 月 13 日
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?

採用された回答

Jan
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 件)

Matt J
Matt J 2022 年 3 月 13 日
You're probably meant to use the convolution property of FFTs.
  2 件のコメント
mohammad yaman habra
mohammad yaman habra 2022 年 3 月 13 日
no i have already tried this method as following :
>> t=1:0.1:10;
>> h= exp(-3*t);
>> g = exp(-5*t);
>> y = 0.1*conv(h,g);
>> plot(y)
and i need to do the same pocess but without the conv command
Matt J
Matt J 2022 年 3 月 13 日
There are no FFTs in the code you've shown.

サインインしてコメントする。


John D'Errico
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))
ans = 
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))
ans = 
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.)

カテゴリ

Help Center および File ExchangeFourier Analysis and Filtering についてさらに検索

製品


リリース

R2021b

Community Treasure Hunt

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

Start Hunting!

Translated by