{ "cells": [ { "cell_type": "markdown", "metadata": { "deletable": false, "editable": false, "nbgrader": { "cell_type": "markdown", "checksum": "ad6b13cb01007316fa509551e4c8b998", "grade": false, "grade_id": "cell-98f724ece1aacb67", "locked": true, "schema_version": 3, "solution": false, "task": false } }, "source": [ "# CDS: Numerical Methods -- Final Assignment\n", "\n", "- See lecture notes and documentation on Brightspace for Python and Jupyter basics. If you are stuck, try to google or get in touch via Discord.\n", "\n", "- Solutions must be submitted **individually** via the Jupyter Hub until **Monday, April 4th, 23:59**.\n", "\n", "- Make sure you fill in any place that says `YOUR CODE HERE` or \"YOUR ANSWER HERE\".\n", "\n", "- Remember to document your source codes (docstrings, comments where necessary) and to write it as clear as possible.\n", "\n", "- Do not forget to fully annotate all of your plots.\n", "\n", "## Submission\n", "\n", "1. make sure everything runs as expected\n", "2. **restart the kernel** (in the menubar, select Kernel$\\rightarrow$Restart)\n", "3. **run all cells** (in the menubar, select Cell$\\rightarrow$Run All)\n", "4. Check all outputs (Out[\\*]) for errors and **resolve them if necessary**\n", "5. submit your solutions **in time (before the deadline)**" ] }, { "cell_type": "markdown", "metadata": { "deletable": false, "editable": false, "nbgrader": { "cell_type": "markdown", "checksum": "23a115c4a147aab2185c76637a509f7f", "grade": false, "grade_id": "cell-fd297f265de59887", "locked": true, "schema_version": 3, "solution": false, "task": false } }, "source": [ "## Tight-Binding Propagation Method Module\n", "\n", "### Tight-Binding Theory\n", "\n", "Solid state theory aims to describe crystalline structures defined by periodic arrangements of atomic positions $\\vec{R}_i$ with $i= 1 \\dots n$. To model the electronic properties of such a structure, we can use the so-called tight-binding method. Here one assumes that the problem for a single atom described by the Hamiltonian $H_{at}(\\vec{r})$ has already been solved, so that the atomic wave functions $\\phi_m(\\vec{r})$ are known. The Hamiltonian of the crystalline structure is then constructed from these atomic Hamiltonians as follows \n", "\n", "\\begin{align*}\n", " H(\\vec{r}) = \\sum_{i} H_{at}(\\vec{r} - \\vec{R}_i) + \\Delta V(\\vec{r}),\n", "\\end{align*}\n", "\n", "where $\\Delta V(\\vec{r})$ describes the changes to the atomic potentials due to the periodic arrangement. Solutions to the time-dependent Schrödinger equation $\\psi_n(\\vec{r})$ can then be approximated by linear combinations of the atomic orbitals, i.e. \n", "\n", "\\begin{align*}\n", " \\psi_m(\\vec{r}) = \\sum_{i} \\, c_{i,m} \\, \\phi_m(\\vec{r}-\\vec{R}_i). \n", "\\end{align*}\n", "\n", "Thus, our task is to find the coefficients $c_{i,m}$, which are the eigenfunctions of the tight-binding Hamiltonian $H_{tb}$. In the basis of the atomic orbitals $H_{tb}$ is an $n \\times n$ matrix which describes the \"hopping\" of an electron from one atomic position to the other. In this description the electrons are assumed to be tightly bound to the atomic positions, hence the name of the approach. In summary, we have reduced our original problem $H(\\vec{r})$, described in a continuous space $\\vec{r}$, to a strongly discretized problem $H_{tb}$ in the space of lattice coordinates $\\vec{R}_i$.\n", "\n", "### Propagation Method\n", "\t\n", "While this reduction already helps a lot, full diagonalizations of the tight-binding matrix is still not feasible if we need to describe realistic structures with thousands of atoms. For this case we like to have a method which allows us to study the electronic properties, without the need of fully diagonalizing the tight-binding matrix. The tight-biding propagation method allows for exactly this. By analyzing the propagation of an initial electronic state through the crystalline structure we also have access to the full eigenspectrum of $H_{tb}$, without explicit diagonalization.\n", "\t\n", "### Your Goal\n", " \n", "In the following you will setup the tight-binding Hamiltonian for a one-dimensional chain of atoms and numerically study its properties using exact diagonalization. Then you will compare it to the results obtained using the tight-binding propagation method. You will need some of the algorithms which you have implemented in the weekly assignments before. Additionally, you will need to implement a few new algorithms, which we have discussed in the last lecture. In principle there will be no need to use Numpy or Scipy (except for Numpy's array handling and a few other exceptions). However, if you encounter any problems with your own implementations of specific functionalities, you can use the Numpy and Scipy alternatives. Therefore you should be able to perform all of the following tasks in any case.\n", "\n", "Let us start by importing the necessary packages." ] }, { "cell_type": "code", "execution_count": 1, "metadata": { "deletable": false, "nbgrader": { "cell_type": "code", "checksum": "5d73a1e28cac71eb63db02e72960f030", "grade": true, "grade_id": "cell-9a7b93b917f8bfed", "locked": false, "points": 0, "schema_version": 3, "solution": true, "task": false } }, "outputs": [], "source": [ "import numpy as np\n", "from matplotlib import pyplot as plt" ] }, { "cell_type": "markdown", "metadata": { "deletable": false, "editable": false, "nbgrader": { "cell_type": "markdown", "checksum": "46edf5bfda2392bd3743329097a4e7ae", "grade": false, "grade_id": "cell-0f4a00fe587d193a", "locked": true, "schema_version": 3, "solution": false, "task": false } }, "source": [ "## Step 1: Crystal Lattice\n", "\n", "### Task 1.1 [3 points]\n", "\n", "In the following exercises the atomic positions of the 1D crystal lattice will be fixed to $\\vec{R}_i = x_i = i a$, with $i = 0 \\dots n-1$ and $a$ being the lattice constant.\n", "\n", "Write a simple Python function that takes the chain length $n$ as an argument and returns the atomic positions $x_i$. Set $a = 1$ for all the following exercises." ] }, { "cell_type": "code", "execution_count": 2, "metadata": { "deletable": false, "nbgrader": { "cell_type": "code", "checksum": "bad6e1d563be71de711926b41649c875", "grade": true, "grade_id": "cell-65a97e8f9f981da1", "locked": false, "points": 3, "schema_version": 3, "solution": true, "task": false } }, "outputs": [], "source": [ "def atomic_positions(n, a=1):\n", " \"\"\"\n", " Creates an array of atomic position in a 1D crystal lattice\n", " for lattice constant a having default value a = 1.\n", " \n", " Args:\n", " n: number of atoms in the 1D lattice string\n", " a: numerical value for the lattice constant\n", "\n", " Returns:\n", " A 1D array of atomic positions.\n", " \"\"\"\n", " \n", " return np.arange(n)*a" ] }, { "cell_type": "markdown", "metadata": { "deletable": false, "editable": false, "nbgrader": { "cell_type": "markdown", "checksum": "684ad7f7808a1d5b4360a0acb4e52921", "grade": false, "grade_id": "cell-a61043ba1148856d", "locked": true, "schema_version": 3, "solution": false, "task": false } }, "source": [ "## Step 2: Atomic Basis Functions\n", "\n", "Our atomic basis functions will be Gaussians of the form\n", "$$\n", "\\large\n", "\\phi(x, \\mu, \\sigma) = \\frac{1}{\\pi^{1/4} \\sigma^{1/2}} e^{-\\frac{1}{2} \\left(\\frac{x-\\mu}{\\sigma}\\right)^2},\n", "$$\n", "\twhere $\\mu$ is their localization position and $\\sigma$ their broadenings. We also choose to have just one orbital per atom so that we can drop the index $m$ from now on. \n", "\t\n", "### Task 2.1 [4 points]\n", "Implement a Python function which calculates $\\phi(x, \\mu, \\sigma)$ for a whole array of arbitrary $x$, centered at given $\\mu$ with a given broadening $\\sigma$.\n", "\n", "Plot all the atomic basis functions for a chain with $n = 10$ atoms, using $\\sigma = 0.25$. I.e. plot $\\phi(x, x_i, \\sigma)$ vs $x$, for all atomic positions $x_i$ in the chain." ] }, { "cell_type": "code", "execution_count": 3, "metadata": { "deletable": false, "nbgrader": { "cell_type": "code", "checksum": "2ad9cc4c03612d5b9bba4824cff364cb", "grade": true, "grade_id": "cell-4689e172e70a4762", "locked": false, "points": 4, "schema_version": 3, "solution": true, "task": false } }, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "def atomic_basis(x, mu, sigma):\n", " \"\"\"\n", " Calculates the atomic basis functions for the 1D chain of atoms.\n", " \n", " Args:\n", " x: array of positions to calculate the wavefunction at\n", " mu: atomic position to center Gaussian wavefunction at\n", " sigma: broadening constant for Gaussian function\n", "\n", " Returns:\n", " A 1D array of values for the wavefunction over the positions\n", " as given by x.\n", " \"\"\"\n", " \n", " return np.pi**(-1/4)*sigma**(1/2)*np.exp(-1/2*((x - mu)/sigma)**2)\n", "\n", "n = 10\n", "sigma = .25\n", "x = np.linspace(0, 10, 1000)\n", "\n", "plt.figure()\n", "plt.xlabel(\"$x$\")\n", "plt.ylabel(\"$\\phi$\")\n", "\n", "for mu in atomic_positions(n):\n", " plt.plot(x, atomic_basis(x, mu, sigma), label=\"n = \" + str(mu))\n", "\n", "plt.legend()\n", "plt.tight_layout()\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": { "deletable": false, "editable": false, "nbgrader": { "cell_type": "markdown", "checksum": "e1c7774260f02916e34521c6236638f4", "grade": false, "grade_id": "cell-e5c9315357a401f9", "locked": true, "schema_version": 3, "solution": false, "task": false } }, "source": [ "### Task 2.2 [6 points]\n", "Implement a Python function to calculate numerical integrals (using for example the composite trapezoid or Simpson rule). This one should be general enough to calculate integrals $\\int_a^b f(x) dx$ for arbitrary functions $f(x)$, as you will need it for other tasks as well.\n", "\n", "Implement a simple unit test for your integration function." ] }, { "cell_type": "code", "execution_count": 4, "metadata": { "deletable": false, "nbgrader": { "cell_type": "code", "checksum": "aecc6d50a1ffd4e4bfbfe3573847edf8", "grade": true, "grade_id": "cell-d851197b213e5d2d", "locked": false, "points": 3, "schema_version": 3, "solution": true, "task": false } }, "outputs": [], "source": [ "def integrate(yk, x):\n", " \"\"\"\n", " Numerically integrates function yk over [x[0], x[-1]] using Simpson's 3/8\n", " rule over the grid provided by x.\n", " \n", " Args:\n", " yk: function of one numerical argument that returns a numeric\n", " or an array of function values such that x[i] corresponds to yk[i]\n", " x: array of numerics as argument to yk\n", "\n", " Returns:\n", " A numeric value for the quadrature of yk over x with error\n", " of order \n", " \"\"\"\n", " \n", " # If yk is callable, we use it to determine the function values\n", " # over array x.\n", " if callable(yk):\n", " yk = yk(x)\n", " \n", " # The distance h_i = x[i + 1] - x[i] is not necessarily constant. The choice of\n", " # partitioning of the interval is subject to mathematical considerations I will\n", " # not go into.\n", " h = x[1:] - x[:-1]\n", " \n", " integral = 0\n", " integral += 3/8*(x[1] - x[0])*yk[0]\n", " integral += 9/8*h[1::3]@yk[1:-1:3]\n", " integral += 9/8*h[2::3]@yk[2:-1:3]\n", " integral += 6/8*h[ ::3]@yk[ :-1:3]\n", " integral += 3/8*(x[-1] - x[-2])*yk[-1]\n", " return integral" ] }, { "cell_type": "code", "execution_count": 5, "metadata": { "deletable": false, "nbgrader": { "cell_type": "code", "checksum": "6ab06c87cf65c73463ed243e46d63b3d", "grade": true, "grade_id": "cell-59912b2862fbce5a", "locked": false, "points": 3, "schema_version": 3, "solution": true, "task": false } }, "outputs": [], "source": [ "def test_integrate():\n", " # Test integral 1 of f with F its primitive with integration constant 0\n", " f = lambda x: x**2\n", " F = lambda x: x**3/3\n", " x = np.logspace(0, 3, 1000000)\n", " assert np.isclose(integrate(f, x), F(x[-1]) - F(x[0]))\n", " \n", " # Test integral 2 of f with F its primitive with integration constant 0\n", " f = lambda x: np.sin(2*x)/(2 + np.cos(2*x))\n", " F = lambda x: -.5*np.log(np.cos(2*x) + 2)\n", " x = np.linspace(0, 10, 1000)\n", " assert np.isclose(integrate(f, x), F(x[-1]) - F(x[0]))\n", " \n", "test_integrate()" ] }, { "cell_type": "markdown", "metadata": { "deletable": false, "editable": false, "nbgrader": { "cell_type": "markdown", "checksum": "8c1413a8a11006398e962e8c803ae001", "grade": false, "grade_id": "cell-86005829da536b5b", "locked": true, "schema_version": 3, "solution": false, "task": false } }, "source": [ "### Task 2.3 [2 points]\n", "Use your Python integration function to check the orthogonality of the Gaussian basis functions by verifying the following condition $$\\delta_{ij} = \\int_{-\\infty}^{+\\infty} \\phi(x, x_i, \\sigma) \\, \\phi(x, x_j, \\sigma) \\, dx,$$ where $\\delta_{ii} \\approx 1$ and $\\delta_{ij} \\approx 0$ for $\\sigma = 0.25$." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "deletable": false, "nbgrader": { "cell_type": "code", "checksum": "4751becb5d3cb7663536a0624b3d9c54", "grade": true, "grade_id": "cell-8a6a8db84dcef484", "locked": false, "points": 2, "schema_version": 3, "solution": true, "task": false } }, "outputs": [], "source": [ "# YOUR CODE HERE\n", "raise NotImplementedError()\n", "\n", "# Yann had output:\n", "#delta_00 = 1.00000\n", "#delta_01 = 0.01832\n", "#delta_02 = 0.00000\n", "#delta_34 = 0.01832\n", "# Explanation: next neighbours migth have some overlap. Further away, no overlap at all." ] }, { "cell_type": "markdown", "metadata": { "deletable": false, "editable": false, "nbgrader": { "cell_type": "markdown", "checksum": "e9ccbed5ba3e6b844bcc6e326053d8da", "grade": false, "grade_id": "cell-3cba7034f4eac62f", "locked": true, "schema_version": 3, "solution": false, "task": false } }, "source": [ "## Step 3: Tight-Binding Hamiltonian\n", "\n", "The tight-binding Hamiltonian for our 1D chain should describe the hopping of an electron from all atomic positions to their nearest left and right neighbours (i.e. no long-range hopping). The resulting matrix representation in the basis of the discrete $x_i$ positions is therefore given as a tri-diagonal $n \\times n$ matrix of the form\n", "\n", "\\begin{align}\n", " \\mathbf{H}_{tb} =\n", " \\left( \\begin{array}{cccc}\n", " 0 & t & & 0\\\\\n", " t & \\ddots & \\ddots & \\\\\n", " & \\ddots & \\ddots & t \\\\\n", " 0 & & t & 0\n", " \\end{array} \\right),\n", "\\end{align}\n", "\n", "where $t = t_{i,i\\pm1}$ is the nearest-neighbour hopping matrix element. A hopping matrix element $t_{i,j}$ is a measure for the probability of an electron to hop from site $i$ to site $j$. They are defined as\n", "\n", "\\begin{align}\n", " t_{i,j} = \\int_{-\\infty}^{+\\infty} \\phi(x, x_i, \\sigma) \\, \\Delta V(x) \\, \\phi(x, x_j, \\sigma) \\, dx,\n", "\\end{align}\n", "\n", "with the potential fixed to\n", "\n", "\\begin{align}\n", " \\Delta V(x) = \\sum_i \\frac{-1}{|x - x_i| + 0.001}.\n", "\\end{align}\n", "\n", "### Task 3.1 [3 points]\n", "Write a Python function to calculate $t_{i,j}$, using $\\sigma = 0.25$. The function should have as input the indices $i$ and $j$, and the chain length $n$. Verify that the long-range hoppings $t_{i,i\\pm2}$ and $t_{i,i\\pm3}$ are negligible compared to $t_{i,i\\pm1}$.\n", "\n", "Hint: use your integration function from task 2.2" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "deletable": false, "nbgrader": { "cell_type": "code", "checksum": "260ae3c806429aee5900599c01cb65c6", "grade": true, "grade_id": "cell-0abfcd1aa9fad2fa", "locked": false, "points": 3, "schema_version": 3, "solution": true, "task": false } }, "outputs": [], "source": [ "def hopping(i, j, n):\n", " # YOUR CODE HERE\n", " raise NotImplementedError()\n", "\n", "# Yann had\n", "# 1) a plot of the peaks as before\n", "# 2) a weird line under it with peaks downward at these x\n", "# and slowly rising energy values outside the chain\n", "# 3)\n", "# For i = 1 ...\n", "# t_{i,i-1} = -0.1203\n", "# t_{i,i+1} = ..." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "deletable": false, "nbgrader": { "cell_type": "code", "checksum": "b1a56ecde33e723ff450defcf5dc2e74", "grade": true, "grade_id": "cell-ea36ee5a2b35154c", "locked": false, "points": 0, "schema_version": 3, "solution": true, "task": false } }, "outputs": [], "source": [ "# Verify that long-range hoppings are negligible here ...\n", "\n", "# YOUR CODE HERE\n", "raise NotImplementedError()" ] }, { "cell_type": "markdown", "metadata": { "deletable": false, "editable": false, "nbgrader": { "cell_type": "markdown", "checksum": "7d2c8f74993fe38c2c979376961f869a", "grade": false, "grade_id": "cell-8a0f18c44306ae00", "locked": true, "schema_version": 3, "solution": false, "task": false } }, "source": [ "### Task 3.2 [3 points]\n", "Implement a diagonalization routine for tri-diagonal matrices which returns all eigenvalues, for example using the $QR$ decomposition (it is fine to use Numpy's $\\text{qr()}$). \n", "\n", "Hint: For tri-diagonal matrices with vanishing diagonal elements, the $QR$-decomposition-based diagonalization algorithm gets trapped. To get around this you could, for example, add a diagonal $1$ to your matrix, and later subtract $1$ from each eigenvalue." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "deletable": false, "nbgrader": { "cell_type": "code", "checksum": "c20cbcce0a7df50b6ae7b90c7aa35721", "grade": true, "grade_id": "cell-9d4942b717eadeb2", "locked": false, "points": 3, "schema_version": 3, "solution": true, "task": false } }, "outputs": [], "source": [ "# YOUR CODE HERE\n", "raise NotImplementedError()\n", "\n", "# Yann said we just have to be able to solve tri-diagonal matrix diagonalization, but more general is ok." ] }, { "cell_type": "markdown", "metadata": { "deletable": false, "editable": false, "nbgrader": { "cell_type": "markdown", "checksum": "19976946c5746804cb08c34f0bda50fc", "grade": false, "grade_id": "cell-2d8fb5c080951dd5", "locked": true, "schema_version": 3, "solution": false, "task": false } }, "source": [ "### Task 3.3 [3 points]\n", "Implement a unit test for your diagonalization routine." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "deletable": false, "nbgrader": { "cell_type": "code", "checksum": "d95777361c07514a97ff1458f26f4f44", "grade": true, "grade_id": "cell-001cb3c043c4e371", "locked": false, "points": 3, "schema_version": 3, "solution": true, "task": false } }, "outputs": [], "source": [ "# YOUR CODE HERE\n", "raise NotImplementedError()" ] }, { "cell_type": "markdown", "metadata": { "deletable": false, "editable": false, "nbgrader": { "cell_type": "markdown", "checksum": "83df149b46d779a846f9de925342b681", "grade": false, "grade_id": "cell-85c89b0eb0930f2b", "locked": true, "schema_version": 3, "solution": false, "task": false } }, "source": [ "### Task 3.4 [4 points]\n", "First, write a function that generates your tight-binding Hamiltonian $\\mathbf{H}_{tb}$, for a given chain length $n$. Use $t = t_{i,i\\pm1}$, as calculated in task 3.1. You can choose any $i$ near the center of the chain for the calculation of $t$, as the chain is (approximately) periodic.\n", "\n", "Second, use your diagonalization routine to calculate all the eigenvalues $E_m$, for a variety of $n=10,20,40,80,100$. Sort the resulting $E_m$ and plot them vs. $m$." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "deletable": false, "nbgrader": { "cell_type": "code", "checksum": "a0779b496fd41a4664bb0cdd857c70fc", "grade": true, "grade_id": "cell-764cb41c37700042", "locked": false, "points": 3, "schema_version": 3, "solution": true, "task": false } }, "outputs": [], "source": [ "def TBHamiltonian(n):\n", " # YOUR CODE HERE\n", " raise NotImplementedError()" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "deletable": false, "nbgrader": { "cell_type": "code", "checksum": "634e139137eead8808d1d8ccb793d5a5", "grade": true, "grade_id": "cell-39ada0528e69d2e5", "locked": false, "points": 1, "schema_version": 3, "solution": true, "task": false } }, "outputs": [], "source": [ "# Do your plotting here ...\n", "\n", "# YOUR CODE HERE\n", "raise NotImplementedError()\n", "\n", "# Yann had a plot with a couple of logisticly looking rising lines,\n", "# starting at the same x point, but some higher starting y value,\n", "# ending nonintersection some higher some lower." ] }, { "cell_type": "markdown", "metadata": { "deletable": false, "editable": false, "nbgrader": { "cell_type": "markdown", "checksum": "c2b46d2fef4b0c243103a5a6f1111e2d", "grade": false, "grade_id": "cell-b7c84b8c4ed4c1be", "locked": true, "schema_version": 3, "solution": false, "task": false } }, "source": [ "### Task 3.5 [3 points]\n", "Implement a function to calculate the so-called density-of-states \n", "\n", "\\begin{align*}\n", " \\rho(\\omega) = \\frac{1}{N} \\sum_i \\delta(\\omega - E_i),\n", "\\end{align*}\n", "\n", "for a variable energy grid $\\omega$. Do this by approximating the $\\delta$-distribution with a Gaussian. In detail, you can use your atomic orbital function $\\delta(\\omega - E_i) \\approx \\phi(\\omega, E_i, \\sigma_\\rho)$. Calculate the normalization factor $N$ such that $\\int \\rho(\\omega) dw = 1$ is fulfilled.\n", "\n", "Your function should take as input the energy grid $\\omega$, the eigenenergies $E_i$ and the broadening $\\sigma_\\rho$." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "deletable": false, "nbgrader": { "cell_type": "code", "checksum": "ca46cf0b09305fafb522fc0395d1e495", "grade": true, "grade_id": "cell-d7c225b7687b5a9c", "locked": false, "points": 3, "schema_version": 3, "solution": true, "task": false } }, "outputs": [], "source": [ "def getDOS_ED(w, Ei, sigma):\n", " # YOUR CODE HERE\n", " raise NotImplementedError()" ] }, { "attachments": { "dosN010.png": { "image/png": "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jyWMR7Jqywr5UJLqY+DbCb6ifPHTVB8HVaVrOs1ajirre7I8TDuWFKy8dj48OkK22ExcHi2hvC9kGz+scdqyXZs5wJscBGndUeBmowEw6mjvBxhzPmzlzsFR4AgCgAAIgACYMoDDA4BDAARAAATAhJL4pXAACIAAmDKAg717wzRvhgCAAAiAiY+BNwIONR1AAARAAATAjgtouCU0AAIgAAJghzNM+Zb4AAiAAJh6BvpnIgEgAAIgAKYbAARAAARAAARAAARAAARAAARAAARAAARAAARAAARAAARAAARAAARAAARAAARAAARAAARAAARAAARAAARAAARAAARAAARAAARAAARAAARAAKR9AyAAAiAAAiAAAiAAAiAAAiAAAiAAAiAVBIAACIAASAUBIAACIAACIAACIAACIAACIAACIAACIAACIAACIAACIAACIAACIAACIAACYJD8j17vp/cR5N27/3nftvzPd/+rdWX+3+/e/e/WFfp/tXLneBdDMX7a6/0PlDPkBz1CSIfzA5Qz5P/86U//N4Zvql7v/7XuS/7/9f7UujL/NJIev1P+1MqdoxdDMf7vn/70f1CuBen17lpX5rvePXO+18h9K3eOHq2aACAAAiAhAAiAAEgIAAIgABICgAAIgIQAIAACIAFAAARAACQACIAACIAkpTx79nXryvz1sxetK/PzZ8/ady3wi1buHFyDSwghhBBCCCGEEEIIIYQQQgghhBBCCCGEEEIIIaSrGQwfMtC++pAWlXn7wnDQhsqNq6A2JdtV7rBVZT7sxTR0UrprPD68RbNbDzevtaXMg+HhWTSD2Ct3GFVBbUr2VLnD1pT5MXEWmsTSRHe7j74Ft6XMu78No4HFULnDw0uDGC0pK9nRo86GbSnz8cs0dlL63Th8bKpDzVdndABqyzx8bACDSAqtr9zBY1sdRle7+pI9bMRgz8mgJWU++hYHQFK+b5z+cCFKlE20vMyHiZ5BFG3UULmHBhldy9SXbHjxT+Iv8+GvAEg0g4PhYS8ZlOw6wyw6ACvKHE8bNRT0UKnRdQEtStayMm++xQGQ6HadwXlrPRtSRgegucxVr0RR0KOGGln1WpWsVWUebOoeAEnFrlzy5bnddaIEsLIr0osEQE1Bj9pjZBNqNiUbxgegoczbwgIgKcvAiMnuL7EBOLAAMIqJy4EtgMNoMRnG++1iW+bdgTEAJFXf5WUnlQwiBNBY5piaqKGgR+WLrGlalCzGKUBtmXejGAAkzpg87jptBDCOs2A6CuAgurNgTGV+rHgATD33vfNUYbL//XaYPLso8zMrACM5Ua2bAA7iO6XOUOb9maEACIAVAA4up6kGsQOoPXkxii6KoaDtBTBC/wxlPtQ7AKaeb+7Oc9Ywz2Z2tgOdbXY/3KLMX1+U+eus+iBINBcqdPEgSIz+Gcq8+XW7Ew+3P8AAufzyLG+jw5L+Yuxljsu/Lp4GM4j1TgiaMp/txHQCiXb0cDZIiBvAoXaQFtOFqvqCPoE4iPak4kHpiaExIqIvMwAS2y/PczgG+9xuCOxc5sgu1Le8FC6uZmko2SBWQ7RlPuzEDIFJaQ7nNBy+RS9ueBnt/UqeyjzYFzquG5UYKncY7c0QLkp2qNxo/SupzfO9mIMgRPvl+XimvO6gb5S3wzot8/DooHZv+JhBzJW7x6QX5dfLScmGR+dDHSp3GHeZL3ZaACSGRno8QdICAC/KfAJgTBM++sqN7d7Vp7MIxyU7ATDGOeGy2gRA4rjzDLP2AHhe5mgBNFTuIEpJSkrWBgAvahMAicPeczxevDjgEefzZE7KfCjj4CjRV+4g1ucLnZWsrHIHLSnz0R9o54QQQgghhBBCCCGEEEIIIYQQQgghhBBCCCGEEEIIIYQQQgghhBBCCCGEEEIIIYQQQgghhBBCCCGEEEIIIYQQQjqSb3u97w6/3PV6d1QJISSRPH/fe//14bdnvd49dUIISSTfnfT5XvR631MnhJA08iDe++dHv/d6vefUCiEkwQ7gFsBn1AohJIU8fwDvawAkhKSYb3q9d9sf7u/vAJAQklTue71vN///ej8SPu8REkJIV/P+scP30BP8ZvP/Z73ee2qFEJJE9h2+7x4hvDs+K5oQQjoO4OMIeAfg973egFohhKQC4Itdx28L4DeMgAkhyeTd9uDH5mzozdD3xXs6gISQZPLdQ9fv7u59737Ye7/5P1cCE0KSyfOHLuBDvn/+bPv/3ndcB0cISUfAu+977+4e2Bvc994PGf8SQgghhBBCCCGEEEIIIYQQQgghhBBCCCGEEEIIIYQQQgghhBBCCCGEEEIIIYQQQgghhBBCCCGEEEIIIYQQQgghhBBCCCGEEEIIIYQQQgghhBBCCCGEEELIdfP/AR2es/ErXdicAAAAJXRFWHRkYXRlOmNyZWF0ZQAyMDIxLTAzLTAzVDE2OjM0OjU0KzAwOjAwgGbizgAAACV0RVh0ZGF0ZTptb2RpZnkAMjAyMS0wMy0wM1QxNjozNDo1NCswMDowMPE7WnIAAAAtdEVYdGljYzpjb3B5cmlnaHQAQ29weXJpZ2h0IEFydGlmZXggU29mdHdhcmUgMjAxMQi6xbQAAAAxdEVYdGljYzpkZXNjcmlwdGlvbgBBcnRpZmV4IFNvZnR3YXJlIHNSR0IgSUNDIFByb2ZpbGUTDAGGAAAAJHRFWHRwZGY6SGlSZXNCb3VuZGluZ0JveAA0NjAuOHgzNDUuNiswKzAvndwyAAAAE3RFWHRwZGY6VmVyc2lvbgBQREYtMS40JDFqVwAAAABJRU5ErkJggg==" }, "dosN100.png": { "image/png": "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" } }, "cell_type": "markdown", "metadata": { "deletable": false, "editable": false, "nbgrader": { "cell_type": "markdown", "checksum": "b2049bb4d5fb56c59e7d0e742a91d3c8", "grade": false, "grade_id": "cell-7560c4658b1da5d3", "locked": true, "schema_version": 3, "solution": false, "task": false } }, "source": [ "### Task 3.6 [3 points]\n", "Use your density-of-states routine to calculate $\\rho(\\omega)$ for $n=10,20,40,80,100$ for $\\sigma_\\rho \\approx 0.005$. See below for two examples with $t \\approx -0.195$ and $n=10$ and $n=100$.\n", "\n", "Hint: if your plots look like they are smoothed out, try decreasing $\\sigma_\\rho$. If they look like there is a lot of noise, try increasing $\\sigma_\\rho$.\n", "\n", "$n = 10$ | $n = 100$\n", ":-: | :-:\n", "![dosN010.png](attachment:dosN010.png) | ![dosN100.png](attachment:dosN100.png)" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "deletable": false, "nbgrader": { "cell_type": "code", "checksum": "10cb847540f9e1998c9c1b40c5e43a7b", "grade": true, "grade_id": "cell-c3083a03553a2aa9", "locked": false, "points": 3, "schema_version": 3, "solution": true, "task": false } }, "outputs": [], "source": [ "# YOUR CODE HERE\n", "raise NotImplementedError()" ] }, { "cell_type": "markdown", "metadata": { "deletable": false, "editable": false, "nbgrader": { "cell_type": "markdown", "checksum": "69c457b9ef8fbd13ad935fe12c37c81c", "grade": false, "grade_id": "cell-362439917c95705f", "locked": true, "schema_version": 3, "solution": false, "task": false } }, "source": [ "## Step 4: Tight-Binding Propagation Method\n", "\n", "Now we turn to the time-dependent Schrödinger equation\n", "\n", "\\begin{align}\n", " i\\hbar\\frac{\\partial}{\\partial t} \\psi(x,t) = H \\psi(x,t),\n", "\\end{align}\n", "\n", "which has the formal solution\n", "\n", "\\begin{align}\n", " \\psi(x,t) = U(t) \\psi(x,t=0),\n", "\\end{align}\n", "\n", "with \n", "\n", "\\begin{align}\n", " U(t) = e^{-i \\hbar H t}\n", "\\end{align}\n", "\n", "being the time-propagation operator. Within the propagation method we can calculate the so-called local density-of-states\n", "\n", "\\begin{align}\n", " \\rho_{loc}(\\omega) = \\frac{1}{2\\pi} \\int_{-\\infty}^{+\\infty} \\, e^{i\\omega t} \\, f(t) \\ dt,\n", "\\end{align}\n", "\n", "with respect to an (arbitrary) initial state $\\psi(x,t=0)$, where\n", "\n", "\\begin{align}\n", " f(t) &= \\int_{-\\infty}^{+\\infty} \\, \\psi^*(x,t) \\, \\psi(x,t=0) \\, dx \\\\\n", " &\\approx \\int_{-\\infty}^{+\\infty} \\sum_i c_i^*(t) \\phi(x,x_i,\\sigma) \\, \\sum_j c_j(0) \\phi(x,x_j,\\sigma) \\, dx \\notag \\\\\n", " &\\approx \\sum_i c_i^*(t) c_i(0). \\notag\n", "\\end{align}\n", "\n", "Thus, the time propagation of an initial state towards positive *and* negative times followed by a Fourier transform of $f(t)$ yields the local density-of-states. To obtain the full density-of-states we need to average $\\rho_{loc}(\\omega)$ as follows\n", "\n", "\\begin{align}\n", " \\rho(\\omega) = \\lim_{S \\to \\infty} \\frac{1}{S} \\sum_p^S \\rho^{(p)}_{loc}(\\omega)\n", "\\end{align}\n", "\n", "over a variety of *random* initial states $p$.\n", "\n", "### Task 4.1 [3 points]\n", "Implement a function which calculates the exact time-propagation matrix $U(\\tau)$ for a small time-step $\\tau$ given the Hamiltonian $H$. For simplicity, set $\\hbar = 1$ in the following. \n", "\n", "Hint: Use Scipy's $\\text{expm()}$ function." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "deletable": false, "nbgrader": { "cell_type": "code", "checksum": "6cb01e4b3c6c192a0df3c4111b91c8fa", "grade": true, "grade_id": "cell-42a7aac3f0fa4d1b", "locked": false, "points": 3, "schema_version": 3, "solution": true, "task": false } }, "outputs": [], "source": [ "def getU_exact(tau, H):\n", " # YOUR CODE HERE\n", " raise NotImplementedError()" ] }, { "cell_type": "markdown", "metadata": { "deletable": false, "editable": false, "nbgrader": { "cell_type": "markdown", "checksum": "79f8101b73fbb28ff9138437e9767178", "grade": false, "grade_id": "cell-9b02ad5515424242", "locked": true, "schema_version": 3, "solution": false, "task": false } }, "source": [ "### Task 4.2 [3 points]\n", "Implement a function which performs the step-by-step time propagation given an initial state $\\vec{c}(0)$, the matrix $U(\\tau)$ and the discretized time grid $t_j$. In other words, your function should calculate \n", "\n", "$$\\vec{c}(j+1) = U(\\tau) \\cdot \\vec{c}(j)$$ \n", "\n", "for all $j$ of a given discretized time grid $t_j = j \\tau$." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "deletable": false, "nbgrader": { "cell_type": "code", "checksum": "dc040cc32e832b097bfb8c367f4203a1", "grade": true, "grade_id": "cell-4e444f44bf3bc9c1", "locked": false, "points": 3, "schema_version": 3, "solution": true, "task": false } }, "outputs": [], "source": [ "def timePropagate(U, c0, t):\n", " # YOUR CODE HERE\n", " raise NotImplementedError()" ] }, { "cell_type": "markdown", "metadata": { "deletable": false, "editable": false, "nbgrader": { "cell_type": "markdown", "checksum": "61362905e7a2d19219ae21f10a417823", "grade": false, "grade_id": "cell-62bfe608c358ff6d", "locked": true, "schema_version": 3, "solution": false, "task": false } }, "source": [ "### Task 4.3 [4 points]\n", "Use both of the above functions to calculate and animate the time propagation of an initial state\n", "\n", "$$\\psi(x,t=0) = \\phi(x, x_{i=n/2}, \\sigma) \\leftrightarrow \\vec{c}(0) = [c_{i=n/2}(0) = 1, c_{i\\neq n/2}(0) = 0]$$\n", "\n", "for a $n=100$ chain. Discretize your time grid as $t_j=j\\tau$ with $j=0 \\dots 200$, and $\\tau=1.5$. Use again $a = 1$ and $\\sigma=0.25$. \n", "\n", "To plot / animate the time propagation you should plot the real-space wave function $\\psi(x,t) \\approx \\sum_i c_i(t) \\phi(x, x_i, \\sigma)$.\n", "\n", "Hint: use your function from task 3.4 to get the Hamiltonian $H$.\n", "\n", "For the animation you can use the following draft:\n", "```python\n", "# use matplotlib's animation package\n", "import matplotlib.pylab as plt\n", "import matplotlib\n", "import matplotlib.animation as animation\n", "# set the animation style to \"jshtml\" (for the use in Jupyter)\n", "matplotlib.rcParams['animation.html'] = 'jshtml'\n", "\n", "# create a figure for the animation\n", "fig = plt.figure()\n", "plt.grid(True)\n", "plt.xlim( ... ) # fix x limits\n", "plt.ylim( ... ) # fix y limits\n", "\n", "# Create an empty plot object and prevent its showing (we will fill it each frame)\n", "myPlot, = plt.plot([0], [0])\n", "plt.close()\n", "\n", "# This function is called each frame to generate the animation (f is the frame number)\n", "def animate(f): \n", " myPlot.set_data( ... ) # update plot\n", "\n", "# Show the animation\n", "frames = np.arange(1, np.size(t)) # t is the time grid here\n", "myAnimation = animation.FuncAnimation(fig, animate, frames, interval = 20)\n", "myAnimation\n", "```" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "deletable": false, "nbgrader": { "cell_type": "code", "checksum": "dac0e917be4cfe57c7d30715f3f61912", "grade": true, "grade_id": "cell-dd676b90f6a61df6", "locked": false, "points": 4, "schema_version": 3, "solution": true, "task": false } }, "outputs": [], "source": [ "# YOUR CODE HERE\n", "raise NotImplementedError()" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "deletable": false, "nbgrader": { "cell_type": "code", "checksum": "6786036a70e4fffbda4c92e340ff90de", "grade": true, "grade_id": "cell-70e223783d806888", "locked": false, "points": 0, "schema_version": 3, "solution": true, "task": false } }, "outputs": [], "source": [ "# Animate here ...\n", "\n", "# YOUR CODE HERE\n", "raise NotImplementedError()\n", "\n", "# Yann has an animation about an atomic orbital that starts\n", "# moving to left and right and then bounce back." ] }, { "cell_type": "markdown", "metadata": { "deletable": false, "editable": false, "nbgrader": { "cell_type": "markdown", "checksum": "74ab18f8b5e98bc5456ef221449f9299", "grade": false, "grade_id": "cell-0395602360fd9e4c", "locked": true, "schema_version": 3, "solution": false, "task": false } }, "source": [ "### Task 4.4 [3 points]\n", "Implement a function which calculates the Crank-Nicolson time-propagation matrix \n", "\n", "\\begin{align*}\n", " U_{CN}(\\tau) = (I - i \\tau H / 2)\\cdot(I + i \\tau H / 2)^{-1}.\n", "\\end{align*}\n", "\n", "Here, $I$ is the diagonal identity matrix. Use Numpy's $\\text{inv()}$ function to invert the needed expression." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "deletable": false, "nbgrader": { "cell_type": "code", "checksum": "1b2677753953d9a528f0dbb71d4077bb", "grade": true, "grade_id": "cell-d74914e5d0a13365", "locked": false, "points": 3, "schema_version": 3, "solution": true, "task": false } }, "outputs": [], "source": [ "def getU_CN(tau, H):\n", " # YOUR CODE HERE\n", " raise NotImplementedError()\n", "\n", "# Yann notes that the definition of $U_{CN}(\\tau)$ here is a little\n", "# different from what Malte used on the slides. He recommends using\n", "# what is stated here." ] }, { "cell_type": "markdown", "metadata": { "deletable": false, "editable": false, "nbgrader": { "cell_type": "markdown", "checksum": "3746f3298575d0e0c37d35c01039e60e", "grade": false, "grade_id": "cell-1daec83575502040", "locked": true, "schema_version": 3, "solution": false, "task": false } }, "source": [ "### Task 4.5 [5 points]\n", "Implement a function which calculates the time-propagation matrix using the Trotter-Suzuki decomposition \n", "\n", "\\begin{align*}\n", " U_{TZ}(\\tau) = e^{-i\\tau H_1} \\cdot e^{-i \\tau H_2}.\n", "\\end{align*}\n", "\n", "In this approach you choose a decomposition of the tight-binding Hamiltonian $H = H_1 + H_2$, which allows you to analytically diagonalize $H_1$ and $H_2$ (see last lecture). From this analytic diagonalization you will be able to calculate the matrix exponentials $e^{-i\\tau H_1}$ and $e^{-i \\tau H_2}$.\n", "\n", "Write your definition of the 2x2 blocks in $e^{-i\\tau H_1}$ and $e^{-i \\tau H_2}$ in the Markdown cell below. (Double click on \"YOUR ANSWER HERE\" to open the cell, and ctrl+enter to compile.) " ] }, { "cell_type": "markdown", "metadata": { "deletable": false, "nbgrader": { "cell_type": "markdown", "checksum": "566fe9a7f8031baea9812438b155671c", "grade": true, "grade_id": "cell-bef909a443eb2a68", "locked": false, "points": 2, "schema_version": 3, "solution": true, "task": false } }, "source": [ "YOUR ANSWER HERE" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "deletable": false, "nbgrader": { "cell_type": "code", "checksum": "f9f25759b1a81bbac8c1834c2f4565b8", "grade": true, "grade_id": "cell-1425de6027596dea", "locked": false, "points": 3, "schema_version": 3, "solution": true, "task": false } }, "outputs": [], "source": [ "def getU_TZ(tau, H):\n", " # YOUR CODE HERE\n", " raise NotImplementedError()\n", "\n", "# Yann mentions again that this is slightly different wrong what\n", "# is in the slides/lecture." ] }, { "cell_type": "markdown", "metadata": { "deletable": false, "editable": false, "nbgrader": { "cell_type": "markdown", "checksum": "1747285f36e24921cb5c2811632f33c3", "grade": false, "grade_id": "cell-f53dc443bd1858b1", "locked": true, "schema_version": 3, "solution": false, "task": false } }, "source": [ "### Task 4.6 [3 points]\n", "In your implementation of $U_{TZ}(\\tau)$ you analytically evaluate the matrix exponentials $e^{-i\\tau H_1}$ and $e^{-i \\tau H_2}$. Test your implementation by comparing your results for these matrix exponentials to those obtained using Scipy's $\\text{expm()}$ function." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "deletable": false, "nbgrader": { "cell_type": "code", "checksum": "684e4173792cb10809386ef097c561e4", "grade": true, "grade_id": "cell-5aa3ffce9359fa7e", "locked": false, "points": 3, "schema_version": 3, "solution": true, "task": false } }, "outputs": [], "source": [ "# YOUR CODE HERE\n", "raise NotImplementedError()\n", "\n", "# Yann printed\n", "#Biggest differences of U1 with Scipy:\n", "#Real: 1e-16 \n", "#Imag: 2.77e-17\n", "# \n", "# and difference with U_exact in the order of 1e-1 or 1e-2." ] }, { "cell_type": "markdown", "metadata": { "deletable": false, "editable": false, "nbgrader": { "cell_type": "markdown", "checksum": "94ca5bdd479043f3c73214a3c4916923", "grade": false, "grade_id": "cell-c255a2bf5eac4e2b", "locked": true, "schema_version": 3, "solution": false, "task": false } }, "source": [ "### Task 4.7 [6 points]\n", "In the next task you will need a Fourier transform to calculate the local density-of-states. Therefore you will need to implement a function that returns the Fourier transform $f(\\omega)$ of a given function $f(t)$ defined on a time grid $t$, for a given energy grid $\\omega$. I.e. it should calculate:\n", "\n", "\\begin{align}\n", " f(\\omega) = \\frac{1}{2\\pi} \\int_{-\\infty}^{+\\infty} \\, e^{i\\omega t} \\, f(t) \\ dt.\n", "\\end{align}\n", "\n", "Hint: use your integration function from task 2.2.\n", "\n", "Then implement a unit test for your function." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "deletable": false, "nbgrader": { "cell_type": "code", "checksum": "37055009cb70e69bc9b1dbc761859c51", "grade": true, "grade_id": "cell-87ece8e50b1f8de5", "locked": false, "points": 3, "schema_version": 3, "solution": true, "task": false } }, "outputs": [], "source": [ "# YOUR CODE HERE\n", "raise NotImplementedError()" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "deletable": false, "nbgrader": { "cell_type": "code", "checksum": "49aa23055a91a51494bcb9d64924cc75", "grade": true, "grade_id": "cell-46e1530333341bc6", "locked": false, "points": 3, "schema_version": 3, "solution": true, "task": false } }, "outputs": [], "source": [ "# Implement your unit test here ...\n", "\n", "# YOUR CODE HERE\n", "raise NotImplementedError()" ] }, { "cell_type": "markdown", "metadata": { "deletable": false, "editable": false, "nbgrader": { "cell_type": "markdown", "checksum": "028bf13b6bf982c70fd1057c9d6f23f6", "grade": false, "grade_id": "cell-dc5656a6bdea875a", "locked": true, "schema_version": 3, "solution": false, "task": false } }, "source": [ "### Task 4.8 [3 points]\n", "Calculate the local density-of-states $\\rho_{loc}(\\omega)$ from the Fourier transform of $f(t)$ using all three time propagation methods: $U(\\tau)$, $U_{CN}(\\tau)$ and $U_{TZ}(\\tau)$.\n", "\n", "Start from $\\psi(x,t=0) = \\phi(x, x_{i=0}, \\sigma)$ and $\\psi(x,t=0) = \\phi(x, x_{i=n/2}, \\sigma)$, using a $n=100$ chain. Discretize your integration time grid as $t_j=j\\tau$, with $j=-150 \\dots 150$ and $\\tau=1.5$. Use again $a = 1$ and $\\sigma=0.25$.\n", "\n", "Be careful: for the Fourier transform you will need positive *and* negative time steps! Thus you will need to do two time propagations: one using $U(\\tau)$ towards positive times and one using $U(-\\tau)$ towards negative times, both starting from $\\psi(x,t=0)$." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "deletable": false, "nbgrader": { "cell_type": "code", "checksum": "29ff620823bca3839839fbc35ba9b236", "grade": true, "grade_id": "cell-316f9c26031f89df", "locked": false, "points": 3, "schema_version": 3, "solution": true, "task": false } }, "outputs": [], "source": [ "# YOUR CODE HERE\n", "raise NotImplementedError()" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "deletable": false, "nbgrader": { "cell_type": "code", "checksum": "1c27de03eb5f84673d52e1e621c316ee", "grade": true, "grade_id": "cell-d7a678fdeef64ea2", "locked": false, "points": 0, "schema_version": 3, "solution": true, "task": false } }, "outputs": [], "source": [ "# Do your own testing here ...\n", "\n", "# YOUR CODE HERE\n", "raise NotImplementedError()\n", "\n", "# Yann had a plot for Tau = 1.5\n", "# DOS: looking like a hill (\"like a dome with a peak around zero energy 0\")\n", "# for CN, TS and the exact one\n", "# a plot of f(t)\n", "# a plot of local DOS\n", "# in the title he mentiones the inital values." ] }, { "cell_type": "markdown", "metadata": { "deletable": false, "editable": false, "nbgrader": { "cell_type": "markdown", "checksum": "c3e0ecb1b67f93590abf1a796bd507b8", "grade": false, "grade_id": "cell-ffbf1e8460ac69d8", "locked": true, "schema_version": 3, "solution": false, "task": false } }, "source": [ "### Task 4.9 [6 points]\n", "Use the Trotter-Suzuki decomposition to calculate the full density-of-states by averaging over about $100$ local density-of-states you obtained from the time propagation of $100$ random initial states $\\vec{c}(0)$. To this end, you will need to make sure that each $\\vec{c}(0)$ is (a) normalized and (b) can have positive *and* negative elements. \n", "\n", "Compare this approximation to the total density-of-states to the exact one from task 3.6, which you obtained directly from the eigenvalues.\n", "\n", "Hint: don't expect the results to be the exact same. Check for the location of the peaks, and whether they have a similar order of magnitude.\n", "\n", "Hint: if you did not get the Trotter-Suzuki decomposition to work, you can instead use the exact or the Crank-Nicolson time-propagation matrix." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "deletable": false, "nbgrader": { "cell_type": "code", "checksum": "81edbb8d07068d29021696fd87a961ba", "grade": true, "grade_id": "cell-2493a46a63277eda", "locked": false, "points": 3, "schema_version": 3, "solution": true, "task": false } }, "outputs": [], "source": [ "# YOUR CODE HERE\n", "raise NotImplementedError()\n", "\n", "# Yann says the initial states do need to be negative, too." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "deletable": false, "nbgrader": { "cell_type": "code", "checksum": "5438067dfec55e69ee224e67178d9e36", "grade": true, "grade_id": "cell-a40dfcd993da467c", "locked": false, "points": 3, "schema_version": 3, "solution": true, "task": false } }, "outputs": [], "source": [ "# Do your plotting here ...\n", "\n", "# YOUR CODE HERE\n", "raise NotImplementedError()\n", "\n", "# Yann plotted the exact diagonalisation and the TS propagation results\n", "# he had two plots, one peaky, one with peaks on the edges (looking a little\n", "# like my 1f/2f results in my bachelor internship hmmpfff)" ] } ], "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", "version": "3.8.10" } }, "nbformat": 4, "nbformat_minor": 4 }