How to plot impulse response?

조회 수: 2 (최근 30일)
dovis838
dovis838 2020년 3월 31일
답변: Mehmed Saad 2020년 3월 31일
Hey everyone,
I created signal
[y, fs] = audioread('Voice1.wav');
t=(0:length(y)-1)/fs;
here is the form that impulse response should containt. But instead of [0...0] there shoud be 1x1350 array of zeros and instead of [1...1] should be 1x1350 array of ones.
I need to use convolution to get this form (function conv)
As for now I have managed to write this script:
A = zeros(1,1350); % made 1x1350 array from zeros
B = ones(1,1350); % made 1x1350 array from ones
h=[A B A]; % replaced values from formula
X=conv(y,h); % used this command to make convolution
and now I need to plot this changed function.
[y, fs] = audioread('Voice1.wav');
t=(0:length(y)-1)/fs;
A = zeros(1,1350);
B = ones(1,1350);
h=[A B A];
X=conv(y,h);
plot(t,X)
But when plotting I get error Vectors must be the same length
So the question would be, how to properly write script to plot this function?
P.S. Sorry if the task isn't clear, its hard for me to explain :D

채택된 답변

Mehmed Saad
Mehmed Saad 2020년 3월 31일
X=conv(y,h,'same');

추가 답변 (0개)

카테고리

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

Community Treasure Hunt

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

Start Hunting!

Translated by