Skip to main content

QuantumSim 的 DQCsim 后端。

项目描述

QuantumSim 的 DQCsim 后端包装器

派皮

另请参阅:DQCsimQuantumSim

这个存储库包含一些将 DQCsim 连接到 QuantumSim 0.2.0 的胶水代码。

地位

大致支持以下内容,但未测试正确性或由知道他们在量子力学方面做什么的人审查:

  • 量子位振幅阻尼和相位阻尼可以在 DQCsim 周期中基于每个量子位使用 t1/t2 时间进行建模和配置。
  • 测量支持随机折叠状态(默认)、选择最可能的结果或折叠到预定状态。以任何一种方式报告概率。
  • 应该支持所有一个和两个量子比特门。

不支持/限制:

  • 基于门的错误建模。
  • 具有两个以上量子位的多量子位门(缺少对此的 QuantumSim API 调用)。
  • 影响多个量子位的测量门仍然一次崩溃一个状态;目前不可能获得一次折叠多个状态的完整概率矩阵,并且probable测量方法也在每个量子比特的基础上运行。

安装

您可以使用pipusingpip install dqcsim-quantumsim或等效工具进行安装。如果您使用 安装,请--user确保 Python 安装可执行文件的路径在您的系统路径中,否则 DQCsim 将无法找到该插件。查看文件安装位置的一种简单方法是运行pip uninstall dqcsim-quantumsim;它会在查询确认之前显示将要删除的文件。

从源代码构建/安装

  • 在本地“构建”wheel 文件(这是必要的,因为 DQCsim 识别插件需要可执行的 shell 脚本): python3 setup.py bdist_wheel

  • 安装刚刚构建的 wheel 文件:( pip install target/python/dist/*或等效的)

将生成的轮子释放到 PyPI 应该是安全的。在这样做之前,请确保在setup.py和 中增加版本号dqcsim_quantumsim/backend.py

用法

安装插件后,您可以通过quantumsim 在 DQCsim 命令中选择后端来使用它。

可以使用 init arb(为所有 qubits 设置默认值)或在分配 qubit 时使用 arb 来配置 qubits 的 t1/t2 时间。接口/操作对是quantumsim.error。套利应该有一个 JSON 对象附加到它的形式{"t1": <float>, "t2": <float>}

为了控制测量量子位时叠加的折叠方式,请将表单的 JSON 对象附加{"method": ...}到它,其中方法可能是以下之一:

  • "random":根据状态向量中的概率随机折叠状态。
  • "probable": 崩溃到最可能的结果。
  • 整数:整数被解码为二进制表示,测量操作中的第一个量子位映射到最低有效位。国家总是崩溃到这个结果。
  • 列表:当一次测量多个量子位时,以每个量子位为基础控制方法。该列表的长度必须与量子比特数相同。它可能是字符串方法之一,整数 0 或整数 1。

如果崩溃到预定状态的概率为 0,则模拟崩溃。所选测量结果的概率通过表单的 ArbData 中的 JSON 对象 {"probability": <float>}以及通过 ArbData 的第一个二进制字符串作为 C 双精度值与测量结果一起存储。

执照

许可证是 GPL,因为 QuantumSim 的许可证是 GPL。

项目详情


下载文件

下载适用于您平台的文件。如果您不确定要选择哪个,请了解有关安装包的更多信息。

内置分布

dqcsim_quantumsim-0.0.5-py3-none-any.whl (21.5 kB 查看哈希

已上传 py3