This commit is contained in:
Tom Hodson 2022-08-08 11:59:36 +01:00
parent 4c5541ecd4
commit e9d85bfa1e
25 changed files with 224970 additions and 1364 deletions

View File

@ -0,0 +1,320 @@
---
title: The Kitaev Honeycomb Model
excerpt: A short introduction to the weird and wonderful world of exactly solvable quantum models. This is an excerpt from my thesis.
layout: none
image:
---
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml" lang="" xml:lang="">
<head>
<meta charset="utf-8" />
<meta name="generator" content="pandoc" />
<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=yes" />
<meta name="description" content="A short introduction to the weird and wonderful world of exactly solvable quantum models. This is an excerpt from my thesis." />
<title>The Kitaev Honeycomb Model</title>
<!-- <style>
html {
line-height: 1.5;
font-family: Georgia, serif;
font-size: 20px;
color: #1a1a1a;
background-color: #fdfdfd;
}
body {
margin: 0 auto;
max-width: 36em;
padding-left: 50px;
padding-right: 50px;
padding-top: 50px;
padding-bottom: 50px;
hyphens: auto;
overflow-wrap: break-word;
text-rendering: optimizeLegibility;
font-kerning: normal;
}
@media (max-width: 600px) {
body {
font-size: 0.9em;
padding: 1em;
}
h1 {
font-size: 1.8em;
}
}
@media print {
body {
background-color: transparent;
color: black;
font-size: 12pt;
}
p, h2, h3 {
orphans: 3;
widows: 3;
}
h2, h3, h4 {
page-break-after: avoid;
}
}
p {
margin: 1em 0;
}
a {
color: #1a1a1a;
}
a:visited {
color: #1a1a1a;
}
img {
max-width: 100%;
}
h1, h2, h3, h4, h5, h6 {
margin-top: 1.4em;
}
h5, h6 {
font-size: 1em;
font-style: italic;
}
h6 {
font-weight: normal;
}
ol, ul {
padding-left: 1.7em;
margin-top: 1em;
}
li > ol, li > ul {
margin-top: 0;
}
blockquote {
margin: 1em 0 1em 1.7em;
padding-left: 1em;
border-left: 2px solid #e6e6e6;
color: #606060;
}
code {
font-family: Menlo, Monaco, 'Lucida Console', Consolas, monospace;
font-size: 85%;
margin: 0;
}
pre {
margin: 1em 0;
overflow: auto;
}
pre code {
padding: 0;
overflow: visible;
overflow-wrap: normal;
}
.sourceCode {
background-color: transparent;
overflow: visible;
}
hr {
background-color: #1a1a1a;
border: none;
height: 1px;
margin: 1em 0;
}
table {
margin: 1em 0;
border-collapse: collapse;
width: 100%;
overflow-x: auto;
display: block;
font-variant-numeric: lining-nums tabular-nums;
}
table caption {
margin-bottom: 0.75em;
}
tbody {
margin-top: 0.5em;
border-top: 1px solid #1a1a1a;
border-bottom: 1px solid #1a1a1a;
}
th {
border-top: 1px solid #1a1a1a;
padding: 0.25em 0.5em 0.25em 0.5em;
}
td {
padding: 0.125em 0.5em 0.25em 0.5em;
}
header {
margin-bottom: 4em;
text-align: center;
}
#TOC li {
list-style: none;
}
#TOC ul {
padding-left: 1.3em;
}
#TOC > ul {
padding-left: 0;
}
#TOC a:not(:hover) {
text-decoration: none;
}
code{white-space: pre-wrap;}
span.smallcaps{font-variant: small-caps;}
span.underline{text-decoration: underline;}
div.column{display: inline-block; vertical-align: top; width: 50%;}
div.hanging-indent{margin-left: 1.5em; text-indent: -1.5em;}
ul.task-list{list-style: none;}
</style> -->
<!-- <script
src="https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-chtml-full.js"
type="text/javascript"></script>
-->
<script src="https://polyfill.io/v3/polyfill.min.js?features=es6"></script>
<script id="MathJax-script" async src="https://cdn.jsdelivr.net/npm/mathjax@3.0.1/es5/tex-mml-chtml.js"></script>
<!--[if lt IE 9]>
<script src="//cdnjs.cloudflare.com/ajax/libs/html5shiv/3.7.3/html5shiv-printshiv.min.js"></script>
<![endif]-->
<link rel="stylesheet" href="/assets/css/styles.css">
<script src="/assets/js/index.js"></script>
</head>
<body>
{% include header.html %}
<main>
<p>Here is a footnote reference,<a href="#fn1" class="footnote-ref"
id="fnref1" role="doc-noteref"><sup>1</sup></a> and another.<a
href="#fn2" class="footnote-ref" id="fnref2"
role="doc-noteref"><sup>2</sup></a></p>
<p>This paragraph wont be part of the note, because it isnt
indented.</p>
<h2 id="the-kitaev-honeycomb-model">The Kitaev Honeycomb Model</h2>
<p>The Kitaev-Honeycomb model is remarkable because it was the first
such model that combined three key properties.</p>
<p>First, it is a plausible tight binding Hamiltonian. The form of the
Hamiltonian could be realised by a real material. Indeed candidate
materials such as were quickly found that are expected to behave
according to the Kitaev with small corrections.</p>
<p>Second, the Kitaev Honeycomb model is deeply interesting to modern
condensed matter theory. Its ground state is almost the canonical
example of the long sought after quantum spin liquid state. Its
excitations are anyons, particles that can only exist in two dimensions
that break the normal fermion/boson dichotomy. Anyons have been the
subject of much attention because, among other reasons, there are
proposals to braid them through space and time to achieve noise tolerant
quantum computations .</p>
<p>Third and perhaps most importantly, it a rare many body interacting
quantum system that can be treated analytically. It is exactly solveable
meaning that we can explicitly write down its many body ground states in
terms of single particle states~. Its solubility comes about because the
model has extensively many conserved degrees of freedom that mediate the
interactions between quantum degrees of freedom.</p>
<p>To get down to brass tacks, the Kitaev Honeycomb model is a model of
interacting spin<span class="math inline">\(-1/2\)</span>s on the
vertices of a honeycomb lattice. Each bond in the lattice is assigned a
label <span class="math inline">\(\alpha \in \{ x, y, z\}\)</span> and
that bond couples its two spin neighbours along the <span
class="math inline">\(\alpha\)</span> axis.</p>
<p>This gives us the Hamiltonian <span
class="math display">\[\mathcal{H} = - \sum_{\langle j,k\rangle_\alpha}
J^{\alpha}\sigma_j^{\alpha}\sigma_k^{\alpha},\]</span> where <span
class="math inline">\(\sigma^\alpha_j\)</span> is a Pauli matrix acting
on site <span class="math inline">\(j\)</span>, (j,k_) is a pair of
nearest-neighbour indices connected by an <span
class="math inline">\(\alpha\)</span>-bond with exchange coupling <span
class="math inline">\(J^\alpha\)</span>~.</p>
<p>% plaquette operators and wilson loops This model has a set of
conserved quantities that, in the spin language, take the form of Wilson
loops <span class="math display">\[W_p = \prod
\sigma_j^{\alpha}\sigma_k^{\alpha}\]</span> following any closed path of
the lattice. In this product each pair of spins appears twice with two
of the three bonds types, using the spin commutation relations we can
replace each pair with the third. For a single hexagonal plaquette this
looks like: <span class="math display">\[W_p = \sigma_1^{z}\sigma_2^{z}
\sigma_2^{x}\sigma_3^{x} \sigma_3^{y}\sigma_4^{y}
\sigma_4^{z}\sigma_5^{z} \sigma_5^{x}\sigma_6^{x}
\sigma_6^{y}\sigma_1^{y}\]</span> $<span class="math inline">\(W_p =
\sigma_1^{x}\sigma_2^{y} \sigma_3^{z} \sigma_4^{x}
\sigma_5^{y}\sigma_6^{z}\)</span> In this latter form can be seen to
commute with all the terms in the Hamiltonian because { why again?}</p>
<p>The Hamiltonian commutes with the plaquette operators <span
class="math inline">\(W_p\)</span>, products of the <span
class="math inline">\(K\)</span>s around a plaquette. The Ks also
commute with one another. <span class="math display">\[W_p =
\prod_{&lt;ij&gt; \in P} K_{ij} = K_{12}K_{23}K_{34}K_{56} ...
K_{N1}\]</span></p>
<p>Expanding the bond operators <span class="math inline">\(K_{ij} =
\sigma_i^{\alpha} \sigma_j^{\alpha}\)</span>, Pauli operators on each
site appear in adjacent pairs so can be replaced via <span
class="math inline">\(\sigma_i \sigma_j = \delta_{ij} + \epsilon_{ijk}
\sigma_k\)</span> giving a product of Pauli matrices associated with the
outward pointing bonds from the plaquette. In the general case: <span
class="math display">\[W_p = \prod_{i \in P} i (-1)^{c_i}
\sigma_i\]</span> where <span class="math inline">\(c_i = 0,1\)</span>
measures the handedness of the edges around vertex i, see Fig <span
class="math inline">\(\ref{fig:handedness}\)</span>. Plaquette operators
for plaquettes with even numbers of edges square to 1 and hence have
eigenvalues <span class="math inline">\(\pm 1\)</span>, while those
around odd plaquettes have eigenvalues (i) breaking chiral symmetry. The
values of the plaquette operators partition the Hilbert space of the
Hamiltonian into a set of flux sectors.</p>
<p>% relationship between wilson loops and topology Such paths can
enclose a collection of faces or `plaquettes of the lattice. In the
case of periodic boundary conditions, the system is torioidal and we
also get Wilson loops that wind the whole system without enclosing a
definite area. The loop operator associated with each such path has
eigenvalues <span class="math inline">\(/pm 1\)</span> and can be
interpreted as measuring the magnetic flux through that region. Without
going into the details of counting them, the number of these conserved
loop operators clearly scales with system size and it is this extensive
number of classical degrees of freedom that ultimately allows us to
decouple this interacting many body hamiltonian into a set of non
interaction quadratic hamiltonians. { add a figure showing the different
kinds of Wilson loops and of an example plaquette}</p>
<div id="fig:honeycomb_zoom" class="fignos">
<figure>
<img
src="/assets/thesis_figs/figure_code/amk_chapter/honeycomb_zoom/intro_figure_template.svg"
style="width:100.0%"
alt="Figure 1: (a) The standard Kitaev Model is defined on a honeycomb lattice. The special feature of the honeycomb lattice that makes the model solveable it is that each vertex is joined by exactly three bonds i.e the lattice is trivalent. One of three labels is assigned to each (b) We represent the antisymmetric gauge degree of freedom u_{jk} = \pm 1 with arrows that point in the direction u_{jk} = +1 (c) The majorana transformation can be visualised as breaking each spin into four majoranas which then pair along the bonds. The pairs of x,y and z majoranas become part of the classical \mathbb{Z}_2 gauge field u_{ij} leaving just a single majorana c_i per site." />
<figcaption aria-hidden="true"><span>Figure 1:</span>
<strong>(a)</strong> The standard Kitaev Model is defined on a honeycomb
lattice. The special feature of the honeycomb lattice that makes the
model solveable it is that each vertex is joined by exactly three bonds
i.e the lattice is trivalent. One of three labels is assigned to each
<strong>(b)</strong> We represent the antisymmetric gauge degree of
freedom <span class="math inline">\(u_{jk} = \pm 1\)</span> with arrows
that point in the direction <span class="math inline">\(u_{jk} =
+1\)</span> <strong>(c)</strong> The majorana transformation can be
visualised as breaking each spin into four majoranas which then pair
along the bonds. The pairs of x,y and z majoranas become part of the
classical <span class="math inline">\(\mathbb{Z}_2\)</span> gauge field
<span class="math inline">\(u_{ij}\)</span> leaving just a single
majorana <span class="math inline">\(c_i\)</span> per site.</figcaption>
</figure>
</div>
<p>In order to actually solve the model we need to figure out how to
leverage these conserved quantities. The trick is not so much a trick as
an almost perfect consequence of the structure of the model and perhaps
this was in fact how Kitaev first came up with it. We know that a single
spin<span class="math inline">\(-1/2\)</span> can be represented by
fermionic creation and annihilation operators <span
class="math inline">\(\sigma^{\pm} = 1/2(\sigma^x \pm \sigma^y)\)</span>
through a Jordan-Wigner transformation~, this gives one fermion for each
spin. In turn a fermion can be broken into two Majorana fermions <span
class="math inline">\(c_1 = 1/\sqrt{1}(f + f^\dagger)\)</span> and <span
class="math inline">\(c_2 = i/\sqrt{1}(f - f^\dagger)\)</span>. If we
double up the Hilbert space we get four Majoranas per spin:</p>
<section class="footnotes footnotes-end-of-document"
role="doc-endnotes">
<hr />
<ol>
<li id="fn1" role="doc-endnote"><p>Here is the footnote.<a
href="#fnref1" class="footnote-back" role="doc-backlink">↩︎</a></p></li>
<li id="fn2" role="doc-endnote"><p>Heres one with multiple blocks.</p>
<p>Subsequent paragraphs are indented to show that they belong to the
previous footnote.</p>
<pre><code>{ some.code }</code></pre>
<p>The whole paragraph can be indented, or just the first line. In this
way, multi-paragraph footnotes work like multi-paragraph list items.<a
href="#fnref2" class="footnote-back" role="doc-backlink">↩︎</a></p></li>
</ol>
</section>
</main>
</body>
</html>

View File

@ -0,0 +1,211 @@
---
title: Aknowledgements
excerpt:
layout: none
image:
---
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml" lang="" xml:lang="">
<head>
<meta charset="utf-8" />
<meta name="generator" content="pandoc" />
<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=yes" />
<title>Aknowledgements</title>
<!-- <style>
html {
line-height: 1.5;
font-family: Georgia, serif;
font-size: 20px;
color: #1a1a1a;
background-color: #fdfdfd;
}
body {
margin: 0 auto;
max-width: 36em;
padding-left: 50px;
padding-right: 50px;
padding-top: 50px;
padding-bottom: 50px;
hyphens: auto;
overflow-wrap: break-word;
text-rendering: optimizeLegibility;
font-kerning: normal;
}
@media (max-width: 600px) {
body {
font-size: 0.9em;
padding: 1em;
}
h1 {
font-size: 1.8em;
}
}
@media print {
body {
background-color: transparent;
color: black;
font-size: 12pt;
}
p, h2, h3 {
orphans: 3;
widows: 3;
}
h2, h3, h4 {
page-break-after: avoid;
}
}
p {
margin: 1em 0;
}
a {
color: #1a1a1a;
}
a:visited {
color: #1a1a1a;
}
img {
max-width: 100%;
}
h1, h2, h3, h4, h5, h6 {
margin-top: 1.4em;
}
h5, h6 {
font-size: 1em;
font-style: italic;
}
h6 {
font-weight: normal;
}
ol, ul {
padding-left: 1.7em;
margin-top: 1em;
}
li > ol, li > ul {
margin-top: 0;
}
blockquote {
margin: 1em 0 1em 1.7em;
padding-left: 1em;
border-left: 2px solid #e6e6e6;
color: #606060;
}
code {
font-family: Menlo, Monaco, 'Lucida Console', Consolas, monospace;
font-size: 85%;
margin: 0;
}
pre {
margin: 1em 0;
overflow: auto;
}
pre code {
padding: 0;
overflow: visible;
overflow-wrap: normal;
}
.sourceCode {
background-color: transparent;
overflow: visible;
}
hr {
background-color: #1a1a1a;
border: none;
height: 1px;
margin: 1em 0;
}
table {
margin: 1em 0;
border-collapse: collapse;
width: 100%;
overflow-x: auto;
display: block;
font-variant-numeric: lining-nums tabular-nums;
}
table caption {
margin-bottom: 0.75em;
}
tbody {
margin-top: 0.5em;
border-top: 1px solid #1a1a1a;
border-bottom: 1px solid #1a1a1a;
}
th {
border-top: 1px solid #1a1a1a;
padding: 0.25em 0.5em 0.25em 0.5em;
}
td {
padding: 0.125em 0.5em 0.25em 0.5em;
}
header {
margin-bottom: 4em;
text-align: center;
}
#TOC li {
list-style: none;
}
#TOC ul {
padding-left: 1.3em;
}
#TOC > ul {
padding-left: 0;
}
#TOC a:not(:hover) {
text-decoration: none;
}
code{white-space: pre-wrap;}
span.smallcaps{font-variant: small-caps;}
span.underline{text-decoration: underline;}
div.column{display: inline-block; vertical-align: top; width: 50%;}
div.hanging-indent{margin-left: 1.5em; text-indent: -1.5em;}
ul.task-list{list-style: none;}
</style> -->
<!-- -->
<!-- <script src="https://polyfill.io/v3/polyfill.min.js?features=es6"></script>
<script id="MathJax-script" async src="https://cdn.jsdelivr.net/npm/mathjax@3.0.1/es5/tex-mml-chtml.js"></script>
-->
<script src="/assets/mathjax/tex-mml-svg.js" id="MathJax-script" async></script>
<!--[if lt IE 9]>
<script src="//cdnjs.cloudflare.com/ajax/libs/html5shiv/3.7.3/html5shiv-printshiv.min.js"></script>
<![endif]-->
<link rel="stylesheet" href="/assets/css/styles.css">
<script src="/assets/js/index.js"></script>
</head>
<body>
{% include header.html %}
<main>
<p>I would like to thank my supervisor, Professor Johannes Knolle and
co-supervisor Professor Derek Lee for guidance and support during this
long process.</p>
<p>Dan Hdidouan for being an example of how to weather the stress of a
PhD with grace and kindness.</p>
<p>Arnaud for help and guidance…</p>
<p>Carolyn, Juraci, Ievgeniia and Loli for their patience and
support.</p>
<p>Nina del Ser</p>
<p>Brian Tam for his endless energy on our many many calls while we
served as joint Postgraduate reps for the department.</p>
<p>All the students in CMTH, Halvard, Tom, Chris, Krishnan, David,
Tonny, Emanuele … and particularly to Thank you to the CMT group at TUM
in Munich, Alex and Rohit.</p>
<p>Gino, Peru and Willian for their collaboration on the Amorphous
Kitaev Model.</p>
<p>Mr Jeffries who encouraged me to pursue physics</p>
<p>All the gang from Munich, Toni, Mine, Mike, Claudi.</p>
<p>Dan Simpson, the poet in residence at Imperial and one of my
favourite collaborators during my time at Imperial.</p>
<p>Lou Khalfaoui for keeping me sane during the lockdown of March 2022.
Sophie Nadel, Julie Ketcher and Kim ??? for their graphic design
expertise and patience.</p>
<p>All the I-Stemm team, Katerina, Jeremey, John, ….</p>
<p>And finally, Id like the thank the staff of the Camberwell Public
Library where the majority of this thesis was written.</p>
</main>
</body>
</html>

View File

@ -268,6 +268,8 @@ image:
<main>
<nav id="TOC" role="doc-toc">
<ul>
<li><a href="#contributions"
id="toc-contributions">Contributions</a></li>
<li><a href="#introduction" id="toc-introduction">Introduction</a>
<ul>
<li><a href="#localisation" id="toc-localisation">Localisation</a>
@ -336,6 +338,19 @@ Trick</a></li>
</ul></li>
</ul>
</nav>
<h1 id="contributions">Contributions</h1>
<p>This material is this chapter expands on work presented in</p>
<p><span class="citation" data-cites="citekey"><sup><a
href="#ref-citekey"
role="doc-biblioref"><strong>citekey?</strong></a></sup></span> <a
href="https://link.aps.org/doi/10.1103/PhysRevB.104.045116">One-dimensional
long-range Falikov-Kimball model: Thermal phase transition and
disorder-free localization</a>, Hodson, T. and Willsher, J. and Knolle,
J., Phys. Rev. B, <strong>104</strong>, 4, 2021,</p>
<p>Johannes had the initial idea to use a long range Ising term to
stablise order in a one dimension Falikov-Kimball model. Josef developed
a proof of concept during a summer project at Imperial. The three of us
brought the project to fruition.</p>
<div class="sourceCode" id="cb1"><pre
class="sourceCode python"><code class="sourceCode python"><span id="cb1-1"><a href="#cb1-1" aria-hidden="true" tabindex="-1"></a>[WARNING] Citeproc: citation abanin_recent_2017 <span class="kw">not</span> found abaninRecentProgressManybody2017</span>
<span id="cb1-2"><a href="#cb1-2" aria-hidden="true" tabindex="-1"></a>[WARNING] Citeproc: citation anderson_absence_1958<span class="op">-</span><span class="dv">1</span> <span class="kw">not</span> found andersonAbsenceDiffusionCertain1958</span>

File diff suppressed because it is too large Load Diff

View File

@ -205,10 +205,13 @@ image:
<main>
<nav id="TOC" role="doc-toc">
<ul>
<li><a href="#contributions"
id="toc-contributions">Contributions</a></li>
<li><a href="#introduction" id="toc-introduction">Introduction</a>
<ul>
<li><a href="#amorphous-systems" id="toc-amorphous-systems">Amorphous
Systems</a></li>
<li><a href="#glossary" id="toc-glossary">Glossary</a></li>
<li><a href="#the-kitaev-model" id="toc-the-kitaev-model">The Kitaev
Model</a>
<ul>
@ -235,89 +238,162 @@ id="toc-open-boundary-conditions">Open boundary conditions</a></li>
</ul></li>
</ul>
</nav>
<h1 id="contributions">Contributions</h1>
<p>The material in this chapter expands on work presented in</p>
<p><strong>Insert citation of amorphous Kitaev paper here</strong></p>
<p>which was a joint project of the first three authors with advice and
guidance from Willian and Johannes. The project grew out of an interest
Gino, Peru and I had in studying amorphous systems, coupled with
Johannes expertise on the Kitaev model.</p>
<h1 id="introduction">Introduction</h1>
<p>The Kitaev-Honeycomb model is remarkable because it was the first
such model that combined three key properties.</p>
<p>First, it is a plausible tight binding Hamiltonian. The form of the
Hamiltonian could be realised by a real material. Indeed candidate
materials such as <span
class="math inline">\(\alpha\mathrm{-RuCl}_3\)</span> were quickly
found<span class="citation"
<p>The Kitaev Honeycomb model is remarkable because it combines three
key properties.</p>
<p>First, this model is a plausible tight binding Hamiltonian. The form
of the Hamiltonian could be realised by a real material. Candidate
materials are known that are expected to behave according to the Kitaev
with small corrections such as <span
class="math inline">\(\alpha\mathrm{-RuCl}_3\)</span><span
class="citation"
data-cites="banerjeeProximateKitaevQuantum2016 trebstKitaevMaterials2022"><sup><a
href="#ref-banerjeeProximateKitaevQuantum2016"
role="doc-biblioref">1</a>,<a href="#ref-trebstKitaevMaterials2022"
role="doc-biblioref">2</a></sup></span> that are expected to behave
according to the Kitaev with small corrections.</p>
<p>Second, the Kitaev Honeycomb model is deeply interesting to modern
condensed matter theory. Its ground state is almost the canonical
example of the long sought after quantum spin liquid state. Its
excitations are anyons, particles that can only exist in two dimensions
that break the normal fermion/boson dichotomy. Anyons have been the
subject of much attention because, among other reasons, there are
proposals to braid them through space and time to achieve noise tolerant
quantum computations<span class="citation"
role="doc-biblioref">2</a></sup></span>.</p>
<p>Second, this model is deeply interesting to modern condensed matter
theory. Its ground state is almost the canonical example of the long
sought after quantum spin liquid state. Its excitations are anyons,
particles that can only exist in two dimensions that break the normal
fermion/boson dichotomy. Anyons have been the subject of much attention
because, among other reasons, they can be braided through spacetime to
achieve noise tolerant quantum computations<span class="citation"
data-cites="freedmanTopologicalQuantumComputation2003"><sup><a
href="#ref-freedmanTopologicalQuantumComputation2003"
role="doc-biblioref">3</a></sup></span>.</p>
<p>Third and perhaps most importantly, it a rare many body interacting
quantum system that can be treated analytically. It is exactly
solveable. We can explicitly write down its many body ground states in
terms of single particle states<span class="citation"
<p>Third, and perhaps most importantly, this model is a rare many body
interacting quantum system that can be treated analytically. It is
exactly solvable. We can explicitly write down its many body ground
states in terms of single particle states<span class="citation"
data-cites="kitaevAnyonsExactlySolved2006"><sup><a
href="#ref-kitaevAnyonsExactlySolved2006"
role="doc-biblioref">4</a></sup></span>. Its solubility comes about
because the model has extensively many conserved degrees of freedom that
mediate the interactions between quantum degrees of freedom.</p>
<p>In this chapter I will discuss the physics of the Kitaev Model on
amorphous lattices.</p>
<p>Ill start by discussing the physics of the Kitaev model in much more
detail. Here I will look at the gauge symmetries of the model as well as
its solution via a transformation to a Majorana hamiltonian. From this
discusssion we will see that for the the model to be sovleable it need
only be defined on a trivalent, tri-edge-colourable lattice<span
class="citation" data-cites="Nussinov2009"><sup><a
href="#ref-Nussinov2009" role="doc-biblioref">5</a></sup></span>.</p>
<p>In the methods section, I will discuss how to generate such lattices
and colour them as well as how to map back and forth between
configurations of the gauge field and configurations of the gauge
invariant quantities.</p>
<p>In results section, I will begin by looking at the zero temperature
physics. Ill present numerical evidence that the ground state of the
model is given by a simple rule. Ill make an assessment of the gapless,
abelian and non-abelian phases that are present as well as spontaneous
chiral symmetry breaking and topological edge states. We will also
compare the zero temperature phase diagram to that of the Kitaev
Honeycomb Model. Next I will take the model to finite temperature and
demonstrate that there is a phase transition to a thermal metal
state.</p>
<p>In the Discussion I will consider possible physical realisations of
this model as well the motivations for doing so. I will alao discuss how
a well known quantum error correcting code defined on the Kitaev
Honeycomb could be generalised to the amorphous case.</p>
<p>Various generalisations have been made, one mode replaces pairs of
hexagons with heptagons and pentagons and another that replaces vertices
of the hexagons with triangles . When we generalise this to the
amorphous case, the key property that will remain is that each vertex
interacts with exactly three others via an x, y and z edge. However the
lattice will no longer be bipartite, breaking chiral symmetry among
other things.</p>
<p>Kitaev-Heisenberg Model In real materials there will generally be an
addtional small Heisenberg term <span class="math display">\[H_{KH} = -
\sum_{\langle j,k\rangle_\alpha}
J^{\alpha}\sigma_j^{\alpha}\sigma_k^{\alpha} +
\sigma_j\sigma_k\]</span></p>
because the model has many conserved degrees of freedom that mediate the
interactions between quantum degrees of freedom.</p>
<h2 id="amorphous-systems">Amorphous Systems</h2>
<p><strong>Insert discussion of why a generalisation to the amorphous
case is intersting</strong></p>
case is interesting</strong></p>
<p>This chapter details the physics of the Kitaev model on amorphous
lattices.</p>
<p>It starts by expanding on the physics of the Kitaev model. It will
look at the gauge symmetries of the model as well as its solution via a
transformation to a Majorana hamiltonian. This discussion shows that,
for the the model to be solvable, it needs only be defined on a
trivalent, tri-edge-colourable lattice<span class="citation"
data-cites="Nussinov2009"><sup><a href="#ref-Nussinov2009"
role="doc-biblioref">5</a></sup></span>.</p>
<p>The methods section discusses how to generate such lattices and
colour them. It also explain how to map back and forth between
configurations of the gauge field and configurations of the gauge
invariant quantities.</p>
<p>The results section begins by looking at the zero temperature
physics. It presents numerical evidence that the ground state of the
Kitaev model is given by a simple rule depending only on the number of
sides of each plaquette. It assesses the gapless, Abelian and
non-Abelian, phases that are present, characterising them by the
presence of a gap and using local Chern markers. Next it looks at
spontaneous chiral symmetry breaking and topological edge states. It
also compares the zero temperature phase diagram to that of the Kitaev
Honeycomb Model. Next, it takes the model to finite temperature and
demonstrates that there is a phase transition to a thermal metal
state.</p>
<p>The discussion considers possible physical realisations of this model
and the motivations for doing so. It also discusses how a well known
quantum error correcting code defined on the Kitaev Honeycomb model
could be generalised to the amorphous case.</p>
<h2 id="glossary">Glossary</h2>
<ul>
<li><p>Lattice: The underlying graph on which the models are defined.
Composed of sites (vertices), bonds (edges) and plaquettes
(faces).</p></li>
<li><p>The model : Used when I refer to properties of the the Kitaev
model that do not depend on the particular lattice.</p></li>
<li><p>The Honeycomb model : The Kitaev Model defined on the honeycomb
lattice.</p></li>
<li><p>The Amorphous model : The Kitaev Model defined on the amorphous
lattices described here.</p></li>
<li><p>The Hamiltonian: I will use model to refer to the underlying
physics and Hamiltonian to refer to particular representations of the
model.</p></li>
</ul>
<p><strong>The Spin Hamiltonian</strong></p>
<ul>
<li>Spin Bond Operators: <span class="math inline">\(\hat{k}_{ij} =
\sigma_i^\alpha \sigma_j^\alpha\)</span></li>
<li>Loop Operators: <span class="math inline">\(\hat{W_p} =
\prod_{&lt;i,j&gt;} k_{ij}\)</span></li>
<li>Plaquette Operators: Loops that enclose a single plaquette.</li>
</ul>
<p><strong>The Majorana Model</strong></p>
<ul>
<li>Majorana Operators on site <span class="math inline">\(i\)</span>:
<span class="math inline">\(\hat{b}^x_i, \hat{b}^y_i, \hat{b}^z_i,
\hat{c}_i\)</span></li>
<li>Majorana Bond Operators: <span class="math inline">\(\hat{u}_{ij} =
i \sigma_i^\alpha \sigma_j^\alpha\)</span></li>
<li>Loop Operators: <span class="math inline">\(\hat{W_p} =
\prod_{&lt;i,j&gt;} u_{ij}\)</span></li>
<li>Plaquette Operators: Loops that enclose a single plaquette.</li>
<li>Gauge Operators: <span class="math inline">\(D_i = \hat{b}^x_i
\hat{b}^y_i \hat{b}^z_i \hat{c}_i\)</span></li>
<li>The Extended Hilbert space: The larger Hilbert space spanned by the
Majorana operators.</li>
<li>The physical subspace: The subspace of the extended Hilbert space
that we identify with the Hilbert space of the original spin model.</li>
<li>The Projector <span class="math inline">\(\hat{P}\)</span>: The
projector onto the physical subspace.</li>
</ul>
<p><strong>Flux Sectors</strong></p>
<ul>
<li><p>Odd/Even Plaquettes: Plaquettes with an odd/even number of
sides.</p></li>
<li><p>Fluxes <span class="math inline">\(\phi_i\)</span>: The
expectation values of the plaquette operators <span
class="math inline">\(\pm 1\)</span> for even and <span
class="math inline">\(\pm i\)</span> for odd plaquettes.</p></li>
<li><p>Flux Sector: A subspace of Hilbert space in which the fluxes take
particular values.</p></li>
<li><p>Ground state flux sector: The Flux Sector containing the lowest
energy many body state.</p></li>
<li><p>Vortices: Flux excitations away from the ground state flux
sector.</p></li>
<li><p>Dual Loops: A set of <span class="math inline">\(u_{jk}\)</span>
that correspond to loops on the dual lattice.</p></li>
<li><p>non-contractible loops or dual loops: The two loops topologically
distinct loops on the torus that cannot be smoothly deformed to a
point.</p></li>
<li><p>Topological Fluxes <span class="math inline">\(\Phi_{x},
\Phi_{y}\)</span>: The two fluxes associated with the two
non-contractible loops.</p></li>
<li><p>Topological Transport Operators: <span
class="math inline">\(\mathcal{T}_{x}, \mathcal{T}_{y}\)</span>: The two
vortex-pair operations associated with the non-contractible
<em>dual</em> loops.</p></li>
</ul>
<p><strong>Phases</strong></p>
<ul>
<li>The A phase: The three anisotropic regions of the phase diagram
<span class="math inline">\(A_x, A_y, A_z\)</span> where <span
class="math inline">\(A_\alpha\)</span> means <span
class="math inline">\(J_\alpha &gt;&gt; J_\beta, J_\gamma\)</span>.</li>
<li>The B phase: The roughly isotropic region of the phase diagram.</li>
</ul>
<h2 id="the-kitaev-model">The Kitaev Model</h2>
<h3 id="commutation-relations">Commutation relations</h3>
<p>Before diving into the Hamiltonian of the Kitaev Model, here is a
quick refresher of the key commutation relations of spins, fermions and
<p>Before diving into the Hamiltonian of the Kitaev model, the following
describes the key commutation relations of spins, fermions and
Majoranas.</p>
<h4 id="spins">Spins</h4>
<p>Skip this is youre super familiar with the algebra of the Pauli
martrices. Scalars like <span class="math inline">\(\delta_{ij}\)</span>
should be understood to be multiplied by an implicit identity <span
<p>Skip this is you are familiar with the algebra of the Pauli matrices.
Scalars like <span class="math inline">\(\delta_{ij}\)</span> should be
understood to be multiplied by an implicit identity <span
class="math inline">\(\mathbb{1}\)</span> where necessary.</p>
<p>We can represent a single spin<span
class="math inline">\(-1/2\)</span> particle using the Pauli matrices
@ -329,22 +405,21 @@ class="math display">\[\sigma^\alpha \sigma^\beta = \delta^{\alpha
\beta} + i \epsilon^{\alpha \beta \gamma} \sigma^\gamma\]</span> <span
class="math display">\[[\sigma^\alpha, \sigma^\beta] = 2 i
\epsilon^{\alpha \beta \gamma} \sigma^\gamma\]</span></p>
<p>Adding a sites indices <span class="math inline">\(ijk...\)</span>,
spins at different spatial sites commute always <span
class="math inline">\([\vec{\sigma}_i, \vec{\sigma}_j] = 0\)</span> so
when <span class="math inline">\(i \neq j\)</span> <span
<p>Adding site indices, spins at different spatial sites always commute
<span class="math inline">\([\vec{\sigma}_i, \vec{\sigma}_j] =
0\)</span> so when <span class="math inline">\(i \neq j\)</span> <span
class="math display">\[\sigma_i^\alpha \sigma_j^\beta = \sigma_j^\alpha
\sigma_i^\beta\]</span> <span class="math display">\[[\sigma_i^\alpha,
\sigma_j^\beta] = 0\]</span> while the previous equations hold for <span
class="math inline">\(i = j\)</span>.</p>
<p>Two extra relations that will be useful for the Kitaev model are the
value of <span class="math inline">\(\sigma^\alpha \sigma^\beta
<p>Two extra relations useful for the Kitaev model are the value of
<span class="math inline">\(\sigma^\alpha \sigma^\beta
\sigma^\gamma\)</span> and <span class="math inline">\([\sigma^\alpha
\sigma^\beta, \sigma^\gamma]\)</span> when <span
class="math inline">\(\alpha \neq \beta \neq \gamma\)</span> these can
be computed quite easily by appling the above relations yielding: <span
class="math display">\[\sigma^\alpha \sigma^\beta \sigma^\gamma = i
\epsilon^{\alpha\beta\gamma}\]</span> and <span
be computed relatively easily by applying the above relations yielding:
<span class="math display">\[\sigma^\alpha \sigma^\beta \sigma^\gamma =
i \epsilon^{\alpha\beta\gamma}\]</span> and <span
class="math display">\[[\sigma^\alpha \sigma^\beta, \sigma^\gamma] =
0\]</span></p>
<h4 id="fermions-and-majoranas">Fermions and Majoranas</h4>
@ -359,25 +434,34 @@ exclusion principle.</p>
class="math display">\[\begin{aligned}
f_i &amp;= 1/2 (a_i + ib_i)\\
f^\dagger_i &amp;= 1/2(a_i - ib_i)\\
a_i &amp;= f_i + f^\dagger_i = 2\mathbb{R}f\\
b_i &amp;= 1/i(f_i - f^\dagger_i) = 2\mathbb{I} f
a_i &amp;= f_i + f^\dagger_i = 2\Re f\\
b_i &amp;= 1/i(f_i - f^\dagger_i) = 2\Im f
\end{aligned}\]</span></p>
<p>Majorana operators are the real and imaginary parts of the fermionic
operators, physically they correspond to the orthogonal superpositions
of the presence and absence of the fermion and are thus a kind of
operators. Physically, they correspond to the orthogonal superpositions
of the presence and absence of the fermion and are, thus, a kind of
quasiparticle.</p>
<p>Once we involve multiple fermions there is quite a bit of freedom in
how we can perform the transformation from <span
<p>Once we involve multiple fermions, there is some freedom in how we
can perform the transformation from <span
class="math inline">\(n\)</span> fermions <span
class="math inline">\(f_i\)</span> to <span
class="math inline">\(2n\)</span> Majoranas <span
class="math inline">\(c_i\)</span>. The property that must be preserved
however is that the Majoranas still anticommute:</p>
class="math inline">\(c_i\)</span>. The property that must be preserved,
however, is that the Majoranas still anticommute:</p>
<p><span class="math display">\[ \{c_i, c_j\} =
2\delta_{ij}\]</span></p>
<div id="fig:visual_kitaev_1" class="fignos">
<figure>
<img src="/assets/thesis/figure_code/amk_chapter/visual_kitaev_1.svg"
style="width:100.0%"
alt="Figure 1: A visual introduction to the Kitaev Model." />
<figcaption aria-hidden="true"><span>Figure 1:</span> A visual
introduction to the Kitaev Model.</figcaption>
</figure>
</div>
<h3 id="the-hamiltonian">The Hamiltonian</h3>
<p>To get down to brass tacks, the Kitaev Honeycomb model is a model of
interacting spin<span class="math inline">\(-1/2\)</span>s on the
<p>To start from the fundamentals, the Kitaev Honeycomb model is a model
of interacting spin<span class="math inline">\(-1/2\)</span>s on the
vertices of a honeycomb lattice. Each bond in the lattice is assigned a
label <span class="math inline">\(\alpha \in \{ x, y, z\}\)</span> and
that bond couples its two spin neighbours along the <span
@ -394,24 +478,17 @@ class="math inline">\(\alpha\)</span>-bond with exchange coupling <span
class="math inline">\(J^\alpha\)</span><span class="citation"
data-cites="kitaevAnyonsExactlySolved2006"><sup><a
href="#ref-kitaevAnyonsExactlySolved2006"
role="doc-biblioref">4</a></sup></span>. For notational brevity is is
role="doc-biblioref">4</a></sup></span>. For notational brevity, it is
useful to introduce the bond operators <span
class="math inline">\(K_{ij} =
\sigma_j^{\alpha}\sigma_k^{\alpha}\)</span> where <span
class="math inline">\(\alpha\)</span> is a function of <span
class="math inline">\(i,j\)</span> that picks the correct bond type.</p>
<div id="fig:visual_kitaev_1" class="fignos">
<figure>
<img src="/assets/thesis/figure_code/amk_chapter/visual_kitaev_1.svg"
style="width:100.0%" alt="Figure 1: " />
<figcaption aria-hidden="true"><span>Figure 1:</span> </figcaption>
</figure>
</div>
<p>This Kitaev model has a set of conserved quantities that, in the spin
language, take the form of Wilson loop operators <span
class="math inline">\(W_p\)</span> winding around a closed path on the
lattice. The direction doesnt matter, but I will stick to clockwise
here. Ill use the term plaquette and the symbol <span
lattice. The direction does not matter, but we will keep to clockwise
here. We will use the term plaquette and the symbol <span
class="math inline">\(\phi\)</span> to refer to a Wilson loop operator
that does not enclose any other sites, such as a single hexagon in a
honeycomb lattice.</p>
@ -423,86 +500,92 @@ bond types</strong></p>
<p>In closed loops, each site appears twice in the product with two of
the three bond types. Applying <span class="math inline">\(\sigma^\alpha
\sigma^\beta = \epsilon^{\alpha \beta \gamma} \sigma^\gamma, \alpha \neq
\beta\)</span> then gives us a product containing a single pauli matrix
\beta\)</span> then gives us a product containing a single Pauli matrix
associated with each site in the loop with the type of the
<em>outward</em> pointing bond. From this we see that the <span
<em>outward</em> pointing bond. This shows that the <span
class="math inline">\(W_p\)</span> associated with hexagons or shapes
with an even number of sides all square to 1 and hence have eigenvalues
<span class="math inline">\(\pm 1\)</span>.</p>
<p>A consequence of the fact that the honeycomb lattice is bipartite is
that there are no closed loops that contain an even number of edges<a
href="#fn1" class="footnote-ref" id="fnref1"
role="doc-noteref"><sup>1</sup></a> and hence all the <span
with an even number of sides all square to 1 and, hence, have
eigenvalues <span class="math inline">\(\pm 1\)</span>.</p>
<p>A bipartite lattice is composed of A and B sublattices with no
intra-sublattice edges, i.e. no A-A or B-B edges. Any closed loop must
begin and end at the same site. If we start at an A site, the loop must
go A-B-A-B… until it returns to the original site. It must, therefore,
contain an even number of edges to end on the same sublattice that it
started on.</p>
<p>As the honeycomb lattice is bipartite, there are no closed loops that
contain an even number of edges. Therefore, all the <span
class="math inline">\(W_p\)</span> have eigenvalues <span
class="math inline">\(\pm 1\)</span> on bipartite lattices. Later we
class="math inline">\(\pm 1\)</span> on bipartite lattices. Later, we
will show that plaquettes with an odd number of sides (odd plaquettes
for short) will have eigenvalues <span class="math inline">\(\pm
for short) have eigenvalues <span class="math inline">\(\pm
i\)</span>.</p>
<div id="fig:regular_plaquettes" class="fignos">
<figure>
<img
src="/assets/thesis/figure_code/amk_chapter/regular_plaquettes/regular_plaquettes.svg"
style="width:86.0%"
alt="Figure 2: The eigenvalues of a loop or plaquette operators depend on how many bonds in its enclosing path." />
alt="Figure 2: The eigenvalues of a loop or plaquette operators depend on the number of bonds in its enclosing path." />
<figcaption aria-hidden="true"><span>Figure 2:</span> The eigenvalues of
a loop or plaquette operators depend on how many bonds in its enclosing
path.</figcaption>
a loop or plaquette operators depend on the number of bonds in its
enclosing path.</figcaption>
</figure>
</div>
<p>Remarkably, all of the spin bond operators <span
class="math inline">\(K_{ij}\)</span> commute with all the Wilson loop
operators <span class="math inline">\(W_p\)</span>. <span
class="math display">\[[W_p, J_{ij}] = 0\]</span> We can prove this by
considering the three cases: 1. neither <span
considering three cases: 1. neither <span
class="math inline">\(i\)</span> nor <span
class="math inline">\(j\)</span> is part of the loop 2. one of <span
class="math inline">\(i\)</span> or <span
class="math inline">\(j\)</span> are part of the loop 3. both are part
of the loop</p>
<p>The first case is trivial while the other two require a bit of
algebra, outlined in fig. <a href="#fig:visual_kitaev_2">3</a>.</p>
<p>The first case is trivial. The other two require some algebra,
outlined in fig. <a href="#fig:visual_kitaev_2">3</a>.</p>
<div id="fig:visual_kitaev_2" class="fignos">
<figure>
<img src="/assets/thesis/figure_code/amk_chapter/visual_kitaev_2.svg"
style="width:143.0%" alt="Figure 3: " />
<figcaption aria-hidden="true"><span>Figure 3:</span> </figcaption>
style="width:100.0%"
alt="Figure 3: Plaquette operators are conserved." />
<figcaption aria-hidden="true"><span>Figure 3:</span> Plaquette
operators are conserved.</figcaption>
</figure>
</div>
<p>Since the Hamiltonian is just a linear combination of bond operators,
it also commutes with the plaquette operators! This is great because it
means that the theres a simultaneous eigenbasis for the Hamiltonian and
the plaquette operators. We can thus work in a basis in which the
eigenvalues of the plaquette operators take on a definite value and for
all intents and purposes act like classical degrees of freedom. These
are the extensively many conserved quantities that make the model
<p>Since the Hamiltonian is a linear combination of bond operators, it
commutes with the plaquette operators. This is helpful because it leads
to a simultaneous eigenbasis for the Hamiltonian and the plaquette
operators. We can, thus, work in <em>or “on”???</em> a basis in which
the eigenvalues of the plaquette operators take on a definite value and,
for all intents and purposes, act like classical degrees of freedom.
These are the extensively many conserved quantities that make the model
tractable.</p>
<p>Plaquette operators measure flux. We will find that the ground state
of the model corresponds to some particular choice of flux through each
plaquette. I will refer to excitations which flip the expectation value
of a plaqutte operator away from the ground state as
plaquette. We will refer to excitations which flip the expectation value
of a plaquette operator away from the ground state as
<strong>vortices</strong>.</p>
<p>Fixing a configuration of the vortices thus partitions the many-body
<p>Thus, fixing a configuration of the vortices partitions the many-body
Hilbert space into a set of vortex sectors labelled by that particular
flux configuration <span class="math inline">\(\phi_i = \pm 1,\pm
i\)</span>.</p>
<h3 id="from-spins-to-majorana-operators">From Spins to Majorana
operators</h3>
<h4 id="for-a-single-spin">For a single spin</h4>
<p>Lets start by considering just one site and its <span
<p>Let us start by considering only one site and its <span
class="math inline">\(\sigma^x, \sigma^y\)</span> and <span
class="math inline">\(\sigma^z\)</span> operators which live in a two
dimensional Hilbert space <span
class="math inline">\(\mathcal{L}\)</span>.</p>
<p>We will introduce two fermionic modes <span
class="math inline">\(f\)</span> and <span
class="math inline">\(g\)</span> that satisy the canonical
class="math inline">\(g\)</span> that satisfy the canonical
anticommutation relations along with their number operators <span
class="math inline">\(n_f = f^\dagger f, n_g = g^\dagger g\)</span> and
the total fermionic parity operator <span class="math inline">\(F_p =
(2n_f - 1)(2n_g - 1)\)</span> which we can use to divide their Fock
space up into even and odd parity subspaces which are separated by the
addition or removal of one fermion.</p>
<p>From these two fermionic modes we can build four Majorana operators:
(2n_f - 1)(2n_g - 1)\)</span> which can be used to divide their Fock
space up into even and odd parity subspaces. These subspaces are
separated by the addition or removal of one fermion.</p>
<p>From these two fermionic modes, we can build four Majorana operators:
<span class="math display">\[\begin{aligned}
b^x &amp;= f + f^\dagger\\
b^y &amp;= -i(f - f^\dagger)\\
@ -510,50 +593,42 @@ b^z &amp;= g + g^\dagger\\
c &amp;= -i(g - g^\dagger)
\end{aligned}\]</span></p>
<p>The Majoranas obey the usual commutation relations, squaring to one
and anticommuting with eachother. The fermions and Majorana live in a 4
dimenional Fock space <span
and anticommuting with each other. The fermions and Majorana live in a
four dimensional Fock space <span
class="math inline">\(\mathcal{\tilde{L}}\)</span>. We can therefore
identify the two dimensional space <span
class="math inline">\(\mathcal{M}\)</span> with one of the partity
class="math inline">\(\mathcal{M}\)</span> with one of the parity
subspaces of <span class="math inline">\(\mathcal{\tilde{L}}\)</span>
which we will call the <em>physical subspace</em> <span
which will be called the <em>physical subspace</em> <span
class="math inline">\(\mathcal{\tilde{L}}_p\)</span>. Kitaev defines the
operator <span class="math display">\[D = b^xb^yb^zc\]</span> which can
be expanded out to <span class="math display">\[D = -(2n_f - 1)(2n_g -
1) = -F_p\]</span> and labels the physical subspace as the space sanned
by states for which <span class="math display">\[ D|\phi\rangle =
be expanded to <span class="math display">\[D = -(2n_f - 1)(2n_g - 1) =
-F_p\]</span> and labels the physical subspace as the space spanned by
states for which <span class="math display">\[ D|\phi\rangle =
|\phi\rangle\]</span></p>
<p>We can also think of the physical subspace as whatever is left after
applying the projector <span class="math display">\[P = \frac{1 -
D}{2}\]</span> to it. This formulation will be useful for taking states
that span the extended space <span
D}{2}\]</span> This formulation will be useful for taking states that
span the extended space <span
class="math inline">\(\mathcal{\tilde{M}}\)</span> and projecting them
into the physical subspace.</p>
<p>So now, with the caveat that we are working in the physical subspace,
we can define new pauli operators:</p>
we can define new Pauli operators:</p>
<p><span class="math display">\[\tilde{\sigma}^x = i b^x c,\;
\tilde{\sigma}^y = i b^y c,\; \tilde{\sigma}^y = i b^y c\]</span></p>
<p>These extended space pauli operators satisfy all the usual
commutation relations, the only difference being that if we evaluate
<span class="math inline">\(\sigma^x \sigma^y \sigma^z = i\)</span> we
<p>These extended space Pauli operators satisfy all the usual
commutation relations. The only difference is that if we evaluate <span
class="math inline">\(\sigma^x \sigma^y \sigma^z = i\)</span>, we
instead get <span class="math display">\[
\tilde{\sigma}^x\tilde{\sigma}^y\tilde{\sigma}^z = iD \]</span></p>
<p>Which indeed makes sense, as long as we promise to confine ourselves
to the physical subspace <span class="math inline">\(D = 1\)</span> and
this all makes sense.</p>
<div id="fig:majorana" class="fignos">
<figure>
<img src="/assets/thesis/figure_code/majorana.png" style="width:71.0%"
alt="Figure 4: " />
<figcaption aria-hidden="true"><span>Figure 4:</span> </figcaption>
</figure>
</div>
<p>This makes sense if we promise to confine ourselves to the physical
subspace <span class="math inline">\(D = 1\)</span>.</p>
<h4 id="for-multiple-spins">For multiple spins</h4>
<p>This construction generalises easily to the case of multiple spins:
we get a set of 4 Majoranas <span class="math inline">\(b^x_j,\;
<p>This construction easily generalises to the case of multiple spins.
We get a set of 4 Majoranas <span class="math inline">\(b^x_j,\;
b^y_j,\;b^z_j,\; c_j\)</span> and a <span class="math inline">\(D_j =
b^x_jb^y_jb^z_jc_j\)</span> operator for every spin. For a state to be
physical we require that <span class="math inline">\(D_j |\psi\rangle =
physical, we require that <span class="math inline">\(D_j |\psi\rangle =
|\psi\rangle\)</span> for all <span
class="math inline">\(j\)</span>.</p>
<p>From these each Pauli operator can be constructed: <span
@ -576,80 +651,79 @@ J^{\alpha}\tilde{\sigma}_j^{\alpha}\tilde{\sigma}_k^{\alpha}\\
class="math inline">\(\hat{u}_{ij} = i b^\alpha_i b^\alpha_j\)</span>.
Note that these bond operators are not equal to the spin bond operators
<span class="math inline">\(K_{ij} = \sigma^\alpha_i \sigma^\alpha_j = -
\hat{u}_{ij} c_i c_j\)</span>. In what follows we will work much more
frequently with the Majorana bond operators so when I refer to bond
operators without qualification, I am refering to the Majorana
\hat{u}_{ij} c_i c_j\)</span>. In what follows, we will work much more
frequently with the Majorana bond operators. Therefore, when we refer to
bond operators without qualification, we are referring to the Majorana
variety.</p>
<p>Similar to the argument with the spin bond operators <span
class="math inline">\(K_{ij}\)</span> we can quickly verify by
<p>Similarly to the argument with the spin bond operators <span
class="math inline">\(K_{ij}\)</span>, we can quickly verify by
considering three cases that the Majorana bond operators <span
class="math inline">\(u_{ij}\)</span> all commute with one another. They
square to one so have eigenvalues <span class="math inline">\(\pm
1\)</span> and they also commute with the <span
square to one, so have eigenvalues <span class="math inline">\(\pm
1\)</span>. They also commute with the <span
class="math inline">\(c_i\)</span> operators.</p>
<p>Another important point here is that the operators <span
class="math inline">\(D_i = b^x_i b^y_i b^z_i c_i\)</span> commute with
<span class="math inline">\(K_{ij}\)</span> and therefore with <span
<p>Importantly, the operators <span class="math inline">\(D_i = b^x_i
b^y_i b^z_i c_i\)</span> commute with <span
class="math inline">\(K_{ij}\)</span> and, therefore, with <span
class="math inline">\(\tilde{H}\)</span>. We will show later that the
action of <span class="math inline">\(D_i\)</span> on a state is to flip
the values of the three <span class="math inline">\(u_{ij}\)</span>
bonds that connect to site <span class="math inline">\(i\)</span>.
Physcially this is telling us that <span
Physically, this indicates that <span
class="math inline">\(u_{ij}\)</span> is a gauge field with a high
degree of degeneracy.</p>
<p>In summary Majorana bond operators <span
<p>In summary, Majorana bond operators <span
class="math inline">\(u_{ij}\)</span> are an emergent, classical, <span
class="math inline">\(\mathbb{Z_2}\)</span> gauge field!</p>
<h3 id="partitioning-the-hilbert-space-into-bond-sectors">Partitioning
the Hilbert Space into Bond sectors</h3>
<p>Similar to the story with the plaquette operators from the spin
language, we can break the Hilbert space <span
class="math inline">\(\mathcal{L}\)</span> up into sectors labelled by
the a set of choices <span class="math inline">\(\{\pm 1\}\)</span> for
the value of each <span class="math inline">\(u_{ij}\)</span> operator
which I denote by <span class="math inline">\(\mathcal{L}_u\)</span>.
Since <span class="math inline">\(u_{ij} = -u_{ji}\)</span> we can
represent the <span class="math inline">\(u_{ij}\)</span> graphically
with an arrow that points along each bond in the direction in which
<span class="math inline">\(u_{ij} = 1\)</span>.</p>
<p>Similarly to the story with the plaquette operators from the spin
language, we can divide the Hilbert space <span
class="math inline">\(\mathcal{L}\)</span> into sectors labelled by a
set of choices <span class="math inline">\(\{\pm 1\}\)</span> for the
value of each <span class="math inline">\(u_{ij}\)</span> operator which
we denote by <span class="math inline">\(\mathcal{L}_u\)</span>. Since
<span class="math inline">\(u_{ij} = -u_{ji}\)</span>, we can represent
the <span class="math inline">\(u_{ij}\)</span> graphically with an
arrow that points along each bond in the direction in which <span
class="math inline">\(u_{ij} = 1\)</span>.</p>
<p>Once confined to a particular <span
class="math inline">\(\mathcal{L}_u\)</span>, we can remove the hats
from the <span class="math inline">\(\hat{u}_{ij}\)</span> and the
from the <span class="math inline">\(\hat{u}_{ij}\)</span>. The
hamiltonian becomes a quadratic, free fermion problem <span
class="math display">\[\tilde{H_u} = \frac{i}{4} \sum_{\langle
i,j\rangle_\alpha} 2J^{\alpha} u_{ij} c_i c_j\]</span> the ground state
of which, <span class="math inline">\(|\psi_u\rangle\)</span> can be
found easily via matrix diagonalisation. If you have been paying very
close attention, you may at this point ask whether the <span
class="math inline">\(\mathcal{L}_u\)</span> are confined entirely
i,j\rangle_\alpha} 2J^{\alpha} u_{ij} c_i c_j\]</span> The ground state,
<span class="math inline">\(|\psi_u\rangle\)</span> can be found easily
via matrix diagonalisation. At this point, we may wonder whether the
<span class="math inline">\(\mathcal{L}_u\)</span> are confined entirely
within the physical subspace <span
class="math inline">\(\mathcal{L}_p\)</span> and indeed we will see that
they are not. However it will be helpful to first develop the theory of
the Majorana Hamiltonian a little more.</p>
<div id="fig:intro_figure_template" class="fignos">
class="math inline">\(\mathcal{L}_p\)</span> and, indeed, we will see
that they are not. However, it will be helpful to first develop the
theory of the Majorana Hamiltonian further.</p>
<div id="fig:intro_figure_by_hand" class="fignos">
<figure>
<img
src="/assets/thesis/figure_code/amk_chapter/honeycomb_zoom/intro_figure_template.svg"
src="/assets/thesis/figure_code/amk_chapter/intro/honeycomb_zoom/intro_figure_by_hand.svg"
style="width:100.0%"
alt="Figure 5: (a) The standard Kitaev Model is defined on a honeycomb lattice. The special feature of the honeycomb lattice that makes the model solveable it is that each vertex is joined by exactly three bonds i.e the lattice is trivalent. One of three labels is assigned to each (b) We represent the antisymmetric gauge degree of freedom u_{jk} = \pm 1 with arrows that point in the direction u_{jk} = +1 (c) The Majorana transformation can be visualised as breaking each spin into four Majoranas which then pair along the bonds. The pairs of x,y and z Majoranas become part of the classical \mathbb{Z}_2 gauge field u_{ij} leaving just a single Majorana c_i per site." />
<figcaption aria-hidden="true"><span>Figure 5:</span>
<strong>(a)</strong> The standard Kitaev Model is defined on a honeycomb
alt="Figure 4: (a) The standard Kitaev model is defined on a honeycomb lattice. The special feature of the honeycomb lattice that makes the model solvable is that each vertex is joined by exactly three bonds, i.e. the lattice is trivalent. One of three labels is assigned to each (b). We represent the antisymmetric gauge degree of freedom u_{jk} = \pm 1 with arrows that point in the direction u_{jk} = +1 (c). The Majorana transformation can be visualised as breaking each spin into four Majoranas which then pair along the bonds. The pairs of x,y and z Majoranas become part of the classical \mathbb{Z}_2 gauge field u_{ij}. This leavies a single Majorana c_i per site." />
<figcaption aria-hidden="true"><span>Figure 4:</span>
<strong>(a)</strong> The standard Kitaev model is defined on a honeycomb
lattice. The special feature of the honeycomb lattice that makes the
model solveable it is that each vertex is joined by exactly three bonds
i.e the lattice is trivalent. One of three labels is assigned to each
<strong>(b)</strong> We represent the antisymmetric gauge degree of
model solvable is that each vertex is joined by exactly three bonds,
i.e. the lattice is trivalent. One of three labels is assigned to each
<strong>(b)</strong>. We represent the antisymmetric gauge degree of
freedom <span class="math inline">\(u_{jk} = \pm 1\)</span> with arrows
that point in the direction <span class="math inline">\(u_{jk} =
+1\)</span> <strong>(c)</strong> The Majorana transformation can be
+1\)</span> <strong>(c)</strong>. The Majorana transformation can be
visualised as breaking each spin into four Majoranas which then pair
along the bonds. The pairs of x,y and z Majoranas become part of the
classical <span class="math inline">\(\mathbb{Z}_2\)</span> gauge field
<span class="math inline">\(u_{ij}\)</span> leaving just a single
<span class="math inline">\(u_{ij}\)</span>. This leavies a single
Majorana <span class="math inline">\(c_i\)</span> per site.</figcaption>
</figure>
</div>
<h2 id="the-majorana-hamiltonian">The Majorana Hamiltonian</h2>
<p>We now have a quadtratic hamiltonian <span class="math display">\[
<p>We now have a quadratic Hamiltonian <span class="math display">\[
\tilde{H} = \frac{i}{4} \sum_{\langle i,j\rangle_\alpha} 2J^{\alpha}
u_{ij} c_i c_j\]</span> in which most of the Majorana degrees of freedom
have paired along bonds to become a classical gauge field <span
@ -658,19 +732,19 @@ standard theory for quadratic Majorana Hamiltonians<span
class="citation" data-cites="BlaizotRipka1986"><sup><a
href="#ref-BlaizotRipka1986"
role="doc-biblioref">6</a></sup></span>.</p>
<p>As a consequence of the the antisymmetry of the matrix with entries
<span class="math inline">\(J^{\alpha} u_{ij}\)</span>, the eigenvalues
of the Hamiltonian <span class="math inline">\(\tilde{H}_u\)</span> come
in pairs <span class="math inline">\(\pm \epsilon_m\)</span>. This
<p>Because of the antisymmetry of the matrix with entries <span
class="math inline">\(J^{\alpha} u_{ij}\)</span>, the eigenvalues of the
Hamiltonian <span class="math inline">\(\tilde{H}_u\)</span> come in
pairs <span class="math inline">\(\pm \epsilon_m\)</span>. This
redundant information is a consequence of the doubling of the Hilbert
space which occured when we transformed to the Majorana
space which occurred when we transformed to the Majorana
representation.</p>
<p>If we pair organise the eigenmodes of <span
class="math inline">\(H\)</span> into pairs such that <span
<p>If we organise the eigenmodes of <span
class="math inline">\(H\)</span> into pairs, such that <span
class="math inline">\(b_m\)</span> and <span
class="math inline">\(b_m&#39;\)</span> have energies <span
class="math inline">\(\epsilon_m\)</span> and <span
class="math inline">\(-\epsilon_m\)</span> we can construct the
class="math inline">\(-\epsilon_m\)</span>, we can construct the
transformation <span class="math inline">\(Q\)</span> <span
class="math display">\[(c_1, c_2... c_{2N}) Q = (b_1, b_1&#39;, b_2,
b_2&#39; ... b_{N}, b_{N}&#39;)\]</span> and put the Hamiltonian into
@ -679,9 +753,9 @@ the form <span class="math display">\[\tilde{H}_u = \frac{i}{2} \sum_m
<p>The determinant of <span class="math inline">\(Q\)</span> will be
useful later when we consider the projector from <span
class="math inline">\(\mathcal{\tilde{L}}\)</span> to <span
class="math inline">\(\mathcal{L}\)</span> but otherwise the <span
class="math inline">\(b_m\)</span> are just an intermediate step. From
them we form fermionic operators <span class="math display">\[ f_i =
class="math inline">\(\mathcal{L}\)</span>. Otherwise, the <span
class="math inline">\(b_m\)</span> are merely an intermediate step. From
them, we form fermionic operators <span class="math display">\[ f_i =
\tfrac{1}{2} (b_m + ib_m&#39;)\]</span> with their associated number
operators <span class="math inline">\(n_i = f^\dagger_i f_i\)</span>.
These let us write the Hamiltonian neatly as</p>
@ -690,36 +764,36 @@ These let us write the Hamiltonian neatly as</p>
<p>The ground state <span class="math inline">\(|n_m = 0\rangle\)</span>
of the many body system at fixed <span class="math inline">\(u\)</span>
is then <span class="math display">\[E_{u,0} = -\frac{1}{2}\sum_m
\epsilon_m \]</span> and we can construct any state from a particular
choice of <span class="math inline">\(n_m = 0,1\)</span>.</p>
<p>In cases where all we care about it the value of <span
class="math inline">\(E_{u,0}\)</span> it is possible to skip forming
\epsilon_m \]</span> We can construct any state from a particular choice
of <span class="math inline">\(n_m = 0,1\)</span>.</p>
<p>If we only care about the value of <span
class="math inline">\(E_{u,0}\)</span>, it is possible to skip forming
the fermionic operators. The eigenvalues obtained directly from
diagonalising <span class="math inline">\(J^{\alpha} u_{ij}\)</span>
come in <span class="math inline">\(\pm \epsilon_m\)</span> pairs. We
can take half the absolute value of the whole set to recover <span
class="math inline">\(\sum_m \epsilon_m\)</span> easily.</p>
<p><strong>The Majorana Hamiltonian is quadratic within a Bond
Sector.</strong></p>
<p>Takeaway: the Majorana Hamiltonian is quadratic within a Bond
Sector.</p>
<h3 id="mapping-back-from-bond-sectors-to-the-physical-subspace">Mapping
back from Bond Sectors to the Physical Subspace</h3>
<p>At this point, given a particular bond configuration <span
class="math inline">\(u_{ij} = \pm 1\)</span> we are able to construct a
class="math inline">\(u_{ij} = \pm 1\)</span>, we can construct a
quadratic Hamiltonian <span class="math inline">\(\tilde{H}_u\)</span>
in the extended space and diagonalise it to find its ground state <span
class="math inline">\(|\vec{u}, \vec{n} = 0\rangle\)</span>. This is not
necessarily the ground state of the system as a whole, it just the
necessarily the ground state of the system as a whole, it is just the
lowest energy state within the subspace <span
class="math inline">\(\mathcal{L}_u\)</span></p>
<p><strong>However, <span class="math inline">\(|u, n_m =
0\rangle\)</span> does not lie in the physical subspace</strong>. As an
example lets take the lowest energy state associated with <span
class="math inline">\(u_{ij} = +1\)</span>, this state satisfies <span
example, consider the lowest energy state associated with <span
class="math inline">\(u_{ij} = +1\)</span>. This state satisfies <span
class="math display">\[u_{ij} |\vec{u}=1, \vec{n} = 0\rangle =
|\vec{u}=1, \vec{n} = 0\rangle\]</span> for all bonds <span
class="math inline">\(i,j\)</span>.</p>
<p>If we act on it this state with one of the gauge operators <span
class="math inline">\(D_j = b_j^x b_j^y b_j^z c_j\)</span> we see that
<p>If we act on it, this state with one of the gauge operators <span
class="math inline">\(D_j = b_j^x b_j^y b_j^z c_j\)</span>, we see that
<span class="math inline">\(D_j\)</span> flips the value of the three
bonds <span class="math inline">\(u_{ij}\)</span> that surround site
<span class="math inline">\(k\)</span>:</p>
@ -731,13 +805,13 @@ c_j \;ib^x_i b^x_j\; b_j^x b_j^y b_j^z c_j|u\rangle\\
&amp;= -1
\end{aligned}\]</span></p>
<p>Since <span class="math inline">\(D_j\)</span> commutes with the
hamiltonian in the extended space <span
Hamiltonian in the extended space <span
class="math inline">\(\tilde{H}\)</span>, the fact that <span
class="math inline">\(D_j\)</span> flips the value of bond operators is
telling us that there is a gauge degeneracy between the ground state of
class="math inline">\(D_j\)</span> flips the value of bond operators
indicates that there is a gauge degeneracy between the ground state of
<span class="math inline">\(\tilde{H}_u\)</span> and the set of <span
class="math inline">\(\tilde{H}_{u&#39;}\)</span> related to it by gauge
transformations <span class="math inline">\(D_j\)</span>. I.e we can
transformations <span class="math inline">\(D_j\)</span>. Thus, we can
flip any three bonds around a vertex and the physics will stay the
same.</p>
<p>We can turn this into a symmetrisation procedure by taking a
@ -745,27 +819,27 @@ superposition of every possible gauge transformation. Every possible
gauge transformation is just every possible subset of <span
class="math inline">\({D_0, D_1 ... D_n}\)</span> which can be neatly
expressed as <span class="math display">\[|\phi_w\rangle = \prod_i
\left( \frac{1 + D_i}{2}\right) |\tilde{\phi}_u\rangle\]</span> this is
nice because the quantity <span class="math inline">\(\frac{1 +
\left( \frac{1 + D_i}{2}\right) |\tilde{\phi}_u\rangle\]</span> This is
convenient because the quantity <span class="math inline">\(\frac{1 +
D_i}{2}\)</span> is also the local projector onto the physical subspace.
Here <span class="math inline">\(|\phi_w\rangle\)</span> is a gauge
invariant state that lives in <span
class="math inline">\(\mathcal{L}_p\)</span> which has been constructed
from a set of states in different <span
class="math inline">\(\mathcal{L}_u\)</span>.</p>
<p>This gauge degeneracy leads nicely onto the next topic which is how
to construct a set of gauge invariant quantities out of the <span
class="math inline">\(u_{ij}\)</span>, these will turn out to just be
the plaquette operators.</p>
<p><strong>The Bond Sectors overlap with the physical subspace but are
not contained within it.</strong></p>
<p>This gauge degeneracy leads us to the next topic of discussion,
namely how to construct a set of gauge invariant quantities out of the
<span class="math inline">\(u_{ij}\)</span>, these will turn out to just
be the plaquette operators.</p>
<p>Takeaway: The Bond Sectors overlap with the physical subspace but are
not contained within it.</p>
<h3 id="open-boundary-conditions">Open boundary conditions</h3>
<p>Care must be taken in the definition of open boundary conditions.
Simply removing bonds from the lattice leaves behind unpaired <span
class="math inline">\(b^\alpha\)</span> operators that need to be paired
in some way to arrive at fermionic modes. In order to fix a pairing we
always start from a lattice defined on the torus and generate a lattice
with open boundary conditions by defining the bond coupling <span
<p>Care must be taken when defining open boundary conditions. Simply
removing bonds from the lattice leaves behind unpaired <span
class="math inline">\(b^\alpha\)</span> operators that must be paired in
some way to arrive at fermionic modes. To fix a pairing, we always start
from a lattice defined on the torus and generate a lattice with open
boundary conditions by defining the bond coupling <span
class="math inline">\(J^{\alpha}_{ij} = 0\)</span> for sites joined by
bonds <span class="math inline">\((i,j)\)</span> that we want to remove.
This creates fermionic zero modes <span
@ -774,10 +848,7 @@ which we set to 1 when calculating the projector.</p>
<p>Alternatively, since all the fermionic zero modes are degenerate
anyway, an arbitrary pairing of the unpaired <span
class="math inline">\(b^\alpha\)</span> operators could be performed.
<strong>Is is possible that a lattice constructed and coloured like this
would have unequal numbers of <span class="math inline">\(b^x\)</span>
<span class="math inline">\(b^y\)</span> and <span
class="math inline">\(b^z\)</span> operators?</strong></p>
&lt;/i,j&gt;&lt;/i,j&gt;</p>
<div id="refs" class="references csl-bib-body" data-line-spacing="2"
role="doc-bibliography">
<div id="ref-banerjeeProximateKitaevQuantum2016" class="csl-entry"
@ -811,7 +882,7 @@ role="doc-biblioentry">
class="csl-right-inline">Kitaev, A. <a
href="https://doi.org/10.1016/j.aop.2005.10.005">Anyons in an exactly
solved model and beyond</a>. <em>Annals of Physics</em>
<strong>321</strong>, 2111 (2006-01-01, 2006).</div>
<strong>321</strong>, 2111 (2006).</div>
</div>
<div id="ref-Nussinov2009" class="csl-entry" role="doc-biblioentry">
<div class="csl-left-margin">5. </div><div
@ -829,19 +900,6 @@ class="csl-right-inline">Blaizot, J.-P. &amp; Ripka, G. <em>Quantum
theory of finite systems</em>. (<span>The MIT Press</span>, 1986).</div>
</div>
</div>
<section class="footnotes footnotes-end-of-document"
role="doc-endnotes">
<hr />
<ol>
<li id="fn1" role="doc-endnote"><p>A bipartite lattice is composed of A
and B sublattices with no intra-sublattice edges i.e no A-A or B-B
edges. Any closed loop must begin and at the same site, lets say its
an A site. The loop must go A-B-A-B… until it returns to the original
site and must therefore must contain an even number of edges in order to
end on the same sublattice that it started on.<a href="#fnref1"
class="footnote-back" role="doc-backlink">↩︎</a></p></li>
</ol>
</section>
</main>
</body>
</html>

View File

@ -1,6 +1,6 @@
---
title: The Amorphous Kitaev Model - Introduction
excerpt: The methods I used to study the Amorphous Kitaev Model.
excerpt: The methods used to study the Amorphous Kitaev Model.
layout: none
image:
@ -11,7 +11,7 @@ image:
<meta charset="utf-8" />
<meta name="generator" content="pandoc" />
<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=yes" />
<meta name="description" content="The methods I used to study the Amorphous Kitaev Model." />
<meta name="description" content="The methods used to study the Amorphous Kitaev Model." />
<title>The Amorphous Kitaev Model - Introduction</title>
<!-- <style>
html {
@ -210,15 +210,15 @@ image:
<li><a href="#voronisation" id="toc-voronisation">Voronisation</a></li>
<li><a href="#graph-representation" id="toc-graph-representation">Graph
Representation</a></li>
<li><a href="#coloring-the-bonds" id="toc-coloring-the-bonds">Coloring
the Bonds</a>
<li><a href="#colouring-the-bonds"
id="toc-colouring-the-bonds">Colouring the Bonds</a>
<ul>
<li><a href="#four-colourings-and-three-colourings"
id="toc-four-colourings-and-three-colourings">Four-colourings and
three-colourings</a></li>
<li><a href="#finding-lattice-colourings-in-practice-unfinished"
id="toc-finding-lattice-colourings-in-practice-unfinished">Finding
Lattice colourings in practice (unfinished)</a></li>
<li><a href="#finding-lattice-colourings-with-minisat"
id="toc-finding-lattice-colourings-with-minisat">Finding Lattice
colourings with miniSAT</a></li>
<li><a href="#does-it-matter-which-colouring-we-choose"
id="toc-does-it-matter-which-colouring-we-choose">Does it matter which
colouring we choose?</a></li>
@ -232,181 +232,202 @@ Markers</a></li>
</ul>
</nav>
<h1 id="methods">Methods</h1>
<p>The practical implemntation of what is described in this section is
<p>The practical implementation of what is described in this section is
available as a Python package called Koala (Kitaev On Amorphous
LAttices)<span class="citation"
data-cites="tomImperialCMTHKoalaFirst2022"><sup><a
href="#ref-tomImperialCMTHKoalaFirst2022"
role="doc-biblioref">1</a></sup></span> most of the figures shown were
role="doc-biblioref">1</a></sup></span>. All results and figures were
generated with Koala.</p>
<h2 id="voronisation">Voronisation</h2>
<p>In order to study the properties of the amorphous Kitaev model we
need a way to sample from the space of possible trivalent graphs.</p>
<p>A very simple way to do this is to use a Voronoi partition of the
torus<span class="citation"
<p>To study the properties of the amorphous Kitaev model, we need to
sample from the space of possible trivalent graphs.</p>
<p>A simple method is to use a Voronoi partition of the torus<span
class="citation"
data-cites="mitchellAmorphousTopologicalInsulators2018 marsalTopologicalWeaireThorpeModels2020 florescu_designer_2009"><sup><a
href="#ref-mitchellAmorphousTopologicalInsulators2018"
role="doc-biblioref">2</a><a href="#ref-florescu_designer_2009"
role="doc-biblioref">4</a></sup></span>. We start by sampling <em>seed
points</em> uniformly (or otherwise) on the torus. We then compute the
points</em> uniformly (or otherwise) on the torus. Then, we compute the
partition of the torus into regions closest (with a Euclidean metric) to
each seed point. The straight lines (if the torus is flattened out) at
the borders of these regions become the edges of the new lattice and the
points where they intersect beceme the vertices.</p>
the borders of these regions become the edges of the new lattice. The
points where they intersect become the vertices.</p>
<p>The graph generated by a Voronoi partition of a two dimensional
surface is always planar meaning that no edges cross eachother when the
graph is embedded into the plane. It is also trivalent in the sense that
every vertex is connected to exactly three edges
<strong>cite</strong>.</p>
<p>Ideally we might instead sample uniformly from the space of possible
trivalent graphs, and indeed there has been some work on how to do this
surface is always planar. This means that no edges cross each other when
the graph is embedded into the plane. It is also trivalent in that every
vertex is connected to exactly three edges <strong>cite</strong>.</p>
<p>Ideally, we would sample uniformly from the space of possible
trivalent graphs. Indeed, there has been some work on how to do this
using a Markov Chain Monte Carlo approach<span class="citation"
data-cites="alyamiUniformSamplingDirected2016"><sup><a
href="#ref-alyamiUniformSamplingDirected2016"
role="doc-biblioref">5</a></sup></span>, however it does not gurantee
that the resulting graph is planar which we will need to ensure that the
role="doc-biblioref">5</a></sup></span>. However, it does not guarantee
that the resulting graph is planar, which we must ensure so that the
edges can be 3-coloured.</p>
<p>In practice, we then use a standard algorithm<span class="citation"
<p>In practice, we use a standard algorithm<span class="citation"
data-cites="barberQuickhullAlgorithmConvex1996"><sup><a
href="#ref-barberQuickhullAlgorithmConvex1996"
role="doc-biblioref">6</a></sup></span> from scipy<span class="citation"
role="doc-biblioref">6</a></sup></span> from Scipy<span class="citation"
data-cites="virtanenSciPyFundamentalAlgorithms2020a"><sup><a
href="#ref-virtanenSciPyFundamentalAlgorithms2020a"
role="doc-biblioref">7</a></sup></span> which actually computes the
Voronoi partition of the plane. In order to compute the Voronoi
partition of the torus, I take the seed points and replicate them into a
repeating grid, either 3x3 (or for very small numbers of seed points
5x5). I then identify edges in the output to construct a lattice on the
torus.</p>
role="doc-biblioref">7</a></sup></span> which computes the Voronoi
partition of the plane. To compute the Voronoi partition of the torus,
we take the seed points and replicate them into a repeating grid. This
will be either 3x3 or, for very small numbers of seed points, 5x5. Then,
we identify edges in the output to construct a lattice on the torus.</p>
<div id="fig:lattice_construction_animated" class="fignos">
<figure>
<img
src="/assets/thesis/figure_code/amk_chapter/lattice_construction_animated/lattice_construction_animated.gif"
style="width:100.0%"
alt="Figure 1: (Left) Lattice construction begins with the Voronoi partition of the plane with respect to a set of seed points (black points) sampled uniformly from \mathbb{R}^2. (Center) However we actually want the Voronoi partition of the torus so we tile the seed points into a three by three grid. The boundaries of each tile are shown in light grey. (Right) Finally we indentify edges correspond to each other across the boundaries to produce a graph on the torus. An edge colouring is shown here to help the reader identify corresponding edges." />
alt="Figure 1: (Left) Lattice construction begins with the Voronoi partition of the plane with respect to a set of seed points (black points) sampled uniformly from \mathbb{R}^2. (Center) However, we want the Voronoi partition of the torus, so we tile the seed points into a three by three grid. The boundaries of each tile are shown in light grey. (Right) Finally, we identify edges corresponding to each other across the boundaries to produce a graph on the torus. An edge colouring is shown here to help the reader identify corresponding edges." />
<figcaption aria-hidden="true"><span>Figure 1:</span> (Left) Lattice
construction begins with the Voronoi partition of the plane with respect
to a set of seed points (black points) sampled uniformly from <span
class="math inline">\(\mathbb{R}^2\)</span>. (Center) However we
actually want the Voronoi partition of the torus so we tile the seed
points into a three by three grid. The boundaries of each tile are shown
in light grey. (Right) Finally we indentify edges correspond to each
other across the boundaries to produce a graph on the torus. An edge
colouring is shown here to help the reader identify corresponding
class="math inline">\(\mathbb{R}^2\)</span>. (Center) However, we want
the Voronoi partition of the torus, so we tile the seed points into a
three by three grid. The boundaries of each tile are shown in light
grey. (Right) Finally, we identify edges corresponding to each other
across the boundaries to produce a graph on the torus. An edge colouring
is shown here to help the reader identify corresponding
edges.</figcaption>
</figure>
</div>
<h2 id="graph-representation">Graph Representation</h2>
<p>There are three keys pieces of information that we use to represent
amorphous lattices.</p>
<p>Three keys pieces of information allow us to represent amorphous
lattices.</p>
<p>Most of the graph connectivity is encoded by an ordered list of edges
<span class="math inline">\((i,j)\)</span>. These are ordered so that we
can represent both directed and undirected graphs which is useful for
<span class="math inline">\((i,j)\)</span>. These are ordered to
represent both directed and undirected graphs. This is useful for
defining the sign of bond operators <span class="math inline">\(u_{ij} =
- u_{ji}\)</span>.</p>
<p>Information about the embedding of the lattice onto the torus is
encoded into a point on the unit square associated with each vertex. The
torus is unwrapped onto the square by defining an arbitary pair of cuts
along the major and minor axes which for simplicity we take to be the
lines <span class="math inline">\(x = 0\)</span> and <span
torus is unwrapped onto the square by defining an arbitrary pair of cuts
along the major and minor axes. For simplicity, we take these axes to be
the lines <span class="math inline">\(x = 0\)</span> and <span
class="math inline">\(y = 0\)</span>. We can wrap the unit square back
up into a torus by identifying the lines <span class="math inline">\(x =
0\)</span> with <span class="math inline">\(x = 1\)</span> and <span
class="math inline">\(y = 0\)</span> with <span class="math inline">\(y
= 1\)</span>.</p>
<p>Finally, we need a way to encode the topology of the graph. We need
this because given simply an edge <span class="math inline">\((i,
j)\)</span> we do not know how the edge gets from vertex i to vertex j.
It could do so by taking the shortest path but it could also go the
long way around by crossing one of the cuts. To encode this information
we store an additional vector <span
<p>Finally, we need to encode the topology of the graph. This is
necessary because, if we are simply given an edge <span
class="math inline">\((i, j)\)</span> we do not know how the edge gets
from vertex i to vertex j. One method would be taking the shortest path,
but it could also go the long way around by crossing one of the cuts.
To encode this information, we store an additional vector <span
class="math inline">\(\vec{r}\)</span> associated with each edge. <span
class="math inline">\(r_i^x = 0\)</span> means that edge i does not
cross the x while <span class="math inline">\(r_i^x = +1\)</span> (<span
cross the x. <span class="math inline">\(r_i^x = +1\)</span> (<span
class="math inline">\(-1\)</span>) means it crossed the cut in a
positive (negative) sense.</p>
<p>This description of the lattice has a very nice relationship to
Blochs theorem. When you apply Blochs theorem to a periodic lattice
you essentially wrap the unit cell onto a torus. Variations that happen
at longer length scales than the size of the unit cell are captured by
the crystal momentum which inserts a phase factor <span
class="math inline">\(e^{i \vec{q}\cdot\vec{r}}\)</span> onto bonds that
cross to adjacent unit cells. The vector <span
Blochs theorem. Applying Blochs theorem to a periodic lattice
essentially means wrappping the unit cell onto a torus. Variations that
happen at longer length scales than the size of the unit cell are
captured by the crystal momentum. The crystal momentum inserts a phase
factor <span class="math inline">\(e^{i \vec{q}\cdot\vec{r}}\)</span>
onto bonds that cross to adjacent unit cells. The vector <span
class="math inline">\(\vec{r}\)</span> is exactly what we use to encode
the topology of our lattices.</p>
<div id="fig:bloch" class="fignos">
<figure>
<img src="/assets/thesis/figure_code/amk_chapter/methods/bloch.png"
style="width:57.0%"
alt="Figure 2: Blochs theorem can be thought of as transforming from a periodic Hamiltonian on the place to the unit cell defined an torus. In addition we get some phase factors e^{i\vec{k}\cdot\vec{r}} associated with bonds that cross unit cells that depend on the sense in which they do so \vec{r} = (\pm1, \pm1). Representing graphs on the torus turns out to require a similar idea, we unwrap the torus to one unit cell and keep track of which bonds cross the cell boundaries." />
<figcaption aria-hidden="true"><span>Figure 2:</span> Blochs theorem
can be thought of as transforming from a periodic Hamiltonian on the
place to the unit cell defined an torus. In addition we get some phase
factors <span class="math inline">\(e^{i\vec{k}\cdot\vec{r}}\)</span>
associated with bonds that cross unit cells that depend on the sense in
which they do so <span class="math inline">\(\vec{r} = (\pm1,
\pm1)\)</span>. Representing graphs on the torus turns out to require a
similar idea, we unwrap the torus to one unit cell and keep track of
which bonds cross the cell boundaries.</figcaption>
</figure>
</div>
<h2 id="colouring-the-bonds">Colouring the Bonds</h2>
<div id="fig:multiple_colourings" class="fignos">
<figure>
<img
src="/assets/thesis/figure_code/267780ca-5f0c-4bda-b0ea-0cef1168c512.png"
alt="image.png" />
<figcaption aria-hidden="true">image.png</figcaption>
src="/assets/thesis/figure_code/amk_chapter/multiple_colourings/multiple_colourings.svg"
style="width:100.0%"
alt="Figure 3: Three different valid 3-edge-colourings of amorphous lattices. Colors that differ from the leftmost panel are highlighted." />
<figcaption aria-hidden="true"><span>Figure 3:</span> Three different
valid 3-edge-colourings of amorphous lattices. Colors that differ from
the leftmost panel are highlighted.</figcaption>
</figure>
<h2 id="coloring-the-bonds">Coloring the Bonds</h2>
<p>The Kitaev model requires that each edge in the lattice be assigned a
</div>
<p>The Kitaev Model requires that each edge in the lattice be assigned a
label <span class="math inline">\(x\)</span>, <span
class="math inline">\(y\)</span> or <span
class="math inline">\(z\)</span> such that each vertex has exactly one
class="math inline">\(z\)</span>, such that each vertex has exactly one
edge of each type connected to it. Let <span
class="math inline">\(\Delta\)</span> be the maximum degree of a graph
which in our case is 3. If <span class="math inline">\(\Delta &gt;
3\)</span> it is obviously not possible to 3 color the edges but the
general theory of when this is and isnt possible for graphs with <span
class="math inline">\(\Delta \leq 3\)</span> is more subtle.</p>
which, in our case, is 3. If <span class="math inline">\(\Delta &gt;
3\)</span>, it is obviously not possible to three-colour the edges.
However, the general theory of when this is and is not possible for
graphs with <span class="math inline">\(\Delta \leq 3\)</span> is more
subtle.</p>
<p>In the graph theory literature, graphs where all vertices have degree
3 are commonly called cubic graphs, there is no term for graphs with
maximum degree 3. Planar graphs are those that can be embedded onto the
plane without any edges crossing. Bridgeless graphs do not contain any
edges that, when removed, would partition the graph into disconnected
components.</p>
<p>Its important to be clear that this problem is different from that
considered by the famous 4 color theorem<span class="citation"
three are commonly called cubic graphs. There is no term for graphs with
maximum degree three. Planar graphs are graphs which can be embedded
onto the plane without any edges crossing. Bridgeless graphs do not
contain any edges that, when removed, would partition the graph into
disconnected components.</p>
<p>This problem must be distinguished from that considered by the famous
four-colour theorem<span class="citation"
data-cites="appelEveryPlanarMap1989"><sup><a
href="#ref-appelEveryPlanarMap1989"
role="doc-biblioref">8</a></sup></span> . The 4 color thorem is
concerned with assiging colours to the <strong>vertices</strong> of a
graph such that no vertices that share an edge are the same colour. Here
we are concerned with an edge colouring.</p>
<p>The four color theorem applies to planar graphs, those that can be
embedded onto the plane without any edges crossing. Here we are actually
concerned with Toroidal graphs which can be embedded onto the torus
without any edges crossing. In fact toroidal graphs require up to 7
colors<span class="citation"
role="doc-biblioref">8</a></sup></span> . The 4-colour theorem is
concerned with assigning colours to the <strong>vertices</strong> of a
graph, such that no vertices that share an edge have the same colour.
Here we are concerned with an edge colouring.</p>
<p>The four-colour theorem applies to planar graphs, those that can be
embedded onto the plane without any edges crossing. Here we are
concerned with Toroidal graphs, which can be embedded onto the torus
without any edges crossing. In fact, toroidal graphs require up to seven
colours<span class="citation"
data-cites="heawoodMapColouringTheorems"><sup><a
href="#ref-heawoodMapColouringTheorems"
role="doc-biblioref">9</a></sup></span> . The complete graph <span
role="doc-biblioref">9</a></sup></span>. The complete graph <span
class="math inline">\(K_7\)</span> is a good example of a toroidal graph
that requires 7 colours.</p>
that requires seven colours.</p>
<p><span class="math inline">\(\Delta + 1\)</span> colours are enough to
edge-colour any graph and there is an <span
class="math inline">\(\mathcal{O}(mn)\)</span> algorithm to do it for a
graph with <span class="math inline">\(m\)</span> edges and <span
edge-colour any graph. An <span
class="math inline">\(\mathcal{O}(mn)\)</span> algorithm exists to do it
for a graph with <span class="math inline">\(m\)</span> edges and <span
class="math inline">\(n\)</span> vertices<span class="citation"
data-cites="gEstimateChromaticClass1964"><sup><a
href="#ref-gEstimateChromaticClass1964"
role="doc-biblioref">10</a></sup></span>. Restricting ourselves to
graphs with <span class="math inline">\(\Delta = 3\)</span> like ours,
those can be 4-edge-coloured in linear time<span class="citation"
those can be four-edge-coloured in linear time<span class="citation"
data-cites="skulrattanakulchai4edgecoloringGraphsMaximum2002"><sup><a
href="#ref-skulrattanakulchai4edgecoloringGraphsMaximum2002"
role="doc-biblioref">11</a></sup></span> .</p>
<p>Its trickier if we want to 3-edge-colour them however. Cubic, planar
bridgeless graphs can be 3-edge-coloured if and only if they can be
4-face-coloured<span class="citation"
<p>However, three-edge-colouring them is more difficult. Cubic, planar,
bridgeless graphs can be three-edge-coloured if and only if they can be
four-face-coloured<span class="citation"
data-cites="tait1880remarks"><sup><a href="#ref-tait1880remarks"
role="doc-biblioref">12</a></sup></span> . For which there is an <span
role="doc-biblioref">12</a></sup></span>. An <span
class="math inline">\(\mathcal{O}(n^2)\)</span> algorithm
robertson1996efficiently . However it is not clear whether this extends
to cubic, <strong>toroidal</strong> bridgeless graphs.</p>
robertson1996efficiently exists here. However, it is not clear whether
this extends to cubic, <strong>toroidal</strong> bridgeless graphs.</p>
<h3 id="four-colourings-and-three-colourings">Four-colourings and
three-colourings</h3>
<p>The proof of that 4-face-colourablity implies 3-edge-colourability
can be sketched out quite easily: 1. Assume the faces of G can be
4-coloured with labels (0,1,2,3) 2. Label each edge of G according to
<span class="math inline">\(i + j \mathrm{mod} 3\)</span> where i and j
<p>A four-face-colouring can be converted into a three-edge-colouring
quite easily: 1. Assume the faces of G can be four-coloured with labels
(0,1,2,3) 2. Label each edge of G according to <span
class="math inline">\(i + j \;\textrm{mod}\; 3\)</span> where i and j
are the labels of the face adjacent to that edge. For each edge label
there are two face label pairs that do not share any face labels. i,e
the edge label <span class="math inline">\(0\)</span> can come about
either from faces <span class="math inline">\(0 + 3\)</span> or <span
class="math inline">\(1 + 2\)</span>.</p>
<p>Explicitly, the mapping from face labels to edge labels is:</p>
<p><span class="math display">\[\begin{aligned}
0 + 3 \;\mathrm{or}\; 1 + 2 &amp;= 0 \;\mathrm{mod}\; 3\\
0 + 1 \;\mathrm{or}\; 2 + 3 &amp;= 1 \;\mathrm{mod}\; 3\\
@ -414,165 +435,220 @@ class="math inline">\(1 + 2\)</span>.</p>
\end{aligned}
\]</span></p>
<ol start="3" type="1">
<li>In a cubic planar G, a vertex v in G is always part of 3 faces and
the colors of those faces determines the colors of the edges that
connect to v. The three faces must take three distinct colors from
(0,1,2,3).</li>
<li>From theres easy to convince yourself that those three distinct
<li><p>In a cubic planar G, a vertex v in G is always part of three
faces and the colours of those faces determine the colours of the edges
that connect to v. The three faces must take three distinct colours from
the set <span class="math inline">\(\{0,1,2,3\}\)</span>.</p></li>
<li><p>From there, one can easily be convinced that those three distinct
face colours can never produce repeated edge colours according to the
<span class="math inline">\(i+j \;\mathrm{mod}\; 3\)</span> rule.</li>
<span class="math inline">\(i+j \;\mathrm{mod}\; 3\)</span>
rule.</p></li>
</ol>
<p>This implies that all cubic planar graphs are 3-edge-colourable. It
does not apply to toroidcal graphs, however I have not yet generated a
voronoi lattices on the torus that is not 3-edge-colourable. This
suggests that perhaps voronoi lattices have additional structure that
makes them 3-edge-colourable. Intuitively, the kinds of toroidal graphs
that cannot be 3-edge-coloured look as if they could never be generated
by a voronoi partition with more than a few seed points.</p>
<h3 id="finding-lattice-colourings-in-practice-unfinished">Finding
Lattice colourings in practice (unfinished)</h3>
<p>Some things are harder in theory than in practice. 3-edge-colouring
cubic toroidal graphs appears to be one of those things.</p>
<p>The approach I take is relatively standard in the computer science
community for solving NP problems computationally. I dont believe this
problem to be in NP but I tried it anyway.</p>
<p>The trick is to map the problem on into a Boolean Satisfiability
SAT problem<span class="citation" data-cites="Karp1972"><sup><a
href="#ref-Karp1972" role="doc-biblioref">13</a></sup></span>, use an
off the shelf solver, <code>MiniSAT</code><span class="citation"
<p>This implies that all cubic planar graphs are three-edge-colourable.
This does not apply to toroidal graphs. We have not yet generated a
Voronoi lattices on the torus that is not three-edge-colourable. This
suggests that Voronoi lattices may have additional structures that make
them three-edge-colourable. Intuitively, it seems that the kinds of
toroidal graphs that cannot be three-edge-coloured could never be
generated by a Voronoi partition with more than a few seed points.</p>
<h3 id="finding-lattice-colourings-with-minisat">Finding Lattice
colourings with miniSAT</h3>
<p>Some issues are harder in theory than in practice.
Three-edge-colouring cubic toroidal graphs appears to be one of those
things.</p>
<p>To find colourings, we use a <em>SAT solver</em>. A boolean
satisfiability, or SAT problem, takes a set statement about some number
of boolean variables , such as “<span class="math inline">\(x_1\)</span>
or not <span class="math inline">\(x_3\)</span> is true”, and looks for
an assignment <span class="math inline">\(x_i \in {0,1}\)</span> that
satisfies all the statements<span class="citation"
data-cites="Karp1972"><sup><a href="#ref-Karp1972"
role="doc-biblioref">13</a></sup></span>.</p>
<p>General purpose, high performance programs for solving SAT problems
have been an area of active research for decades<span class="citation"
data-cites="alounehComprehensiveStudyAnalysis2019"><sup><a
href="#ref-alounehComprehensiveStudyAnalysis2019"
role="doc-biblioref">14</a></sup></span>. Such programs are useful
because, by the Cook-Levin theorem, any NP problem can be encoded in
polynomial time as an instance of a SAT problem<span class="citation"
data-cites="cookComplexityTheoremprovingProcedures1971 levin1973universal"><sup><a
href="#ref-cookComplexityTheoremprovingProcedures1971"
role="doc-biblioref">15</a>,<a href="#ref-levin1973universal"
role="doc-biblioref">16</a></sup></span>.</p>
<p>Thus, it is a relatively standard technique in the computer science
community to solve NP problems by first transforming them to SAT
instances and then using an off the shelf SAT solver. The output of this
can then be mapped back to the original problem domain.</p>
<p>NP problems can be loosely considered as those which do not have a
special structure than can be exploited to compute their solution in
polynomial time. Our three-edge-colouring problem is likely not in NP.
However, since we do not know what special structure it might have that
could be used to speed up its solution, using a SAT solver appears to be
a reasonable first method to try. As will be discussed later, this
turned out to work well enough and looking for a better solution was not
necessary.</p>
<p>We use a solver called <code>MiniSAT</code><span class="citation"
data-cites="imms-sat18"><sup><a href="#ref-imms-sat18"
role="doc-biblioref">14</a></sup></span>, and finally to map the problem
back to the original domain. While SAT solvers are very general, they
are also highly optimised and they do seem to yield good results for
this problem.</p>
<p>SAT solvers encode problems as constraints on some number of boolean
variables <span class="math inline">\(x_i \in {0,1}\)</span>. The
constraints must Conjunctive Normal Form (CNF). CNF means the
constraints are encoded as a set of clauses of the form <span
class="math display">\[x_1 \;\textrm{or}\; \bar{x}_3 \;\textrm{or}\;
x_5\]</span> that containt logical ORs of some subset of the variables
where any of the variables may also be logical NOTd which I represent
by over bars here.</p>
role="doc-biblioref">17</a></sup></span>. Like most modern SAT solvers,
<code>MiniSAT</code> requires the input problem to be specified in
Conjunctive Normal Form (CNF). CNF requires that the constraints be
encoded as a set of <em>clauses</em> of the form <span
class="math display">\[x_1 \;\textrm{or}\; -x_3 \;\textrm{or}\;
x_5\]</span> that contain logical ORs of some subset of the variables
where any of the variables may also be logically NOTd, which we
represent by negation here.</p>
<p>A solution of the problem is one that makes all the clauses
simultaneously true.</p>
<p>I encode the edge colouring problem as a set of statements about a
set of boolean variables <span class="math inline">\(x_i \in
{0,1}\)</span>. For <span class="math inline">\(B\)</span> bonds we take
the <span class="math inline">\(3B\)</span> variables <span
<p>We encode the edge colouring problem by assigning <span
class="math inline">\(3B\)</span> boolean variables to each of the <span
class="math inline">\(B\)</span> edges of the graph, <span
class="math inline">\(x_{i\alpha}\)</span> where <span
class="math inline">\(x_{i\alpha} = 1\)</span> indicates that edge <span
class="math inline">\(i\)</span> has colour <span
class="math inline">\(\alpha\)</span>.</p>
<p>For edge colouring graphs we need two kinds of constraints: 1. Each
<p>For edge colouring graphs we need two types of constraints: 1. Each
edge is exactly one colour. 2. No neighbouring edges are the same
color.</p>
<p>The first constraint is a kind of artifact of doing this mapping over
to boolean variables, the solver doesnt know anything about the
structure of the problem unless it is encoded into the variables.</p>
<p>The second constraint encodes the structure of the graph itself and
can be constructed easily from the adjacency matrix.</p>
<p>Ill fill in the encoding later but the gist is that we can give this
to a solver and get back: whether the problem is solveable, a solution
or all the possible solutions. Finding a solution is relatively fast,
while finding all the solutions is slower since there appear to be
exponentially many of them. Fig <span
class="math inline">\(\ref{fig:multiple_colourings}\)</span> shows some
examples.</p>
<div id="fig:multiple_colourings" class="fignos">
colour.</p>
<p>The first constraint is a product of doing this mapping to boolean
variables. The solver does not know anything about the structure of the
problem unless it is encoded into the variables.</p>
<p>Lets say we have three variables that correspond to particular edge
being red <span class="math inline">\(r\)</span>, green <span
class="math inline">\(g\)</span> or blue <span
class="math inline">\(b\)</span>.</p>
<p>To require that exactly one of the variables be true, we can enforce
that no pair of variables be true:
<code>-(r and b) -(r and g) -(b and g)</code></p>
<p>However, these clauses are not in CNF form. Therefore, we also have
to use the fact that <code>-(a and b) = (-a OR -b)</code>. To enforce
that at least one of these is true we simply OR them all together
<code>(r or b or g)</code></p>
<p>To encode the fact that no adjacent edges can have the same colour,
we emit a clause that, for each pair of adjacent edges, they cannot be
both red, both green or both blue.</p>
<p>We get a solution or set of solutions from the solver, which we can
map back to a labelling of the edges. fig. <a
href="#fig:multiple_colourings">3</a> shows some examples.</p>
<p>The solution presented here works well enough for our purposes. It
does not take up a substantial fraction of the overall computation time,
see +fig:times but other approaches could likely work.</p>
<p>When translating problems to CNF form, there is often some
flexibility. For instance, we used three boolean variables to encode the
colour of each edge and, then, additional constraints to require that
only one of these variables be true. An alternative method which we did
not try would be to encode the label of each edge using two variables,
yielding four states per edge, and then add a constraint that one of the
states, say (true, true) is disallowed. This would, however, have added
some complexity to the encoding of the constraint that no adjacent edges
can have the same colour.</p>
<p>The popular <em>Networkx</em> Python library uses a greedy graph
colouring algorithm. It simply iterates over the vertices/edges/faces of
a graph and assigns them a colour that is not already disallowed. This
does not work for our purposes because it is not designed to look for a
particular n-colouring. However, it does include the option of using a
heuristic function that determine the order in which vertices will be
coloured<span class="citation"
data-cites="kosowski2004classical matulaSmallestlastOrderingClustering1983"><sup><a
href="#ref-kosowski2004classical" role="doc-biblioref">18</a>,<a
href="#ref-matulaSmallestlastOrderingClustering1983"
role="doc-biblioref">19</a></sup></span>. Perhaps</p>
<div id="fig:times" class="fignos">
<figure>
<img
src="/assets/thesis/figure_code/amk_chapter/multiple_colourings/multiple_colourings.svg"
src="/assets/thesis/figure_code/amk_chapter/methods/times/times.svg"
style="width:100.0%"
alt="Figure 2: Three different valid 3-edge-colourings of amorphous lattices. Colors that differ from the leftmost panel are highlighted." />
<figcaption aria-hidden="true"><span>Figure 2:</span> Three different
valid 3-edge-colourings of amorphous lattices. Colors that differ from
the leftmost panel are highlighted.</figcaption>
alt="Figure 4: The proportion of computation time taken up by the four longest running steps when generating a lattice. For larger systems, the time taken to perform the diagonalisation dominates." />
<figcaption aria-hidden="true"><span>Figure 4:</span> The proportion of
computation time taken up by the four longest running steps when
generating a lattice. For larger systems, the time taken to perform the
diagonalisation dominates.</figcaption>
</figure>
</div>
<h3 id="does-it-matter-which-colouring-we-choose">Does it matter which
colouring we choose?</h3>
<p>In the isotropic case <span class="math inline">\(J^\alpha =
1\)</span> it is easy to show that it cant possibly make a difference.
As the choice of how we define the four Majoranas at a site is arbitrary
we can define a local operator that tranforms the colouring of any
particular site to another permutation. The operators commute with the
Hamiltonian and by composing such operators we can tranform the
Hamiltonian generated by one colouring into that generated by
another.</p>
<p>We cant do this in the anisotropic case however, and it remains an
open question whether particular physical properties could arise by
1\)</span>, it is easy to show that choosing a particular valid
colouring cannot make a difference. As the choice of how we define the
four Majoranas at a site is arbitrary, we can define a local operator
that transforms the colouring of any particular site to another
permutation. The operators commute with the Hamiltonian and, by
composing such operators, we can transform the Hamiltonian generated by
one colouring into that generated by another.</p>
<p>We cannot do this in the anisotropic case. It remains an open
question whether particular physical properties could arise by
engineering the colouring in this phase.</p>
<h2 id="mapping-between-flux-sectors-and-bond-sectors">Mapping between
flux sectors and bond sectors</h2>
<p>Constructing the Majorana representation of the model requires the
particular bond configuration <span class="math inline">\(u_{jk} = \pm
1\)</span>. However the large number of gauge symmetries of the bond
sector make it unwieldly to work with. We therefore need a way to
1\)</span>. However, the large number of gauge symmetries of the bond
sector makes it unwieldy to work with. Therefore, we need a way to
quickly map between bond sectors and flux sectors.</p>
<p>Going from the bond sector to flux sector is easy since we can
compute it directly by taking the product of <span
class="math inline">\(i u_{jk}\)</span> around each plaquette <span
class="math display">\[ \phi_i = \prod_{(j,k) \; \in \; \partial \phi_i}
i u_{jk}\]</span></p>
<p>Going from flux sector to bond sector requires more thought however.
The algorithm I use is this:</p>
<p>Going from the bond sector to flux sector is easy. We can compute it
directly by taking the product of <span class="math inline">\(i
u_{jk}\)</span> around each plaquette <span class="math display">\[
\phi_i = \prod_{(j,k) \; \in \; \partial \phi_i} i u_{jk}\]</span></p>
<p>Going from flux sector to bond sector requires more thought. The
algorithm we use is this:</p>
<ol type="1">
<li><p>Fix the gauge by choosing some arbitrary <span
class="math inline">\(u_{jk}\)</span> configuration. In practice I use
class="math inline">\(u_{jk}\)</span> configuration. In practice, we use
<span class="math inline">\(u_{jk} = +1\)</span>. This chooses an
arbitrary one of the 4 topological sectors.</p></li>
arbitrary one of the four topological sectors.</p></li>
<li><p>Compute the current flux configuration and how it differs from
the target one. Lets call an plaquette that differs from the target a
defect.</p></li>
the target one. We refer to a plaquette that differs from the target as
a “defect.</p></li>
<li><p>Find any adjacent pairs of defects and flip the <span
class="math inline">\(u_jk\)</span> between them. This leaves a set of
isolated defects.</p></li>
<li><p>Pair the defects up using a greedy algorithm.</p></li>
<li><p>Compute paths along the dual lattice between each pair of
plaquettes. Flipping the corresponding set of <span
class="math inline">\(u_{jk}\)</span> transports one flux to the other
and anhilates them.</p></li>
plaquettes. Flipping the corresponding set of bonds transports one flux
to the other and annihilates them.</p></li>
</ol>
<div id="fig:flux_finding" class="fignos">
<figure>
<img
src="/assets/thesis/figure_code/amk_chapter/flux_finding/flux_finding.svg"
style="width:100.0%"
alt="Figure 3: (Left) The ground state flux sector and bond sector for an amorphous lattice. Bond arrows indicate the direction in which u_{jk} = +1. Plaquettes are coloured blue when \hat{\phi}_i = -1 (-i) for even (odd) plaquettes and orange when \hat{\phi}_i = +1 (+i) for even/odd plaquettes. (Centre) In order to transform this to the target flux sector (all +1/+i) we first flip any u_{jk} that are between two fluxes. This leaves a set of isolated fluxes that need to be anhilated. These are then paired up as indicated by the black lines. (Right) A* search is used to find paths (coloured plaquettes) on the dual lattice between each pair of fluxes and the coresponding u_{jk} (shown in black) are flipped. One flux has will remain because the starting and target flux sectors differed by an odd number of fluxes." />
<figcaption aria-hidden="true"><span>Figure 3:</span> (Left) The ground
alt="Figure 5: (Left) The ground state flux sector and bond sector for an amorphous lattice. Bond arrows indicate the direction in which u_{jk} = +1. Plaquettes are coloured blue when \hat{\phi}_i = -1 (-i) for even/odd plaquettes and orange when \hat{\phi}_i = +1 (+i) for even/odd plaquettes. (Centre) To transform this to the target flux sector (all +1/+i), we first flip any u_{jk} that are between two fluxes. This leaves a set of isolated fluxes that must be annihilated. Then, these are paired up as indicated by the black lines. (Right) A* search is used to find paths (coloured plaquettes) on the dual lattice between each pair of fluxes and the corresponding u_{jk} (shown in black) are flipped. One flux will remain because the starting and target flux sectors differed by an odd number of fluxes." />
<figcaption aria-hidden="true"><span>Figure 5:</span> (Left) The ground
state flux sector and bond sector for an amorphous lattice. Bond arrows
indicate the direction in which <span class="math inline">\(u_{jk} =
+1\)</span>. Plaquettes are coloured blue when <span
class="math inline">\(\hat{\phi}_i = -1\)</span> (<span
class="math inline">\(-i\)</span>) for even (odd) plaquettes and orange
class="math inline">\(-i\)</span>) for even/odd plaquettes and orange
when <span class="math inline">\(\hat{\phi}_i = +1\)</span> (<span
class="math inline">\(+i\)</span>) for even/odd plaquettes. (Centre) In
order to transform this to the target flux sector (all <span
class="math inline">\(+i\)</span>) for even/odd plaquettes. (Centre) To
transform this to the target flux sector (all <span
class="math inline">\(+1\)</span>/<span
class="math inline">\(+i\)</span>) we first flip any <span
class="math inline">\(+i\)</span>), we first flip any <span
class="math inline">\(u_{jk}\)</span> that are between two fluxes. This
leaves a set of isolated fluxes that need to be anhilated. These are
then paired up as indicated by the black lines. (Right) A* search is
used to find paths (coloured plaquettes) on the dual lattice between
each pair of fluxes and the coresponding <span
leaves a set of isolated fluxes that must be annihilated. Then, these
are paired up as indicated by the black lines. (Right) A* search is used
to find paths (coloured plaquettes) on the dual lattice between each
pair of fluxes and the corresponding <span
class="math inline">\(u_{jk}\)</span> (shown in black) are flipped. One
flux has will remain because the starting and target flux sectors
differed by an odd number of fluxes.</figcaption>
flux will remain because the starting and target flux sectors differed
by an odd number of fluxes.</figcaption>
</figure>
</div>
<h2 id="chern-markers">Chern Markers</h2>
<p>We know that the standard Kitaev model supports both Abelian and
non-Abelian phases, so how can we assess whether this is also the case
for the amorphous Kitaev model?</p>
non-Abelian phases. Therefore, how can we assess whether this is also
the case for the amorphous Kitaev model?</p>
<p>We have already discussed the fact that topology and anyonic
statistics are intimately linked and this will help here. The Chern
number is a quantity that measured the topological characteristics of a
statistics are intimately linked. This will help here. The Chern number
is a quantity that measures the topological characteristics of a
material.</p>
<p>The original definition of the Chern number relies on the model
having translation symmetry. This lead to the development of <em>local
markers</em>, these are operators defined locally that generalise the
notion of the chern number to a local observable over some region
smaller than the entire system.</p>
having translation symmetry. This leads to the development of <em>local
markers</em>. These are operators that generalise the notion of the
Chern number to an observable over some region smaller than the entire
system.</p>
<p><strong>Expand on definition here</strong></p>
<p><strong>Discuss link between Chern number and Anyonic
Statistics</strong></p>
<div id="refs" class="references csl-bib-body" data-line-spacing="2"
role="doc-bibliography">
<div id="ref-tomImperialCMTHKoalaFirst2022" class="csl-entry"
@ -677,14 +753,55 @@ R. E., Thatcher, J. W. &amp; Bohlinger, J. D.) 85103 (<span>Springer
US</span>, 1972). doi:<a
href="https://doi.org/10.1007/978-1-4684-2001-2_9">10.1007/978-1-4684-2001-2_9</a>.</div>
</div>
<div id="ref-imms-sat18" class="csl-entry" role="doc-biblioentry">
<div id="ref-alounehComprehensiveStudyAnalysis2019" class="csl-entry"
role="doc-biblioentry">
<div class="csl-left-margin">14. </div><div
class="csl-right-inline">Alouneh, S., Abed, S., Al Shayeji, M. H. &amp;
Mesleh, R. <a href="https://doi.org/10.1007/s10462-018-9628-0">A
comprehensive study and analysis on <span
class="nocase">SAT-solvers</span>: Advances, usages and
achievements</a>. <em>Artif Intell Rev</em> <strong>52</strong>,
25752601 (2019).</div>
</div>
<div id="ref-cookComplexityTheoremprovingProcedures1971"
class="csl-entry" role="doc-biblioentry">
<div class="csl-left-margin">15. </div><div
class="csl-right-inline">Cook, S. A. The complexity of theorem-proving
procedures. in <em>Proceedings of the third annual <span>ACM</span>
symposium on <span>Theory</span> of computing</em> 151158
(<span>Association for Computing Machinery</span>, 1971). doi:<a
href="https://doi.org/10.1145/800157.805047">10.1145/800157.805047</a>.</div>
</div>
<div id="ref-levin1973universal" class="csl-entry"
role="doc-biblioentry">
<div class="csl-left-margin">16. </div><div
class="csl-right-inline">Levin, L. A. Universal sequential search
problems. <em>Problemy peredachi informatsii</em> <strong>9</strong>,
115116 (1973).</div>
</div>
<div id="ref-imms-sat18" class="csl-entry" role="doc-biblioentry">
<div class="csl-left-margin">17. </div><div
class="csl-right-inline">Ignatiev, A., Morgado, A. &amp; Marques-Silva,
J. <span>PySAT</span>: <span>A Python</span> toolkit for prototyping
with <span>SAT</span> oracles. in <em><span>SAT</span></em> 428437
(2018). doi:<a
href="https://doi.org/10.1007/978-3-319-94144-8_26">10.1007/978-3-319-94144-8_26</a>.</div>
</div>
<div id="ref-kosowski2004classical" class="csl-entry"
role="doc-biblioentry">
<div class="csl-left-margin">18. </div><div
class="csl-right-inline">Kosowski, A. &amp; Manuszewski, K. Classical
coloring of graphs. <em>Contemporary Mathematics</em>
<strong>352</strong>, 120 (2004).</div>
</div>
<div id="ref-matulaSmallestlastOrderingClustering1983" class="csl-entry"
role="doc-biblioentry">
<div class="csl-left-margin">19. </div><div
class="csl-right-inline">Matula, D. W. &amp; Beck, L. L. <a
href="https://doi.org/10.1145/2402.322385">Smallest-last ordering and
clustering and graph coloring algorithms</a>. <em>J. ACM</em>
<strong>30</strong>, 417427 (1983).</div>
</div>
</div>
</main>
</body>

File diff suppressed because it is too large Load Diff

View File

@ -5,6 +5,7 @@
</ul></ul>
<li>Chapter 1: The Long Range Falikov-Kimball Model</li>
<ul>
<li><a href="./1.1_FK_Intro.html#contributions">Contributions</a></li>
<li><a href="./1.1_FK_Intro.html#introduction">Introduction</a></li>
<ul>
<li><a href="./1.1_FK_Intro.html#localisation">Localisation</a></li>
@ -15,22 +16,24 @@
</ul></ul>
<li>Chapter 2: The Amorphous Kitaev Model</li>
<ul>
<li><a href="./2.1_AMK_Intro.html#contributions">Contributions</a></li>
<li><a href="./2.1_AMK_Intro.html#introduction">Introduction</a></li>
<ul>
<li><a href="./2.1_AMK_Intro.html#amorphous-systems">Amorphous Systems</a></li>
<li><a href="./2.1_AMK_Intro.html#glossary">Glossary</a></li>
<li><a href="./2.1_AMK_Intro.html#the-kitaev-model">The Kitaev Model</a></li>
<li><a href="./2.1_AMK_Intro.html#the-majorana-hamiltonian">The Majorana Hamiltonian</a></li>
<li><a href="./2.1.2_AMK_Intro.html#gauge-fields">Gauge Fields</a></li>
<li><a href="./2.1.2_AMK_Intro.html#the-projector">The Projector</a></li>
<li><a href="./2.1.2_AMK_Intro.html#the-ground-state">The Ground State</a></li>
<li><a href="./2.1.2_AMK_Intro.html#phases-of-the-kitaev-model">Phases of the Kitaev Model</a></li>
<li><a href="./2.1.2_AMK_Intro.html#what's-so-great-about-two-dimensions?">What's so great about two dimensions?</a></li>
<li><a href="./2.1.2_AMK_Intro.html#what-is-so-great-about-two-dimensions?">What is so great about two dimensions?</a></li>
</ul>
<li><a href="./2.2_AMK_Methods.html#methods">Methods</a></li>
<ul>
<li><a href="./2.2_AMK_Methods.html#voronisation">Voronisation</a></li>
<li><a href="./2.2_AMK_Methods.html#graph-representation">Graph Representation</a></li>
<li><a href="./2.2_AMK_Methods.html#coloring-the-bonds">Coloring the Bonds</a></li>
<li><a href="./2.2_AMK_Methods.html#colouring-the-bonds">Colouring the Bonds</a></li>
<li><a href="./2.2_AMK_Methods.html#mapping-between-flux-sectors-and-bond-sectors">Mapping between flux sectors and bond sectors</a></li>
<li><a href="./2.2_AMK_Methods.html#chern-markers">Chern Markers</a></li>
</ul>
@ -44,8 +47,7 @@
<li><a href="./2.3_AMK_Results.html#conclusion">Conclusion</a></li>
<li><a href="./2.3_AMK_Results.html#discussion">Discussion</a></li>
<ul>
<li><a href="./2.3_AMK_Results.html#failure-of-the-ground-state-conjecture">Failure of the ground state conjecture</a></li>
<li><a href="./2.3_AMK_Results.html#full-monte-carlo">Full Monte Carlo</a></li>
<li><a href="./2.3_AMK_Results.html#limits-of-the-ground-state-conjecture">Limits of the ground state conjecture</a></li>
</ul>
<li><a href="./2.3_AMK_Results.html#outlook">Outlook</a></li>
<ul>

File diff suppressed because it is too large Load Diff

After

Width:  |  Height:  |  Size: 1.4 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 667 KiB

File diff suppressed because it is too large Load Diff

After

Width:  |  Height:  |  Size: 245 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 725 KiB

File diff suppressed because it is too large Load Diff

After

Width:  |  Height:  |  Size: 211 KiB

File diff suppressed because it is too large Load Diff

After

Width:  |  Height:  |  Size: 1.4 MiB

File diff suppressed because it is too large Load Diff

After

Width:  |  Height:  |  Size: 1.1 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 57 KiB

File diff suppressed because it is too large Load Diff

After

Width:  |  Height:  |  Size: 47 KiB

File diff suppressed because it is too large Load Diff

After

Width:  |  Height:  |  Size: 3.5 MiB

File diff suppressed because it is too large Load Diff

After

Width:  |  Height:  |  Size: 411 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 96 KiB

File diff suppressed because it is too large Load Diff

After

Width:  |  Height:  |  Size: 3.5 MiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 339 KiB

View File

@ -30,14 +30,14 @@
inkscape:document-units="pt"
showgrid="false"
inkscape:zoom="1.0704431"
inkscape:cx="283.99454"
inkscape:cy="145.73404"
inkscape:cx="197.58173"
inkscape:cy="160.68112"
inkscape:window-width="1309"
inkscape:window-height="792"
inkscape:window-x="72"
inkscape:window-y="25"
inkscape:window-maximized="0"
inkscape:current-layer="layer1" />
inkscape:current-layer="g10139" />
<metadata
id="metadata5878">
<rdf:RDF>
@ -5659,28 +5659,19 @@
<g
id="g10139"
transform="translate(43.5)">
<text
xml:space="preserve"
style="font-size:9.39215px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:6.97628;stroke-linecap:butt;stroke-linejoin:round;stroke-opacity:1"
x="-7.8429718"
y="14.882133"
id="text5607"><tspan
sodipodi:role="line"
id="tspan5605"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:12.5229px;font-family:sans-serif;-inkscape-font-specification:'sans-serif, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;stroke:none;stroke-width:6.97628"
x="-7.8429718"
y="14.882133">Plaquette operators are conserved</tspan></text>
<path
style="opacity:0.435449;fill:none;fill-opacity:1;stroke:#000000;stroke-width:0.768413;stroke-dasharray:none;stroke-opacity:1"
d="M -8.838657,78.421527 H 267.85017"
id="path14933" />
id="path14933"
transform="translate(0,-9)" />
<path
style="opacity:0.435449;fill:none;fill-opacity:1;stroke:#000000;stroke-width:0.768413;stroke-linecap:butt;stroke-linejoin:round;stroke-dasharray:none;stroke-opacity:1"
d="M -8.838657,122.85855 H 267.85017"
id="path14933-6" />
id="path14933-6"
transform="translate(0,-9)" />
<g
id="g62160"
transform="matrix(1.0435721,0,0,1.0435721,-31.637754,-26.167379)">
transform="matrix(1.0435721,0,0,1.0435721,-31.637754,-35.167379)">
<g
id="g170611-4"
inkscape:label="hexagon"
@ -6003,7 +5994,7 @@
</g>
<g
id="g62384"
transform="matrix(1.0435721,0,0,1.0435721,-31.637754,-15.798091)">
transform="matrix(1.0435721,0,0,1.0435721,-31.637754,-24.798091)">
<g
id="g170611-4-2"
inkscape:label="hexagon"
@ -7030,7 +7021,7 @@
</g>
<g
id="g62646"
transform="translate(-95.85481,-5.8426772)">
transform="translate(-95.85481,-14.842677)">
<g
id="g22677">
<g
@ -8307,7 +8298,7 @@
ns1:alignment="middle center"
ns1:stroke-to-path="0"
ns1:inkscapeversion="1.2.1"
transform="matrix(1.0435721,0,0,1.0435721,-8.354561,23.434229)"
transform="matrix(1.0435721,0,0,1.0435721,-8.354561,14.434229)"
ns1:jacobian_sqrt="1.0"
id="g6858">
<defs

Before

Width:  |  Height:  |  Size: 582 KiB

After

Width:  |  Height:  |  Size: 582 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 53 KiB

View File

@ -0,0 +1,694 @@
<?xml version="1.0" encoding="utf-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg xmlns:xlink="http://www.w3.org/1999/xlink" width="242.64pt" height="242.64pt" viewBox="0 0 242.64 242.64" xmlns="http://www.w3.org/2000/svg" version="1.1">
<metadata>
<rdf:RDF xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:cc="http://creativecommons.org/ns#" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
<cc:Work>
<dc:type rdf:resource="http://purl.org/dc/dcmitype/StillImage"/>
<dc:date>2022-08-05T09:36:36.737179</dc:date>
<dc:format>image/svg+xml</dc:format>
<dc:creator>
<cc:Agent>
<dc:title>Matplotlib v3.5.1, https://matplotlib.org/</dc:title>
</cc:Agent>
</dc:creator>
</cc:Work>
</rdf:RDF>
</metadata>
<defs>
<style type="text/css">*{stroke-linejoin: round; stroke-linecap: butt}</style>
</defs>
<g id="figure_1">
<g id="patch_1">
<path d="M 0 242.64
L 242.64 242.64
L 242.64 0
L 0 0
z
" style="fill: #ffffff"/>
</g>
<g id="axes_1">
<g id="line2d_1">
<path d="M 38.877545 207.4572
L 43.376254 207.4572
L 47.874962 207.4572
L 52.37367 207.4572
L 56.872378 207.4572
L 61.371086 207.4572
L 65.869794 207.4572
L 70.368502 207.4572
L 74.867211 207.4572
L 79.365919 207.4572
L 83.864627 207.4572
L 88.363335 207.4572
L 92.862043 207.4572
L 97.360751 207.4572
L 101.859459 207.4572
L 106.358167 207.4572
L 110.856876 207.4572
L 115.355584 207.4572
L 119.854292 207.4572
L 124.353 207.4572
" clip-path="url(#pde97bca02f)" style="fill: none; stroke: #000000; stroke-width: 1.5; stroke-linecap: square"/>
</g>
<g id="line2d_2">
<path d="M 38.877545 207.4572
L 43.376254 206.463937
L 47.874962 205.470674
L 52.37367 204.477411
L 56.872378 203.484147
L 61.371086 202.490884
L 65.869794 201.497621
L 70.368502 200.504358
L 74.867211 199.511095
L 79.365919 198.517832
L 83.864627 197.524568
L 88.363335 196.531305
L 92.862043 195.538042
L 97.360751 194.544779
L 101.859459 193.551516
L 106.358167 192.558253
L 110.856876 191.564989
L 115.355584 190.571726
L 119.854292 189.578463
L 124.353 188.5852
" clip-path="url(#pde97bca02f)" style="fill: none; stroke: #000000; stroke-width: 1.5; stroke-linecap: square"/>
</g>
<g id="line2d_3">
<path d="M 38.877545 207.4572
L 43.376254 205.470674
L 47.874962 203.484147
L 52.37367 201.497621
L 56.872378 199.511095
L 61.371086 197.524568
L 65.869794 195.538042
L 70.368502 193.551516
L 74.867211 191.564989
L 79.365919 189.578463
L 83.864627 187.591937
L 88.363335 185.605411
L 92.862043 183.618884
L 97.360751 181.632358
L 101.859459 179.645832
L 106.358167 177.659305
L 110.856876 175.672779
L 115.355584 173.686253
L 119.854292 171.699726
L 124.353 169.7132
" clip-path="url(#pde97bca02f)" style="fill: none; stroke: #000000; stroke-width: 1.5; stroke-linecap: square"/>
</g>
<g id="line2d_4">
<path d="M 38.877545 207.4572
L 43.376254 204.477411
L 47.874962 201.497621
L 52.37367 198.517832
L 56.872378 195.538042
L 61.371086 192.558253
L 65.869794 189.578463
L 70.368502 186.598674
L 74.867211 183.618884
L 79.365919 180.639095
L 83.864627 177.659305
L 88.363335 174.679516
L 92.862043 171.699726
L 97.360751 168.719937
L 101.859459 165.740147
L 106.358167 162.760358
L 110.856876 159.780568
L 115.355584 156.800779
L 119.854292 153.820989
L 124.353 150.8412
" clip-path="url(#pde97bca02f)" style="fill: none; stroke: #000000; stroke-width: 1.5; stroke-linecap: square"/>
</g>
<g id="line2d_5">
<path d="M 38.877545 207.4572
L 42.626469 203.980779
L 46.375392 200.504358
L 50.124316 197.027937
L 53.873239 193.551516
L 57.622163 190.075095
L 61.371086 186.598674
L 65.12001 183.122253
L 68.868933 179.645832
L 72.617856 176.169411
L 76.36678 172.692989
L 80.115703 169.216568
L 83.864627 165.740147
L 87.61355 162.263726
L 91.362474 158.787305
L 95.111397 155.310884
L 98.860321 151.834463
L 102.609244 148.358042
L 106.358167 144.881621
L 110.107091 141.4052
" clip-path="url(#pde97bca02f)" style="fill: none; stroke: #000000; stroke-width: 1.5; stroke-linecap: square"/>
</g>
<g id="line2d_6">
<path d="M 38.877545 207.4572
L 41.876684 203.484147
L 44.875823 199.511095
L 47.874962 195.538042
L 50.8741 191.564989
L 53.873239 187.591937
L 56.872378 183.618884
L 59.871517 179.645832
L 62.870656 175.672779
L 65.869794 171.699726
L 68.868933 167.726674
L 71.868072 163.753621
L 74.867211 159.780568
L 77.866349 155.807516
L 80.865488 151.834463
L 83.864627 147.861411
L 86.863766 143.888358
L 89.862904 139.915305
L 92.862043 135.942253
L 95.861182 131.9692
" clip-path="url(#pde97bca02f)" style="fill: none; stroke: #000000; stroke-width: 1.5; stroke-linecap: square"/>
</g>
<g id="line2d_7">
<path d="M 38.877545 207.4572
L 41.1269 202.987516
L 43.376254 198.517832
L 45.625608 194.048147
L 47.874962 189.578463
L 50.124316 185.108779
L 52.37367 180.639095
L 54.623024 176.169411
L 56.872378 171.699726
L 59.121732 167.230042
L 61.371086 162.760358
L 63.62044 158.290674
L 65.869794 153.820989
L 68.119148 149.351305
L 70.368502 144.881621
L 72.617856 140.411937
L 74.867211 135.942253
L 77.116565 131.472568
L 79.365919 127.002884
L 81.615273 122.5332
" clip-path="url(#pde97bca02f)" style="fill: none; stroke: #000000; stroke-width: 1.5; stroke-linecap: square"/>
</g>
<g id="line2d_8">
<path d="M 124.353 37.6092
L 122.103646 42.078884
L 119.854292 46.548568
L 117.604938 51.018253
L 115.355584 55.487937
L 113.10623 59.957621
L 110.856876 64.427305
L 108.607522 68.896989
L 106.358167 73.366674
L 104.108813 77.836358
L 101.859459 82.306042
L 99.610105 86.775726
L 97.360751 91.245411
L 95.111397 95.715095
L 92.862043 100.184779
L 90.612689 104.654463
L 88.363335 109.124147
L 86.113981 113.593832
L 83.864627 118.063516
L 81.615273 122.5332
" clip-path="url(#pde97bca02f)" style="fill: none; stroke: #000000; stroke-width: 1.5; stroke-linecap: square"/>
</g>
<g id="line2d_9">
<path d="M 124.353 37.6092
L 122.853431 42.575516
L 121.353861 47.541832
L 119.854292 52.508147
L 118.354722 57.474463
L 116.855153 62.440779
L 115.355584 67.407095
L 113.856014 72.373411
L 112.356445 77.339726
L 110.856876 82.306042
L 109.357306 87.272358
L 107.857737 92.238674
L 106.358167 97.204989
L 104.858598 102.171305
L 103.359029 107.137621
L 101.859459 112.103937
L 100.35989 117.070253
L 98.860321 122.036568
L 97.360751 127.002884
L 95.861182 131.9692
" clip-path="url(#pde97bca02f)" style="fill: none; stroke: #000000; stroke-width: 1.5; stroke-linecap: square"/>
</g>
<g id="line2d_10">
<path d="M 124.353 37.6092
L 123.603215 43.072147
L 122.853431 48.535095
L 122.103646 53.998042
L 121.353861 59.460989
L 120.604077 64.923937
L 119.854292 70.386884
L 119.104507 75.849832
L 118.354722 81.312779
L 117.604938 86.775726
L 116.855153 92.238674
L 116.105368 97.701621
L 115.355584 103.164568
L 114.605799 108.627516
L 113.856014 114.090463
L 113.10623 119.553411
L 112.356445 125.016358
L 111.60666 130.479305
L 110.856876 135.942253
L 110.107091 141.4052
" clip-path="url(#pde97bca02f)" style="fill: none; stroke: #000000; stroke-width: 1.5; stroke-linecap: square"/>
</g>
<g id="line2d_11">
<path d="M 124.353 37.6092
L 124.353 43.568779
L 124.353 49.528358
L 124.353 55.487937
L 124.353 61.447516
L 124.353 67.407095
L 124.353 73.366674
L 124.353 79.326253
L 124.353 85.285832
L 124.353 91.245411
L 124.353 97.204989
L 124.353 103.164568
L 124.353 109.124147
L 124.353 115.083726
L 124.353 121.043305
L 124.353 127.002884
L 124.353 132.962463
L 124.353 138.922042
L 124.353 144.881621
L 124.353 150.8412
" clip-path="url(#pde97bca02f)" style="fill: none; stroke: #000000; stroke-width: 1.5; stroke-linecap: square"/>
</g>
<g id="line2d_12">
<path d="M 124.353 37.6092
L 125.102785 43.072147
L 125.852569 48.535095
L 126.602354 53.998042
L 127.352139 59.460989
L 128.101923 64.923937
L 128.851708 70.386884
L 129.601493 75.849832
L 130.351278 81.312779
L 131.101062 86.775726
L 131.850847 92.238674
L 132.600632 97.701621
L 133.350416 103.164568
L 134.100201 108.627516
L 134.849986 114.090463
L 135.59977 119.553411
L 136.349555 125.016358
L 137.09934 130.479305
L 137.849124 135.942253
L 138.598909 141.4052
" clip-path="url(#pde97bca02f)" style="fill: none; stroke: #000000; stroke-width: 1.5; stroke-linecap: square"/>
</g>
<g id="line2d_13">
<path d="M 124.353 37.6092
L 125.852569 42.575516
L 127.352139 47.541832
L 128.851708 52.508147
L 130.351278 57.474463
L 131.850847 62.440779
L 133.350416 67.407095
L 134.849986 72.373411
L 136.349555 77.339726
L 137.849124 82.306042
L 139.348694 87.272358
L 140.848263 92.238674
L 142.347833 97.204989
L 143.847402 102.171305
L 145.346971 107.137621
L 146.846541 112.103937
L 148.34611 117.070253
L 149.845679 122.036568
L 151.345249 127.002884
L 152.844818 131.9692
" clip-path="url(#pde97bca02f)" style="fill: none; stroke: #000000; stroke-width: 1.5; stroke-linecap: square"/>
</g>
<g id="line2d_14">
<path d="M 124.353 37.6092
L 126.602354 42.078884
L 128.851708 46.548568
L 131.101062 51.018253
L 133.350416 55.487937
L 135.59977 59.957621
L 137.849124 64.427305
L 140.098478 68.896989
L 142.347833 73.366674
L 144.597187 77.836358
L 146.846541 82.306042
L 149.095895 86.775726
L 151.345249 91.245411
L 153.594603 95.715095
L 155.843957 100.184779
L 158.093311 104.654463
L 160.342665 109.124147
L 162.592019 113.593832
L 164.841373 118.063516
L 167.090727 122.5332
" clip-path="url(#pde97bca02f)" style="fill: none; stroke: #000000; stroke-width: 1.5; stroke-linecap: square"/>
</g>
<g id="line2d_15">
<path d="M 209.828455 207.4572
L 207.5791 202.987516
L 205.329746 198.517832
L 203.080392 194.048147
L 200.831038 189.578463
L 198.581684 185.108779
L 196.33233 180.639095
L 194.082976 176.169411
L 191.833622 171.699726
L 189.584268 167.230042
L 187.334914 162.760358
L 185.08556 158.290674
L 182.836206 153.820989
L 180.586852 149.351305
L 178.337498 144.881621
L 176.088144 140.411937
L 173.838789 135.942253
L 171.589435 131.472568
L 169.340081 127.002884
L 167.090727 122.5332
" clip-path="url(#pde97bca02f)" style="fill: none; stroke: #000000; stroke-width: 1.5; stroke-linecap: square"/>
</g>
<g id="line2d_16">
<path d="M 209.828455 207.4572
L 206.829316 203.484147
L 203.830177 199.511095
L 200.831038 195.538042
L 197.8319 191.564989
L 194.832761 187.591937
L 191.833622 183.618884
L 188.834483 179.645832
L 185.835344 175.672779
L 182.836206 171.699726
L 179.837067 167.726674
L 176.837928 163.753621
L 173.838789 159.780568
L 170.839651 155.807516
L 167.840512 151.834463
L 164.841373 147.861411
L 161.842234 143.888358
L 158.843096 139.915305
L 155.843957 135.942253
L 152.844818 131.9692
" clip-path="url(#pde97bca02f)" style="fill: none; stroke: #000000; stroke-width: 1.5; stroke-linecap: square"/>
</g>
<g id="line2d_17">
<path d="M 209.828455 207.4572
L 206.079531 203.980779
L 202.330608 200.504358
L 198.581684 197.027937
L 194.832761 193.551516
L 191.083837 190.075095
L 187.334914 186.598674
L 183.58599 183.122253
L 179.837067 179.645832
L 176.088144 176.169411
L 172.33922 172.692989
L 168.590297 169.216568
L 164.841373 165.740147
L 161.09245 162.263726
L 157.343526 158.787305
L 153.594603 155.310884
L 149.845679 151.834463
L 146.096756 148.358042
L 142.347833 144.881621
L 138.598909 141.4052
" clip-path="url(#pde97bca02f)" style="fill: none; stroke: #000000; stroke-width: 1.5; stroke-linecap: square"/>
</g>
<g id="line2d_18">
<path d="M 209.828455 207.4572
L 205.329746 204.477411
L 200.831038 201.497621
L 196.33233 198.517832
L 191.833622 195.538042
L 187.334914 192.558253
L 182.836206 189.578463
L 178.337498 186.598674
L 173.838789 183.618884
L 169.340081 180.639095
L 164.841373 177.659305
L 160.342665 174.679516
L 155.843957 171.699726
L 151.345249 168.719937
L 146.846541 165.740147
L 142.347833 162.760358
L 137.849124 159.780568
L 133.350416 156.800779
L 128.851708 153.820989
L 124.353 150.8412
" clip-path="url(#pde97bca02f)" style="fill: none; stroke: #000000; stroke-width: 1.5; stroke-linecap: square"/>
</g>
<g id="line2d_19">
<path d="M 209.828455 207.4572
L 205.329746 205.470674
L 200.831038 203.484147
L 196.33233 201.497621
L 191.833622 199.511095
L 187.334914 197.524568
L 182.836206 195.538042
L 178.337498 193.551516
L 173.838789 191.564989
L 169.340081 189.578463
L 164.841373 187.591937
L 160.342665 185.605411
L 155.843957 183.618884
L 151.345249 181.632358
L 146.846541 179.645832
L 142.347833 177.659305
L 137.849124 175.672779
L 133.350416 173.686253
L 128.851708 171.699726
L 124.353 169.7132
" clip-path="url(#pde97bca02f)" style="fill: none; stroke: #000000; stroke-width: 1.5; stroke-linecap: square"/>
</g>
<g id="line2d_20">
<path d="M 209.828455 207.4572
L 205.329746 206.463937
L 200.831038 205.470674
L 196.33233 204.477411
L 191.833622 203.484147
L 187.334914 202.490884
L 182.836206 201.497621
L 178.337498 200.504358
L 173.838789 199.511095
L 169.340081 198.517832
L 164.841373 197.524568
L 160.342665 196.531305
L 155.843957 195.538042
L 151.345249 194.544779
L 146.846541 193.551516
L 142.347833 192.558253
L 137.849124 191.564989
L 133.350416 190.571726
L 128.851708 189.578463
L 124.353 188.5852
" clip-path="url(#pde97bca02f)" style="fill: none; stroke: #000000; stroke-width: 1.5; stroke-linecap: square"/>
</g>
<g id="line2d_21">
<path d="M 209.828455 207.4572
L 205.329746 207.4572
L 200.831038 207.4572
L 196.33233 207.4572
L 191.833622 207.4572
L 187.334914 207.4572
L 182.836206 207.4572
L 178.337498 207.4572
L 173.838789 207.4572
L 169.340081 207.4572
L 164.841373 207.4572
L 160.342665 207.4572
L 155.843957 207.4572
L 151.345249 207.4572
L 146.846541 207.4572
L 142.347833 207.4572
L 137.849124 207.4572
L 133.350416 207.4572
L 128.851708 207.4572
L 124.353 207.4572
" clip-path="url(#pde97bca02f)" style="fill: none; stroke: #000000; stroke-width: 1.5; stroke-linecap: square"/>
</g>
<g id="LineCollection_1">
<path d="M 81.615273 122.5332
L 167.090727 122.5332
" clip-path="url(#pde97bca02f)" style="fill: none; stroke-dasharray: 1.5,2.475; stroke-dashoffset: 0; stroke: #000000; stroke-width: 1.5"/>
<path d="M 167.090727 122.5332
L 124.353 207.4572
" clip-path="url(#pde97bca02f)" style="fill: none; stroke-dasharray: 1.5,2.475; stroke-dashoffset: 0; stroke: #000000; stroke-width: 1.5"/>
<path d="M 124.353 207.4572
L 81.615273 122.5332
" clip-path="url(#pde97bca02f)" style="fill: none; stroke-dasharray: 1.5,2.475; stroke-dashoffset: 0; stroke: #000000; stroke-width: 1.5"/>
</g>
<g id="LineCollection_2">
<path d="M 38.877545 207.4572
L 124.353 37.6092
" clip-path="url(#pde97bca02f)" style="fill: none; stroke: #000000; stroke-width: 1.5"/>
<path d="M 124.353 37.6092
L 209.828455 207.4572
" clip-path="url(#pde97bca02f)" style="fill: none; stroke: #000000; stroke-width: 1.5"/>
<path d="M 209.828455 207.4572
L 38.877545 207.4572
" clip-path="url(#pde97bca02f)" style="fill: none; stroke: #000000; stroke-width: 1.5"/>
</g>
<g id="text_1">
<!-- $J_x$ -->
<g transform="translate(26.586752 216.451228)scale(0.13 -0.13)">
<defs>
<path id="CMMI12-4a" d="M 3418 3911
C 3469 4102 3482 4166 3795 4166
C 3898 4166 3962 4166 3962 4281
C 3962 4352 3904 4352 3878 4352
C 3770 4352 3648 4339 3533 4339
L 3181 4339
C 2912 4339 2630 4352 2362 4352
C 2304 4352 2227 4352 2227 4236
C 2227 4172 2278 4172 2278 4166
L 2438 4166
C 2950 4166 2950 4115 2950 4019
C 2950 4013 2950 3968 2925 3866
L 2189 953
C 2022 304 1594 0 1286 0
C 1069 0 762 99 685 428
C 710 422 742 415 768 415
C 979 415 1146 601 1146 787
C 1146 889 1082 1024 890 1024
C 774 1024 506 959 506 543
C 506 149 838 -128 1299 -128
C 1882 -128 2509 304 2662 908
L 3418 3911
z
" transform="scale(0.015625)"/>
<path id="CMMI12-78" d="M 3034 2624
C 2829 2585 2752 2431 2752 2310
C 2752 2156 2874 2105 2963 2105
C 3155 2105 3290 2271 3290 2444
C 3290 2694 2982 2816 2714 2816
C 2323 2816 2106 2451 2048 2329
C 1901 2790 1504 2816 1389 2816
C 736 2816 390 1993 390 1849
C 390 1823 416 1790 461 1790
C 512 1790 525 1829 538 1855
C 755 2572 1184 2687 1370 2687
C 1658 2687 1715 2438 1715 2284
C 1715 2143 1677 1993 1600 1678
L 1382 778
C 1286 390 1101 64 762 64
C 730 64 570 64 435 126
C 666 166 717 358 717 435
C 717 563 621 640 499 640
C 346 640 179 505 179 300
C 179 57 480 -64 755 -64
C 1062 -64 1280 153 1414 415
C 1517 64 1837 -64 2074 -64
C 2726 -64 3072 751 3072 896
C 3072 929 3046 955 3008 955
C 2950 955 2944 922 2925 870
C 2752 300 2381 64 2093 64
C 1869 64 1747 204 1747 467
C 1747 607 1773 712 1875 1146
L 2099 2039
C 2195 2425 2413 2687 2707 2687
C 2720 2687 2899 2687 3034 2624
z
" transform="scale(0.015625)"/>
</defs>
<use xlink:href="#CMMI12-4a" transform="scale(0.996264)"/>
<use xlink:href="#CMMI12-78" transform="translate(53.917955 -14.943915)scale(0.697382)"/>
</g>
</g>
<g id="text_2">
<!-- $J_y$ -->
<g transform="translate(118.553885 31.942454)scale(0.13 -0.13)">
<defs>
<path id="CMMI12-79" d="M 1683 -673
C 1510 -921 1261 -1152 947 -1152
C 870 -1152 563 -1139 467 -826
C 486 -833 518 -833 531 -833
C 723 -833 851 -666 851 -519
C 851 -372 730 -320 634 -320
C 531 -320 307 -397 307 -711
C 307 -1050 582 -1280 947 -1280
C 1587 -1280 2234 -673 2413 -7
L 3040 2483
C 3046 2515 3059 2553 3059 2591
C 3059 2687 2982 2752 2886 2752
C 2829 2752 2694 2726 2643 2534
L 2170 657
C 2138 542 2138 530 2086 459
C 1958 281 1747 64 1440 64
C 1082 64 1050 415 1050 587
C 1050 951 1222 1443 1395 1902
C 1466 2087 1504 2177 1504 2305
C 1504 2573 1312 2816 998 2816
C 410 2816 173 1890 173 1838
C 173 1813 198 1781 243 1781
C 301 1781 307 1807 333 1896
C 486 2432 730 2687 979 2687
C 1037 2687 1146 2687 1146 2477
C 1146 2311 1075 2126 979 1883
C 666 1047 666 836 666 683
C 666 76 1101 -64 1421 -64
C 1606 -64 1837 -7 2061 230
L 2067 223
C 1971 -141 1907 -359 1683 -673
z
" transform="scale(0.015625)"/>
</defs>
<use xlink:href="#CMMI12-4a" transform="scale(0.996264)"/>
<use xlink:href="#CMMI12-79" transform="translate(53.917955 -14.943915)scale(0.697382)"/>
</g>
</g>
<g id="text_3">
<!-- $J_z$ -->
<g transform="translate(209.828455 216.451228)scale(0.13 -0.13)">
<defs>
<path id="CMMI12-7a" d="M 813 486
C 1088 809 1312 1015 1632 1313
C 2016 1657 2182 1822 2272 1922
C 2720 2371 2944 2713 2944 2764
C 2944 2816 2893 2816 2880 2816
C 2835 2816 2822 2790 2790 2745
C 2630 2470 2477 2368 2310 2368
C 2176 2368 2106 2403 1984 2547
C 1850 2707 1741 2816 1555 2816
C 1088 2816 806 2265 806 2127
C 806 2107 813 2067 870 2067
C 922 2067 928 2094 947 2140
C 1056 2387 1363 2415 1485 2415
C 1619 2415 1747 2387 1882 2342
C 2125 2239 2227 2239 2291 2239
C 2336 2239 2362 2239 2394 2246
C 2182 1988 1837 1670 1549 1399
L 902 783
C 512 380 275 32 275 -13
C 275 -52 307 -64 346 -64
C 384 -64 390 -58 435 19
C 538 179 742 384 979 384
C 1114 384 1178 356 1306 211
C 1427 70 1536 -64 1741 -64
C 2368 -64 2726 723 2726 876
C 2726 902 2720 942 2656 942
C 2605 942 2598 915 2579 849
C 2438 460 2061 336 1811 336
C 1677 336 1549 364 1414 409
C 1158 512 1088 512 1005 512
C 941 512 870 512 813 486
z
" transform="scale(0.015625)"/>
</defs>
<use xlink:href="#CMMI12-4a" transform="scale(0.996264)"/>
<use xlink:href="#CMMI12-7a" transform="translate(53.917955 -14.943915)scale(0.697382)"/>
</g>
</g>
</g>
</g>
<defs>
<clipPath id="pde97bca02f">
<rect x="30.33" y="29.1168" width="188.046" height="186.8328"/>
</clipPath>
</defs>
</svg>

After

Width:  |  Height:  |  Size: 20 KiB