{ "cells": [ { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [], "source": [ "import sisl\n", "from hubbard import HubbardHamiltonian, sp2, density, plot, NEGF\n", "import matplotlib.pyplot as plt\n", "%matplotlib inline" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Open quantum systems (Green's functions)\n", "\n", "In this example we will study the effect of Coulomb repulsion interactions in an open-quantum system, and find the self-consistent solution using the non-equilibrium Green's function (NEGF) formalism within the `hubbard` package.\n", "\n", "The sysem of this example is composed by a central region coupled to two electrodes (left and right). \n", "The central region in this case will be just a repetition of the unit-cell of the electrodes (perfect system),\n", "for the sake of simplicity. We will consider the electrodes to be the unit cell of a zigzag graphene nanoribbon (ZGNR) periodic along the x-axis of width W=5 C-atoms across.\n", "\n", "We will focus on the equilibrium situation, therefore the temperature and chemical potentials of the electrodes *must coincide*.\n", "The complex contour that we use to integrate the density matrix in the `hubbard.NEGF` class is extracted from a [Transiesta](https://gitlab.com/siesta-project/siesta) calculation\n", "performed for a temperature of `kT=0.025` eV, which we will set as common for all the composing element calculations." ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [ { "data": { "image/png": "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", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "# Build sisl.Geometry object\n", "geom = sisl.geom.zgnr(5)\n", "\n", "# Plot geometry of the unit cell\n", "p = plot.GeometryPlot(geom, cmap='Greys',figsize=(2,4))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "To build the TB Hamiltonian (which describes the kinetic part of the system's Hamiltonian) we will use the function from the `hubbard` package `sp2` that builds the TB `sisl.Hamiltonian` of an sp2 carbon system. We will use the first nearest neighbors interactions (1NN) TB model, typically used to simulate graphene." ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [], "source": [ "# Build sisl.Hamiltonian object using the sp2 function\n", "H_elec = sp2(geom, t1=2.7, t2=0.2, t3=0.18, spin='polarized')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Now we build the `HubbardHamiltonian` object for the electrodes. As in [this example](https://dipc-cc.github.io/hubbard/docs/latest/examples/periodic.html), one needs to pass the argument `nkpt=[nkx,nky,nkz]` to sample the Hamiltonian along the periodic directions in k-space. To model the interaction part (Hubbard term) we will use `U=3.` eV" ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [], "source": [ "# Build the HubbardHamiltonian object with U=3. eV\n", "MFH_elec = HubbardHamiltonian(H_elec, U=3., nkpt=[100,1,1], kT=0.025)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "As in [this example](https://dipc-cc.github.io/hubbard/docs/latest/examples/molecules.html) one has to break symmetry between up and down electrons so the program can find a self-consistent solution. To do so we can place one up electron at the lower edge of the ribbon and one down electron on the upper edge of the ribbon." ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [], "source": [ "MFH_elec.set_polarization([0], dn=[-1])" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Now we can start the convergence until we find the self-consistent solution up to a desired tolerance (`tol`) by calling the `HubbardHamiltonian.converge` method. This method needs of another method to tell the code how to build the spin-densities. For instance, to compute the spin-densities for TB Hamiltonians with finite or periodic boundary conditions, one could use the method `density.calc_n` of the `hubbard` package." ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ " HubbardHamiltonian: converge towards tol=1.00e-10\n", " 10 iterations completed: 2.6818192494504345e-07 -62.28270704875\n", " found solution in 14 iterations\n" ] } ], "source": [ "# Converge until a tolerance of tol=1e-10, print info for each 10 completed iterations\n", "dn = MFH_elec.converge(density.calc_n, tol=1e-10, print_info=True, steps=10)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Let's visualize some relevant physical quantities of the final result" ] }, { "cell_type": "code", "execution_count": 7, "metadata": {}, "outputs": [ { "data": { "image/png": "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", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "p = plot.SpinPolarization(MFH_elec, colorbar=True, vmax=0.4, vmin=-0.4, figsize=(2,4))\n", "p.annotate(size=10);" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Let's also plot the bandstructure of the electrodes" ] }, { "cell_type": "code", "execution_count": 8, "metadata": {}, "outputs": [ { "data": { "image/png": "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", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "p = plot.Bandstructure(MFH_elec, ymax=4, figsize=(2,4))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Build central region TB Hamiltonian as a repetition of the electrodes, but without periodic boundary conditions" ] }, { "cell_type": "code", "execution_count": 9, "metadata": {}, "outputs": [], "source": [ "# Central region is a repetition of the electrodes\n", "HC = H_elec.tile(3,axis=0)\n", "# without periodic boundary conditions\n", "HC.set_nsc([1,1,1])" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ " In this case we will have to use a method based on the non-equilibrium Green's function of the central region \n", " to obtain the spin-densities. To do so, we can make use of the methods available in the `hubbard.NEGF` class.\n", " \n", " 1. Build HubbardHmamiltonian for the non-periodic device\n", " 2. Build NEGF object for the device by passing:\n", " - The HubbardHamiltonian of the device\n", " - A list of tuples containing the electrode Hamiltonians and their respective semi-infinite directions: `[(Helec1, dir1), (Helec2, dir2), ...]`\n", " - The atomic positions of the electrodes inside the device (`elec_indx`)\n", " 3. Converge the HubbardHamiltonian using the `NEGF.calc_n_open` method to obtain the spin densities for the open-quantum system" ] }, { "cell_type": "code", "execution_count": 10, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ " HubbardHamiltonian: converge towards tol=1.00e-06\n", " 1 iterations completed: 0.4808373837433086 -141.68364233284112\n", " 2 iterations completed: 0.18293016068416684 -186.84361242456043\n", " 3 iterations completed: 0.051316852264032264 -186.8017408714892\n", " 4 iterations completed: 0.02488107302253495 -186.81281579788273\n", " 5 iterations completed: 0.0038729870669934607 -186.8415493962869\n", " 6 iterations completed: 0.002376656285169698 -186.8468393262589\n", " 7 iterations completed: 0.0003524184624972282 -186.8479471423146\n", " 8 iterations completed: 7.085002878826074e-05 -186.84806174466465\n", " 9 iterations completed: 9.511403021966736e-06 -186.84810104924318\n", " 10 iterations completed: 2.6608195501931498e-06 -186.84809098450492\n", " 11 iterations completed: 3.514672604065794e-07 -186.84808764264898\n", " found solution in 11 iterations\n" ] } ], "source": [ "# MFH object of the central region, same kT and U as electrodes!\n", "MFH_HC = HubbardHamiltonian(HC, U=3., kT=0.025)\n", "\n", "# Use initial random density\n", "MFH_HC.random_density()\n", "\n", "# Map electrodes in the device region, i.e., extract the atomic indices that correspond\n", "# to the electrodes inside the device region. In this case the first and last blocks\n", "elec_indx = [range(len(H_elec)), range(-len(H_elec), 0)]\n", "\n", "# First create the NEGF object, where we pass the MFH converged electrodes and\n", "# the central region HubbardHamiltonian object\n", "negf = NEGF(MFH_HC, [(MFH_elec, '-A'), (MFH_elec, '+A')], elec_indx)\n", "\n", "# Converge using Green's function method to obtain the densities\n", "dn = MFH_HC.converge(negf.calc_n_open, steps=1, tol=1e-6, print_info=True)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Let's visualize the spin polarization of the device" ] }, { "cell_type": "code", "execution_count": 11, "metadata": {}, "outputs": [ { "data": { "image/png": "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", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "p = plot.SpinPolarization(MFH_HC, colorbar=True, vmax=0.4, vmin=-0.4, figsize=(6,5))\n", "p.annotate(size=10)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Write electrode and device Hamiltonians to netCDF files so TBtrans can read them" ] }, { "cell_type": "code", "execution_count": 12, "metadata": {}, "outputs": [], "source": [ "# Shift electrodes with Fermi level and write it to nc file\n", "MFH_elec.shift(-MFH_elec.fermi_level())\n", "MFH_elec.H.write('MFH_elec.nc')\n", "\n", "# Shift device with its Fermi level and write nc file\n", "MFH_HC.H.write('MFH_HC.nc', Ef=negf.Ef)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Write the input file for a [TBtrans](https://gitlab.com/siesta-project/siesta) calculation for this system" ] }, { "cell_type": "code", "execution_count": 13, "metadata": {}, "outputs": [], "source": [ "f = open('RUN.fdf', 'w')\n", "f.write(\n", "\"\"\"SystemLabel device\n", "TBT.HS MFH_HC.nc\n", "\n", "%block TBT.Contours\n", " window\n", "%endblock\n", "\n", "%block TBT.Contour.window\n", " part line\n", " from -10.0 eV to 10.0 eV\n", " delta 0.01 eV\n", " method mid-rule\n", "%endblock\n", "\n", "%block TS.Elecs\n", " LEFT\n", " RIGHT\n", "%endblock TS.Elecs\n", "\n", "%block TS.Elec.LEFT\n", " TSHS MFH_elec.nc\n", " semi-inf-dir -a1\n", " elec-pos begin 1\n", "%endblock TS.Elec.LEFT\n", "\n", "%block TS.Elec.RIGHT\n", " TSHS MFH_elec.nc\n", " semi-inf-dir +a1\n", " elec-pos end -1\n", "%endblock TS.Elec.RIGHT\n", "\"\"\"\n", " )\n", "f.close()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Clean possible previous TBtrans output files and run again" ] }, { "cell_type": "code", "execution_count": 14, "metadata": { "scrolled": true }, "outputs": [ { "data": { "text/plain": [ "0" ] }, "execution_count": 14, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# TBtrans calculation\n", "import os\n", "# Clean output\n", "os.system('rm device.TBT*')\n", "os.system('rm fdf*')\n", "# Run TBtrans\n", "os.system('tbtrans RUN.fdf > RUN.out')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Extract data from [TBtrans](https://gitlab.com/siesta-project/siesta) calculation for each spin channel using [sisl](https://github.com/zerothi/sisl)" ] }, { "cell_type": "code", "execution_count": 15, "metadata": {}, "outputs": [], "source": [ "tbt_up = sisl.get_sile('device.TBT_UP.nc')\n", "tbt_dn = sisl.get_sile('device.TBT_DN.nc')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Plot transmission probabilities for each spin channel " ] }, { "cell_type": "code", "execution_count": 16, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "Text(0, 0.5, 'Transmission [a.u.]')" ] }, "execution_count": 16, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "plt.plot(tbt_up.E, tbt_up.transmission(0, 1), label=r'$\\sigma=\\uparrow$')\n", "plt.plot(tbt_dn.E, tbt_dn.transmission(0, 1), '--', label=r'$\\sigma=\\downarrow$')\n", "plt.legend(fontsize=16)\n", "plt.xlim(-10, 10)\n", "plt.xlabel('Energy [eV]', fontsize=16)\n", "plt.ylabel('Transmission [a.u.]', fontsize=16)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### Note\n", "Usually, each iteration using the non-equilibrium Green's function formalism takes more time than if the system is finite or periodic.\n", "This is due to the fact that it has to invert the Green's function matrix for each energy point along the integration path in each iteration.\n", "For this reason, using a good initial guess (initial spin-densities) can be crucial if we want to improve the performance.\n", "\n", "Try again the example from above but using a specific initial guess for the spin-densities.\n", "For instance, you could find the self-consistent solution for the device Hamiltonian with periodic boundary conditions\n", "and use this spin-densities to start the convergence for the device with open boundary conditions." ] } ], "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.3" } }, "nbformat": 4, "nbformat_minor": 2 }