Info
This question is closed. Reopen it to edit or answer.
In which format I have to give the inputs?
2 views (last 30 days)
Show older comments
Hi,
I want to optimize heat exchanger design parameters I am creating an objective function for that. a = temp parameters, b = pressure parameters, c= cost variation
I have the code as function a = objfun(a,b,c)
my output will be a(1) b(1) c(1) a(2) b(2) c(2) a(3) b(3) c(3) . . . . . . . . . . . . . . .
In which format I have to give the inputs?
1 Comment
Rik
on 25 Aug 2018
What the input should be like, depends on what your function is actually doing.
Have a read here (or here for more general advice) and here. It will greatly improve your chances of getting an answer.
Answers (1)
Walter Roberson
on 25 Aug 2018
Example:
abc0 = randi(10, 3, 4);
bestabc = fmincon(@objfun, abc0(:));
function cost = objfun(abc)
abc = reshape(abc, [], 3);
a = abc(:,1);
b = abc(:,2);
c = abc(:,3);
cost = ....
That is, you can create an array of initial values for your purpose, but you will need to reshape it as a vector to pass in to the optimization. However, in your objective function you can reshape as an array again and then extract appropriate parts of it.
0 Comments
This question is closed.
See Also
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!