"nonlincon" part of the "fmincon" function in the optimization toolbox

6 visualizzazioni (ultimi 30 giorni)
Hi guys, I want to create the "nonlincon' part of the "fmincon" function. I want to be able to call other variables in the nonlincon function like this:
function [c,ceq]=nonlincon(x,variable1,variable2,...,variableN)
but it gives this error:
Error in fmincon (line 681)
[ctmp,ceqtmp] = feval(confcn{3},X,varargin{:});
Caused by:
Failure in initial user-supplied nonlinear constraint function evaluation. FMINCON cannot
continue.
Please help me out, thanks in advance.

Risposta accettata

Elizabeth
Elizabeth il 18 Ago 2012
What if you globalize the variables that you want to define in the nonlcon function. You would write global variable1.. global variableN in both nonlcon and your main program.

Più risposte (1)

Alan Weiss
Alan Weiss il 22 Ago 2012
You will probably be happier in the long run if you include your extra variables in a function handle or nested function rather than as global variables. See the documentation on passing extra parameters.
Alan Weiss
MATLAB mathematical toolbox documentation

Prodotti

Community Treasure Hunt

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

Start Hunting!

Translated by