Matlab:在fminsearch中嵌套fzero

时间:2014-07-07 15:17:20

标签: matlab optimization fminsearch

我试图最小化变量“y”一个包含参数的函数,该参数必须计算为包含“y”的等式的解(例如,y = -3;在我的完整中)问题是没有分析封闭形式解的方程,所以我真的需要fzero)。 因此,我将fzero函数包含在fminsearch的参数中:

 fminsearch( @(y) 10*fzero(@(y) y+3, 0)) ;

我收到错误:

Error using fminsearch (line 85)
The input to FMINSEARCH should be either a structure with 
valid fields or consist of at least two arguments.

我明显得到同样的错误:     f = fzero(@(y)y + 3,0);     fminsearch(@(y)10 * f);

显然问题是我无法在fminsearch中“嵌套”fzero。 关于如何解决这个问题的任何想法?

1 个答案:

答案 0 :(得分:1)

如果您阅读了错误消息,请查看fminsearch的文档,您将看到需要使用两个输入参数调用它。你只用一个叫它。

fminsearch( @(y) 10*fzero(@(x) x+3, 0), 0 )