Problem declaring a signal.

3 visualizzazioni (ultimi 30 giorni)
Mattias Eek
Mattias Eek il 10 Ago 2021
Risposto: Mattias Eek il 15 Ago 2021
I am a beginner in MATLAB and I'm studying for a test in Signal Processing and don't know how to tackle this some parts of this problem: "Using Matlab, convolve the two discrete-time signals: x1=(1/3)*(δ[n−1]+δ[n]+δ[n+1]) and x2 given by signal2.mat. Store the convolution (x1∗x2) in the variable x."
signal2.mat only contain the variable n which is an interval from -10 to 10 with a step of 1 and x2 which contain 21 random values.
I don't know what delta represents in x1 and how to implement/declare it in MATLAB. Any help is appreciated! I know what to do after I've declared x1, so further help than that is not needed!
  1 Commento
Star Strider
Star Strider il 10 Ago 2021
The reference to is most likely the Dirac delta function, described in the Symbolic Math Toolbox dirac function.
.

Accedi per commentare.

Risposta accettata

Sahil Jain
Sahil Jain il 13 Ago 2021
The "δ[n]" generally refers to the Dirac delta function. The following code will help you generate the required signal.
n=-10:1:10;
x1=(1/3)*(dirac(n-1)+dirac(n)+dirac(n+1));
More information about the Dirac delta function can be found on its documentation page.

Più risposte (1)

Mattias Eek
Mattias Eek il 15 Ago 2021
For anyone wondering how I solved this, here's my solution:
load = 'signal2.mat';
L = 21;
f = zeros(1,L);
mid = ceil(L/2);
for i=mid-1:mid+1
f(i)=1/3;
end
x1=f;
x = conv(x1,x2);
You can probably solve it using dirac, like @Sahil Jain mentioned above, but this worked for me.

Prodotti


Release

R2020b

Community Treasure Hunt

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

Start Hunting!

Translated by