Matrix 在mathematica中,将标量与矩阵乘积

Matrix 在mathematica中,将标量与矩阵乘积,matrix,wolfram-mathematica,product,scalar,Matrix,Wolfram Mathematica,Product,Scalar,我想用mathematica中的矩阵积一个标量。我的代码是: w.p+(w^3).p p是矩阵,w是标量,但乘积给出了矩阵外的标量。为什么?该运算符专门用于张量(包括向量和矩阵)乘法。只需在不使用的情况下乘法即可: w P + (w^3) P 我无法解释你的说法,即你现有的乘积产生一个标量。例如: P = {{1, 2}, {2, 3}}; w = 5; w.P 给出了结果: 5.{{1, 2}, {2, 3}}; 因为Mathematica没有定义当a是标量而b是矩阵时,Dot[a,b]

我想用mathematica中的矩阵积一个标量。我的代码是:

w.p+(w^3).p


p是矩阵,w是标量,但乘积给出了矩阵外的标量。为什么?

运算符专门用于张量(包括向量和矩阵)乘法。只需在不使用
的情况下乘法即可:

w P + (w^3) P
我无法解释你的说法,即你现有的乘积产生一个标量。例如:

P = {{1, 2}, {2, 3}};
w = 5;
w.P
给出了结果:

5.{{1, 2}, {2, 3}};

因为Mathematica没有定义当
a
是标量而
b
是矩阵时,
Dot[a,b]
的含义。(如果你愿意,你可以自己定义。)

mathematica给出了同样的结果。w是分数,如4.8634和矩阵3x3。但是当w P+(w^3)P时,w不在矩阵中,你能提供一个我可以尝试的最小完整的例子吗?w=4.81048和P=MatrixForm[{0,0,0},{0,0,0},{0,0,1}像这样。wP=4.81048矩阵变换[{0,0,0},{0,0,0},{0,0,1}],当我在mathematica中进行时。我想要矩阵变换[{0,0,0},{0,0,0},{0,0,4.81048}]
MatrixForm
不会产生矩阵,它是一个以某种方式输出矩阵的指令。删除它并尝试以下操作:
P={{0,0,0},{0,0,0},{0,0,1};w=4.81048;注意
w
P
之间的空格,看起来你的评论中没有这个空格,但这可能只是一个输入错误。非常感谢你,科迪,你的建议解决了问题:)但是它给出了这样的结果P={0,0,0,0},{0,0,0,0},{0,0,0,0},{0,0,4.81048}为什么要在矩阵的每个元素的右边加一个点。