{ "cells": [ { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "import sys\n", "sys.path.append('../code')\n", "from init_mooc_nb import *\n", "init_notebook()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Simulations: Gaps and invariants" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "As usual, start by grabbing the notebooks of this week (`w8_general`). They are once again over [here](http://tiny.cc/topocm_smc)." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## A different analytic continuation\n", "\n", "You have learned how to map a winding number onto counting the zeros of an eigenproblem in a complex plane. This can be applied to other symmetry classes as well.\n", "\n", "Let's try to calculate the invariant in the 1D symmetry class DIII. If you look in the table, you'll see it's the same invariant as the scattering invariant we've used for the quantum spin Hall effect,\n", "\n", "$$\n", "Q = \\frac{\\textrm{Pf } h(k=0)}{\\textrm{Pf } h(k=\\pi)} \\sqrt{\\frac{\\det h(k=\\pi)}{\\det h(k=0)}}\n", "$$" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "In [this paper](http://arxiv.org/abs/1106.6351) (around Eq. 4.13), have a look at how to use analytic continuation to calculate the analytic continuation of $\\sqrt{h}$, and implement the calculation of this invariant without numerical integration, like we did before.\n", "\n", "In order to test your invariant, you'll need a topologically non-trivial system in this symmetry class. You can obtain it by combining a Majorana nanowire with its time-reversed copy.\n", "\n", "This is a hard task; if you go for it, try it out, but don't hesitate to ask for help in the discussion below." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Finding gaps\n", "\n", "The analytic continuation from $e^{ik}$ to a complex plane is also useful in telling if a system is gapped.\n", "\n", "Using the mapping of a 1D Hamiltonian to the eigenvalue problem, implement a function which checks if there are propagating modes at a given energy.\n", "\n", "Then implement an algorithm which uses this check to find the lowest and the highest energy states for a given 1D Hamiltonian $H = h + t e^{ik} + t^\\dagger e^{-ik}$ (with $h$, $t$ arbitrary matrices, of course)." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "MoocSelfAssessment()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "**Now share your results:**" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "MoocDiscussion('Labs', 'Topological invariants')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Review assignment" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "display_html(PreprintReference('1006.0690', description=\"The most general classification\"))\n", "display_html(PreprintReference('1310.5281', description=\"Beyond classification\"))\n", "display_html(PreprintReference('1012.1019', description=\"The non-commutative invariants\"))\n", "display_html(PreprintReference('1106.6351', description=\"All about scattering\"))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Bonus: Find your own paper to review!\n", "\n", "Do you know of another paper that fits into the topics of this week, and you think is good?\n", "Then you can get bonus points by reviewing that paper instead!" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "MoocPeerAssessment()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "**Do you have questions about what you read? Would you like to suggest other papers? Tell us:**" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "MoocDiscussion(\"Reviews\", \"General classification\")" ] } ], "metadata": { "kernelspec": { "display_name": "Python 3", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3" } }, "nbformat": 4, "nbformat_minor": 0 }