Getting an error of "Not enough input arguments."

2 visualizzazioni (ultimi 30 giorni)
I'm defining a function which returns a vector used for design of fir filters using hamming window. I am not able to see where I'm going wrong and would appreciate if someone could help me out
Function:
function a = firfilt2(wp,ws)
n=ceil(8/(ws-wp));
if(rem(n,2)==0)
n=n+1;
end
y=hamming_alg(n);
a=fir1(n-1,wp,y);
end
function hm_wind = hamming_alg(n)
hm_wind=zeros(1,n);
for i=1:n
hm_wind(i) = 0.54 - 0.46*cos((2*pi*i)/(n-1));
end
end
Testcase:
rp=0.25;
rs=50;
wp=0.3;
ws=0.45;
filt=firfilt2(wp,ws);
freqz(filt,1);
Error Message :
>>firfilt2
Error using firfilt2 (line 2)
Not enough input arguments.
I've also tried another program which does the same thing and also determines the window automatically by using Stop Band Gain. That seemed to show the same error message. I've tried most of the tips online and also tried to debug the code line by line.

Risposte (2)

dpb
dpb il 5 Giu 2015
Your sample line invokes your function firfilt2 with no arguments. Not sure why you did that...otherwise, looks like the sample test should run from the command line.
  5 Commenti
Sumukh Desu
Sumukh Desu il 8 Giu 2015
I'm really sorry. Like you mentioned it's line 2 which is giving the error. In the original code there was a space which meant there was nothing written at line 2. I will try the suggestions and debug the code. Thanks a lot.
Walter Roberson
Walter Roberson il 8 Giu 2015
Line 2 was the first line on which you attempted to use one of the input arguments that you did not supply when you invoked the code.

Accedi per commentare.


Jan
Jan il 6 Giu 2015
Modificato: Jan il 6 Giu 2015
Use
dbstop if error
to find out, which line causes the troubles. Which line is "line 3"?
Be sure, that the file has been saved before calling and do not use the RUN-menu in the editor, because it does not define the inputs.
  1 Commento
Sumukh Desu
Sumukh Desu il 8 Giu 2015
I'm really sorry. Like you mentioned it's line 2 which is giving the error. In the original code there was a space which meant there was nothing written at line 2. I will try the suggestions and debug the code and get back to you. Thanks a lot.

Accedi per commentare.

Community Treasure Hunt

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

Start Hunting!

Translated by