是否有一种优雅的方式来调用fminsearch
来优化函数的第n个输出?或者是否需要定义一个返回原始函数的第n个输出的新函数并将fminsearch
应用于此新函数?
为澄清而编辑:
即。给出:
函数[out1,out2] = myfunc(x)
%适当的代码
端
找到最小化out2的x值的最简单方法是什么?
答案 0 :(得分:0)
如果您的功能被称为foo
:
function foo(i,...,x)
end
您可以定义命名函数:
function foo_x(x)
foo(...,x);
end
或使用匿名函数:
@(x) foo(...,x)
并将其传递给fminsearch。
还有另一种方法,即经常使用(ab),使用本地函数来分配输入。我不推荐它,因为它打破了许多优秀的软件工程实践。