Quantikz: sem fios em portas que abrangem vários fios

Quantikz: sem fios em portas que abrangem vários fios

Tentei usar o seguinte quantikzcódigo:

\documentclass{article}
\usepackage{tikz}
\usepackage{mathtools}
\usetikzlibrary{quantikz}

\begin{document}
\def\myvdots{\ \vdots\ }
\begin{quantikz}
  \lstick[wires=3]{$n$}
 & \lstick{\ket{0}}  & \gate{H} & \gate[wires=3]{U} \\
 & \lstick{\myvdots} & \myvdots &\\
 & \lstick{\ket{0}}  & \gate{H} &\\
\end{quantikz}
\end{document}

Isso produz este resultado:

insira a descrição da imagem aqui

Como você pode ver, os fios no meio do Uportão não são realmente esperados. Alguma ideia de como removê-lo?

Responder1

O manual é um pouco enigmático, mas você pediu três fios, então ele lhe deu três fios! :) O que você precisa fazer é especificar o número de fios que Udevem abranger, que é 3, e então usar nwires(nófios), para dizer onde você não quer fios. Ou seja, você deseja usar \gate[3, nwires=2]{U}. (Mais geralmente, nwiresaceita uma lista separada por vírgulas.) Usando isso você obtém:

insira a descrição da imagem aqui

Aqui está o código completo:

\documentclass{article}
\usepackage{tikz}
\usepackage{mathtools}
\usetikzlibrary{quantikz}

\begin{document}
\def\myvdots{\ \vdots\ }
  \begin{quantikz}
    \lstick[wires=3]{$n$}
      & \lstick{\ket{0}}  & \gate{H} & \gate[3, nwires=2]{U} \\
      & \lstick{\myvdots} & \myvdots &\\
      & \lstick{\ket{0}}  & \gate{H} &\\
  \end{quantikz}
\end{document}

informação relacionada