【发布时间】:2015-02-18 03:12:44
【问题描述】:
我试图在mathematica 中将列矩阵和行矩阵相乘。但是mathematica将行矩阵作为列矩阵。所以 multipy 函数不起作用。我的代码是
`Y = Inverse[S];
Print["Y=", MatrixForm[Y]];
For[i = 1, i <= n, i++,
Subscript[P, i] = MatrixForm[S[[All, i]].Y[[i]]];
Print["CarpimS=", MatrixForm[S[[All, i]]]];
Print["CarpimY=", MatrixForm[Y[[i]]]];
Print["P=", Subscript[P, i]];
];
如果有人知道这种情况请回答
【问题讨论】:
-
对你的问题有点旁白,但你很少分配等于输出形式的东西,即做
Subscript[P, i] = S[[All, i]].Y[[i]];,然后在Print语句中需要的地方应用MatrixForm. (当然这里Dot产生一个标量,所以不需要它。)