Why do I receive Vectors must be the same length error in this code?

t=-1:0.01:5;
f=(5*cos(pi*t)).*((t>=0)-(t>=1)); %input signal f(t)
h=1.5*((t>=0)-(t>=1.5)-1*((t>=2)-(t>=2.5))); % LTI system impulse response h(t)
t1=-1:5:length(y)
y= conv(f,h); %output signal y(t)
figure(1)
%plotting input signal f(t)
subplot(3,1,1)
plot(t,f)
%plotting impulse response of LTI h(t)
subplot(3,1,2)
plot(t,h)
%plotting output signal y(t)
subplot(3,1,3)
plot(t1,y)

답변 (1개)

Ive J
Ive J 2022년 1월 23일
편집: Ive J 2022년 1월 23일
Error is very obvious: y and t1 don't have the same length. Try this
t1 = linspace(1, max(y), length(y));
plot(t1, y)

댓글 수: 2

do you know if Iits normal for the amplitude of the convolution signal to be different from what we calculate manually.
I'm not familiar with that, but conv(u, v) returns a vector of length numel(u) + numel(v) - 1

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

카테고리

도움말 센터File Exchange에서 Line Plots에 대해 자세히 알아보기

제품

릴리스

R2021b

질문:

2022년 1월 23일

댓글:

2022년 1월 23일

Community Treasure Hunt

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

Start Hunting!

Translated by