量子控制 · 数值演示
布洛赫球上的鲁棒复合 Z 旋转
目标:用 L 段有误差的自由演化 Zε(θj) 与 L 个瞬时精确的脉冲 X(αj) 合成 Z(π),并要求误差 ε 的前 N 阶导数全部为零(N 阶鲁棒)。 本页把两条序列的完整路程画在布洛赫球上: 我们的解(自由转角、数值优化,代价 T 更小)与 LYC 等角族(θj ≡ π,L = 2N+1,T = (2N+1)π)。 可拖动转球;下面的控件切换鲁棒阶 N、输入态与误差 ε。
静态全路程
同一个球上叠加两条完整序列(ε 取滑块的当前值)。实线 = 耗时的 Z 弧,虚线 = 瞬时 X 跳变;颜色区分两个族。两条轨迹都从同一起点出发、落到各自的终点(理想情形下同为 Z(π)|ψ⟩)。
转角结构(序列本体)
横轴 = 累计消耗的 Z 转角。方块宽度 = 每段 θj;方块之间的竖线 = 瞬时脉冲 X(αj),向上/下表示正/负,高度按本族最大 |α| 归一(两族 α 尺度不同,这样形状都看得清)。虚线竖线是播放头。
角度序列(逐项核对用)
单位 π,与论文附录 C / 报告附录 A 完全一致(每行 10 个)。播放时当前脉冲会高亮。 θj 是第 j 段 Z 演化时长,αj 是其后的瞬时 X 脉冲;代价 T = Σθj。
ε 鲁棒性:偏离随误差的幂律
门偏差角 δ(ε) = arccos[ ½ Re Tr( Z(π)† U(ε) ) ](实线)与端点态误差 1−F(点线),双对数坐标。 N 阶鲁棒的特征是 δ ∼ εN+1,即斜率 N+1;灰色虚线为参考斜率。圆点是在浏览器里用 JS 重算的值,用来验证与 Python 参考曲线一致。
代价对比
每个 N 的数值代价 T、等角族代价 (2N+1)π、论文下界 4N(虚线)。点击柱子可切换 N。
怎么读、怎么验算
模型
U(ε) = X(αL) Zε(θL) X(αL−1) ⋯ X(α1) Zε(θ1)
Zε(θ) = exp[ −i(1+ε)θσz/2 ], X(α) = exp[ −iασx/2 ]
目标 Z(π),代价 T = Σj θj(只有 Z 耗时,X 瞬时且免费)。N 阶鲁棒 = 把每个 θj 换成 λθj 得到的 Uλ 在 λ=1 处前 N 阶导数为零。
球上读法:Z 转动绕 z 轴 → 沿纬度圆走;X 脉冲绕 x 轴 → 沿经线跳。
两条序列
我们的解:段长 θj 自由。用时间预算参数化(softmax)+ 自适应 T 下降 + 回溯阻尼 Gauss–Newton,并在 N 与 L 上暖启动延拓;逐项数值见论文附录 C。
LYC 等角族:Low–Yoder–Chuang 构造。θj ≡ π、L = 2N+1,代价恰好 T = (2N+1)π;相位由平坦性条件定出,本页用同伦延拓钉住 N=1 的经典解这一支(α = (2π/3, −2π/3, 2π/3))。
同样 N 阶鲁棒,我们的代价是它的 0.84–0.93 倍(N ≤ 12)。
自己验算
1. 用上面的 N 选择器,在「转角结构」里读出整条序列 θj、αj。
2. 按时间顺序(最右边的 Zε(θ1) 先作用)连乘,得到 U(ε)。
3. 检查 ‖U(0) − Z(π)‖ < 10−9;再把 ε 减半,看 δ 是否缩小 2N+1 倍。
逐项数值(θ/π、α/π)印在论文附录 C 与报告附录 A,可直接对照;本页的导出 PNG 也可放进讲义。
浏览器自检
本页把矩阵代数在纯 JS 里独立重写了一遍,加载时与 Python(scipy.linalg.expm)算好的参考值逐项比对:
运行中…
比对项:门偏差角 δ(ε)、端点态误差 1−F(|0⟩ 与 |+⟩)、以及 U(ε)|0⟩ 的布洛赫向量。