trying to use the fmincon function
    3 views (last 30 days)
  
       Show older comments
    
Hello,
I am trying to use the fmincon with a external function definition.
I ran the example at https://www.mathworks.com/help/optim/ug/fmincon.html and it wroked as described
I tried to define the function as an external function as shown below.
    % script calling fmincon start
        clc
        clear all
        x0=[-1,2];
        A=[1,2];
        b=1;
        zeta=fmincon(fun,x0,A,b);
    % script calling fmincon end
    % script defining fun start
    function q=fun(x)
    q=100*(x(2)-x(1)^2)^2+(1-x(1))^2;
    end
    % script defining fun end
I get this error: Not renough input arguments from the fun  script
Not sure how to fix this probem
Thank you
0 Comments
Accepted Answer
  Torsten
      
      
 on 22 Jun 2022
         Works for me after changing "fun" in "@fun":
   % script calling fmincon start
        clc
        clear all
        x0=[-1,2];
        A=[1,2];
        b=1;
        zeta=fmincon(@fun,x0,A,b)
    % script calling fmincon end
    % script defining fun start
    function q=fun(x)
    q=100*(x(2)-x(1)^2)^2+(1-x(1))^2;
    end
    % script defining fun end
More Answers (0)
See Also
Categories
				Find more on Surrogate Optimization 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!
