早教吧 育儿知识 作业答案 考试题库 百科 知识分享

matlab新人,想把矩阵中的符号变量替换为数值变量,程序运行结果不对,程序为:x=-1:0.5:1;y=x;syms t sf=[1 t s t+s];A=zeros(length(x).*length(y),4);for n=1:length(x)*length(y); for i=1:length(x); for j=1:length(y); A(n,:)=subs(

题目详情
matlab新人,想把矩阵中的符号变量替换为数值变量,程序运行结果不对,
程序为:x=-1:0.5:1;y=x;
syms t s
f=[1 t s t+s];
A=zeros(length(x).*length(y),4);
for n=1:length(x)*length(y);
for i=1:length(x);
for j=1:length(y);
A(n,:)=subs(f,{t,s},{x(i),y(j)});
end
end
end
A
目标是:矩阵A的每行元素分别为t=x(i),s=y(j)时,向量f的值,最终构造A为25*4的矩阵.但是运行结果A却是49*4的矩阵,哪里有问题呢
▼优质解答
答案和解析
我用matlab运行过你的程序,没问题,A是25*4的矩阵,可能是你运行程序时,工作空间存在其他变量,建议在程序前面添加:
clear,clc