Quantikz nicht mit tikz-cd kompatibel?

Quantikz nicht mit tikz-cd kompatibel?

Ich möchte Quantenschaltkreise und kommutative Diagramme zeichnen, daher möchte ich die beiden Pakete quantikzund verwenden tikz-cd.

Aber irgendwie quantikzüberschreibt es tikz-cd. Sehen Sie sich diesen Code an:

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

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

\end{document}

Es fuehrt zu:

Bildbeschreibung hier eingeben

Durch Auskommentieren quantikzbekomme ich, was ich will:

Bildbeschreibung hier eingeben

Wie kann ich sowohl Usepackages verwenden als auch schöne kommutative Diagramme zeichnen?

Antwort1

Im quantikzHandbuch steht:

Bildbeschreibung hier eingeben

Ich bin kein Experte für quantikz, aber es funktioniert, wenn man \setwiretype{n}es in jeder Zeile oder wire types={n,n}im optionalen Parameter einstellt.

Übrigens müssen Sie es nicht laden, tikz-cdda es bereits von geladen wurde quantikz.

quantikzBitte beachten Sie, dass Sie sowohl als auch Umgebungen verwenden können tikzcd.

Sie können auch einen Stil erstellen, um den richtigen Abstand für Ihre CDs festzulegen.

\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}

Bildbeschreibung hier eingeben

Antwort2

Ich habe die Dokumentation sehr gut gesehen vonquantikzDenken Sie daran, dass tikz-cd. Wenn wir das Handbuch beider Pakete sorgfältig lesen, stellen wir fest, dass sie den Befehl verwenden \arrow[r].

Bildbeschreibung hier eingeben

Ich denke, dass quantikzdie Zeile jedes Arrays als Verbindung in betrachtet wird tikz-cd. Wenn Sie mit dem Paket wechseln, xyhätten Sie kein Problem. Die Syntax von xyist sehr kompliziert und anfangs schwer zu verstehen; Sie könnten Switch-Graphen erstellen, die fast identisch mit sind tikz-cd. In vielen Aspekten xyist das Paket für einfache kommutative Graphen ähnlich wie tikz-cd. Siehe Beispiel unten.

\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}

Bildbeschreibung hier eingeben

verwandte Informationen