Optimizing a function consisting of other variables

on 14 Oct 2012

Alan Weiss (view profile)

Hello, I have a function as this:

function l=L2(u1, u2, w, x) l = -sum(log(((log(u1).*log(u2)).^(-1+x)).*((w.^((2-2*x)/x))-(1-x.*(w.^(1-2*x)/2)))./(u1.*u2.*exp(w.^(1/x))))); end

which u1, u2, w are 40*1 vectors, and I want to optimize this for min of x with optimtool but his gives me the error of

Error in the following problem input(s): objective: Not enough input arguments.

Can anybody help me?

Matt J

Matt J (view profile)

on 14 Oct 2012

Show more code, in particular, the solver that you're using and the code you use to call it.

Also, use markup to make the code you post more readable, including the code in your Question.

Products

Alan Weiss (view profile)

on 15 Oct 2012

Alan Weiss

MATLAB mathematical toolbox documentation

Matt Tearle

Matt Tearle (view profile)

on 15 Oct 2012
```u1 = ...
u2 = ...
w  = ...
objfun = @(x) L2(u1,u2,w,x) % define a function of x with u1, u2, w fixed
```

Now use objfun as your objective function.

Fred

Fred (view profile)

on 15 Oct 2012

Join the 15-year community celebration.

Play games and win prizes!

MATLAB and Simulink resources for Arduino, LEGO, and Raspberry Pi