diff --git a/README.md b/README.md index c2ce8b3b92480c9a049b9fc15ebece49d082de24..1e06e506bb059ce7796d8649749c371bf3e72338 100644 --- a/README.md +++ b/README.md @@ -2,8 +2,9 @@ This is my presentation about the Quantum Monte Carlo Loop Algorithm. -The handout is available at [https://gitlab.cs.fau.de/oz73ifuv/qmc-loop-algorithm-report/-/jobs/artifacts/main/raw/build/qmc-loop-algorithm-report-handout.pdf?job=compile_pdf](https://gitlab.cs.fau.de/oz73ifuv/qmc-loop-algorithm-report/-/jobs/artifacts/main/raw/build/qmc-loop-algorithm-report-handout.pdf?job=compile_pdf). -The presentation is available at [https://gitlab.cs.fau.de/oz73ifuv/qmc-loop-algorithm-report/-/jobs/artifacts/main/raw/build/qmc-loop-algorithm-report.pdf?job=compile_pdf](https://gitlab.cs.fau.de/oz73ifuv/qmc-loop-algorithm-report/-/jobs/artifacts/main/raw/build/qmc-loop-algorithm-report.pdf?job=compile_pdf). +Download of the final PDF: +- [handout](https://gitlab.cs.fau.de/oz73ifuv/qmc-loop-algorithm-report/-/jobs/artifacts/main/raw/build/qmc-loop-algorithm-report-handout.pdf?job=compile_pdf) +- [presentation](https://gitlab.cs.fau.de/oz73ifuv/qmc-loop-algorithm-report/-/jobs/artifacts/main/raw/build/qmc-loop-algorithm-report.pdf?job=compile_pdf) If you want to compile the PDF yourself then do ```sh diff --git a/src/qmc-loop-algorithm-report.tex b/src/qmc-loop-algorithm-report.tex index 9629c9fd3b6b2cdfe12cc3a9ca370c33d8d314ee..96e8bfe7018c3ac46eac310b87a7476b40fc6dea 100644 --- a/src/qmc-loop-algorithm-report.tex +++ b/src/qmc-loop-algorithm-report.tex @@ -16,7 +16,7 @@ %\usepackage{algpseudocode} \graphicspath{{../figures/}} -\usepackage[backend=biber,urldate=iso,date=iso]{biblatex} +\usepackage[backend=biber,urldate=iso,date=iso,style=authoryear]{biblatex} \addbibresource{references.bib} \date{2022-12-12} @@ -26,25 +26,29 @@ \institute[FAU]{Friedrich-Alexander Universität Erlangen-Nürnberg} \newcommand{\die}{\vcenter{\hbox{\includegraphics[width=1em]{die.png}}}} +\newcommand\blfootnote[1]{% + \begingroup + \renewcommand\thefootnote{}\footnote{#1}% + \addtocounter{footnote}{-1}% + \endgroup +} + \begin{document} \begin{trueplainframe} \titlepage \end{trueplainframe} -\begin{frame}{Outline} - \tableofcontents -\end{frame} +%\begin{frame}{Outline} +% \tableofcontents +%\end{frame} \section{Classical Monte Carlo} -\subsection{Classical Ising Model} -\subsection{Markov Chain} -\subsection{Detailed Balance Condition} -\subsection{Metropolis Algorithm} \begin{frame}{Monte Carlo Basics} \begin{minipage}{0.48\linewidth} %\only<2>{ %\visible<2>{ +\subsection{Classical Ising Model} \begin{block}{Classical Ising Model} \begin{align*} H(\vec{\sigma}) &= - \sum_{i}\left(J\sigma_i\sigma_{i+1} + \mu \sigma_i\right) \\ @@ -53,6 +57,7 @@ \end{align*} \end{block} %} +%\subsection{Markov Chain} \begin{block}{Markov Chain} \begin{align*} \vec{\sigma}_1\to \vec{\sigma}_2 \to \vec{\sigma}_3 \to \cdots @@ -82,6 +87,7 @@ {\color{red} Significant configurations} \end{minipage} \end{block} +\subsection{Detailed Balance Condition} \begin{block}{Detailed Balance condition} \begin{align*} w_{\vec{\sigma}}\, p(\vec{\sigma} \to \vec{\sigma}') @@ -93,7 +99,9 @@ All configurations should be reachable after finitely many steps \end{block} \end{minipage} +\blfootnote{\cite{Gubernatis2016}} \end{frame} +\subsection{Metropolis Algorithm} \begin{frame}{Metropolis Algorithm} \begin{minipage}{0.45\linewidth} \begin{block}{Split the Probability} @@ -121,13 +129,14 @@ &\die{} \begin{cases} \visible<4->{\le \min\left(1,\frac{p_{\text{acc}}(\vec{\sigma}_A\to \vec{\sigma}_B)}{p_{\text{acc}}(\vec{\sigma}_B\to \vec{\sigma}_A)}\right) \\ \implies \vec{\sigma}_1 \to \cdots \to \vec{\sigma}_A \to \vec{\sigma}_B} \\ - \visible<5->{> \min\left(1,\frac{p_{\text{acc}}(\vec{\sigma}_A\to \vec{\sigma}_j)}{p_{\text{acc}}(\vec{\sigma}_j\to \vec{\sigma}_A)}\right) \\ + \visible<5->{> \min\left(1,\frac{p_{\text{acc}}(\vec{\sigma}_A\to \vec{\sigma}_B)}{p_{\text{acc}}(\vec{\sigma}_B\to \vec{\sigma}_A)}\right) \\ \implies \vec{\sigma}_1 \to \cdots \to \vec{\sigma}_A \to \vec{\sigma}_A} \end{cases}} \end{align*} \end{block} } \end{minipage} +\blfootnote{\cite{Gubernatis2016}} \end{frame} \begin{frame}{Hands-On Example} \begin{minipage}{0.48\linewidth} @@ -177,6 +186,7 @@ \end{align*} \end{block} \end{minipage} +\blfootnote{\cite{Gubernatis2016}} \end{frame} \subsection{Heat-Bath Algorithm} \begin{frame}{Heat-Bath Algorithm} @@ -219,6 +229,7 @@ Always accept the new configuration \end{frame} \begin{frame}{Observables} \begin{minipage}{0.45\linewidth} +\begin{block}{Calculating Observables} \begin{enumerate} \item<1-> \(N_{\text{eq}}\) sweeps to reach equilibrium \item<2-> Use equilibrated MC steps for sampling @@ -229,18 +240,23 @@ Always accept the new configuration \tau_O = \frac{1}{2}(R_{\text{sat}}-1) \end{align*} \end{enumerate} -\visible<5->{\includegraphics[width=0.8\linewidth]{BoFoQoOo_gausshist_polarisation.pdf}} +\end{block} \end{minipage} \hfill \begin{minipage}{0.45\linewidth} - \visible<5->{\includegraphics[width=\linewidth]{BoFoQoOo_rplot.pdf}} + \Centering + \visible<5->{\includegraphics[width=0.6\linewidth]{BoFoQoOo_rplot.pdf}} + \visible<5->{\includegraphics[width=0.6\linewidth]{BoFoQoOo_gausshist_polarisation.pdf}} \end{minipage} +\blfootnote{\cite{Gubernatis2016}} +\blfootnote{\cite{gehrbachelor}} \end{frame} \section{Quantum Monte Carlo} \subsection{XXZ Quantum Spin Chain} \subsection{Trotter Decomposition} \subsection{Updating Schemes} \subsection{Loop Updates} +\subsection{Sign Problem} \begin{frame}{Quantum Monte Carlo} \begin{minipage}{0.45\linewidth} \begin{block}{XXZ Quantum Spin Chain} @@ -275,9 +291,11 @@ Always accept the new configuration \end{align*} \end{block} \end{minipage} +\blfootnote{\cite{Assaad}} \end{frame} \begin{frame}{Trotter Decomposition} \begin{minipage}{0.5\linewidth} +\begin{small} \begin{block}{Split Hamiltonian} \begin{align*} H &= \underbrace{\frac{J_x}{2}\sum_{\text{odd } i}(S_i^+S_{i+1}^-+S_i^-S_{i+1}^+) + J_z\sum_{\text{odd } i}S_i^zS_{i+1}^z}_{H'} \\ @@ -289,7 +307,7 @@ Always accept the new configuration \tr\left[e^{-\beta H}\right] &= \tr\left[\left(e^{-\Delta\tau H}\right)^m\right] \\ &= \tr\left[\left(e^{-\frac{\Delta\tau}{2}H''}e^{-\Delta\tau H'}e^{-\frac{\Delta\tau}{2}H''} + \mathcal{O}(\Delta\tau^3)\right)^m\right] \\ - &= \tr\left[\left(e^{-\Delta\tau H'}e^{-\Delta\tau H''}\right)^m\right] + \mathcal{O}(\Delta\tau^2) \\ + %&= \tr\left[\left(e^{-\Delta\tau H'}e^{-\Delta\tau H''}\right)^m\right] + \mathcal{O}(\Delta\tau^2) \\ &= \sum_{\vec{\sigma}_1\cdots\vec{\sigma}_{2m}}\bra{\vec{\sigma}_1}e^{-\Delta\tau H'}\ketbra{\vec{\sigma}_{2m}} e^{-\Delta\tau H''}\ket{\vec{\sigma}_{2m-1}} \\ &\cdots\bra{\vec{\sigma}_3}e^{-\Delta\tau H'}\ketbra{\vec{\sigma}_{2}} @@ -297,11 +315,15 @@ Always accept the new configuration + \mathcal{O}(\Delta\tau^2) \end{align*} \end{block} +\end{small} \end{minipage} \hfill \begin{minipage}{0.45\linewidth} \includegraphics[width=0.8\linewidth]{worldline.pdf} \end{minipage} +\blfootnote{\cite{Assaad}} +\blfootnote{\cite{bchformula}} +\blfootnote{\cite{Sandvik2010}} \end{frame} \begin{frame}{Updating Schemes} \begin{minipage}{0.48\linewidth} @@ -322,6 +344,7 @@ Always accept the new configuration \includegraphics[width=0.98\linewidth]{singleloopupdate.pdf} \end{block} \end{minipage} +\blfootnote{\cite{Assaad}} \end{frame} \begin{frame}{Loop Updates} \begin{minipage}{0.48\linewidth} @@ -329,7 +352,41 @@ Always accept the new configuration \end{minipage} \hfill \begin{minipage}{0.48\linewidth} +\begin{align*} + \sum_G W(S,G) &= W(S) \\ + P(S \to (S,G)) &= \frac{W(S,G)}{W(S)} \\ + W(S,G) &= W(S',G) \\ + P((S,G) \to (S',G)) &= \frac{W(S',G)}{W(S,G) + W(S',G)} = \frac{1}{2} +\end{align*} +\(\implies\) Each loop can be flipped with probability \(\frac{1}{2}\) +\end{minipage} +\blfootnote{\cite{Assaad}} +\end{frame} +\begin{frame}{Sign Problem} +\begin{minipage}{0.48\linewidth} + \begin{block}{Partition Sum} + \begin{align*} + Z = \tr\left(e^{-\beta H}\right) + = \sum_{\vec{\sigma}} \bra{\vec{\sigma}}e^{-\beta H}\ket{\vec{\sigma}} + \overset{!}{=} \sum_{C}w_C + \end{align*} + \(\{\vec{\sigma}\}\) is not energy eigenbasis \\ + \(\implies\) negative weights are possible + \end{block} +\end{minipage} +\hfill +\begin{minipage}{0.48\linewidth} + \begin{block}{New Expectation Value} + \begin{align*} + \expval{O} + &= \tr\left(e^{-\beta H}O\right) \\ + &\overset{!}{=} \frac{\sum_Cw_CO_C}{\sum_Cw_C} + = \frac{\sum_C\abs{w_C}\text{sign}_CO_C}{\sum_C\abs{w_C}\text{sign}_C} \\ + &\approx \frac{\sum_{i=1}^{N} \text{sign}_{C_i}O_{C_i}}{\sum_{i=1}^{N} \text{sign}_{C_i}} + \end{align*} + \end{block} \end{minipage} +\blfootnote{\cite{werner}} \end{frame} { diff --git a/src/references.bib b/src/references.bib index 327c7c22651452551e1157c53f6d24d8f45ccd3e..4f16a3d43894c3f05ebf1b1cb32e8bcc6fb48675 100644 --- a/src/references.bib +++ b/src/references.bib @@ -44,3 +44,12 @@ title = {Computational Studies of Quantum Spin Systems}, booktitle = {{AIP} Conference Proceedings} } + +@unpublished{gehrbachelor, + author = {Stefan Gehr}, + title = {Investigation of a Two-level Emitter in a Cavity Using Continuous-time Quantum Monte Carlo Method}, + institution = {Friedrich-Alexander-Universtität Erlangen-Nürnberg}, + year = {2021}, + url = {https://gitlab.cs.fau.de/oz73ifuv/two-level-emitter-qmc}, + note = {Author's Bachelor's Thesis} +}