实验窗口 (ExperimentWindow)
单实验控制窗口——动态构建参数界面并管理提交、扫描和参数持久化。
概述
ExperimentWindow 是每个实验文件的控制面板。它通过 importlib 动态加载实验模块,自动解析 NumberValue / BoolValue / StringCombo 参数并生成对应的控件界面。
功能
| 功能 | 说明 |
|---|---|
| 🔍 动态加载 | importlib 导入实验模块,反射获取参数定义 |
| 🎛️ 参数界面 | 自动生成 FloatBox / BoolBox / ComboBox 控件 |
| 📤 提交队列 | 将当前参数集提交到 ExperimentQ |
| 🔁 扫描参数 | 设置参数扫描范围和步进 |
| 💾 保存/加载 | JSON 格式的参数集读写 |
| ✏️ 代码编辑 | 内嵌 CodeEditor 查看和修改实验代码 |
参数解析
class MyExperiment(Experiment):
cooling_time = NumberValue(100, unit='µs', minval=1, maxval=10000)
readout_mode = BoolValue(False)
qubit_select = StringCombo(['q0', 'q1', 'q2'])
这些定义自动生成带标签、单位和范围的控件。