dot

语法

dot(X, Y) 或 X**Y

参数

XY 可以是标量、向量或矩阵。如果 X 和 Y 都是向量,他们必须具有相同的长度。如果 X或Y的其中一个是矩阵,另一个必须是维度满足矩阵乘法规则的向量或矩阵。

详情

返回 X 和 Y 的矩阵乘法。如果 X 和 Y 是具有相同长度的向量,返回它们的内积。

例子

$ x=1..6$2:3;
$ y=1 2 3;
$ x dot y;

#0

22

28

$ x=1..6$2:3;
$ y=6..1$3:2;
$ x**y;

#0

#1

41

14

56

20

$ y**x;

#0

#1

#2

12

30

48

9

23

37

6

16

26

$ a=1 2 3;
$ shape a;
3:1
$ x**a;

#0

22

28

$ b=1 2;
$ shape b;
2:1
$ b**x;
// 对于矩阵和向量之间的矩阵乘法,系统会自动转换向量的维度以便完成乘法。

#0

#1

#2

5

11

17

$ x=1 2 3;
$ y=4 5 6;
$ x ** y;
32
// 两个向量之间的内积。等价于 1*4 + 2*5 + 3*6

$ x ** 2;
[2,4,6]

$ x=1..6$2:3
$ x ** 2;
Use * rather than ** for scalar and matrix multiplication.