I get Vectors must be the same length. error

2 Ansichten (letzte 30 Tage)
adrixas
adrixas am 12 Apr. 2017
Beantwortet: Star Strider am 12 Apr. 2017
Hello, maybe someone know why I get this error?
F=1000;
Fn=F/2;
f=[0:20:160 180 200 220 240:20:500] ;
am=[ones(1,9) 0.9 0.5 0.1 zeros(1,14)];
fn=f/Fn;
N=32;
a=1;
b=firls(N, fn, am);
H=freqz(b, a, 1000);
w=hamming(N);
figure(2);
plot(w*Fn/pi, abs(H));
Thanks in advance
  2 Kommentare
Jan
Jan am 12 Apr. 2017
I've edited the code today. Please use the "{} Code" button the next time. Thanks.
Manashee Malita
Manashee Malita am 12 Apr. 2017
For the function "plot(x,y)", if x and y are some vector or matrix, they must have same length or size. If you assume x=w*Fn/pi and y=abs(H), then you can observe that the size of x and y are different. Regards M.Kalita

Melden Sie sich an, um zu kommentieren.

Antworten (1)

Star Strider
Star Strider am 12 Apr. 2017
Request 2 outputs from your freqz call, rather than creating your own frequency vector:
[H,w]=freqz(b, a, 1000);
figure(2);
plot(w, abs(H));

Kategorien

Mehr zu Printing and Saving finden Sie in Help Center und File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by