LaTeX量子电路作图工具Qcircuit

最近开始写毕业论文了,怎样得到矢量的,能在LaTeX里显示的量子电路图困扰了我很久。之前我在这篇文章里介绍了在projectQ里面运行电路,同时生成电路LaTeX代码的方法。这样做生成的代码有些复杂,运行时间长;且如果后期想根据自己的需要微调的话,比较麻烦。

这篇文章介绍一下我发现的另一个package,叫做Qcircuit,相对来说好用了许多。这个package很好上手,它的教程也写得很详细,所以具体的语法我就不再赘述了,可以在这里找到:链接

下面给出我用这个工具画的n-qubit的量子傅里叶变换电路,最终效果如下:

需要在\begin{document}之前加上这个package:

\usepackage[options]{qcircuit}

作图的代码是:

\begin{figure}[h!] 
  \centerline{
\Qcircuit @C=0.8em @R=0.75em {
   \lstick{\ket{j_{1}}}   &   \gate{H}  &   \gate{R_{2}}   &   \gate{R_{3}}  &   \qw & \cdots&        &   \gate{R_n}   &   \qw        &   \qw          &   \qw &   \qw     &  \qw    &   \qw           &   \qw  &   \qw      &   \qw   & \qw   &   \qw           &   \qw        &   \rstick{\ket{y_1}} \qw       \\
   \lstick{\ket{j_{2}}}   &   \qw       &   \ctrl{-1}     &   \qw           &   \qw &   \qw&   \qw   &   \qw           &   \gate{H}   &   \gate{R_2}  &   \qw &   \cdots    &       &   \gate{R_{n-1}}   &   \qw  &   \qw    &   \qw    & \qw   &   \qw          &   \qw        &   \rstick{\ket{y_2}} \qw       \\
   \lstick{\ket{j_{3}}}   &   \qw       &   \qw           &   \ctrl{-2}     &   \qw &   \qw  &  \qw &  \qw            &   \qw        &   \ctrl{-1}     &   \qw&   \qw     &   \qw   &   \qw           &   \gate{H} &   \qw  &   \cdots  &       &   \gate{R_{n-2}}  &   \qw        &   \rstick{\ket{y_3}} \qw       \\
   \lstick{\vdots }         &             &                 &                 &    &   \ddots &     &                 &              &                &       &   \ddots  &         &                 &          &          &   \ddots  &       &                 &              &   \rstick{\vdots }             \\
   \lstick{\ket{j_{n}}}     &   \qw       &   \qw           &   \qw           &   \qw &   \qw  &  \qw  &   \ctrl{-4}     &    \qw       &   \qw         &   \qw  &   \qw    &  \qw    &   \ctrl{-3}     &   \qw   &   \qw     &   \qw    & \qw   &   \ctrl{-2}    &   \gate{H}   &   \rstick{\ket{y_{n}}} \qw
}
}
  \caption{Quantum circuit for QFT algorithm}
  \label{QFT_circuit}
\end{figure}

这段代码看着麻烦,其实非常好理解,比自己手动画图简单了不少。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章