fixed some stuff as suggested by Simon

This commit is contained in:
Daniel Knüttel 2020-03-27 15:38:43 +01:00
parent 798793bdf5
commit 361167f5de
13 changed files with 20 additions and 19 deletions

View File

@ -12,18 +12,18 @@ with open("qbit_scaling_meta.json") as fin:
h0 = plt.errorbar(results_naive[:, 0], results_naive[:, 2], results_naive[:, 3]
, label=f"Dense Vector Simulator $N_c={int(results_naive[:, 1][0])}$ circuits"
, label=f"Dense Vector Simulator $N_c={int(results_naive[:, 1][0])}$ Circuits"
, marker="o"
, color="black")
h1 = plt.errorbar(results_graph[:, 0], results_graph[:, 2], results_graph[:, 3]
, label=f"Graphical Simulator $N_c={int(results_graph[:, 1][0])}$ circuits"
, label=f"Graphical Simulator $N_c={int(results_graph[:, 1][0])}$ Circuits"
, marker="^"
, color="black")
plt.legend(handles=[h0, h1])
plt.xlabel("Number of Qbits $N_q$")
plt.ylabel("Execution time per circuit [s]")
plt.title(f"Execution Time for ${meta['ngates_per_qbit']}\\times N_q$ Gates with random Circuits (rescaled)")
plt.ylabel("Execution Time per Circuit [s]")
plt.title(f"Execution Time for ${meta['ngates_per_qbit']}\\times N_q$ Gates with Random Circuits (Rescaled)")
plt.savefig("scaling_qbits_linear.png", dpi=400)
plt.show()

View File

@ -12,19 +12,19 @@ with open("qbit_scaling_meta.json") as fin:
h0 = plt.errorbar(results_naive[:, 0], results_naive[:, 2], results_naive[:, 3]
, label=f"Dense Vector Simulator $N_c={int(results_naive[:, 1][0])}$ circuits"
, label=f"Dense Vector Simulator $N_c={int(results_naive[:, 1][0])}$ Circuits"
, marker="o"
, color="black")
h1 = plt.errorbar(results_graph[:, 0], results_graph[:, 2], results_graph[:, 3]
, label=f"Graphical Simulator $N_c={int(results_graph[:, 1][0])}$ circuits"
, label=f"Graphical Simulator $N_c={int(results_graph[:, 1][0])}$ Circuits"
, marker="^"
, color="black")
plt.yscale("log")
plt.legend(handles=[h0, h1])
plt.xlabel("Number of Qbits $N_q$")
plt.ylabel("Execution time per circuit [s]")
plt.title(f"Execution Time for ${meta['ngates_per_qbit']}\\times N_q$ Gates with random Circuits (rescaled)")
plt.ylabel("Execution Time per Circuit [s]")
plt.title(f"Execution Time for ${meta['ngates_per_qbit']}\\times N_q$ Gates with Random Circuits (Rescaled)")
plt.savefig("scaling_qbits_log.png", dpi=400)
plt.show()

View File

@ -16,8 +16,8 @@ h0 = plt.errorbar(results_graph0[:, 0], results_graph0[:, 2], results_graph0[:,
, color="black")
plt.legend(handles=[h0])
plt.xlabel("Number of gates in circuit")
plt.ylabel("Execution time per circuit [s]")
plt.xlabel("Number of Gates in Circuit")
plt.ylabel("Execution Time per Circuit [s]")
plt.title(f"Execution Time for Random Circuits")
plt.savefig("scaling_circuits_50qbit_linear.png", dpi=400)

View File

@ -21,8 +21,8 @@ h1 = plt.errorbar(results_graph1[:, 0], results_graph1[:, 2], results_graph1[:,
, color="black")
plt.legend(handles=[h0, h1])
plt.xlabel("Number of gates in circuit")
plt.ylabel("Execution time per circuit [s]")
plt.xlabel("Number of Gates in Circuit")
plt.ylabel("Execution Time per Circuit [s]")
plt.title(f"Execution Time for Random Circuits")
plt.savefig("scaling_circuits_linear.png", dpi=400)

View File

@ -21,8 +21,8 @@ h1 = plt.errorbar(results_graph1[:, 0], results_graph1[:, 2], results_graph1[:,
, color="black")
plt.legend(handles=[h0, h1])
plt.xlabel("Number of gates in circuit")
plt.ylabel("Execution time per circuit [s]")
plt.xlabel("Number of Gates in Circuit")
plt.ylabel("Execution Time per Circuit [s]")
plt.title(f"Execution Time for Random Circuits with Random Measurements")
plt.savefig("scaling_circuits_measurements_linear.png", dpi=400)

Binary file not shown.

Before

Width:  |  Height:  |  Size: 166 KiB

After

Width:  |  Height:  |  Size: 167 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 196 KiB

After

Width:  |  Height:  |  Size: 196 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 227 KiB

After

Width:  |  Height:  |  Size: 227 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 181 KiB

After

Width:  |  Height:  |  Size: 183 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 170 KiB

After

Width:  |  Height:  |  Size: 173 KiB

View File

@ -96,7 +96,7 @@ integer states
\begin{equation}
\label{eq:ci}
\ket{\psi} = \sum\limits_{i = 0}^{2^n - 1} c_i \ket{i} .
\ket{\psi} = \sum\limits_{i = 0}^{2^n - 1} c_i \ket{i}
\end{equation}
with the normation condition
@ -176,13 +176,13 @@ The matrix representation of $CX$ and $CZ$ for two qbits is given by
\begin{postulate}
Let
$$\ket{\psi} = \alpha\ket{\phi_1} \otimes \ket{1}_j + \beta\ket{\phi_0} \otimes \ket{0}_j$$
\begin{equation}\ket{\psi} = \alpha\ket{\phi_1} \otimes \ket{1}_j + \beta\ket{\phi_0} \otimes \ket{0}_j\end{equation}
be a $n$-qbit state
where $\ket{1}_j, \ket{0}_j$ denote the $j$-th qbit state and $|\alpha|^2 + |\beta|^2 = 1$.
Then the measurement of the $j$-th qbit will yield
$$\ket{\phi_1} \otimes \ket{1}_j$$
\begin{equation}\ket{\phi_1} \otimes \ket{1}_j\end{equation}
with probability $|\alpha|^2$ and
$$\ket{\phi_0} \otimes \ket{0}_j$$
\begin{equation}\ket{\phi_0} \otimes \ket{0}_j\end{equation}
with probability $|\beta|^2$ \cite{nielsen_chuang_2010}. This is called collapse of the wave function.
\end{postulate}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 181 KiB

After

Width:  |  Height:  |  Size: 183 KiB

View File

@ -39,7 +39,8 @@
\title{An Efficient Quantum Computing Simulator using a Graphical Description for Many-Qbit Systems \\
\large Bachelor Thesis}
\author[1]{Daniel Knüttel}
\affil[1]{Institute I - Theoretical Physics, University of Regensburg}
\affil[1]{Institute I - Theoretical Physics, University of Regensburg\\
Supervised by Prof. Dr. Christoph Lehner}
\date{10.04.2020}
\begin{document}
\maketitle