MATLAB 量子计算快速入门指南
您可以使用 MATLAB Support Package for Quantum Computing 构建、仿真和运行量子算法。
| 单量子位门 | |||
| 对量子电路应用单量子位门。括号 () 中的数值是该门所作用的量子位索引。 | |||
| 量子电路对象 | 绘图 | 矩阵 | |
|---|---|---|---|
| 语法 | >> qc=quantumCircuit(xGate(1)) |
|
>> getMatrix(qc) |
| 输出 |
|
|
|
| 单量子位门 | 描述 |
|---|---|
|
xGate = 对量子位 1 绕 x 轴旋转 π |
|
yGate = 对量子位 1 绕 y 轴旋转 π |
|
zGate = 对量子位 1 绕 z 轴旋转 π |
|
sGate = 绕 z 轴正方向旋转 π/2 |
|
tGate = 绕 z 轴正方向旋转 π/4 |
|
tiGate = 绕 z 轴负方向旋转 π/4 |
|
hGate = 哈达玛门 |
|
idGate = 单位门(不执行任何操作) |
旋转门是接受两个参量的单量子位门。第一个参量是该门所作用的量子位索引,第二个参量是以弧度为单位的旋转角度或相位 (θ)
参数化单量子位门 |
描述 |
|
rxGate = x 轴旋转门 |
|
ryGate = y 轴旋转门 |
|
rzGate = z 轴旋转门 |
|
r1Gate = 带全局相位的 z 轴旋转门 |
带一个控制量子位的门
对量子电路应用带一个控制量子位的门。这些门在括号 () 中有两个参量;第一个是控制量子位,第二个是目标量子位。如果控制量子位处于 |0> 态,则该门不执行任何操作。如果控制量子位处于 |1> 态,则指定的门作用于目标量子位。>> cxGate(control,target)
量子位索引 1:控制量子位
量子位索引 2:目标量子位
受控旋转门是接受三个参量的双量子位门。第一个参量是控制量子位,第二个参量是目标量子位,第三个参量是以弧度为单位的旋转角度或相位 (θ)。
双量子位门 |
描述 |
|
cxGate 或 cnotGate = 如果量子位 1 处于 |1> 态,则对量子位 2 绕 x 轴旋转 π |
|
cyGate = 如果量子位 1 处于 |1> 态,则对量子位 2 绕 y 轴旋转 π |
|
czGate = 如果量子位 1 处于 |1> 态,则对量子位 2 绕 z 轴旋转 π |
|
chGate = 受控哈达玛门 |
参数化双量子位门 |
描述 |
|
crxGate = 受控 X 轴旋转门 |
|
cryGate = 受控 y 轴旋转门 |
|
crzGate = 受控 z 轴旋转门 |
|
cr1Gate = 带全局相位的受控 z 轴旋转门 |
特殊门
门 |
描述 |
compositeGate (qc, [1,2]) |
从内部量子电路构造复合门,并返回 CompositeGate 对象。qc 是示例中的内部量子电路。 |
|
双受控 X 门(CCNOT 或 Toffoli 门) |
mcxGate(1:3,4,5) |
多受控 X 门 第一个参量是三个控制量子位(1、2、3),第二个参量是一个目标量子位 (4),第三个参量是一个辅助量子位 (5)。该门基于控制量子位的状态对单个目标量子位进行操作,辅助量子位的数量确定简单门的数量 |
|
量子傅里叶变换 (QFT) 门 |
在以下门中,除 swapGate (接受两个参量)以外,第一个和第二个参量是量子位索引,第三个参量是相位 (θ)。对于以下所有门,交换两个目标量子位不会更改门的操作。
门 |
描述 |
|
Ising XX 耦合门 |
|
Ising YY 耦合门 |
|
Ising ZZ 耦合门 |
|
交换量子位的值。 |
| 量子电路操作 | ||
操作 |
示例 |
输出 |
|
|
|
|
|
|
getMatrix = 量子电路或门的矩阵表示 |
>> getMatrix(bell) |
|
generateQASM = 生成 QASM 代码 |
>> generateQASM(bell) |
|
simulate(circuit, inputState), 对电路进行仿真并指定电路的初始量子状态,返回 QuantumState 对象 |
>> simulate(bell) |
|
unpack = 展开量子电路内部的复合门 |
|
|
仿真的量子电路操作 |
||
操作 |
示例 |
输出 |
初始化电路的量子状态,其中量子位 1(电路图中的顶部量子位)设置为 |1>,第二个设置为 |0> |
S=simulate(bell,"10") |
|
显示输出基态及其振幅 |
|
|
显示电路的最终状态,例如用于表示每个量子位的基 |
|
|
显示可能的状态以及测量到每个状态的概率 |
|
states = "00" P= |
| 以任意次数对电路的量子状态进行随机采样 |
|
|
函数 |
描述 |
|
连接到 Amazon Braket 设备,指定设备名称、区域和要存储结果的 S3 存储桶路径 |
|
连接到 IBM 量子设备,指定设备名称和帐户凭据 |
|
获取关于该设备的其他信息 |
|
创建一个任务以在设备上运行该电路 |
|
检查任务的状态 |
|
检索电路运行的结果 |
|
>> plot(qftGate(1:3))
|
|
| >> GitHub 上的示例 | ||