CN112099774A - 一种量子云平台前端开发方法 - Google Patents
一种量子云平台前端开发方法 Download PDFInfo
- Publication number
- CN112099774A CN112099774A CN202010965128.7A CN202010965128A CN112099774A CN 112099774 A CN112099774 A CN 112099774A CN 202010965128 A CN202010965128 A CN 202010965128A CN 112099774 A CN112099774 A CN 112099774A
- Authority
- CN
- China
- Prior art keywords
- code
- quantum
- qasm
- page
- layout
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/40—Transformation of program code
- G06F8/41—Compilation
- G06F8/44—Encoding
- G06F8/447—Target code generation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/31—Programming languages or programming paradigms
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/40—Transformation of program code
- G06F8/41—Compilation
- G06F8/42—Syntactic analysis
- G06F8/427—Parsing
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Devices For Executing Special Programs (AREA)
Abstract
本发明公开一种量子云平台前端开发方法,涉及前端开发技术领域;进行前端页面电路编程的同时,对语言编程进行编辑生成QASM代码,将QASM代码解析成前端代码,针对前端代码在前端页面上使用svg进行前端的布局渲染;改善量子计算云平台对用户的展示方式只有电路编程功能的缺陷,增加了量子计算云平台的语言编程功能,提高了用户的使用体验。
Description
技术领域
本发明公开一种前端开发方法,涉及前端开发技术领域,具体地说是一种量子云平台前端开发方法。
背景技术
量子计算机是由量子芯片和外部测控系统构成的计算系统,对量子的操作需要前端和后端通过数据的交互使每次实验的结果更加直观的展示给用户并实现对数据的操作,而目前量子计算云平台对用户的展示方式大多数都是只有电路编程功能,对熟悉电路语言编程但不熟悉电路量子门操作的用户很不友好。
发明内容
本发明针对现有技术的问题,提供一种量子云平台前端开发方法,利用电路编程和语言编程相结合的方式进行前端开发。
本发明提出的具体方案是:
一种量子云平台前端开发方法,进行前端页面电路编程的同时,对语言编程进行编辑生成QASM代码,将QASM代码解析成前端代码,针对前端代码在前端页面上使用svg进行前端的布局渲染。
优选的,所述的一种量子云平台前端开发方法中通过相应操作改变QASM代码修改前端页面,重新对前端页面使用svg进行前端的布局渲染。
优选的,所述的一种量子云平台前端开发方法中进行删除操作时,确定需要删除的量子比特在语言编程中的QASM代码,将相应代码删除,并重新对前端页面使用svg进行前端的布局渲染;
进行插入操作时,确定量子比特的插入位置,在语言编程中插入相应的QASM代码,重新解析QASM代码,获得前端代码,并重新对前端页面使用svg进行前端的布局渲染。
优选的,所述的一种量子云平台前端开发方法中针对电路编程的量子门进行操作,重新划分量子门的存储数组,对存储数组进行遍历,将存储数组展示成QASM代码格式,使用svg进行前端的布局渲染。
一种量子云平台前端开发系统,包括编辑模块、解析模块及布局模块,
编辑模块进行前端页面电路编程的同时,对语言编程进行编辑生成QASM代码,解析模块将QASM代码解析成前端代码,布局模块针对前端代码在前端页面上使用svg进行前端的布局渲染。
优选地,所述的一种量子云平台前端开发系统中编辑模块通过相应操作改变QASM代码修改前端页面,布局模块重新对前端页面使用svg进行前端的布局渲染。
优选地,所述的一种量子云平台前端开发系统中编辑模块进行删除操作时,确定需要删除的量子比特在语言编程中的QASM代码,将相应代码删除,布局模块重新对前端页面使用svg进行前端的布局渲染;
编辑模块进行插入操作时,确定量子比特的插入位置,在语言编程中插入相应的QASM代码,解析模块重新解析QASM代码,获得前端代码,布局模块重新对前端页面使用svg进行前端的布局渲染。
优选地,所述的一种量子云平台前端开发系统中编辑模块针对电路编程的量子门进行操作,重新划分量子门的存储数组,对存储数组进行遍历,将存储数组展示成QASM代码格式,布局模块使用svg进行前端的布局渲染。
本发明的有益之处是:
本发明提供一种量子云平台前端开发方法,进行前端页面电路编程的同时,对语言编程进行编辑生成QASM代码,将QASM代码解析成前端代码,针对前端代码在前端页面上使用svg进行前端的布局渲染;改善量子计算云平台对用户的展示方式只有电路编程功能的缺陷,增加了量子计算云平台的语言编程功能,提高了用户的使用体验。
附图说明
图1是本发明方法中电路编程及语言编程流程示意图;
图2是本发明中电路编程跟语言编程渲染页面示意图;
图3是图2的编辑QASM代码页面示意图;
图4执行删除操作时,电路编程和语言编程页面渲染示意图;
图5是图4的编辑QASM代码页面示意图;
图6在QASM编辑器进行编辑代码时页面渲染示意图;
图7是图6的编辑QASM代码页面示意图。
具体实施方式
量子计算机(quantum computer),是一种全新的基于量子理论的计算机,遵循量子力学规律进行高速数学和逻辑运算、存储及处理量子信息的物理装置。量子计算机的概念源于对可逆计算机的研究。量子计算机应用的是量子比特,可以同时处在多个状态,而不像传统计算机那样只能处于0或1的二进制状态。
下面结合附图和具体实施例对本发明作进一步说明,以使本领域的技术人员可以更好地理解本发明并能予以实施,但所举实施例不作为对本发明的限定。
本发明提供一种量子云平台前端开发方法,进行前端页面电路编程的同时,对语言编程进行编辑生成QASM代码,将QASM代码解析成前端代码,针对前端代码在前端页面上使用svg进行前端的布局渲染。
利用本发明方法可以改善量子计算云平台对用户的展示方式只有电路编程功能的缺陷,增加了量子计算云平台的语言编程功能,提高了用户的使用体验。
本发明具体应用的一些实施例中,首先是电路编程在前端页面展示的实现过程,其中的线跟图形可利用svg矢量图进行渲染,放置量子电路图的区域使用svg标签,然后里面的量子比特门使用circle、rect、g以及line特有矢量图标签进行前端呈现;
同时语言编程的编辑框使用codemirror插件,可以实现对QASM代码进行删除以及插入的操作;并且通过相应操作改变QASM代码修改前端页面,重新对前端页面使用svg进行前端的布局渲染,
其中进行删除操作时,确定需要删除的量子比特在语言编程中的QASM代码,将相应代码删除,并重新对前端页面使用svg进行前端的布局渲染;
进行插入操作时,确定量子比特的插入位置,在语言编程中插入相应的QASM代码,重新解析QASM代码,获得前端代码,并重新对前端页面使用svg进行前端的布局渲染。
上述实施例的基础上,进行电路编程时具体操作为,当对电路编程的量子门进行操作时,给量子门元素添加鼠标按下、移动和松开时的事件,鼠标按下时添加复制当前拖拽的量子门元素,移动时添加获取量子门坐标的事件,并进行位置及前后元素的判断,鼠标松开时进行数组中元素添加、语言编程上对数组中代码的渲染以及电路编程重新渲染的操作;
进行量子门拖拽时电路编程页面跟语言编程渲染情况可参考图2,其中主要编辑代码页面参考图3;
在电路编程上执行删除量子门操作时,把要删除的量子门在数组中进行删除,然后再重新进行对新的数组进行重新的组合然后再对QASM编辑器中代码进行重新的渲染,电路编程和语言编程页面渲染情况参考图4,主要编辑代码页面参考图5;
进行插入新量子门时,当拖着量子门进行移动时,需要获取到此时的坐标,获取此时要拖放的位置的坐标,然后看它的下一列是否有量子门,如果没有的话,它就作为最后一列进行放置,如果后面又量子门,在数组中找到对应的位置插入进去,然后再对电路跟编辑器进行重新的渲染;
完成操作后,可对量子门的存储数组进行按列进行重新的划分数组,每一列成为一个新的数组然后把此时按列分的数组放入新的数组中,组成一个新的二维数组,此时对此数组进行遍历,按格式要求把数组展示成QASM代码格式在QASM编辑器上进行展示,QASM编辑器进行编辑代码时页面渲染情况参考图6,主要编辑代码页面参考图7,其中图7中t q[θ]可以为手动添加。
本发明还提供一种量子云平台前端开发系统,包括编辑模块、解析模块及布局模块,
编辑模块进行前端页面电路编程的同时,对语言编程进行编辑生成QASM代码,解析模块将QASM代码解析成前端代码,布局模块针对前端代码在前端页面上使用svg进行前端的布局渲染。
上述系统内的各模块之间的信息交互、执行过程等内容,由于与本发明方法实施例基于同一构思,具体内容可参见本发明方法实施例中的叙述,此处不再赘述。
需要说明的是,上述各流程和各系统结构中不是所有的步骤和模块都是必须的,可以根据实际的需要忽略某些步骤或模块。各步骤的执行顺序不是固定的,可以根据需要进行调整。上述各实施例中描述的系统结构可以是物理结构,也可以是逻辑结构,即,有些模块可能由同一物理实体实现,或者,有些模块可能分由多个物理实体实现,或者,可以由多个独立设备中的某些部件共同实现。
以上所述实施例仅是为充分说明本发明而所举的较佳的实施例,本发明的保护范围不限于此。本技术领域的技术人员在本发明基础上所作的等同替代或变换,均在本发明的保护范围之内。本发明的保护范围以权利要求书为准。
Claims (8)
1.一种量子云平台前端开发方法,其特征是进行前端页面电路编程的同时,对语言编程进行编辑生成QASM代码,将QASM代码解析成前端代码,针对前端代码在前端页面上使用svg进行前端的布局渲染。
2.根据权利要求1所述的一种量子云平台前端开发方法,其特征是通过相应操作改变QASM代码修改前端页面,重新对前端页面使用svg进行前端的布局渲染。
3.根据权利要求2所述的一种量子云平台前端开发方法,其特征是进行删除操作时,确定需要删除的量子比特在语言编程中的QASM代码,将相应代码删除,并重新对前端页面使用svg进行前端的布局渲染;
进行插入操作时,确定量子比特的插入位置,在语言编程中插入相应的QASM代码,重新解析QASM代码,获得前端代码,并重新对前端页面使用svg进行前端的布局渲染。
4.根据权利要求1-3任一所述的一种量子云平台前端开发方法,其特征是针对电路编程的量子门进行操作,重新划分量子门的存储数组,对存储数组进行遍历,将存储数组展示成QASM代码格式,使用svg进行前端的布局渲染。
5.一种量子云平台前端开发系统,其特征是包括编辑模块、解析模块及布局模块,
编辑模块进行前端页面电路编程的同时,对语言编程进行编辑生成QASM代码,解析模块将QASM代码解析成前端代码,布局模块针对前端代码在前端页面上使用svg进行前端的布局渲染。
6.根据权利要求5所述的一种量子云平台前端开发系统,其特征是编辑模块通过相应操作改变QASM代码修改前端页面,布局模块重新对前端页面使用svg进行前端的布局渲染。
7.根据权利要求6所述的一种量子云平台前端开发系统,其特征是编辑模块进行删除操作时,确定需要删除的量子比特在语言编程中的QASM代码,将相应代码删除,布局模块重新对前端页面使用svg进行前端的布局渲染;
编辑模块进行插入操作时,确定量子比特的插入位置,在语言编程中插入相应的QASM代码,解析模块重新解析QASM代码,获得前端代码,布局模块重新对前端页面使用svg进行前端的布局渲染。
8.根据权利要求5-7任一所述的一种量子云平台前端开发系统,其特征是编辑模块针对电路编程的量子门进行操作,重新划分量子门的存储数组,对存储数组进行遍历,将存储数组展示成QASM代码格式,布局模块使用svg进行前端的布局渲染。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010965128.7A CN112099774A (zh) | 2020-09-15 | 2020-09-15 | 一种量子云平台前端开发方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010965128.7A CN112099774A (zh) | 2020-09-15 | 2020-09-15 | 一种量子云平台前端开发方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112099774A true CN112099774A (zh) | 2020-12-18 |
Family
ID=73751032
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010965128.7A Pending CN112099774A (zh) | 2020-09-15 | 2020-09-15 | 一种量子云平台前端开发方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112099774A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115994970A (zh) * | 2022-11-30 | 2023-04-21 | 北京百度网讯科技有限公司 | 量子电路图渲染方法、装置、设备、存储介质及程序产品 |
-
2020
- 2020-09-15 CN CN202010965128.7A patent/CN112099774A/zh active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115994970A (zh) * | 2022-11-30 | 2023-04-21 | 北京百度网讯科技有限公司 | 量子电路图渲染方法、装置、设备、存储介质及程序产品 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Heer et al. | Graphical histories for visualization: Supporting analysis, communication, and evaluation | |
US8701002B2 (en) | Hierarchical display and navigation of document revision histories | |
US8874525B2 (en) | Hierarchical display and navigation of document revision histories | |
US8533594B2 (en) | Hierarchical display and navigation of document revision histories | |
US8533593B2 (en) | Hierarchical display and navigation of document revision histories | |
US20120272192A1 (en) | Hierarchical display and navigation of document revision histories | |
JP5260733B2 (ja) | ソースオブジェクトから少なくとも1つの対象オブジェクトに対するアニメーションエフェクトのコピー | |
US9348581B2 (en) | Systems, method and computer program products for tracking and viewing changes to information stored in a data structure | |
US20200082582A1 (en) | Graph Expansion Mini-View | |
US20110116769A1 (en) | Interface system for editing video data | |
US20150106708A1 (en) | Capturing navigations, explorations, and analysis | |
WO2019217701A1 (en) | Assisted image annotation | |
CN107544806A (zh) | 可视化表单绘制方法 | |
US8823738B1 (en) | Merging electronic diagrams | |
US9342493B2 (en) | Transient, real-time position tracking interface for user activity in a document editing application | |
US20130212457A1 (en) | Creating and Inserting Links by Drag and Drop | |
CN102591562A (zh) | 显示设备和提供该显示设备的用户界面的方法 | |
CN104267947A (zh) | 一种编辑弹窗图片的方法及弹窗图片编辑装置 | |
US20170242780A1 (en) | Graphical Sequence Builder | |
WO2021073076A1 (zh) | 用于可视化电子表格的方法、装置、设备及存储介质 | |
CN110415319B (zh) | 基于ppt的动画制作方法、装置与电子设备和存储介质 | |
CN105335039A (zh) | 在可编辑文档的页面之间移动对象的方法及装置 | |
CN112100296A (zh) | 一种便于进行gis矢量数据编辑的gis系统 | |
CN113010162A (zh) | 一种页面构建方法、装置及设备 | |
CN112099774A (zh) | 一种量子云平台前端开发方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |