i am trying to execute these commands but i am getting this error "Not enough input arguments."
    2 次查看(过去 30 天)
  
       显示 更早的评论
    
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 个评论
回答(1 个)
  Star Strider
      
      
 2015-8-21
        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 个评论
  Star Strider
      
      
 2015-8-21
				Your ‘func’ function requires two arguments:
func(x,fun_num)
You have to figure out what to give it for each argument.
另请参阅
类别
				在 Help Center 和 File Exchange 中查找有关 Introduction to Installation and Licensing 的更多信息
			
	Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!

