Matlab 如何在循环中定义变化的矩阵名
来源:学生作业帮 编辑:大师作文网作业帮 分类:综合作业 时间:2024/11/10 20:52:17
Matlab 如何在循环中定义变化的矩阵名
程序如下,我希望在每一次循环中定义矩阵epsilon_1至epsilon_10,以及Nmet_1到Nmet_10.请问如何修改红色部分?这里的epsilon和Nmet是矩阵,如果用eval(['epsilon_',num2str(nn)])定义,后面的赋值该如何表示呢?
for nn=1:10
...
epsilon=zeros(ep,5);
for i=1:ep
epsilon(i,1:2)=xe(i,1:2);
epsilon(i,3:4)=ye(i,1:2);
epsilon(i,5)=xe(i,3);
end
Nmet=zeros(mp,4);
for i=1:mp
Nmet(i,1:2)=xm(i,1:2);
Nmet(i,3:4)=ym(i,1:2);
end
end
程序如下,我希望在每一次循环中定义矩阵epsilon_1至epsilon_10,以及Nmet_1到Nmet_10.请问如何修改红色部分?这里的epsilon和Nmet是矩阵,如果用eval(['epsilon_',num2str(nn)])定义,后面的赋值该如何表示呢?
for nn=1:10
...
epsilon=zeros(ep,5);
for i=1:ep
epsilon(i,1:2)=xe(i,1:2);
epsilon(i,3:4)=ye(i,1:2);
epsilon(i,5)=xe(i,3);
end
Nmet=zeros(mp,4);
for i=1:mp
Nmet(i,1:2)=xm(i,1:2);
Nmet(i,3:4)=ym(i,1:2);
end
end
for i = 1 :ep结束后:
eval( [ 'epsilon_',num2str( nn ),' = epsilon' ] );
for i = 1 :mp结束后:
eval( [ 'Nmet_',num2str( nn ),' = Nmet' ] );
eval会把字符串当做一句代码去执行,内存中就有了epsilon_1、2、3.等变量了.
eval( [ 'epsilon_',num2str( nn ),' = epsilon' ] );
for i = 1 :mp结束后:
eval( [ 'Nmet_',num2str( nn ),' = Nmet' ] );
eval会把字符串当做一句代码去执行,内存中就有了epsilon_1、2、3.等变量了.