matlab程序运行后Input argument "r" is undefined 请教高手

2025-04-28 18:04:20
推荐回答(3个)
回答1:

function f=F(x,r,A,B,q)
f=r.*atan(x)+(A'*A+B)*x+q;
%%%该函数有五个输入参数,而楼主的代码里
F(xs)-F(Pc)这里输入参数才一个肯定出错。或许这里不是要调用F函数,但是与函数F同名了。

回答2:

未定义r符号,它是这样说的,而且有输入错误,我不知道你要什么样的程序,不过我建议,在最初的运行中,不要充高手,随便加分号,这样无法检测出你具体哪步出问题了。其实我也不会用Function,所以没有太多的发言权,只是建议而已

回答3:

if(mu^i*gamma0*norm(F(xs)-F(Pc))^2<=...
(2-deta)*(xs-Pc)'*(F(xs)-F(Pc)))

if(beta0*norm(F(xs)-F(Pc))^2<=0.5*(xs-Pc)'*(F(xs)-F(Pc)))
这两个语句中,函数F的输入参数缺失,添加上就可以了。