---
source_url: https://docs.dolphindb.cn/zh/funcs/d/dot.html
fetched_at: 2026-05-19T09:19:11Z
category: funcs
title: dot
sha1: 4385f4fecf696d791053a372d01d3c79b1a777ae
---

# dot

## 语法

`dot(X, Y)` 或 `X**Y`

## 详情

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

## 参数

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

## 返回值

返回一个标量、向量或矩阵。

## 例子

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

| #0 |
| --- |
| 22 |
| 28 |

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

| #0 | #1 |
| --- | --- |
| 41 | 14 |
| 56 | 20 |

```dolphindb
y**x;
```

| #0 | #1 | #2 |
| --- | --- | --- |
| 12 | 30 | 48 |
| 9 | 23 | 37 |
| 6 | 16 | 26 |

```dolphindb
a=1 2 3;
shape a;
// output
3:1
x**a;
```

| #0 |
| --- |
| 22 |
| 28 |

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

| #0 | #1 | #2 |
| --- | --- | --- |
| 5 | 11 | 17 |

```dolphindb
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](../r/rowDot.html)
