我想使用该quantikz
包绘制这个电路(Bernstein-Vazirani 算法)。
我无法像图中这样在一组电线上画出测量值。这是我的尝试:
\begin{center}
\begin{quantikz}
\lstick{\ket{0}} & \gate[4]{H^{\otimes n}} & \qw & \gate[5]{U_f}&\qw & \gate[4]{H^{\otimes n}} & \qw\rstick[wires=4]{} &\\
\lstick{\ket{0}} & \qw & \qw & \qw &\qw & &\qw&\\
\lstick{$\vdots$}& &\lstick{$\vdots$}& &\lstick{$\vdots$}& & & \meter{}\\
\lstick{\ket{0}} &\qw &\qw & \qw & \qw & \qw & \qw & \\
\lstick{\ket{-}} & \qw & \qw & \qw & \qw & \qw &\qw &\\
\end{quantikz}
\end{center}
这就导致了:
关于如何绘制测量值并去除我尝试中显示的多余电线,您有什么想法吗?
答案1
您应该使用该选项nwires
并说明不应该连接电线的行(另请参阅这个答案)至于meter
,你可以直接使用节点样式:
\documentclass[border=1mm]{standalone}
\usepackage{quantikz}
\begin{document}
\begin{quantikz}
\lstick{\ket{0}} & \gate[4, nwires=3]{H^{\otimes n}} & \qw & \gate[5, nwires=3]{U_f} & \qw & \gate[4, nwires=3]{H^{\otimes n}} & \qw \rstick[wires=4]{} \\[-10pt]
\lstick{\ket{0}} & \qw & \qw & \qw & \qw & \qw & \qw \\[-10pt]
\lstick{$\vdots$} & & \lstick{$\vdots$} & & \lstick{$\vdots$} & & & |[meter]| \\[-10pt]
\lstick{\ket{0}} & \qw & \qw & \qw & \qw & \qw & \qw \\[-10pt]
\lstick{\ket{-}} & \qw & \qw & \qw & \qw & \qw & \qw
\end{quantikz}
\end{document}
您可能需要做一些额外的垂直调整。