Quantikz は tikz-cd と互換性がありませんか?

Quantikz は tikz-cd と互換性がありませんか?

量子回路と可換図を描きたいので、quantikzと の2 つのパッケージを使用したいと思いますtikz-cd

しかし、どういうわけかquantikz上書きしてしまいますtikz-cd。次のコードを見てください。

\documentclass[11pt,a4paper]{report}
\usepackage{tikz-cd}
\usepackage{quantikz}

\begin{document}
    
\begin{tikzcd}
    & B \\
    A \arrow[ru] &  
\end{tikzcd}

\end{document}

その結果は次のようになります:

ここに画像の説明を入力してください

コメントアウトするとquantikz、必要な結果が得られます。

ここに画像の説明を入力してください

両方の usepackages を使用して、きれいな可換図を描くにはどうすればよいでしょうか?

答え1

マニュアルquantikzにはこう書かれています:

ここに画像の説明を入力してください

私は の専門家ではありませんquantikzが、\setwiretype{n}行ごとに設定したり、wire types={n,n}オプションのパラメータで設定したりすると機能します。

ちなみに、tikz-cdすでに によってロードされているので、ロードする必要はありませんquantikz

quantikzと の両方の環境を使用できることに注意してくださいtikzcd

CD の適切な間隔を設定するためのスタイルを作成することもできます。

\documentclass[11pt,a4paper]{report}
\usepackage{quantikz}
\tikzset{
  mystyle/.style={
    nodes={inner sep=4pt},
    row sep=1.8em, 
    column sep=2.4em
    }
  }
  
\begin{document}

\begin{quantikz}[wire types={n,n}, mystyle]
    & B \\
    A \arrow[ru] & 
\end{quantikz}
\begin{quantikz}[mystyle]
    \setwiretype{n} & B \\
    A \setwiretype{n}\ar[ru] &
\end{quantikz}

\begin{tikzcd}[wire types={n,n}, mystyle]
    & B \\
    A \arrow[ru] &  
\end{tikzcd}
\begin{tikzcd}[nodes={inner sep=2pt}, mystyle]
    \setwiretype{n}& B \\
    A \ar[ru]\setwiretype{n} &  
\end{tikzcd}

% The following code is taken from the quantikz manual
\begin{quantikz}
\lstick{\ket{0}\\initial state} & & \push{X} & &
\meter{0/1} \arrow[r] &
\rstick{\ket{1}}\setwiretype{n}
\end{quantikz}

\end{document}

ここに画像の説明を入力してください

答え2

私は、クォンティクズのことを覚えていますかtikz-cd。両方のパッケージのマニュアルを注意深く読むと、コマンドが使用されていることがわかります\arrow[r]

ここに画像の説明を入力してください

quantikz各配列の行を のワイヤとして見ると思いますtikz-cd。 パッケージを使用して切り替えれば、xy問題はありません。 の構文はxy非常に複雑で、最初は理解しにくいですが、 とほぼ同じスイッチ グラフを作成できますtikz-cd。多くの点で、xyパッケージは、単純な可換グラフの場合、 と似ていますtikz-cd。以下の例を参照してください。

\documentclass[11pt,a4paper]{report}
\usepackage{quantikz}
\usepackage[all,cmtip]{xy}% to have the tips of tikz-cd
\begin{document}
\begin{xymatrix}{
    & B \\
    A \ar[ru] &}  
\end{xymatrix}
\end{document}

ここに画像の説明を入力してください

関連情報