Qiskit Metal | 用于量子设备设计和分析
项目描述
Qiskit Metal
Qiskit Metal是一个开源框架,使工程师和科学家能够轻松设计超导量子设备。
安装
如果您想自定义您的体验,或者如果您无法使用下面的pip install
说明安装qiskit-metal,请考虑直接安装源代码,按照文档和/或开发者安装说明进行。
对于常规使用,请继续阅读。
Qiskit Metal部署包
您可以通过pip工具(一个Python包管理器)安装Qiskit Metal。
pip install qiskit-metal
PIP将自动处理大多数依赖项,并且您将始终安装最新(并且经过良好测试)的版本。
一些依赖项,即pyside2和geopandas,可能需要手动安装,具体取决于您的系统兼容性。如果您遇到安装或执行错误,请首先参考常见问题解答。
我们建议在conda环境或venv中安装qiskit-metal,以防止与现有包版本冲突。
Jupyter Notebook
目前,我们建议使用Jupyter notebook/lab来访问所有Qiskit Metal功能。Jupyter不是默认依赖项,以适应那些希望使用集中式或定制安装的用户。
如果您需要进行全新安装,请参考anaconda.org或jupyter.org。
除非您在当前环境中安装了整个jupyter
包,否则请务必创建适当的内核,以便将环境(从而是qiskit-metal)提供给jupyter(详见常见问题解答)
在Qiskit Metal中创建您的第一个量子组件
现在Qiskit Metal已安装,是时候开始使用它了。我们准备尝试一个量子芯片示例,该示例使用Qiskit MetalGUI元素在本地进行模拟。这是一个简单的示例,它创建一个量子比特。
$ python
>>> from qiskit_metal import designs, draw, MetalGUI, Dict, open_docs
>>> design = designs.DesignPlanar()
>>> design.overwrite_enabled = True
>>> design.chips.main
>>> design.chips.main.size.size_x = '11mm'
>>> design.chips.main.size.size_y = '9mm'
>>> gui = MetalGUI(design)
启动Qiskit Metal GUI,以交互式查看、编辑和模拟QDesign
>>> gui = MetalGUI(design)
让我们通过创建这个类的对象来创建一个新的量子比特(一个超导量子比特)。
>>> from qiskit_metal.qlibrary.qubits.transmon_pocket import TransmonPocket
>>> q1 = TransmonPocket(design, 'Q1', options=dict(connection_pads=dict(a=dict())))
>>> gui.rebuild()
>>> gui.edit_component('Q1')
>>> gui.autoscale()
更改选项。
>>> q1.options.pos_x = '0.5 mm'
>>> q1.options.pos_y = '0.25 mm'
>>> q1.options.pad_height = '90um'
>>> q1.options.pad_width = '455um'
>>> q1.options.pad_gap = '30 um'
更改选项后,更新组件几何形状。
>>> gui.rebuild()
获取QDesign中所有量子组件的列表,然后对其进行缩放。
>>> all_component_names = design.components.keys()
>>> gui.zoom_on_components(all_component_names)
关闭Qiskit Metal GUI。
>>> gui.main_window.close()
有关Qiskit Metal的概述,请参阅此处提供的脚本。
社区和支持
观看录制的教程
流媒体也将在此处录制并可供离线查看。
参加现场教程和讨论
截至2021年6月,我们提供现场教程和问答。请报名参加即将到来的会议。流媒体也将录制并供离线查看。有关日程安排的更多详细信息,请参阅此处,并使用Slack频道向我们提供反馈,并请求您最相关的相关内容。
获取帮助:Slack
使用Slack频道。加入qiskit slack,然后加入#metal
频道以与开发人员和其他参与者沟通。您还可以使用此频道查询合作事宜。
贡献指南
如果您想为Qiskit Metal做出贡献,请参阅我们的贡献指南。此项目遵守Qiskit的行为准则。通过参与,您应遵守此准则。我们使用GitHub issues来跟踪请求和错误。请加入Qiskit Slack社区并使用我们的Qiskit Slack频道进行讨论和简单问题。对于更适合论坛的问题,我们在Stack Exchange中使用Qiskit标签。
下一步
现在您已设置好,可以查看我们Qiskit Metal教程存储库或Qiskit Metal文档中的其他示例。
作者和引用
Qiskit Metal是由许多在不同层面上对项目做出贡献的人共同打造的。Metal由IBM的Zlatko Minev(点击访问)构想并开发,随后由Thomas McConkey共同领导。如果您使用Qiskit Metal,请按照包含的BibTeX文件进行引用。有关图标归属,请参阅此处。
变更日志和发行说明
变更日志提供了给定版本中显著变化的快速概述。
特定版本的变更日志可以在对应的GitHub发行页面找到。例如,您可以在此处找到0.0.4
版本的变更日志。
所有版本的变更日志都可以在发行页面找到:[Releases](https://github.com/Qiskit/qiskit-metal/releases)
此外,作为每个发行版的一部分,详细发行说明被撰写以详细记录版本中的变化。这包括有关升级时可能出现的破坏性更改和新特性的任何文档。
许可
项目详情
下载文件
下载适用于您平台文件。如果您不确定选择哪个,请了解有关安装包的更多信息。