找回密码
 注册
关于网站域名变更的通知
查看: 502|回复: 5
打印 上一主题 下一主题

MATLAB如何把两个变量储存到一个2×1的矩阵并迭代

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2020-12-17 13:34 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x
例如:for n= 1:100' C: H7 E- c4 x: y2 U) t
        i(1)=0;
0 [8 C$ z$ E; J/ n9 i        u(1)=0;1 l& a7 {, E" B
       a=[1,2;3,4];5 P" c9 h. h% I
现在我想把i(n)和u(n)都储存到2×1的矩阵X(n)里,第一行为i(n),第二行为u(n),并用迭代公式:X(n+1)=a*X(n),并把每一次循环的X(n)都保存下来,请问各位大牛们应该如何设定?
5 V9 W9 ]) y$ y如果令X(n)=[i(n);u(n)]会报错,X{n}=[i(n);u(n)]就会生成1×1的cell了。先谢谢各位大牛了9 A4 T( f) E. o" z

该用户从未签到

2#
发表于 2020-12-17 14:37 | 只看该作者
菜鸟经过,帮顶了哈

该用户从未签到

3#
发表于 2020-12-17 14:38 | 只看该作者
找一下看有没有相应的函数

该用户从未签到

4#
发表于 2020-12-17 14:44 | 只看该作者
lz可以先在循环外初始化X=zeros(2,n)然后循环内X(:,n)=[i(n),u(n)]这样应该没问题了。

点评

非常感谢您!但是我想问一下zeros后面的size不是只能用数值吗?如果在循环外我用X=zeros(2,n)就会报错。 然后就是我想问一下循环内迭代X(n+1)=a*X(n)这种情况是应该要运用什么语句呢?我用X(:,n+1)=a*X以及X(:,  详情 回复 发表于 2020-12-17 14:56

该用户从未签到

5#
 楼主| 发表于 2020-12-17 14:56 | 只看该作者
uperrua 发表于 2020-12-17 14:442 ]7 B  _- C' `" b. R* x
lz可以先在循环外初始化X=zeros(2,n)然后循环内X(:,n)=这样应该没问题了。

9 b: \- S. M8 c1 O( U; ?& `7 X非常感谢您!但是我想问一下zeros后面的size不是只能用数值吗?如果在循环外我用X=zeros(2,n)就会报错。
: Z* Y1 H% c) v, ]4 Z然后就是我想问一下循环内迭代X(n+1)=a*X(n)这种情况是应该要运用什么语句呢?我用X(:,n+1)=a*X以及X(:,n+1)=a*X(:,n)都会报错 索引超出数组范围。! ~' ^3 `' m* v& g1 e! K

点评

不用初始化也行,我给你举个例子 for i = 1:3 X(:,i)=randn(2,1); X(:,i+1)=2*X(:,i); end 但是LZ要注意更新i+1和i列的关系。  详情 回复 发表于 2020-12-17 14:57

该用户从未签到

6#
发表于 2020-12-17 14:57 | 只看该作者
happyday 发表于 2020-12-17 14:56
, P# O! n4 `: C0 q2 c( [非常感谢您!但是我想问一下zeros后面的size不是只能用数值吗?如果在循环外我用X=zeros(2,n)就会报错。, ~" H4 }; j4 v9 E
...
& W6 x& Q% d0 {# T4 i" [! J3 [3 k
不用初始化也行,我给你举个例子' }" O' k1 Q- c4 ?9 p8 ]
for i = 1:3
, L1 N  v: b# g  ]6 IX(:,i)=randn(2,1);. w. V/ l- S9 G! I
X(:,i+1)=2*X(:,i);
! ~  C, E. a, U4 K) M$ i/ Nend
/ H* l& \. Y1 q+ r但是LZ要注意更新i+1和i列的关系。: v  o9 B* J. f  f* B: _# M' r
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-11-1 02:12 , Processed in 0.156250 second(s), 28 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

快速回复 返回顶部 返回列表