24小时热门版块排行榜    

查看: 2002  |  回复: 10
本帖产生 3 个 计算强帖 ,点击这里进行查看
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

niexianling

铜虫 (初入文坛)

[求助] 循环计算出的矩阵的保存

代码如下,怎样把最后得出的三组A1,B1矩阵都保存下来,因为在后续的计算中要用到这里面的三组A1,B1矩阵,在matlab中默认的是保存了最后一组得出的A1,B1值,我是想三组都能保存下来。
t1=[6;5;4;3;2;1]
t2=[1;2;3;4;5;6]      %6*1
t0=[1 2 3 4 5 6;1 1 1 1 1 1;2 2 2 2 2 2]    %3*6
A=[];B=[];
for j=1:3
     y=t2*t0(j,1:6);
     n=t1*t0(j,1:6);
A=[A,y];
B=[B,n];
end
A
B

for i=6:6:18
     A1=A(:,i-5:i)
    B1=B(:,i-5:i)
end
A1;B1;
回复此楼

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

do
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

somomo91

专家顾问 (职业作家)

【答案】应助回帖

★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★
感谢参与,应助指数 +1
niexianling: 金币+30, ★★★很有帮助 2013-06-25 16:06:38
csgt0: 金币+1, 谢谢 2013-06-25 16:13:45
fegg7502: 计算强帖+1, 3ks,, 2013-06-26 11:12:49
丫头,你的程序有点繁琐了,或者走了弯路了
在这种情况下,可以用 Matlab 的 Cell 格式 : 它可以包含其他矩阵,
下面的代码里面,就是修改后的
当你需要A1或者B1的时候,只要调用
A1{1} /  A1{2} /  A1{3}
B1{1} /  B1{2} /  B1{3}
t1=[6;5;4;3;2;1];
t2=[1;2;3;4;5;6];
t0=[1 2 3 4 5 6;1 1 1 1 1 1;2 2 2 2 2 2];
A=[];B=[];
for j=1:3
    y=t2*t0(j,1:6);
    n=t1*t0(j,1:6);
    A1{j} = y;
    B1{j} = n;
end

» 本帖已获得的红花(最新10朵)

3楼2013-06-25 15:51:43
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

somomo91

专家顾问 (职业作家)


fegg7502: 金币+1, 3ks 2013-06-26 11:13:08
你另外一个帖子里也是,没有必要走多余的路,简单点的好
4楼2013-06-25 15:52:40
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

somomo91

专家顾问 (职业作家)

【答案】应助回帖


fegg7502: 金币+1, 3ks 2013-06-26 11:13:00
fegg7502: 应助指数+1 2013-06-26 11:13:12
程序是 :
t1=[6;5;4;3;2;1];
t2=[1;2;3;4;5;6];
t0=[1 2 3 4 5 6;1 1 1 1 1 1;2 2 2 2 2 2];
A=[];B=[];
for j=1:3
     y=t2*t0(j,1:6);
     n=t1*t0(j,1:6);
     A1{j} = y;
     B1{j} = n;
end

当你需要A1或者B1的时候,只要调用
A1{1} /  A1{2} /  A1{3}
B1{1} /  B1{2} /  B1{3}
5楼2013-06-25 15:57:43
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

somomo91

专家顾问 (职业作家)

【答案】应助回帖


fegg7502: 金币+1, 应助指数+1, 3ks 2013-06-26 11:13:28
引用回帖:
6楼: Originally posted by niexianling at 2013-06-25 16:02:31
问题关键就是怎么能把这三组A1、B1保存下来,因为后面要用这三组矩阵,最好能保存在matlab里为mat格式的文件,这样调用方便,有办法吗?...

t1=[6;5;4;3;2;1];
t2=[1;2;3;4;5;6];
t0=[1 2 3 4 5 6;1 1 1 1 1 1;2 2 2 2 2 2];
A=[];B=[];
for j=1:3
    y=t2*t0(j,1:6);
    n=t1*t0(j,1:6);
    A1{j} = y;
    B1{j} = n;
end
save('data.mat', 'A1', 'B1') %% 保存数据

后面用到的时候 :
load('data.mat')
8楼2013-06-25 16:06:59
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

somomo91

专家顾问 (职业作家)

引用回帖:
7楼: Originally posted by niexianling at 2013-06-25 16:06:06
很是感谢...

呵呵,不客气,
如果你也是山西的话,那我们是老乡呢
我对MATLAB还算熟,
有问题的话,可以直接PM我,
不过有时差,未必能及时回复

» 本帖已获得的红花(最新10朵)

9楼2013-06-25 16:11:03
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 niexianling 的主题更新
信息提示
请填处理意见