请问这个matlab程序错在哪里? 5

function[x,y]=flow(f,a,b,e)x1=a;x2=b;Q=fsxhesse(f,x1,x2);x0=[x1x2]';fx1=diff(f,'x1');... function [x,y]=flow(f,a,b,e)
x1=a;
x2=b;
Q=fsxhesse(f,x1,x2);
x0=[x1 x2]';
fx1=diff(f,'x1');
fx2=diff(f,'x2');
g=[fx1 fx2]';
g1=subs(g);
d=-g1;
while (abs(norm(g1))>e)
t=(-d)'*d/((-d)'*Q*d);
x0=x0-t*g1;
v=x0;
a=[1 0]*x0;
b=[0 1]*x0;
x1=a;
x2=b;
g1=subs(g);
d=-g1;
end
x=v;
y=feval(f,v);

调用程序后显示
??? Error using ==> feval
Argument must contain a string or function_handle.

Error in ==> flow at 23
y=feval(f,v);
请问要怎么改?
展开
 我来答
WM_THU
2014-02-03 · TA获得超过7163个赞
知道大有可为答主
回答量:4285
采纳率:80%
帮助的人:3869万
展开全部
怎么调用的?feval要求第一个参数是函数名称或者函数句柄,而不能用符号变量表达式。
更多追问追答
追问
我想在最后输出的时候显示方程的最优解,就调用y=feval(f,v),但matlab显示错误,请问要怎么改?
追答
feval要求第一个参数是函数名称或者函数句柄,而不能用符号变量表达式。

所以不能用feval,用subs就可以了。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式