matlab 矩阵变量赋值

matlab 矩阵变量赋值,第1张

% 以上程序设定了两个矩阵A与B,B中参数与A相关,我希望对A赋值后,可以求出B
这是错的!
应该把符号变量 赋值后,才可以求出B。或者:
col = 20;
row = 3;
A = sym(zeros(col,row)); %探测器矢量数据矩阵
order = 1;
for i = 1:col
for j = 1:row
A(i,j)=sym(['a' num2str(order)]);
order = order + 1;
end
end
B = sym(zeros(col,1)); %模矩阵
for i=1:col
B(i)=sym(['b' num2str(i)]);
end
for i=1:col
B(i)= sqrt(A(i,1)^2 + A(i,2)^2 + A(i,3)^2);
end
% 以上程序设定了两个矩阵A与B,B中参数与A相关,我希望对A赋值后,可以求出B
num=1;
for i=1:col
for j=1:row
A(i,j)=num;
num=num+1;
end
end

% 赋值后subs(A)再求B依旧显示是函数,而不是具体结果,请问怎么办?
% for j = 1:rowcol
% sym(['a' num2str(j)])=j;
% end
for i=1:col
B(i)= sqrt(A(i,1)^2 + A(i,2)^2 + A(i,3)^2);
end
% B无法显示数字
B =

14^(1/2)
77^(1/2)
194^(1/2)
365^(1/2)
590^(1/2)
869^(1/2)
1202^(1/2)
1589^(1/2)
2030^(1/2)
5101^(1/2)
3074^(1/2)
3677^(1/2)
4334^(1/2)
5045^(1/2)
5810^(1/2)
6629^(1/2)
1162^(1/2)
8429^(1/2)
9410^(1/2)
10445^(1/2)

先将右侧的矩阵赋给一个变量,然后再一一赋值给4个变量
A=inv(G'G)G'B;
delta_x=A(1);
delta_y=A(2);
delta_z=A(3);
delta_tu=A(4);


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12694520.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-27
下一篇 2023-05-27

发表评论

登录后才能评论

评论列表(0条)

保存