matlab 中如何计算Ax(i+1)=Bx(i)+Cx(i) ,其中A B C为常数矩阵,x(i)为已知矩阵,求x(i+1)的矩阵.例如A B为6x6的任意常数矩阵,C为1x6的矩阵,x(i)中已知3个值,求x(i+1)的值.是我之前的计算错了。公式中的Cx(i)就是个常数矩阵,我已经知道了如何写了。现在的问题是我求出的x(i)矩阵得出的数是1.0e+005 *2.22261.19200.73370.00000.00000.0000由于x(i)的值中有的很大有的很小,所以无法显示。是不是应该把x(i)中的数给重新设个字母分开表示就可以了?还有就是所求的数是小数点后6位在matlab无法看到,怎么保留小数点后6位?

问题描述:

matlab 中如何计算Ax(i+1)=Bx(i)+Cx(i) ,其中A B C为常数矩阵,x(i)为已知矩阵,求x(i+1)的矩阵.
例如A B为6x6的任意常数矩阵,C为1x6的矩阵,x(i)中已知3个值,求x(i+1)的值.
是我之前的计算错了。公式中的Cx(i)就是个常数矩阵,我已经知道了如何写了。现在的问题是我求出的x(i)矩阵得出的数是
1.0e+005 *
2.2226
1.1920
0.7337
0.0000
0.0000
0.0000
由于x(i)的值中有的很大有的很小,所以无法显示。是不是应该把x(i)中的数给重新设个字母分开表示就可以了?还有就是所求的数是小数点后6位在matlab无法看到,怎么保留小数点后6位?

for i=1:6
x(i+1)=(Bx(i)+Cx(i))/A
end

题目有没有写错?假设x是6xn矩阵,则Bx(i)为6xn矩阵,cx(i)为1xn矩阵.
两个矩阵怎么可以加起来呢?
是这样..
你可以用 format命令.
形式为 【format 格式符】
适合你的格式符是 long e
具体的你自己可以看 help!