dot
语法
dot(X, Y)
或 X**Y
参数
X 和 Y 可以是标量、向量或矩阵。如果 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;
# output
3:1
x**a;
#0 |
---|
22 |
28 |
b=1 2;
shape b;
# output
2:1
b**x;
// 对于矩阵和向量之间的矩阵乘法,系统会自动转换向量的维度以便完成乘法。
#0 | #1 | #2 |
---|---|---|
5 | 11 | 17 |
x=1 2 3;
y=4 5 6;
x ** y;
# output
32
// 两个向量之间的内积。等价于 1*4 + 2*5 + 3*6
x ** 2;
# output
[2,4,6]
x=1..6$2:3
x ** 2;
# output
Use * rather than ** for scalar and matrix multiplication.
相关函数:rowDot