{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "## A more drastic change in the potential\n", "\n", "Now let's try a more significant change to the potential. It will be instructive to place a quantum harmonic \n", "oscillator potential into our square well, and then build the Hamiltonian, again using the square well eigenvectors as a basis set. We will look at two cases: first, a small magnitude for the potential (a small perturbation, where we would expect to see small changes in the square well energies); second, a large magnitude for the potential (where the first few eigenstates should be very close to the QHO eigenstates). \n", "\n", "First we set up the functions that we need (you should be familiar with these by now !)." ] }, { "cell_type": "code", "execution_count": 10, "metadata": { "collapsed": true }, "outputs": [], "source": [ "# Import libraries and set up in-line plotting.\n", "%matplotlib inline\n", "import matplotlib.pyplot as pl\n", "import numpy as np\n", "# This is a new library - linear algebra includes solving for eigenvalues & eigenvectors of matrices\n", "import numpy.linalg as la\n", "\n", "# Define the eigenbasis - normalisation needed elsewhere\n", "def eigenbasis_sw(n,width,norm,x):\n", " \"\"\"The eigenbasis for a square well, running from 0 to a, sin(n pi x/a)\"\"\"\n", " fac = np.pi*n/width\n", " return norm*np.sin(fac*x)\n", "\n", "# We will also define the second derivative for kinetic energy (KE)\n", "def d2eigenbasis_sw(n,width,norm,x):\n", " \"\"\"The eigenbasis for a square well, running from 0 to a, sin(n pi x/a)\"\"\"\n", " fac = np.pi*n/width\n", " return -fac*fac*norm*np.sin(fac*x)\n", "\n", "# Define the x-axis\n", "width = 1.0\n", "num_x_points = 101\n", "x = np.linspace(0.0,width,num_x_points)\n", "dx = width/(num_x_points - 1)\n", "\n", "# Integrate two functions over the width of the well\n", "def integrate_functions(f1,f2,size_x,dx):\n", " \"\"\"Integrate two functions over defined x range\"\"\"\n", " sum = 0.0\n", " for i in range(size_x):\n", " sum = sum + f1[i]*f2[i]\n", " sum = sum*dx\n", " return sum\n", "\n", "# Now set up the array of basis functions - specify the size of the basis\n", "num_basis = 10\n", "# These arrays will each hold an array of functions\n", "basis_array = np.zeros((num_basis,num_x_points))\n", "d2basis_array = np.zeros((num_basis,num_x_points))\n", "\n", "# Loop over first num_basis basis states, normalise and create an array\n", "# NB the basis_array will start from 0\n", "for i in range(num_basis):\n", " n = i+1\n", " # Calculate A = \n", " integral = integrate_functions(eigenbasis_sw(n,width,1.0,x),eigenbasis_sw(n,width,1.0,x),num_x_points,dx)\n", " # Use 1/sqrt{A} as normalisation constant\n", " normalisation = 1.0/np.sqrt(integral)\n", " basis_array[i,:] = eigenbasis_sw(n,width,normalisation,x)\n", " d2basis_array[i,:] = d2eigenbasis_sw(n,width,normalisation,x)\n", " \n", "# Define a function to act on a basis function with the potential\n", "def add_pot_on_basis(Hphi,V,phi):\n", " for i in range(V.size):\n", " Hphi[i] = Hphi[i] + V[i]*phi[i]" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Small perturbation: close to the square well\n", "\n", "As before, we'll start with a small perturbation (though you should think carefully about the following question: what does *small* mean in this context ?)" ] }, { "cell_type": "code", "execution_count": 11, "metadata": { "collapsed": false }, "outputs": [ { "data": { "image/png": "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\nWHFyAAAAAElFTkSuQmCC\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# Define the potential in the square well\n", "def square_well_potential2(x,V,a):\n", " \"\"\"QHO Potential for a particle in a square well, expecting two arrays: x, V(x), and potential height, a\"\"\"\n", " # Note that we offset x so that the QHO well is centred on the square well\n", " for i in range(x.size):\n", " V[i] = 0.5*a*(x[i]-0.5)**2 \n", " # Plot to ensure that we know what we're getting\n", " pl.plot(x,V)\n", " \n", "omega = 1.0\n", "omega2 = omega*omega\n", "VbumpQHO = np.linspace(0.0,width,num_x_points)\n", "pot_bump = square_well_potential2(x,VbumpQHO,omega2)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Now that we have the potential defined, we will make matrix elements (again, outputting the potential matrix so that we can think about the perturbation this gives), diagonalise and output the first few eigenvalues and eigenvectors. We'll compare these to two limits: the full QHO solution; and the square well solution.\n", "\n", "Note that we have defined $\\hbar = m_e = 1$, so the QHO eigenenergies are just:\n", "\n", "$$\n", "E_n = \\omega\\left(n+\\frac{1}{2}\\right)\n", "$$" ] }, { "cell_type": "code", "execution_count": 12, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Full Hamiltonian\n", " 4.951 -0.000 0.019 0.000 0.004 0.000 0.001 -0.000 0.001 -0.000\n", " 0.000 19.775 -0.000 0.023 0.000 0.005 0.000 0.002 -0.000 0.001\n", " 0.019 0.000 44.452 -0.000 0.024 0.000 0.005 -0.000 0.002 0.000\n", " 0.000 0.023 0.000 78.997 0.000 0.024 -0.000 0.006 -0.000 0.002\n", " 0.004 0.000 0.024 0.000 123.411 0.000 0.025 0.000 0.006 0.000\n", " 0.000 0.005 0.000 0.024 0.000 177.694 0.000 0.025 0.000 0.006\n", " 0.001 0.000 0.005 -0.000 0.025 -0.000 241.846 -0.000 0.025 -0.000\n", " -0.000 0.002 -0.000 0.006 0.000 0.025 -0.000 315.869 -0.000 0.025\n", " 0.001 -0.000 0.002 -0.000 0.006 0.000 0.025 -0.000 399.760 -0.000\n", " -0.000 0.001 0.000 0.002 -0.000 0.006 -0.000 0.025 -0.000 493.522\n", "Perturbation matrix elements:\n", " 0.016 -0.000 0.019 0.000 0.004 0.000 0.001 0.000 0.001 0.000\n", " -0.000 0.035 -0.000 0.023 -0.000 0.005 -0.000 0.002 -0.000 0.001\n", " 0.019 -0.000 0.039 -0.000 0.024 0.000 0.005 0.000 0.002 0.000\n", " 0.000 0.023 -0.000 0.040 -0.000 0.024 -0.000 0.006 -0.000 0.002\n", " 0.004 -0.000 0.024 -0.000 0.041 0.000 0.025 0.000 0.006 -0.000\n", " 0.000 0.005 0.000 0.024 0.000 0.041 -0.000 0.025 -0.000 0.006\n", " 0.001 -0.000 0.005 -0.000 0.025 -0.000 0.041 -0.000 0.025 -0.000\n", " -0.000 0.002 0.000 0.006 0.000 0.025 -0.000 0.041 -0.000 0.025\n", " 0.001 -0.000 0.002 -0.000 0.006 -0.000 0.025 -0.000 0.041 -0.000\n", " 0.000 0.001 0.000 0.002 -0.000 0.006 -0.000 0.025 -0.000 0.041\n", "\n", "Eigenvalues and eigenvector coefficients printed roughly\n", "[ 4.9511 19.7745 44.4521 78.9969 123.4107 177.6938 241.8465\n", " 315.8686 399.7603 493.5216]\n", "[ 1.0000e+00 8.6777e-17 4.8092e-04 9.0367e-17 2.9745e-05\n", " -7.7613e-17 5.2026e-06 -4.4090e-17 -1.4445e-06 -4.9296e-17]\n", "[ 8.6574e-17 -1.0000e+00 3.3307e-16 3.8017e-04 -2.7756e-17\n", " -3.0108e-05 -4.1633e-17 6.0876e-06 4.4409e-16 1.8574e-06]\n", "[ -4.8092e-04 2.2204e-16 1.0000e+00 -2.3945e-16 3.0075e-04\n", " -1.4811e-16 2.6972e-05 -1.2955e-16 -5.9446e-06 2.8739e-16]\n", "\n", " QHO Square Perfect QHO Difference Perfect Square Difference\n", " 4.951 0.500 4.451 4.935 0.016\n", " 19.775 1.500 18.275 19.739 0.035\n", " 44.452 2.500 41.952 44.413 0.039\n", " 78.997 3.500 75.497 78.957 0.040\n", " 123.411 4.500 118.911 123.370 0.041\n", " 177.694 5.500 172.194 177.653 0.041\n", " 241.846 6.500 235.346 241.805 0.041\n", " 315.869 7.500 308.369 315.827 0.041\n", " 399.760 8.500 391.260 399.719 0.041\n", " 493.522 9.500 484.022 493.480 0.041\n" ] } ], "source": [ "# Declare space for the matrix elements\n", "Hmat2 = np.eye(num_basis)\n", "\n", "# Loop over basis functions phi_n (the bra in the matrix element)\n", "print \"Full Hamiltonian\"\n", "for n in range(num_basis):\n", " # Loop over basis functions phi_m (the ket in the matrix element)\n", " for m in range(num_basis):\n", " # Act with H on phi_m and store in H_phi_m\n", " H_phi_m = -0.5*d2basis_array[m] \n", " add_pot_on_basis(H_phi_m,VbumpQHO,basis_array[m])\n", " # Create matrix element by integrating\n", " Hmat2[m,n] = integrate_functions(basis_array[n],H_phi_m,num_x_points,dx)\n", " # The comma at the end prints without a new line; the %8.3f formats the number\n", " print \"%8.3f\" % Hmat2[m,n],\n", " # This print puts in a new line when we have finished looping over m\n", " print\n", " \n", "print \"Perturbation matrix elements:\"\n", "# Output the matrix elements of the potential to see how large the perturbation is\n", "# Loop over basis functions phi_n (the bra in the matrix element)\n", "for n in range(num_basis):\n", " # Loop over basis functions phi_m (the ket in the matrix element)\n", " for m in range(num_basis):\n", " # Act with H on phi_m and store in H_phi_m\n", " H_phi_m = np.zeros(num_x_points)\n", " add_pot_on_basis(H_phi_m,VbumpQHO,basis_array[m])\n", " # Create matrix element by integrating\n", " H_mn = integrate_functions(basis_array[n],H_phi_m,num_x_points,dx)\n", " # The comma at the end prints without a new line; the %8.3f formats the number\n", " print \"%8.3f\" % H_mn,\n", " # This print puts in a new line when we have finished looping over m\n", " print\n", " \n", "# Solve using linalg module of numpy (which we've imported as la above)\n", "eigval, eigvec = la.eigh(Hmat2)\n", "# This call above does the entire solution for the eigenvalues and eigenvectors !\n", "# Print results roughly, though apply precision of 4 to the printing\n", "print\n", "print \"Eigenvalues and eigenvector coefficients printed roughly\"\n", "np.set_printoptions(precision=4)\n", "print eigval\n", "print eigvec[0]\n", "print eigvec[1]\n", "print eigvec[2]\n", "print\n", "\n", "print \" QHO Square Perfect QHO Difference Perfect Square Difference\"\n", "for i in range(num_basis):\n", " n = i+1\n", " print \" %8.3f %8.3f %8.3f %8.3f %8.3f\" % (eigval[i],omega*(i+0.5),eigval[i] - omega*(i+0.5),n*n*np.pi*np.pi/2.0,eigval[i] - n*n*np.pi*np.pi/2.0)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Notice how the eigenvalues are almost the same as for the square well. More interestingly, the change in the eigenvalues is given by the diagonal elements of the matrix of the potential - which is exactly what we would expect from first order perturbation theory. You could explore how well this holds, by gradually increasing the size of the potential - we will try larger values below (and we could also code second order changes in the energy for greater accuracy, but we won't for now).\n", "\n", "Now we will plot the eigenvectors, and the difference between the eigenvectors with this small perturbation, and the unperturbed eigenvectors (the basis functions)." ] }, { "cell_type": "code", "execution_count": 13, "metadata": { "collapsed": false }, "outputs": [ { "data": { "image/png": "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\nnGPFpgAAAABJRU5ErkJggg==\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "from scipy.special import hermite\n", "from scipy.misc import factorial\n", "from math import pi\n", "root_pi = np.sqrt(pi)\n", "def N(n, alpha):\n", " return np.sqrt(alpha / (root_pi * (2.0**n) * factorial(n)))\n", "def phi(x,n,alpha):\n", " return N(n,alpha) * hermite(n)(alpha * x) * np.exp(-0.5 * alpha**2 * x**2)\n", "\n", "x2 = np.linspace(-width/2,width/2,num_x_points)\n", "#pl.plot(x,phi(x2,1,np.sqrt(np.sqrt(omega))))\n", "\n", "# Define a figure to take two plots\n", "fig3 = pl.figure(figsize=[12,3])\n", "# Add subplots: number in y, x, index number\n", "axb = fig3.add_subplot(121,autoscale_on=False,xlim=(0,1),ylim=(-2.1,2.1))\n", "axb.set_title(\"Eigenvectors for perturbed system\")\n", "axb2 = fig3.add_subplot(122,autoscale_on=False,xlim=(0,1),ylim=(-0.001,0.001))\n", "axb2.set_title(\"Difference to perfect square well eigenvectors\")\n", "#axb2.set_title(\"Difference to QHO eigenvectors\")\n", "for m in range(3): # Plot the first four states\n", " psi = np.zeros(num_x_points)\n", " for i in range(num_basis):\n", " psi = psi+eigvec[i,m]*basis_array[i]\n", " if 2*(m/2)!=m: # This is just to ensure that psi and the basis function have the same phase\n", " psi = -psi\n", " axb.plot(x,psi)\n", " psi = psi - basis_array[m]\n", " axb2.plot(x,psi)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "As we would expect, the eigenvectors are almost unchanged.\n", "\n", "### Large perturbation - approximate QHO\n", "\n", "Now we will go beyond a small perturbation, by making the QHO potential much stronger. We have to be a little careful how we do this: we'll see the effects of making the potential *too* strong lower down.\n", "\n", "We'll also plot the eigenvectors, this time comparing them to the full QHO eigenvectors." ] }, { "cell_type": "code", "execution_count": 14, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ " 45.776 -0.000 47.494 0.000 8.795 0.000 3.078 -0.000 1.425 -0.000\n", " -0.000 108.074 0.000 56.290 -0.000 11.874 0.000 4.503 -0.000 2.199\n", " 47.494 -0.000 141.544 0.000 59.368 0.000 13.298 -0.000 5.277 0.000\n", " -0.000 56.290 -0.000 179.166 0.000 60.793 -0.000 14.072 -0.000 5.744\n", " 8.795 -0.000 59.368 -0.000 225.004 -0.000 61.567 0.000 14.539 -0.000\n", " 0.000 11.874 0.000 60.793 -0.000 280.060 -0.000 62.033 0.000 14.842\n", " 3.078 -0.000 13.298 -0.000 61.567 0.000 344.679 -0.000 62.336 -0.000\n", " -0.000 4.503 -0.000 14.072 0.000 62.033 -0.000 419.004 -0.000 62.544\n", " 1.425 -0.000 5.277 -0.000 14.539 -0.000 62.336 -0.000 503.104 0.000\n", " 0.000 2.199 0.000 5.744 -0.000 14.842 -0.000 62.544 -0.000 597.013\n", "Perturbation matrix elements:\n", " 40.841 -0.000 47.494 -0.000 8.795 0.000 3.078 -0.000 1.425 0.000\n", " -0.000 88.335 -0.000 56.290 -0.000 11.874 -0.000 4.503 -0.000 2.199\n", " 47.494 -0.000 97.130 -0.000 59.368 0.000 13.298 0.000 5.277 0.000\n", " -0.000 56.290 -0.000 100.209 0.000 60.793 -0.000 14.072 -0.000 5.744\n", " 8.795 -0.000 59.368 -0.000 101.634 0.000 61.567 0.000 14.539 -0.000\n", " 0.000 11.874 0.000 60.793 0.000 102.407 -0.000 62.033 -0.000 14.842\n", " 3.078 -0.000 13.298 -0.000 61.567 -0.000 102.874 -0.000 62.336 -0.000\n", " -0.000 4.503 0.000 14.072 0.000 62.033 -0.000 103.177 -0.000 62.544\n", " 1.425 -0.000 5.277 -0.000 14.539 -0.000 62.336 -0.000 103.385 -0.000\n", " 0.000 2.199 0.000 5.744 -0.000 14.842 -0.000 62.544 -0.000 103.533\n", "\n", "Eigenvalues and eigenvector coefficients printed roughly\n", "[ 25.0007 75.0161 125.1641 175.9898 228.9861 286.5714 351.5116\n", " 424.9498 529.4435 620.7907]\n", "[ 9.0718e-01 -3.3793e-16 3.8803e-01 -1.6177e-16 1.5570e-01\n", " 1.0364e-16 4.5610e-02 4.1753e-17 -1.1746e-02 -3.7238e-17]\n", "[ -2.2204e-16 -8.4746e-01 -3.3307e-16 -4.9390e-01 -6.6613e-16\n", " 1.8744e-01 -5.5511e-17 5.0480e-02 4.1633e-16 1.3696e-02]\n", "[ -4.1202e-01 -3.3307e-16 7.4170e-01 -3.3307e-16 4.9802e-01\n", " 1.3878e-16 1.7329e-01 9.0206e-17 -4.5479e-02 1.8041e-16]\n", "\n", " QHO Square Perfect QHO Difference Perfect Square Difference\n", " 25.001 25.000 0.001 4.935 20.066\n", " 75.016 75.000 0.016 19.739 55.277\n", " 125.164 125.000 0.164 44.413 80.751\n", " 175.990 175.000 0.990 78.957 97.033\n", " 228.986 225.000 3.986 123.370 105.616\n", " 286.571 275.000 11.571 177.653 108.919\n", " 351.512 325.000 26.512 241.805 109.706\n", " 424.950 375.000 49.950 315.827 109.122\n", " 529.443 425.000 104.443 399.719 129.724\n", " 620.791 475.000 145.791 493.480 127.310\n" ] }, { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAXkAAAEACAYAAABWLgY0AAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzt3XeclOXV//HPQbrxAQEjVYFYwYYFTdS40UeDmihogmJs\nESuxVzBEFvRRsCRiI8aKEVEUe4QghrUlQoyiICAQRV0L/sAuEha4fn+c2bCusDs7OzPXzD3f9+u1\nL2Zn7nL2ZvfMNee+ioUQEBGRZGoSOwAREckdJXkRkQRTkhcRSTAleRGRBFOSFxFJMCV5EZEEqzPJ\nm1lLM5tpZrPNbK6ZlaeeLzezSjN7NfV1cI19hpnZIjNbYGYH5Th+ERGpg9XXT97MWocQVphZU+AF\n4BygH/BlCOH3tbbtBdwH7AF0AaYD24QQ1uYieBERqVu95ZoQworUw+ZAM6D6XcHWs/nhwMQQQlUI\nYQmwGOibhThFRCQD9SZ5M2tiZrOBpcC0EMKs1EtnmtlrZnaHmbVNPdcZqKyxeyXeohcRkQjSacmv\nDSHsAnQF9jSz3sA4oCewC/AhcF1dh8hGoCIi0nBN090whPC5mc0A+oUQ/pvUzex24InUt+8D3Wrs\n1jX13LeYmRK/iEgGQgjrK5VvUH29azpUl2LMrBVwIDDfzDrW2GwAMCf1+HHgaDNrbmY9gK2BWaxH\nCEFfITBixIjoMRTKl66FroWuRd1fmaivJd8JGG9mG+FvCA+EEJ4ys3vMbBe8FPM2cFoqcc8zs0nA\nPGA1MCRkGpmIiDRanUk+hDAH2HU9zx9fxz5XAlc2PjQREWksjXiNrKysLHYIBUPXYh1di3V0LRqn\n3sFQOTmpmao4IiINZGaEbN54FRGR4qYkLyKSYEryIiIJpiQvIpJgSvIiIgmmJC8ikmBK8iIiCaYk\nLyKSYEryIiIJpiQvIpJgSvIiIgmmJC8ikmBK8iIiCaYkLyKSYEryIiIJpiQvIpJgSvIiIkVg5crM\n9lOSFxEpcKtXQ69eme0bLclr9T8RkfQ89hh07pzZvtGS/D/+EevMIiLF5cYb4ayzMts3WpK/6aZY\nZxYRKR5z5sCiRXDEEZntX2eSN7OWZjbTzGab2VwzK089387MnjazhWY2zcza1thnmJktMrMFZnbQ\nho49ZQp8+GFmQYuIlIqbboLTToNmzTLb30I9xXEzax1CWGFmTYEXgHOAI4FlIYSrzewSYNMQwlAz\n6wXcB+wBdAGmA9uEENbWOmY4/fRAx44wYkRmgYuIJN2nn0LPnjB/PnTsCGZGCMEacox6yzUhhBWp\nh82BZkAADgPGp54fD/RPPT4cmBhCqAohLAEWA33Xd9wzz4Rbb4VVqxoSrohI6bjrLjjkEE/wmao3\nyZtZEzObDSwFpoUQZgGbhxCWpjZZCmyeetwZqKyxeyXeov+O3r1hu+1g8uSMYxcRSaw1a+DmmzO/\n4VqtaX0bpEotu5hZG+ARM9uh1uvBzOqq+az3tfLycjbbDC6+GDp1KqOsrKwhcYuIJNqUKdC0aQVT\nplQwdWrmx6m3Jv+tjc1+B6wATgHKQggfmVknYEYIYTszGwoQQhid2n4qMCKEMLPWcUIIgTVr4Ac/\ngAcfhD32yPyHEBFJmgMPhOOPh+OOW/dc1mvyZtahuueMmbUCDgTmA48DJ6Q2OwF4NPX4ceBoM2tu\nZj2ArYFZGzr+Rht5bX7s2IaELCKSbPPmwdy5MHBg449VX7mmEzDezDbC3xAeCCE8ZWYvAZPMbDCw\nBBgIEEKYZ2aTgHnAamBIqOejwuDBfvf4ww+hU6dG/jQiIglwww3ebbJFi8Yfq0HlmmypLtdUGzIE\nOnSAUaPyHoqISEH55BMvY1d3m6wpk3JNQST5+fOhrAzeeQdatsx7OCIiBePqq71Uc889330tJ/3k\n82H77WGXXeD++2NHIiISz+rV3m3ynHOyd8yCSPLgP9TYsZqdUkRK12OPQbdusNtu2TtmwST5fv1g\nxQp47rnYkYiIxPGHP2S3FQ8FlOSbNIFzz/UfUkSk1Pzzn1BZCQMGZPe4BXHjtdrXX0P37j7X/FZb\n5T0sEZFojjnGyzQXXLDhbYq2d01Nw4Z5sr/hhjwHJSISSWUl7LQTvP02tGmz4e0SkeTffx923BHe\negvatl3vJiIiiTJ0qC/Uff31dW+XiCQPcOyx3qXywgvzGJSISARffeVl6lmzfPR/XYq2n3xt553n\naxquXh07EhGR3Bo/Hn784/oTfKYKMsnvthtsuaXmmheRZFu71scHnXde7s5RkEke/A7zdddpcJSI\nJNcTT/i9x332yd05CjbJ//zn8Nln8MILsSMREcmNa6/1e4/WoCp7wxRskm/SBM4/3y+CiEjSzJzp\nXSePOCK35ynI3jXVVqyAHj18qoNtt81DYCIieTJwIOy9d8OmMUhMF8qaRoyApUvhj3/McVAiInny\n1lvQt68Pftpkk/T3S2SS//hjb8UvXAibbZbjwERE8uDss6F1axg9umH7JTLJA5x6KnTuDOXluYtJ\nRCQfPv3UV36aMwe6dGnYvolN8gsWwH77+Ueb1q1zGJiISI5deaVXJu6+u+H7JjbJA/TvDwceCL/5\nTY6CEhHJsZUrfQqD6dNhhx0avn9ipjVYn0su8cFRmupARIrVPffA7rtnluAzVTRJ/oc/9PqVpjoQ\nkWK0Zo2P+7nkkvyet2iSPMDFF/tK5prqQESKzaOPQvv2uZ3CYH3qTPJm1s3MZpjZG2Y218zOTj1f\nbmaVZvZq6uvgGvsMM7NFZrbAzA7KZrCHHuo1rb/9LZtHFRHJrRBgzBhvqOZyCoP1qfPGq5l1BDqG\nEGab2feAfwH9gYHAlyGE39favhdwH7AH0AWYDmwTQlhba7sG33itdvfdcN99MG1aRruLiOTds896\nV/B582CjjTI/TtZvvIYQPgohzE49/gqYjydvgPWd6HBgYgihKoSwBFgM9G1IQPU55hi/UK+8ks2j\niojkzpgxPrNuYxJ8ptKuyZtZd6AP8FLqqTPN7DUzu8PMqhfq6wxU1titknVvClnRvLlPXNbQkWIi\nIjHMng2vvQYnnBDn/E3T2ShVqnkIOCeE8JWZjQNGpV6+HLgOGLyB3ddblymvMXy1rKyMsrKy9CLG\nP/ZcdRUsWgRbb532biIieTd6tC8K0qJFw/etqKigoqKiUeevdzCUmTUDngSmhBC+s8xsqoX/RAhh\nRzMbChBCGJ16bSowIoQws9Y+Gdfkq5WX+6Lft93WqMOIiOTM4sXe/futtxo2EdmGZL0mb2YG3AHM\nq5ngzaxTjc0GAHNSjx8Hjjaz5mbWA9gamNWQgNJ11lneZ/7993NxdBGRxrv6ajjjjOwk+EzV17tm\nH+A54HXWlV0uBQYBu6Seexs4LYSwNLXPpcBJwGq8vPPX9Ry30S158I9ATZr4SFgRkULywQc+snXh\nQujQITvHTPTcNetTWQk77eQfidq1y0JgIiJZctFFUFUF13+nyJ25kkvyAIMHwxZb+OIiIiKF4JNP\nvFPIq696fsqWkkzyCxf6ElrZurEhItJY5eVeabj99uwetySTPMCgQdCnjw8ZFhGJ6YsvoGdPeOkl\n2Gqr7B67ZJP8nDk+1/zbb0OrVlk7rIhIg40e7TlpwoTsH7tkkzzAgAGw//7etVJEJIYVK7wV/8wz\n0Lt39o9f0kn+5Zc90S9enNnIMhGRxho71icje/jh3Bw/0StD1Wf33f2d8557YkciIqXoP/+Ba66B\n3/42diTflpgkDzB8uM9pU1UVOxIRKTV33w077gi77RY7km9LVJLfZx/Ycsvc3PAQEdmQVau8gXnZ\nZbEj+a5EJXnwQVH/939a8FtE8ueee2CbbXwyskKTuCS/337QqRPcf3/sSESkFFRVwZVXFmYrHhKY\n5M28NX/FFb46uohILt17L/Tokf8FutOVuCQP3l++fXuYNCl2JCKSZKtXe3m4UFvxkNAkX92av/xy\nteZFJHcmToSuXb1MXKgSmeTBpzlo0wYefDB2JCKSRKtXw6hRhd2KhwQneTMYOdK/1JoXkWybMAG6\ndIGf/CR2JHVLbJIHb823b6+eNiKSXVVV3oofOdIblIUs0Um+ujU/apT6zYtI9vz5z9C9e2HX4qsl\nOsmD97Tp2BHuuy92JCKSBKtWeaeOkSNjR5KexCd5teZFJJvuvtuX9ivUfvG1JT7JA5SV+TqLmqFS\nRBrjP//xfvHF0oqHEkny4B+vRo3y/yQRkUzcdhvssENhzlGzIYlZNCQdhxwCP/sZDBmS91OLSJFb\nscLXbH3ySdh11zgxZH3REDPrZmYzzOwNM5trZmennm9nZk+b2UIzm2ZmbWvsM8zMFpnZAjM7KLMf\nJTcuv9w/aq1YETsSESk2N98MP/pRvASfqTpb8mbWEegYQphtZt8D/gX0B34NLAshXG1mlwCbhhCG\nmlkv4D5gD6ALMB3YJoSwttZxo7TkAY480j9qXXhhlNOLSBH64gtvxVdUQK9e8eLIeks+hPBRCGF2\n6vFXwHw8eR8GjE9tNh5P/ACHAxNDCFUhhCXAYqBvQwLKtVGjfImuL76IHYmIFIs//AH69Yub4DOV\n9o1XM+sO9AFmApuHEJamXloKbJ563BmorLFbJf6mUDB694aDDvIFd0VE6rN8Odx4I5SXx44kM03T\n2ShVqpkMnBNC+NJqjOMNIQQzq6v2st7XymtcsbKyMsrKytIJJSvKy2HPPf0GbPv2eTutiBShq6+G\nX/wCevbM/7krKiqoqKho1DHq7V1jZs2AJ4EpIYTrU88tAMpCCB+ZWSdgRghhOzMbChBCGJ3abiow\nIoQws9Yxo9Xkqw0ZAq1bw7XXRg1DRApYZSXsvDPMmQOdO8eOJrOafH03Xg2vuS8PIZxX4/mrU8+N\nSSX2trVuvPZl3Y3XrWpn9EJI8h9+6P1dZ8+Gbt2ihiIiBerUU6FdOxg9OnYkLhdJfh/gOeB11pVd\nhgGzgEnAFsASYGAI4bPUPpcCJwGr8fLOX9dz3OhJHuDSS+Hjj+H222NHIiKF5s03feqChQth001j\nR+OynuRzpVCS/Gef+RwUzz8P220XOxoRKSQDB3qf+KFDY0eyjpJ8Bq6+GmbNgoceih2JiBSKl1+G\nww+HRYv83l2hUJLPwIoVsM02MHmy97gRkdIWgi84dOSRcMYZsaP5tqwPhioFrVt7l8qLL/b/XBEp\nbdOmwbvvwsknx44kO0o+yQOceCIsWwZ/+UvsSEQkpjVr4JJLvDdNs2axo8kOJXmgaVMYM8b/c7Ww\niEjpmjDBP90PGBA7kuxRkk859FDo0MFXfRGR0rNyJQwf7nNbFfri3A1R8jdea5o1C444wvvHbrxx\n7GhEJJ+uuQb+/nd45JHYkWyYetdkwVFHwY47+ju6iJSG5ct9rEyhj5lRks+Cf//bu1LOnQsdO8aO\nRkTy4dxzYdUquOWW2JHUTUk+Sy680Oeb/9OfYkciIrm2cKGv+DRvHnz/+7GjqZuSfJZ8+ql/ZJs+\n3Us3IpJcAwbAXnt577pCpySfRTfe6Av2/vU706uJSFI8+6yPk5k/H1q2jB1N/TTiNYtOPx2WLIGp\nU2NHIiK5sHYtXHABXHVVcST4TCnJb0CzZj552QUXaICUSBJNmOADIY86KnYkuaUkX4fDDvMeNrfe\nGjsSEcmmr76CYcPg+uuTNfBpfVSTr8ecOXDAAbBgga8QIyLFb/hwL8fee2/sSBpGN15zZMgQ/1h3\nww2xIxGRxlqyBHbf3Zf+7No1djQNoySfI8uWwfbb+534Xr1iRyMijTFwoHeN/t3vYkfScEryOXT9\n9d7TZsqU5NfwRJLq2Wfh+OO9/NqqVexoGk5dKHPoN7+Bd97xvvMiUnzWrIFzzvFec8WY4DOlJJ+m\nZs1g7Fif42LlytjRiEhD3XorbLqpl2tKico1DXTEEbDbbvDb38aORETStWyZ30975pninqpENfk8\nqL4z/8orsMUWsaMRkXScfjq0aOGfxotZTmryZnanmS01szk1nis3s0ozezX1dXCN14aZ2SIzW2Bm\nBzXsRyh83bvDmWf6TJUiUvj+9S949FEYOTJ2JHHU25I3s32Br4B7Qgg7pp4bAXwZQvh9rW17AfcB\newBdgOnANiGEtbW2K9qWPMA33/hHvzvugP33jx2NiGzI2rWwzz5w8slw0kmxo2m8nLTkQwjPA5+u\n73zree5wYGIIoSqEsARYDPRtSEDFoFUr+MMfvEW/alXsaERkQ8aP9141J54YO5J4GtO75kwze83M\n7jCztqnnOgOVNbapxFv0iXP44dCzpyd7ESk8y5f7/DTjxkGTEu5H2DTD/cYBo1KPLweuAwZvYNv1\n1mXKy8v/+7isrIyysrIMQ4nDzKc56NsXjj4attwydkQiUtOll3p3yV13jR1J5ioqKqioqGjUMdLq\nXWNm3YEnqmvyG3rNzIYChBBGp16bCowIIcystU9R1+Rruvxy72lTyCu8i5SamTN9xaf586FNm9jR\nZE/eRryaWaca3w4AqnvePA4cbWbNzawHsDUwK5NzFIuLLoI33tBIWJFCsWYNnHEGXHNNshJ8puot\n15jZRGA/oIOZvQeMAMrMbBe8FPM2cBpACGGemU0C5gGrgSGJabJvQMuWcNNNcNpp3tOmdevYEYmU\ntltu8eR+zDGxIykMGgyVJYMGeV1+9OjYkYiUrspK6NMHnn8ettsudjTZpxGvEX30Eey0E0yf7v+K\nSP4dcYT//dXo15EomoUyoo4d4Yor4NRTfQCGiOTXY4/5/bGhQ2NHUliU5LPo5JN9Bak//jF2JCKl\n5csv4ayzfKbJli1jR1NYVK7JsnnzYL/94LXXoHPn2NGIlIbzzoPPP4c774wdSW6pJl8gfvc7mDsX\nHn5Yq0iJ5NrMmdC/v//NtW8fO5rcUk2+QAwf7suLTZ4cOxKRZFu1CgYP9uU5k57gM6WWfI78/e/w\ni19466Jdu9jRiCTTyJE+lfBjj5XGp2aVawrMWWfBV1/BXXfFjkQked54A8rK4NVXoWvX2NHkh5J8\ngfnyS19q7Lbb4MADY0cjkhxr1sDee8Ovf+2jzUuFavIFZpNNvEvXKad4wheR7Bg71rtKnnJK7EgK\nn1ryeTB4MDRv7vNai0jjvPmmr/Y0c6av6VBKVK4pUJ9/7mWbu+6CAw6IHY1I8VqzBvbd1ycfO/PM\n2NHkn8o1BapNGy/bDB6sso1IY4wd65+KhwyJHUnxUEs+jwYPhmbNNO2BSCbefNNvts6cCT/4Qexo\n4lC5psB99pnPkHfbbfDTn8aORqR4rF7tdfhjjy3NMk01lWsKXNu2PrfGySfDp5/GjkakeIwZ473V\nVKZpOLXkIzj7bFi2DO67L3YkIoXvlVegXz8f2dqtW+xo4lJLvkiMHu2/uA88EDsSkcK2ciUcdxz8\n/vdK8JlSSz6SWbPg5z/3Idmaklhk/S68EN55ByZNKo25aeqjG69FprzcJzKbOhWa6DOVyLc88wwc\nf7yvzdChQ+xoCoPKNUVm+HDvNz92bOxIRArL8uVwwgk+gFAJvnHUko/srbdgzz19AfCdd44djUh8\nIcCRR0L37l6Ll3XUki9CPXvCddf5MO1vvokdjUh8d94J//43XHll7EiSod4kb2Z3mtlSM5tT47l2\nZva0mS00s2lm1rbGa8PMbJGZLTCzg3IVeJIcd5zPbXPhhbEjEYlr4UIYOtS7F2tB7uxIpyV/F9Cv\n1nNDgadDCNsAz6S+x8x6AUcBvVL73GJm+rRQDzOf6uCpp3xdWJFStHIlHHUUjBoFvXvHjiY56k3A\nIYTngdrjMw8Dxqcejwf6px4fDkwMIVSFEJYAi4G+2Qk12dq2hfvvh9NP9y5jIqXmoot8TprTT48d\nSbJk2srePISwNPV4KbB56nFnoLLGdpVAlwzPUXL23NN/0QcNgqqq2NGI5M+jj8KTT8Ltt6s/fLY1\nbewBQgjBzOrqKrPe18rLy//7uKysjLKyssaGkggXXOD9gy+7DK66KnY0Irn37ru+hN9jj/knWlmn\noqKCioqKRh0jrS6UZtYdeCKEsGPq+wVAWQjhIzPrBMwIIWxnZkMBQgijU9tNBUaEEGbWOp66UNbh\n449h1119tsqDD44djUjurFrli3H37w8XXxw7msKXzy6UjwMnpB6fADxa4/mjzay5mfUAtgZmZXiO\nkvX978PEib5I8bvvxo5GJHcuucQHO6lnWe7UW64xs4nAfkAHM3sPuAwYDUwys8HAEmAgQAhhnplN\nAuYBq4EharJnZt994fzzYeBAeO45Xw1HJEkeeshr8a+8omk9ckkjXgvY2rUwYICP/NPUB5Ikixb5\nKk9PPQW77x47muKhEa8J06QJ3H03PPGEz8InkgRffw2/+AWMHKkEnw9qyReBV1+Fgw6CGTNghx1i\nRyOSuRDgV7+Cpk1h/Hh1l2woteQTqk8fn6hpwABfJ1akWF1/PSxYALfeqgSfL2rJF5Gzz/aJm554\nQjeqpPjMmOED/V56ye8zScOpJZ9w113n88/XGEcmUhTefddnWr33XiX4fFOSLyLNmsGDD3ot88EH\nY0cjkp6vv4bDD/fR3P/7v7GjKT0q1xSh6hux06Z5vV6kUK1d6zNLtm7tPcVUh28clWtKRJ8+cMst\nPhR86dL6txeJ5YoroLJSN1pjavQEZRLHL38Jc+fCEUfA3/4GLVrEjkjk2yZP9lklZ83SAiAxqVxT\nxKo/Cjdv7je01FKSQjFrFhx6KEydCrvtFjua5FC5psQ0aQL33AOLF6vHjRSOd97xUuLttyvBFwKV\na4pcq1bw+OOw116+qs7xx8eOSErZ5597C/7ii71HjcSnck1CzJvn83JPmuT/iuRbVZUn+K23hptu\nUvkwFzIp1yjJJ8gzz/iIwmeegR13jB2NlJIQ4MQT4ZNP4JFHfG4ayT7V5EvcAQf4lMSHHALvvRc7\nGikll14Kb77pi9ErwRcW/XckzKBB8MEH0K8fvPACbLpp7Igk6W66CR5+GF58ETbeOHY0UpvKNQl1\n/vnejW3aNB9tKJILDz4I557rDYoePWJHk3yqyct/rV3rNdJly3yJNS0fKNk2dSqccII3JHbeOXY0\npUFJXr6lqspX4GnVCiZMgI02ih2RJMWLL/r6Bo8+Cj/6UexoSoduvMq3NGsGDzwAH38MQ4Z4DwiR\nxpo926fT+POfleCLgZJ8wrVsCY895n+Y552nRC+N88YbcPDBcPPN8NOfxo5G0qEkXwI22cTrp88/\nD0OHKtFLZt5806e4vu46LwNKcVCSLxGbbuo3yKZOhREjYkcjxWbxYl/w48orfYUnKR6N6idvZkuA\nL4A1QFUIoa+ZtQMeALYElgADQwhafroAtG8P06f7tAdNmniy19Bzqc/ixT7Q7rLLvDeNFJfGtuQD\nUBZC6BNC6Jt6bijwdAhhG+CZ1PdSIDbbzOefnzwZfvtblW6kbgsWwE9+4r8rp5wSOxrJRDbKNbXb\ngocB41OPxwP9s3AOyaLNN4cZM2DKFLjoIiV6Wb833vAW/OWXw6mnxo5GMpWNlvw0M3vZzKrf5zcP\nIVQvSrcU2LyR55Ac6NDBJzJ79lk4+2wfPCVSbfZsr8FffbUPqpPi1di5a/YOIXxoZpsBT5vZgpov\nhhCCma23nVheY5WLsrIyyjQ/bt61a+c1+p/9zP+Q77jD+9ZLaXvhBe8Hf/PNvsykxFNRUUFFRUWj\njpG1Ea9mNgL4CjgFr9N/ZGadgBkhhO1qbasRrwVkxQrvEte0qQ+eatUqdkQSy1NP+c3VCRO8u6QU\nlryOeDWz1ma2SerxxsBBwBzgcaD6HvwJwKOZnkPyo3VrH56+8cY+0OXzz2NHJDFMnAi//rWvNKYE\nnxwZt+TNrAfwSOrbpsCEEMJVqS6Uk4At2EAXSrXkC9OaNXDOOfDcc96i69o1dkSSDyHAtdfCjTfC\nX/6iBWcKmSYok0bTH3xpWbPGpwquqPDeVnpjL2yZJHktGiLfYubdKrt29e5zEyf6v5I8X38Nxx4L\nX3zhN1vbtIkdkeSCpjWQ9Ro0yBeE+NWvYNy42NFItlVWwr77emKfMkUJPsmU5GWD9tvP5w2/8UY4\n80xYvTp2RJINs2bBXnv5G/ldd2lBmaRTTV7q9fnncPTRnuQnTvSBVFKc7r3Xl4a8/XY47LDY0UhD\nadEQyYk2beCJJ2DXXWH33eFf/4odkTTUqlVw1lkwcqSPdFaCLx1K8pKWpk1hzBifS7xfP7jzztgR\nSbo++MAnGXvnHfjnP9VjqtQoyUuDHHmk96O/5hofOPP117EjkrpMmwa77eaD3B59FNq2jR2R5JuS\nvDTY9tt7izAEL9+8/nrsiKS2qioYNgxOOsnvowwf7msISOnRf7tk5Hvfg7vvhksv9X70N9+sKYsL\nxVtvec+o116DV1/1RWKkdCnJS6Mcd5x3sxw/3ksC778fO6LSFQLcdhvsuafPHvnkk75IjJQ2JXlp\ntG228UT/wx96D5z771erPt8++sh7zIwb51MUnHeeyjPi9GsgWdGsma8Z++STMGoU9O/voyolt0Lw\ndQB22gl23hleegl6944dlRQSJXnJqj328Dpwnz7+NW6cVp3KleoFtseNg6efhiuu0OhV+S4lecm6\nFi2gvNzLBn/+s5dxXn45dlTJsWKFf2rac0849FBvve+8c+yopFApyUvO9O7tsxuecQb8/Odw2mmw\nbFnsqIpXCN7XvXdvWLDA12G94AIfqCayIUryklNNmvj6sfPnQ8uW3sd+zBj45pvYkRWXf/7TR60O\nH+41+AcegG7dYkclxUBJXvKibVsYO9Zb9rNmwbbbej97zWxZt8WLfXK4/v197vfZs2H//WNHJcVE\nSV7yatttYfJkH4V5551eerj3XiX72hYv9mkj9trLr9HChXDyySrNSMMpyUsUe+8Nzz7rPUP+9CdP\nZHfcAStXxo4srrlz4YQTPLl37+7J/ne/80XWRTKhJC/RmHnp4dln4Y9/9BZ+jx7eFXD58tjR5U8I\nMH26z+554IE+uGzxYu9BownFpLG0aIgUlLlzfTrjRx7xHjmnnw4/+pG/ISTNJ5/4dBC33uplmPPP\n9+UWW7QBEZDPAAAFnElEQVSIHZkUqkwWDVGSl4K0fPm6BNismc+Rc8wxxd+jpKrKp/+dMAGeegp+\n9jN/I9t772S+kUl2FUySN7N+wPXARsDtIYQxtV5Xkpe0hADPP+83ZydP9gUvfvlLn6elWBL+qlVe\nknrkEXjoIdhqK+8pc9RR0L597OikmBTE8n9mthFwE9AP6AUMMrPts32epKioqIgdQsFY37Uwgx//\n2G/OfvABnHuud8HcZRefy7683N8EVq3Ke7h1eu897yI6aBBsvrnfPO3WzUen/v3vMGRI3Qlevxfr\n6Fo0Ti5uvPYFFocQloQQqoD7gcNzcJ5E0C/wOvVdixYtvL/4+PGwdClce60P8T/3XF9c/OCDfXK0\nv/4VPv00PzEDrFkDc+b44tinnOI3Tnfd1csx++8P8+Z5ch82DHr2TO+Y+r1YR9eicXLR67YL8F6N\n7yuBPXNwHilhTZv6YhjVC2J88omXRGbOhNGjfbHxdu2gVy/vnrnttrDllv7VrRu0atWw861dCx9/\nDO++62ulvvWWJ+833vApBrp0gb59fT6Z3/zGZ4XUVL9SCHKR5FVsl7xr1w4GDPAv8Nb122+vS8Qv\nvgj33edJ+r33/GZuu3ZeMtl4Y5+9sXlzT8xVVV7++c9//BPBJ5/4v5tu6m8SW2zhXT1//GOfl2f7\n7aFNm7g/v8iGZP3Gq5ntBZSHEPqlvh8GrK1589XM9EYgIpKB6L1rzKwp8CZwAPABMAsYFEKYn9UT\niYhIvbJergkhrDazM4G/4l0o71CCFxGJI8pgKBERyY+c3v83s35mtsDMFpnZJRvY5obU66+ZWZ9c\nxhNTfdfCzH6Vugavm9mLZrZTjDhzLZ3fidR2e5jZajM7Ip/x5VOafx9lZvaqmc01s4o8h5g3afx9\ntDGzJ8xsdupanBghzLwwszvNbKmZzaljm/TzZgghJ194qWYx0B1oBswGtq+1zSHAU6nHewIv5Sqe\nmF9pXosfAm1Sj/sl8Vqkcx1qbPc34EngyNhxR/ydaAu8AXRNfd8hdtwRr8WlwFXV1wFYDjSNHXuO\nrse+QB9gzgZeb1DezGVLPp1BUYcB4wFCCDOBtma2eQ5jiqXeaxFC+EcI4fPUtzOBrnmOMR/SHSh3\nFvAQ8P/yGVyepXMtjgEmhxAqAUIISV08MZ1rsRb4n9Tj/wGWhxASuQpBCOF5oK7hfA3Km7lM8usb\nFNUljW2SmNzSuRY1DQaeymlEcdR7HcysC/4HPi71VFJvGqXzO7E10M7MZpjZy2Z2XN6iy690rsVN\nQC8z+wB4DTgnT7EVogblzVyuM5PuH2ftPp9J/KNO+2cys58AJwF75y6caNK5DtcDQ0MIwcyM7/5+\nJEU616IZsCveHbk18A8zeymEsCinkeVfOteiH/BKCOEnZvYD4Gkz2zmE8GWOYytUaefNXCb594Ga\n8wR2w99x6tqma+q5pEnnWpC62Xob0C+EkMfZV/ImneuwG3C/53c6AAebWVUI4fH8hJg36VyL94Bl\nIYRvgG/M7DlgZyBpST6da3EicBVACOHfZvY2sC3wcj4CLDANypu5LNe8DGxtZt3NrDlwFFD7D/Vx\n4Hj470jZz0IIS3MYUyz1Xgsz2wJ4GDg2hLA4Qoz5UO91CCH0DCH0CCH0wOvyZyQwwUN6fx+PAfuY\n2UZm1hq/yTYvz3HmQzrX4l3gfwFS9edtgbfyGmXhaFDezFlLPmxgUJSZnZZ6/dYQwlNmdoiZLQa+\nBn6dq3hiSudaAJcBmwLjUq3YqhBC31gx50Ka16EkpPn3scDMpgKv4zcebwshJC7Jp/l7cTlwt5m9\njpcqLg4hfBIt6Bwys4nAfkAHM3sPGIGX7jLKmxoMJSKSYJoMVUQkwZTkRUQSTEleRCTBlORFRBJM\nSV5EJMGU5EVEEkxJXkQkwZTkRUQS7P8DF6Wtq4j+QFAAAAAASUVORK5CYII=\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# Make omega larger, so that the QHO energy dominates the square well\n", "omegaL = 50.0\n", "omegaL2 = omegaL*omegaL\n", "VbumpQHO2 = np.linspace(0.0,width,num_x_points)\n", "pot_bump = square_well_potential2(x,VbumpQHO2,omegaL2)\n", "\n", "# Declare space for the matrix elements\n", "Hmat3 = np.eye(num_basis)\n", "\n", "# Loop over basis functions phi_n (the bra in the matrix element)\n", "for n in range(num_basis):\n", " # Loop over basis functions phi_m (the ket in the matrix element)\n", " for m in range(num_basis):\n", " # Act with H on phi_m and store in H_phi_m\n", " H_phi_m = -0.5*d2basis_array[m] \n", " add_pot_on_basis(H_phi_m,VbumpQHO2,basis_array[m])\n", " # Create matrix element by integrating\n", " Hmat3[m,n] = integrate_functions(basis_array[n],H_phi_m,num_x_points,dx)\n", " # The comma at the end prints without a new line; the %8.3f formats the number\n", " print \"%8.3f\" % Hmat3[m,n],\n", " # This print puts in a new line when we have finished looping over m\n", " print\n", " \n", "print \"Perturbation matrix elements:\"\n", "# Loop over basis functions phi_n (the bra in the matrix element)\n", "for n in range(num_basis):\n", " # Loop over basis functions phi_m (the ket in the matrix element)\n", " for m in range(num_basis):\n", " # Act with H on phi_m and store in H_phi_m\n", " H_phi_m = np.zeros(num_x_points)\n", " add_pot_on_basis(H_phi_m,VbumpQHO2,basis_array[m])\n", " # Create matrix element by integrating\n", " H_mn = integrate_functions(basis_array[n],H_phi_m,num_x_points,dx)\n", " # The comma at the end prints without a new line; the %8.3f formats the number\n", " print \"%8.3f\" % H_mn,\n", " # This print puts in a new line when we have finished looping over m\n", " print\n", " \n", "# Solve using linalg module of numpy (which we've imported as la above)\n", "eigval, eigvec = la.eigh(Hmat3)\n", "# This call above does the entire solution for the eigenvalues and eigenvectors !\n", "# Print results roughly, though apply precision of 4 to the printing\n", "print\n", "print \"Eigenvalues and eigenvector coefficients printed roughly\"\n", "np.set_printoptions(precision=4)\n", "print eigval\n", "print eigvec[0]\n", "print eigvec[1]\n", "print eigvec[2]\n", "print\n", "\n", "print \" QHO Square Perfect QHO Difference Perfect Square Difference\"\n", "for i in range(num_basis):\n", " n = i+1\n", " print \" %8.3f %8.3f %8.3f %8.3f %8.3f\" % (eigval[i],omegaL*(i+0.5),eigval[i] - omegaL*(i+0.5),n*n*np.pi*np.pi/2.0,eigval[i] - n*n*np.pi*np.pi/2.0)" ] }, { "cell_type": "code", "execution_count": 15, "metadata": { "collapsed": false }, "outputs": [ { "data": { "image/png": "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\n/weDA9JKPufdzgAAAABJRU5ErkJggg==\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# Define a figure to take two plots\n", "fig4 = pl.figure(figsize=[12,3])\n", "# Add subplots: number in y, x, index number\n", "axc = fig4.add_subplot(121,autoscale_on=False,xlim=(0,1),ylim=(-2.1,2.1))\n", "axc.set_title(\"Eigenvectors for perturbed system\")\n", "axc2 = fig4.add_subplot(122,autoscale_on=False,xlim=(0,1),ylim=(-0.1,0.1))\n", "#axc2.set_title(\"QHO eigenvectors\")\n", "axc2.set_title(\"Difference to QHO eigenvectors\")\n", "for m in range(3): # Plot the first four states\n", " psi = np.zeros(num_x_points)\n", " for i in range(num_basis):\n", " psi = psi+eigvec[i,m]*basis_array[i]\n", " #if 2*(m/2)!=m: # This is just to ensure that psi and the basis function have the same phase\n", " # psi = -psi\n", " axc.plot(x,psi)\n", " psi = psi - phi(x2,m,np.sqrt(omegaL))\n", " axc2.plot(x,psi)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Now we can see two things:\n", "\n", "* For the lower eigenvalues, the energy is almost a perfect match to the QHO, and the eigenvectors are also an excellent match (except at the edges, where the hard walls of the square well will have an effect)\n", "* For the higher eigenvalues, once the energy is within 10-20% of the energy at the top of the QHO potential, the eigenvalues diverge strongly \n", "\n", "This second result comes about when the perturbation (the QHO well) becomes comparable to the square well energy. If we went higher in energy, we'd gradually recover the square well eigenvalues.\n", "\n", "## Basis set size\n", "\n", "We'll now see the problem with using a finite basis set (we defined `num_basis`, the number of basis functions to include, as 10 above, to make matrices a sensible size). If we make the QHO potential *huge* compared to the square well eigenvalues, we'll find that the resulting eigenfunctions are very compressed, and that our ten square well eigenstates are not enough to properly represent them. \n", "\n", "The calculation takes the usual form: define a potential; form a Hamiltonian matrix (we won't print the potential matrix this time); diagonalise; analyse the results." ] }, { "cell_type": "code", "execution_count": 16, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "4089.027 0.000 4749.429 -0.000 879.522 0.000 307.831 -0.000 142.479 0.000\n", " -0.000 8853.261 -0.000 5628.951 -0.000 1187.353 -0.000 450.310 -0.000 219.873\n", "4749.429 -0.000 9757.457 0.000 5936.782 0.000 1329.832 0.000 527.703 0.000\n", " -0.000 5628.951 -0.000 10099.831 -0.000 6079.261 -0.000 1407.225 -0.000 574.367\n", " 879.522 -0.000 5936.782 0.000 10286.723 -0.000 6156.655 -0.000 1453.889 -0.000\n", " 0.000 1187.353 0.000 6079.261 -0.000 10418.400 -0.000 6203.318 -0.000 1484.172\n", " 307.831 -0.000 1329.832 -0.000 6156.655 -0.000 10529.215 -0.000 6233.601 -0.000\n", " -0.000 450.310 0.000 1407.225 -0.000 6203.318 -0.000 10633.521 -0.000 6254.361\n", " 142.479 -0.000 527.703 -0.000 1453.889 -0.000 6233.601 -0.000 10738.172 -0.000\n", " 0.000 219.873 0.000 574.367 -0.000 1484.172 -0.000 6254.361 -0.000 10846.779\n", " QHO Square Perfect QHO Difference\n", " 341.200 250.000 91.200\n", " 1091.149 750.000 341.149\n", " 2607.504 1250.000 1357.504\n", " 3836.361 1750.000 2086.361\n", " 6937.708 2250.000 4687.708\n", " 8364.067 2750.000 5614.067\n", " 13428.721 3250.000 10178.721\n", " 14703.795 3750.000 10953.795\n", " 22085.462 4250.000 17835.462\n", " 22856.419 4750.000 18106.419\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# Make omega larger, so that the QHO energy dominates the square well\n", "omegaH = 500.0\n", "omegaH2 = omegaH*omegaH\n", "VbumpQHO3 = np.linspace(0.0,width,num_x_points)\n", "pot_bump = square_well_potential2(x,VbumpQHO3,omegaH2)\n", "\n", "# Declare space for the matrix elements\n", "Hmat4 = np.eye(num_basis)\n", "\n", "# Loop over basis functions phi_n (the bra in the matrix element)\n", "for n in range(num_basis):\n", " # Loop over basis functions phi_m (the ket in the matrix element)\n", " for m in range(num_basis):\n", " # Act with H on phi_m and store in H_phi_m\n", " H_phi_m = -0.5*d2basis_array[m] \n", " add_pot_on_basis(H_phi_m,VbumpQHO3,basis_array[m])\n", " # Create matrix element by integrating\n", " Hmat4[m,n] = integrate_functions(basis_array[n],H_phi_m,num_x_points,dx)\n", " # The comma at the end prints without a new line; the %8.3f formats the number\n", " print \"%8.3f\" % Hmat4[m,n],\n", " # This print puts in a new line when we have finished looping over m\n", " print\n", " \n", "# Solve using linalg module of numpy (which we've imported as la above)\n", "eigval, eigvec = la.eigh(Hmat4)\n", "print \" QHO Square Perfect QHO Difference\"\n", "for i in range(num_basis):\n", " n = i+1\n", " print \" %8.3f %8.3f %8.3f\" % (eigval[i],omegaH*(i+0.5),eigval[i] - omegaH*(i+0.5))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Here's the first clue that we have a problem: the eigenvalues from the matrix using the limited square well basis set are too high. There is a significant error. Let's plot the resulting eigenfunctions, along with the perfect eigenfunctions, to compare. (As before, don't worry about the minus sign in the functions - this is just a phase.)" ] }, { "cell_type": "code", "execution_count": 17, "metadata": { "collapsed": false }, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAsMAAADSCAYAAACvmc1VAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzsnWd4VNXWgN+dQiiBUEJI6L33ogQQAiiooIIdFcEColiu\n5bNdr6JesRcs195ApQhSVKQIBOm9905IQighISGFJLO+H3sCk2QmmZa+3+eZJ5mzy1nnzMw666yz\n1tpKRDAYDAaDwWAwGMojPsUtgMFgMBgMBoPBUFwYY9hgMBgMBoPBUG4xxrDBYDAYDAaDodxijGGD\nwWAwGAwGQ7nFGMMGg8FgMBgMhnKLMYYNBoPBYDAYDOUWYwx7iFLqbqXUwuKWozSglBqulIpSSiUp\npToVtzyFgVJqtFJqhZfmaqyUsiilzO/UYDCUKJRSO5VSfYtbDoPBG5iLrBMopY4qpVKsRlz262MA\nEflZRAYXt4zu4E3DzUneAx4Rkaoisq0I9+sUSqlIpdQDxS1HcWE1vJsWtxwGg+EyVj29Qyl1QSkV\nq5T6TClVzaZ9glJqip1xOX7PSqm2Sql5SqkEpdR5pdRSpVS4u3KJSHsR+cfd8cWJ9Zo+oLjlMJQc\njDHsHAIMtRpx2a/Hi1uo4kYp5etCXwU0BHa7ua9C+64qjQ/6c/ZkHj8viVScqOIWwGAwaJRSTwNv\nAU8D1YCeQGNgkY2+KVBvKaWaAauAbdbxYcBs6zw9vS54yUdwU9eVET1vyIUxhj0kt3dVKTVIKbXP\nevf9mVJqua23USl1v1Jqt1IqXim1QCnV0KbNopR6SCm1Xyl1Tin1qXV7gHW+djZ9a1u91cHW90OV\nUlut41YppTrY9G2glPpNKXVKKXVGKfWJUqo18AUQbvV0x1v7BimlJlv7HlVK/dtqyGYf6yql1AdK\nqTPAK0qp5tZjTFBKnVZKTbNzjgKAJMAX2KaUOmDd3sbqjT1nfeR2g82YH5RSnyul5iulkoEIO/NG\nKqXeVEqtU0olKqXmKKVq2LT3VEqtts6/VSnVL9fY/yqlVgIXgMnAVcCn2Z5/ZSdMwdZ7bO98YFWy\n1nOcoJTaY+uBsJ7fb5VSMUqpE0qp17PnV0r5KKXes57HQ8CQ3Mec6/ifs85xXim1VynVXykVqrQH\nqaZNv67Wz9PXzuc11don28OzzXr8t1m35/e9OqqUekYptU0playU+kYpVUcp9ZdVpsVKqer5HYPB\n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\nB7RucC1NBKUwAAAAAElFTkSuQmCC\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# Define a figure to take two plots\n", "fig5 = pl.figure(figsize=[12,3])\n", "# Add subplots: number in y, x, index number\n", "axd = fig5.add_subplot(121,autoscale_on=False,xlim=(0,1),ylim=(-3.1,3.1))\n", "axd.set_title(\"Eigenvectors for perturbed system\")\n", "axd2 = fig5.add_subplot(122,autoscale_on=False,xlim=(0,1),ylim=(-3.1,3.1))\n", "#axc2.set_title(\"QHO eigenvectors\")\n", "axd2.set_title(\"QHO eigenvectors\")\n", "for m in range(3): # Plot the first four states\n", " psi = np.zeros(num_x_points)\n", " for i in range(num_basis):\n", " psi = psi+eigvec[i,m]*basis_array[i]\n", " if 2*(m/2)!=m: # This is just to ensure that psi and the basis function have the same phase\n", " psi = -psi\n", " axd.plot(x,psi)\n", " #psi = psi - phi(x2,m,np.sqrt(omegaH))\n", " #axd2.plot(x,psi)\n", " axd2.plot(x,phi(x2,m,np.sqrt(omegaH)))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Here we see the problem: the sum over the basis functions (left graph) contains ringing. We would need to include many more basis functions to correctly represent these rapidly varying functions (if you remember Fourier analysis, you might like to think about what this means in terms of Fourier analysis).\n", "\n", "Feel free to play with `num_basis` and see how the agreement improves with basis size." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": true }, "outputs": [], "source": [] } ], "metadata": { "kernelspec": { "display_name": "Python 2", "language": "python", "name": "python2" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 2 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython2", "version": "2.7.10" } }, "nbformat": 4, "nbformat_minor": 0 }