学习日志33

本源量子-pyQpanda

量子比特门

①单量子比特无角度

bash 复制代码
        不含角度的门,以H门为例,它的统一获得方式为:

h = H(qubits[0])

参数为目标比特,返回值为量子逻辑门。类似的,把H可以换成I(单位矩阵)、X(X门)、Y(Y门)、Z(Z门)、T(T门)、S(S门)等等。

②单量子比特有角度

bash 复制代码
        单门带有一个旋转角的门,如RX门:

rx=RX(qubits[0],np.pi/3) #import numpy as np

        第一个参数为目标比特,第二个参数为旋转角度,返回值为量子逻辑门。类似的还有RY、RZ以及U1。

③多量子比特无角度

bash 复制代码
         两比特量子逻辑门与单比特量子逻辑门相似,需要传入比特。以CNOT门为例:

cnot=CNOT(qubits[0],qubits[1])

        其中第一个参数为控制比特,第二个参数为目标比特。且两个比特不能相同。类似的还有CZ、SWAP、iSWAP以及sqiSWAP。

        同理,对Toffoli门,前两个参数为控制比特,第三个为目标比特:

toffoli = Toffoli(qubits[0], qubits[1], qubits[2])

④多量子比特有角度

c 复制代码
     我们以CR为例:

  
cr = CR(qubits[0], qubits[1], np.pi) #import numpy as np

参考来源:https://blog.csdn.net/m0_69299019/article/details/128691308

QCircuit

量子线路,也称量子逻辑电路是最常用的通用量子计算模型,表示在抽象概念下,对于量子比特进行操作的线路。组成包括了量子比特、以及各种逻辑门,最后常需要量子测量将结果读取出来。当然了最重要的一点我觉得还是时间线。在不同的时间完成相同的事情,效果往往有很大的差别,这一点大家应该都能理解,毕竟先做饭才能后吃饭,要是先吃饭后做饭,我想到了一种可能性:这人在减肥,先喝了一顿西北风,然后做饭当成宠物饲料。

不同于传统电路是用金属线所连接以传递电压讯号或电流讯号,在量子线路中,线路是由时间所连接,亦即量子比特的状态随着时间自然演化,过程中是按照哈密顿运算符的指示,一直到遇上逻辑门而被操作。

bash 复制代码
       它的代码初始化方式为:

circuit = QCircuit()

        大家可以通过如下方式向QCircuit尾部填充节点,pyqpanda重载了 << 运算符作为插入量子线路的方法。例如:

     
        circuit << H(qubits[0]) \
                << CNOT(qubits[0], qubits[1])

2、QProg

QProg是量子编程的一个容器类,是一个量子程序的最高单位。它可以完全代替QCircuit放入各种各样的量子门。初始化一个QProg对象有以下两种:

c 复制代码
      

    prog = QProg()
     
    #或者
    prog = create_empty_qprog()

        而最后对量子线路进行测量操作的代码如下:

prog << circuit << Measure(qubits[0], cbits[0])

        对程序运行多少次得出结果的代码如下:

    #以1000次为例 
    result = qvm.run_with_configuration(prog, cbits, 1000)
    print(result)
相关推荐
Mephisto.java23 分钟前
【大数据学习 | kafka高级部分】kafka中的选举机制
大数据·学习·kafka
南宫生1 小时前
贪心算法习题其三【力扣】【算法学习day.20】
java·数据结构·学习·算法·leetcode·贪心算法
武子康2 小时前
大数据-212 数据挖掘 机器学习理论 - 无监督学习算法 KMeans 基本原理 簇内误差平方和
大数据·人工智能·学习·算法·机器学习·数据挖掘
使者大牙2 小时前
【大语言模型学习笔记】第一篇:LLM大规模语言模型介绍
笔记·学习·语言模型
As977_2 小时前
前端学习Day12 CSS盒子的定位(相对定位篇“附练习”)
前端·css·学习
ajsbxi3 小时前
苍穹外卖学习记录
java·笔记·后端·学习·nginx·spring·servlet
Rattenking3 小时前
React 源码学习01 ---- React.Children.map 的实现与应用
javascript·学习·react.js
dsywws3 小时前
Linux学习笔记之时间日期和查找和解压缩指令
linux·笔记·学习
道法自然04023 小时前
Ethernet 系列(8)-- 基础学习::ARP
网络·学习·智能路由器
爱吃生蚝的于勒3 小时前
深入学习指针(5)!!!!!!!!!!!!!!!
c语言·开发语言·数据结构·学习·计算机网络·算法