i am trying to execute these commands but i am getting this error "Not enough input arguments."
1 view (last 30 days)
Show older comments
i am executing the switch statement with the function.
function f=func(x,fun_num)
[ps,d]=size(x);
%fun_num=1 Parameter Estimation for Frequency-Modulated (FM) Sound Waves,initialization range=[0,6.35], bound=[-6.4,6.35] , length of x=6.
switch fun_num
case 1
if d<6
disp('dimension-size should be six.')
else
if d>6
disp('dimension-size is more than 6.')
disp('function has been evaluated on first six dimensions.')
end
end
theta=2*pi/100;
f=0;
for t=0:100
y_t=x(1)*sin(x(2)*t*theta+x(3)*sin(x(4)*t*theta+x(5)*sin(x(6)*t*theta)));
y_0_t=1*sin(5*t*theta-1.5*sin(4.8*t*theta+2*sin(4.9*t*theta)));
f=f+(y_t-y_0_t)^2;
end
0 Comments
Answers (1)
Star Strider
on 21 Aug 2015
How are you calling the ‘func’ function?
What line of what script or function is throwing the error? Copy and paste the entire red text from the Command Window to your original Question or a Comment to it.
2 Comments
Star Strider
on 21 Aug 2015
Your ‘func’ function requires two arguments:
func(x,fun_num)
You have to figure out what to give it for each argument.
See Also
Categories
Find more on Octave in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!