在 Matlab
中,我输入了以下命令:
>> a = [1 2; 3 4]
a =
1 2
3 4
当我尝试命令 a^2
时,我得到以下信息:
>> a^2
ans =
7 10
15 22
我实际上期望得到:
ans =
1 4
9 16
换句话说,我期望矩阵的每个元素都增加到 2。
为什么会出现如上图的结果?
谢谢。
最佳答案
在 MATLAB 中,所有单字符运算符都是矩阵运算符。因此,您正在使用矩阵 幂,例如,
a^2 == a*a
如果你想对每个元素求平方,你必须使用element-wise幂运算符:
>> a.^2
ans =
1 4
9 16
阅读更多关于 MATLAB 运算符的信息 here .
关于Matlab - 矩阵的 2 次方,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14497839/