|
22 | 22 | "metadata": {},
|
23 | 23 | "source": [
|
24 | 24 | "`tensorcircuit.quantum.QuOperator`, `tensorcircuit.quantum.QuVector` 和 `tensorcircuit.quantum.QuAdjointVector` 是从 TensorNetwork 包中采用的类。\n",
|
25 |
| - "当与其他成分交互时,它们的行为类似于矩阵/向量(列或行),而内部结构由张量网络维护以提高效率和紧凑性。\n", |
| 25 | + "当与其他组件交互时,它们的行为类似于矩阵/向量(列或行),而内部结构由张量网络维护以提高效率和紧凑性。\n", |
26 | 26 | "\n",
|
27 | 27 | "QuOperator/QuVector 的典型张量网络结构对应于矩阵乘积运算符 (MPO) / 矩阵乘积状态 (MPS)。前者将矩阵表示为:\n",
|
28 | 28 | "$M_{i1,i2,...in; \\; j1, j2,... jn}=\\prod_k {T_k}^{i_k, j_k}$,\n",
|
|
430 | 430 | "另外,请注意 ``^`` 如何被重载为 ``tn.connect`` 以连接 TensorNetwork 中不同节点之间的边。\n",
|
431 | 431 | "并且索引节点给出了节点的边,例如,``n1[0]`` 表示节点 ``n1`` 的第一条边。\n",
|
432 | 432 | "\n",
|
433 |
| - "定义 ``QuOperator`` 的惯例是首先给出 ``out_edges``(矩阵的左索引或行索引),然后给出 ``in_edges``(矩阵的右索引或列索引)。\n", |
| 433 | + "定义 ``QuOperator`` 的约定是首先给出 ``out_edges``(矩阵的左索引或行索引),然后给出 ``in_edges``(矩阵的右索引或列索引)。\n", |
434 | 434 | "边列表包含来自 TensorNetwork 库的边对象。\n",
|
435 | 435 | "\n",
|
436 | 436 | "这种 QuOperator/QuVector 抽象支持各种只能在矩阵/向量上进行的计算,例如 matmul (``@``)、伴随 (``.adjoint()``)、标量乘法 (``*``)、\n",
|
|
451 | 451 | "id": "c951ee01",
|
452 | 452 | "metadata": {},
|
453 | 453 | "source": [
|
454 |
| - "## QuVector 作为电路的输入状态\n", |
| 454 | + "## QuVector 作为电路的输入量子态\n", |
455 | 455 | "\n",
|
456 |
| - "由于 QuVector 表现得像一个具有更紧凑表示的实向量,我们可以以 QuVector 的形式而不是普通的 numpy 数组向量来提供电路输入状态。" |
| 456 | + "由于 QuVector 表现得像一个具有更紧凑表示的向量,我们可以以 QuVector 的形式而不是普通的 numpy 数组向量来提供电路输入状态。" |
457 | 457 | ]
|
458 | 458 | },
|
459 | 459 | {
|
|
488 | 488 | "id": "5ccb0dbb",
|
489 | 489 | "metadata": {},
|
490 | 490 | "source": [
|
491 |
| - "## QuVector 作为电路的输出状态\n", |
| 491 | + "## QuVector 作为电路的输出量子态\n", |
492 | 492 | "\n",
|
493 | 493 | "电路的张量网络表示可以看作是一个 ``QuVector``,即我们可以在真正收缩之前将电路作为一个向量来操作。这也是我们在内部进行电路组合的方式。"
|
494 | 494 | ]
|
|
627 | 627 | }
|
628 | 628 | ],
|
629 | 629 | "source": [
|
630 |
| - "# 电路构成示例\n", |
| 630 | + "# 电路组合示例\n", |
631 | 631 | "\n",
|
632 | 632 | "n = 3\n",
|
633 | 633 | "c1 = tc.Circuit(n)\n",
|
|
698 | 698 | "source": [
|
699 | 699 | "## QuOperator 作为要在电路上评估的算子\n",
|
700 | 700 | "\n",
|
701 |
| - "对电路的输出状态进行评估的矩阵也可以用 QuOperator 来表示,这对于一些格模型哈密顿量来说是非常强大和高效的。" |
| 701 | + "对电路的输出状态进行评估的矩阵也可以用 QuOperator 来表示,这对于一些格点模型哈密顿量来说是非常强大和高效的。" |
702 | 702 | ]
|
703 | 703 | },
|
704 | 704 | {
|
|
824 | 824 | }
|
825 | 825 | ],
|
826 | 826 | "source": [
|
827 |
| - "# 一般的 mpo 门 API 只是 ``Circuit.mpo()``\n", |
| 827 | + "# 一般的 mpo 门 API 是 ``Circuit.mpo()``\n", |
828 | 828 | "\n",
|
829 | 829 | "x0, x1 = tc.gates.Gate(np.ones([2, 2, 3]), name=\"x0\"), tc.gates.Gate(\n",
|
830 | 830 | " np.ones([2, 2, 3]), name=\"x1\"\n",
|
|
0 commit comments