作业帮 > 综合 > 作业

Matlab错误求改.急

来源:学生作业帮 编辑:作业帮 分类:综合作业 时间:2024/05/14 17:59:24
Matlab错误求改.急
syms x1 x2 x3 x4 x5;
e=0.001;
c=[5;4;3;2;1]
Q=[5 4 3 2 1;4 4 3 2 1;3 3 3 2 1;2 2 2 2 1;1 1 1 1 1];
x=[x1;x2;x3;x4;x5]
f=c'*x+0.5*x'*Q*x
tidu=[diff(f,x1);diff(f,x2);diff(f,x3);diff(f,x4);diff(f,x5)]
x1=0;x2=0;x3=0;x4=0;x5=0;
flag=1;k=0;
tiduzhi=subs(tidu);
k=k+1;
t=0;
for(i=1:5)
t=t+tiduzhi(i)^2;
end
if (t>0)
flag=0;
xstar=subs(x)
end
报错?Function 'gt' is not defined for values of class 'sym'.
Error in ==> gt at 18
[varargout{1:nargout}] = builtin('gt',varargin{:});
明明我t算出来是数值呀.为啥不能比大小
matlab2013b 运行正常.
但是t的确是sym变量而不是数值.
再问: 能给个QQ么。。。我把代码发过去你帮我运行看看。。。我这各种出错。。。
再答: tiduzhi = double(subs(tidu)); % 这句这么改,就是数值类型了
再问: 后面的又出问题了。。。我又开了一个问题你能看看么。。这边字数太多打不进去
再答: 在答了。先采纳这个。