捌拾- 量子态层析 以及 布洛赫球 (1)

1. 奥卡姆剃刀

在上一篇学习文章中 柒拾玖- 贝尔不等式 ,我感觉,为啥这么量子计算的门槛那么高呢?

结果我打开了上级目录,发现,原来他是按首字母排序...

经过一系列查看,我挑了一个最简单的

量子态层析

这里能更简单的说明量子比特到底测量出来的本质是什么,而且它物理性在量子计算上的体现。

但!!这里有一个大坑!!!

我在网上下的最新的 pyquafu 是 0.4.6,但这个教程是用 0.3.5 演示的!!!有些演示用的函数都没了!!!

2. 布洛赫球

首先,我先撇开物理性质去理解,单独理解数学层面的解释

先从单个粒子来看,它从3个维度构成,分别是 X、Y、Z

他们三个以及一个单位 I 可以够成一个粒子的密度函数,详细数学描述如下图

我个人觉得可以先忘记上面的东西,反正得知,X、Y、Z 可以作为一个三维的矢量,可以得到一个球

而关于这个球的详细描述,可以参看 布洛赫球 (Bloch Sphere)

3. 测量到底是基于什么?

这个就很扯淡,首先我们得说一下到底 pyquafu 到底是测的什么

或者说所有量子计算 都是基于这个逻辑去进行测量的?

首先,我们看到所有的教程均有一个函数叫 calculate_obs ,它允许直接对已经完成量子计算并进行测量的量子比特得到一个数学期望值。

但,我基于 0.4.6 的 quafu 居然就没了这个函数!?!?

却直接给出了一个密度函数,于是我上网搜,到底怎么计算?

得到一个结果

um...

好,我知道了,不过问题是,我到底是用什么算符!?我是一个小白!!!!

于是我不断做实验,不断看文档,我看到教程里面有一段代码:

python 复制代码
def create_circuit(theta, phi, base="Z"):
    # 创建量子态:|ψ> = cos(θ/2)|0> + exp(i*φ)*sin(θ/2)|1>
    qc = QuantumCircuit(1)
    qc.ry(0,theta)
    qc.rz(0,phi)
    # 旋转测量基
    if base == "X":
        qc.ry(0, -pi/2)  # 用X的本征态为测量基
    elif base == "Y":
        qc.rx(0, pi/2)   # 用Y的本征态为测量基
    elif base == "Z":
        pass
    qc.measure([0])
    return qc

凭啥我测 X 轴、Y 轴 的时候需要旋转,Z轴就不需要旋转!?

有没有可能,我们测的,只是 Z 轴?

于是,我首先参考教程,写了一段测量算符的代码来代替 calculate_obs 函数

python 复制代码
# 引入包
from quafu import QuantumCircuit,Task,simulate
import numpy as np
import matplotlib.pyplot as plt
from numpy import pi

# 定义 Pauli Z 矩阵
sigma_Z = np.array([[1, 0], [0, -1]])


def create_circuit(theta, phi, base="Z"):
    # 创建量子态:|ψ> = cos(θ/2)|0> + exp(i*φ)*sin(θ/2)|1>
    qc = QuantumCircuit(1)
    qc.ry(0,theta)
    qc.rz(0,phi)
    # 旋转测量基
    if base == "X":
        qc.ry(0, -pi/2)  # 用X的本征态为测量基
    elif base == "Y":
        qc.rx(0, pi/2)   # 用Y的本征态为测量基
    elif base == "Z":
        pass
    qc.measure([0])
    return qc

for strD in ['X','Y','Z']:
    # 得出单量子
    q=create_circuit(theta=2*pi/3, phi=pi/4,base=strD)
    # 模拟运行
    sim_res = simulate(q)
    # 计算密度函数
    sim_rho = sim_res.calc_density_matrix()
    # 计算期望值
    # 先点成 密度函数 · 泡利 Z 矩阵
    # 再求迹
    expectation_value = np.trace(np.dot(sim_rho, sigma_Z)).real
    print( strD + " 期望值为:" + str(expectation_value))

# 且计算当 Z 轴测量时 ( 即不旋转测量子比特 )
# 得出单量子
q=create_circuit(theta=2*pi/3, phi=pi/4)
# 模拟运行
sim_res = simulate(q)
# 计算密度函数
sim_rho = sim_res.calc_density_matrix()
print(sim_rho)

得出一样的结果

我悟了!!!

4. 那多比特呢!?

那就非常复杂了,得看张量积...

那又是啥...

我得回家吃饭了

下次再说

相关推荐
workflower1 天前
以光量子为例,详解量子获取方式
数据仓库·人工智能·软件工程·需求分析·量子计算·软件需求
workflower2 天前
量子比特实现方式
数据仓库·服务发现·需求分析·量子计算·软件需求
QBoson2 天前
量子计算+AI:特征选择与神经网络优化创新应用
人工智能·神经网络·量子计算·图像分类·特征选择·“五岳杯”量子计算挑战赛·相干光量子计算机
山登绝顶我为峰 3(^v^)32 天前
Qiskit:量子计算模拟器
量子计算
风铃儿~2 天前
浅谈量子计算:从实验室突破到产业落地的中国实践
量子计算
德思特2 天前
应用分享 | 精准生成和时序控制!AWG在确定性三量子比特纠缠光子源中的应用
量子计算·任意波形发生器·awg·量子比特纠缠
Blossom.1183 天前
量子通信:从科幻走向现实的未来通信技术
人工智能·深度学习·目标检测·机器学习·计算机视觉·语音识别·量子计算
张较瘦_3 天前
[论文阅读] 软件工程 | 量子计算如何赋能软件工程(Quantum-Based Software Engineering)
论文阅读·软件工程·量子计算
国际云,接待10 天前
微软云如何申请使用
服务器·云原生·架构·微软·云计算·量子计算
Thanks_ks14 天前
量子计算:开启未来计算新纪元的革命性技术
量子计算·量子纠缠·未来展望·量子算法·技术挑战·量子叠加·应用前景