【发布时间】:2016-10-05 13:28:44
【问题描述】:
我正在尝试使用 fminsearch 和函数句柄优化函数
但是,我得到错误 A 和 B 必须是浮点标量。具体来说,
使用积分时出错(第 86 行) A 和 B 必须是浮点标量。
@(x,p)(integral(@(n)((p(1)-p(2))*exp(n)),-inf,x+3))中的错误
@(x)((x-f2(x,p)).^2) 中的错误
integralCalc/iterateScalarValued 中的错误(第 314 行) fx = FUN(t);
integralCalc/vadapt 中的错误(第 133 行) [q,errbnd] = iterateScalarValued(u,tinterval,pathlen);
integralCalc 中的错误(第 76 行) [q,errbnd] = vadapt(@AtoBInvTransform,interval);
积分错误(第 89 行) Q = 积分计算(fun,a,b,opstruct);
@(p)(integral(@(x)((x-f2(x,p)).^2),-3,3)) 中的错误
fminsearch 中的错误(第 191 行) fv(:,1) = funfcn(x,varargin{:});
我该如何解决这个问题?
我认为 x-3 成为一个问题,但我无法处理它。 x 在 f2 中应该是可变的,以便在 q3 中对 x 进行积分
提前谢谢你
sigma=0.1;
f2=@(x,p)(integral(@(n)((p(1)-p(2))*exp(n)),-inf,x+3));
q3=@(p)(integral(@(x)((x-f2(x,p)).^2),-3,3));
[p, fval] = fminsearch(q3,[0.1 0.4]);
【问题讨论】:
-
欢迎来到 stackoverflow J.Lee。用你正在使用的编程语言标记你的问题很有帮助——我添加了“matlab”,这就是它的样子,并删除了“floating”,它是用于浮动 div 和 css 中的其他东西的标签。
-
为了调试,尝试将代码写成完整的函数,而不是函数句柄。然后,matlab 将告诉您有关错误发生位置的更多有用信息(例如行号)。
-
你能提供
p和n吗?如果它们很大,请仅发布足以重现您的问题的内容。 -
你也可以复制粘贴整个错误堆栈吗?
-
谢谢,我复制了整个错误堆栈
标签: matlab