学习日志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)
相关推荐
小虎鲸scratch16 分钟前
Scratch游戏-史诗忍者7免费下载
学习·游戏·青少年编程
邻家小宝38 分钟前
JAVA学习笔记02-integer
java·笔记·学习
Zorione1 小时前
机器学习评估指标-学习篇
人工智能·学习·机器学习
EterNity_TiMe_2 小时前
【Linux进程】Linux Shell编程实战:构建简易脚本示例与技巧详解
linux·运维·服务器·学习·centos·bash
JT灬新一3 小时前
ARM驱动学习之5 LEDS驱动
arm开发·单片机·学习
·云扬·3 小时前
Spring6学习笔记4:事务
笔记·学习·spring
limengshi1383923 小时前
通信工程学习:什么是SNI业务节点接口
网络·网络协议·学习·信息与通信
kkkkk0211064 小时前
24.9.16学习笔记
笔记·学习
VaporGas4 小时前
Servlet入门学习笔记-Servlet技术
笔记·学习·servlet
热爱编程的OP4 小时前
图论篇--代码随想录算法训练营第六十一天打卡| Floyd 算法,A*算法
数据结构·c++·学习·算法·图论