definition of nonlincon in the fmincon function

6 views (last 30 days)
Hi guys, I'm having trouble in defining the nonlincon when one of my nonlinear constraints is not the same size as the others. When I run the code it says error CAT argument. please how should I consider that? Thanks.
function [c ceq]=nonlincon(x)
c(1) = with m variabels x(1),..,x(m) : size[1,m]
c(2) = with n variables x(1),...,x(n) : size [1,n]
ceq=[]

Accepted Answer

Paul Kerr-Delworth
Paul Kerr-Delworth on 31 Aug 2012
Hi Mohammad,
The c output in your nonlincon function should be a vector or matrix, where each element of c is less than zero.
In your case, you should just be able to change your current function (note that I've changed the notation in your second vector) from:
function [c ceq]=nonlincon(x)
c(1) = with m variabels x(1),..,x(m) : size[1,m]
c(2) = with n variables y(1),...,y(n) : size [1,n]
ceq=[]
to:
function [c ceq]=nonlincon(x)
% Return a 1-by-m+n vector containing the constraints in your
% original "c(1)" and "c(2)"
c = [x, y];
ceq=[]
Hope this helps.
Best regards,
Paul

More Answers (0)

Products

Community Treasure Hunt

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

Start Hunting!