How do I calculate the impulse response?

14 visualizaciones (últimos 30 días)
dhanshri kulkarni
dhanshri kulkarni el 26 de Feb. de 2015
Respondida: Altanshagai el 10 de Mzo. de 2023
How do I write the code in order to get the impluse response for the following equation:
y[n]=x[n]+x[n-1]+x[n-2]

Respuesta aceptada

michael scheinfeild
michael scheinfeild el 26 de Feb. de 2015
f=100;% frequanecy
fs=1000;
n=[1:1000]*f/fs;
u=ones(n,1)
x(n)=2*cos(0.5*pi*n).u(n);
% ~ (check indexes im not sure ..)
y(n)=x(n(3:1000))+x(n(2:999))+x((1:998))
  1 comentario
Jens Kritian Poulsen
Jens Kritian Poulsen el 2 de Mzo. de 2021
Editada: Jens Kritian Poulsen el 2 de Mzo. de 2021
There are errors in the solution shown by Michael Scheinfeild, e.g. last line and it doesn't calculate the impulse response.
The solution by John D'Errico is okay (albeit a bit short)
The problem by itself is so simple you don't really need Matlab ([1 1 1] is the impulse response).

Iniciar sesión para comentar.

Más respuestas (3)

John D'Errico
John D'Errico el 26 de Feb. de 2015
Use filter, or conv. WTP?
Compute the vector x, then get y from x.
y = conv(x,[1 1 1]);
and if x was [0 0 1 0 0], then what would y be from the above call to conv?

MathWorks Support Team
MathWorks Support Team el 22 de Mayo de 2019
To compute a 3 tap FIR filter impulse response, use “fft” with the corresponding coefficients. In this case,
>> fft([1 1 1])
Depending on the frequency resolution that you need, you will also have to specify the length of the transformation.

Altanshagai
Altanshagai el 10 de Mzo. de 2023
[1 1 1]

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by