How do I calculate the impulse response?

조회 수: 14 (최근 30일)
dhanshri kulkarni
dhanshri kulkarni 2015년 2월 26일
답변: Altanshagai 2023년 3월 10일
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]

채택된 답변

michael scheinfeild
michael scheinfeild 2015년 2월 26일
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
Jens Kritian Poulsen
Jens Kritian Poulsen 2021년 3월 2일
편집: Jens Kritian Poulsen 2021년 3월 2일
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).

댓글을 달려면 로그인하십시오.

추가 답변 (3개)

John D'Errico
John D'Errico 2015년 2월 26일
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 2019년 5월 22일
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 2023년 3월 10일
[1 1 1]

카테고리

Help CenterFile Exchange에서 Filter Analysis에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by