查看: 256|回复: 1|关注: 0
打印 上一主题 下一主题

快乐扑克3最新开奖结果查询: [未答复] 利用solve函数求解方程组的解时出错

[复制链接]

新手

5 麦片

财富积分


快乐扑克3如何跟对子 www.vqxik.tw 050


1

主题

2

帖子

0

最佳答案
跳转到指定楼层
1#
发表于 2019-9-26 15:13:23 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
利用matlab求解一个方程组的时候,因为利用了符号矩阵,所以变量是这么定义的

X=sym(zeros(N)); xx=sym(zeros(1,N));
for i=1:N*(N+1)/2
  eval(['  syms x',num2str(i),';']);
  eval(['xx(i)=x',num2str(i),';']);
end
ind=find(tril(ones(N)));
X(ind)=xx;
D=diag(X);
X=X+X';
X=X-D;
X=simplify(X);

然后在求解的时候,因为变量数过多,所以仿照solve函数的调用格式,楼主用了字符串叠加的方法,把各个变量串起来,最后用eval函数去掉字符串
,格式如下:
vari='''x1''';
for i=2:N*(N+1)/2

   
    eval([' vari=[vari,'',''''x',num2str(i),'''''''];']);
   
end

新手

5 麦片

财富积分


050


1

主题

2

帖子

0

最佳答案
2#
 楼主| 发表于 2019-9-26 15:15:44 | 只看该作者
最后的solve函数调用格式如下:
eval(['fans=solve(',fequ,',',vari,',',svari,',''t'');']);
其中fequ是一个若干个方程串成的字符串,vari,svari是两个变量都是仿照上述串成的变量字符串
然后报错,显示没有无法识别楼主定义的变量,如x1
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐上一条 /3 下一条

快速回复 快乐扑克3如何跟对子 返回列表