Too many input arguments using square

As the title says for some reason square command has too many input arguments I don't know why. Done the same example a while ago and all worked.
tmax=9e-3;
T=3e-3;
Umax=2;
Umin=-3;
N=19;
a=0.6;
wo=(2*pi)/T;
t=linspace(0,tmax,2001);
U=square(wo*t,100*a);
U=0.5*(Umax-Umin)*U+0.5*(Umax+Umin);
td=linspace(0,tmax,N);
Ud=square(wo*td,100*a);
Ud=0.5*(Umax-Umin)*Ud+0.5*(Umax+Umin);
close all;
plot(t,U,'b');
grid on; zoom on; hold on;
stem(td,Ud,'r*');

1 个评论

Check whether you have the Signal Processing Toolbox installed and licensed.

请先登录,再进行评论。

 采纳的回答

Code is working fine. It seems you have introduced a variable named square. Clear it and then run the function. REad about clear
clear square
tmax=9e-3;
T=3e-3;
Umax=2;
Umin=-3;
N=19;
a=0.6;
wo=(2*pi)/T;
t=linspace(0,tmax,2001);
U=square(wo*t,100*a);
U=0.5*(Umax-Umin)*U+0.5*(Umax+Umin);
td=linspace(0,tmax,N);
Ud=square(wo*td,100*a);
Ud=0.5*(Umax-Umin)*Ud+0.5*(Umax+Umin);
close all;
plot(t,U,'b');
grid on; zoom on; hold on;
stem(td,Ud,'r*');

5 个评论

Still doesn't work. Used clear command, even copied the code to another function and there's still the same error.
What does which square gives..?
which square
/MATLAB/toolbox/signal/signal/square.m
Okay, I finally managed to fix it. As you said the problem was that I named function square and despite using clear square the problem still occured. I had to delete that badly named function. Thanks a lot!
One should avoid naming function name/ variable name with inbuilt function names.
:)
Now I know it, thank you again :)

请先登录,再进行评论。

更多回答(0 个)

类别

帮助中心File Exchange 中查找有关 Introduction to Installation and Licensing 的更多信息

产品

版本

R2022a

Community Treasure Hunt

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

Start Hunting!

Translated by