{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Solving Hydrogen Atom with Python "
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "We want to write an algorithm that compute energies and charges of the bound states in central potential of the\n",
    "nucleus with charge $Z$. We will first solve the problem for a single electron (no Coulomb interaction)."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "The implementation will follow these steps\n",
    "\n",
    "<ol>\n",
    "<li>call SciPy routine <pre>integrate.odeint</pre>  to integrate the one-electron Schroedinger equation\n",
    "\n",
    "\\begin{equation}\n",
    "      -u^{''}(r) + \\left(\\frac{l(l+1)}{r^2}-\\frac{2 Z}{r}\\right)u(r)\n",
    "       = \\varepsilon u(r).\n",
    "\\end{equation}\n",
    "Here $\\psi_{lm}(\\vec{r}) = \\frac{u(r)}{r} Y_{lm}(\\hat{r})$, distance is measured in units of bohr radius and energy units is Rydberg ($1 Ry = 13.6058...eV$)\n",
    "</li>\n",
    "<p>\n",
    "<li> The boundary conditions are $u(0)=0$ and $u(\\infty)=0$. \n",
    "\n",
    "Use shooting method to obtain  wave functions:\n",
    "    <ol>\n",
    "      <li> Use  logarithmic mesh of radial points for integration. Start integrating\n",
    "        from a large distance ($R_{max} \\sim 100$). At $R_{max}$ choose\n",
    "        $u=0$ and some nonzero (not too large) derivative.</li>\n",
    "      <li> Integrate the Schroedinger equation down to $r=0$. If\n",
    "        your choice for the energy $\\varepsilon$ corresponds to the bound state, the wave function at $u(r=0)$ will be zero.</li>\n",
    "    </ol>\n",
    "\n",
    "<p>\n",
    "<li>Start searching for the first bound state at sufficiently negative energy (for example $\\sim -1.2 Z^2$) and increase energy in sufficiently small steps to bracket all necessary bound states. Ones the wave function at $r=0$ changes sign, use root finding routine, for example  <pre>optimize.brentq,</pre>  to compute zero to very high precision. Store the index and the energy of the bound state for further processing.</li>\n",
    "\n",
    "<li> Ones bound state energies are found, recompute $u(r)$ for all bound states. Normalize $u(r)$ and plot them.</li>\n",
    "\n",
    "<li> Compute electron density for various atoms (for example He, Li, ..)  neglecting Coulomb repulsion:\n",
    "   <p>\n",
    "     Populate first $Z$ lowest laying electron states and\n",
    "       compute \n",
    "       $\\rho = \\sum_{lm\\in occupied} u_{lm}^2(r)/(4\\pi r^2)$. \n",
    "       Each state with quantum number $l$ can take $2(2l+1)$\n",
    "       electrons. Be carefull, if atom is not one of the Nobel gases\n",
    "       (He, Ne, ...) the last orbital is only partially filled.\n",
    "\n",
    "</ol>"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "from scipy import *\n",
    "from scipy import integrate\n",
    "from scipy import optimize\n",
    "\n",
    "def Schroed_deriv(y,r,l,En):\n",
    "    \"Given y=[u,u'] returns dy/dr=[u',u''] \"\n",
    "    (u,up) = y\n",
    "    return array([up, (l*(l+1)/r**2-2/r-En)*u])"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "First we try linear mesh and forward integration. It is supposed to be unstable.\n",
    "We know the ground state has energy $E_0=-1 Ry$ and we should get $1s$ state with integrating Scroedinger equation. "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {
    "collapsed": false
   },
   "outputs": [],
   "source": [
    "R = linspace(1e-10,20,500)\n",
    "l=0\n",
    "E0=-1.0\n",
    "\n",
    "ur = integrate.odeint(Schroed_deriv, [0.0, 1.0], R, args=(l,E0))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x112d21f10>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "from pylab import *\n",
    "%matplotlib inline\n",
    "\n",
    "plot(R,ur)\n",
    "show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Indeed the integration is unstable, and needs to be done in opposite direction. Let's try from large R."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "R = linspace(1e-10,20,500)\n",
    "l=0\n",
    "E0=-1.0\n",
    "Rb=R[::-1] # invert the mesh\n",
    "\n",
    "urb = integrate.odeint(Schroed_deriv, [0.0, -1e-5], Rb, args=(l,E0))\n",
    "ur = urb[:,0][::-1] # we take u(r) and invert it in R.\n",
    "\n",
    "norm=integrate.simps(ur**2,x=R)\n",
    "ur *= 1./sqrt(norm)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "data": {
      "image/png": "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\nHObVESJAAAAAAElFTkSuQmCC\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x1065aee10>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "image/png": "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\nkqSK8X9M3oW1PhmRhQAAAABJRU5ErkJggg==\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x113d14f90>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "plot(R,ur)\n",
    "grid()\n",
    "show()\n",
    "plot(R,ur)\n",
    "xlim(0,0.01)\n",
    "ylim(0,0.01)\n",
    "show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Clearly the integration from infinity is stable, and we will use it here.\n",
    "\n",
    "Logarithmic mesh is better suited for higher excited states, as they extend far away."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Lets create a subroutine of what we learned up to now:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "def SolveSchroedinger(En,l,R):\n",
    "    Rb=R[::-1]\n",
    "    du0=-1e-5\n",
    "    urb=integrate.odeint(Schroed_deriv, [0.0,du0], Rb, args=(l,En))\n",
    "    ur=urb[:,0][::-1]\n",
    "    norm=integrate.simps(ur**2,x=R)\n",
    "    ur *= 1./sqrt(norm)\n",
    "    return ur"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "(0, 20)"
      ]
     },
     "execution_count": 7,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\nAeg0LqFSOww3AAAAAElFTkSuQmCC\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x112f0f1d0>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "l=1\n",
    "En=-1./(2**2)  # 2p orbital\n",
    "\n",
    "l=1\n",
    "En = -0.25\n",
    "\n",
    "Ri = linspace(1e-6,20,500)   # linear mesh already fails for this case\n",
    "ui = SolveSchroedinger(En,l,Ri)\n",
    "\n",
    "\n",
    "R = logspace(-5,2.,500)\n",
    "ur = SolveSchroedinger(En,l,R)\n",
    "\n",
    "\n",
    "#ylim([-0.1,0.1])\n",
    "plot(R,ur,'o-')\n",
    "#plot(Ri,ui,'s-')\n",
    "xlim([0,20])"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Next we create a shooting routine. "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "def Shoot(En,R,l):\n",
    "    Rb=R[::-1]\n",
    "    du0=-1e-5\n",
    "    ub=integrate.odeint(Schroed_deriv, [0.0,du0], Rb, args=(l,En))\n",
    "    ur=ub[:,0][::-1]\n",
    "    norm=integrate.simps(ur**2,x=R)\n",
    "    ur *= 1./sqrt(norm)\n",
    "    \n",
    "    ur = ur/R**l\n",
    "    \n",
    "    f0 = ur[0]\n",
    "    f1 = ur[1]\n",
    "    f_at_0 = f0 + (f1-f0)*(0.0-R[0])/(R[1]-R[0])\n",
    "    return f_at_0"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "144.55590022465006"
      ]
     },
     "execution_count": 9,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "R = logspace(-5,2.2,500)\n",
    "Shoot(-1./2**2,R,1)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "def FindBoundStates(R,l,nmax,Esearch):\n",
    "    n=0\n",
    "    Ebnd=[]\n",
    "    u0 = Shoot(Esearch[0],R,l)\n",
    "    for i in range(1,len(Esearch)):\n",
    "        u1 = Shoot(Esearch[i],R,l)\n",
    "        if u0*u1<0:\n",
    "            Ebound = optimize.brentq(Shoot,Esearch[i-1],Esearch[i],xtol=1e-16,args=(R,l))\n",
    "            Ebnd.append((l,Ebound))\n",
    "            if len(Ebnd)>nmax: break\n",
    "            n+=1\n",
    "            print 'Found bound state at E=%14.9f E_exact=%14.9f l=%d' % (Ebound, -1.0/(n+l)**2,l)\n",
    "        u0=u1\n",
    "    \n",
    "    return Ebnd"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Found bound state at E=  -1.000000014 E_exact=  -1.000000000 l=0\n",
      "Found bound state at E=  -0.249999998 E_exact=  -0.250000000 l=0\n",
      "Found bound state at E=  -0.111111111 E_exact=  -0.111111111 l=0\n",
      "Found bound state at E=  -0.062500001 E_exact=  -0.062500000 l=0\n",
      "Found bound state at E=  -0.040000000 E_exact=  -0.040000000 l=0\n",
      "Found bound state at E=  -0.027777780 E_exact=  -0.027777778 l=0\n",
      "Found bound state at E=  -0.020407884 E_exact=  -0.020408163 l=0\n",
      "Found bound state at E=  -0.249999997 E_exact=  -0.250000000 l=1\n",
      "Found bound state at E=  -0.111111111 E_exact=  -0.111111111 l=1\n",
      "Found bound state at E=  -0.062500000 E_exact=  -0.062500000 l=1\n",
      "Found bound state at E=  -0.040000001 E_exact=  -0.040000000 l=1\n",
      "Found bound state at E=  -0.027777785 E_exact=  -0.027777778 l=1\n",
      "Found bound state at E=  -0.020407939 E_exact=  -0.020408163 l=1\n",
      "Found bound state at E=  -0.111111113 E_exact=  -0.111111111 l=2\n",
      "Found bound state at E=  -0.062500001 E_exact=  -0.062500000 l=2\n",
      "Found bound state at E=  -0.040000000 E_exact=  -0.040000000 l=2\n",
      "Found bound state at E=  -0.027777785 E_exact=  -0.027777778 l=2\n",
      "Found bound state at E=  -0.020408364 E_exact=  -0.020408163 l=2\n",
      "Found bound state at E=  -0.062500000 E_exact=  -0.062500000 l=3\n",
      "Found bound state at E=  -0.040000000 E_exact=  -0.040000000 l=3\n",
      "Found bound state at E=  -0.027777780 E_exact=  -0.027777778 l=3\n",
      "Found bound state at E=  -0.020408140 E_exact=  -0.020408163 l=3\n",
      "Found bound state at E=  -0.040000000 E_exact=  -0.040000000 l=4\n",
      "Found bound state at E=  -0.027777778 E_exact=  -0.027777778 l=4\n",
      "Found bound state at E=  -0.020408241 E_exact=  -0.020408163 l=4\n",
      "Found bound state at E=  -0.027777778 E_exact=  -0.027777778 l=5\n",
      "Found bound state at E=  -0.020408180 E_exact=  -0.020408163 l=5\n"
     ]
    }
   ],
   "source": [
    "Esearch = -1.2/arange(1,20,0.2)**2\n",
    "\n",
    "R = logspace(-6,2.2,500)\n",
    "\n",
    "nmax=7\n",
    "Bnd=[]\n",
    "for l in range(nmax-1):\n",
    "    Bnd += FindBoundStates(R,l,nmax-l,Esearch)\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "def cmpE(x,y):\n",
    "    if abs(x[1]-y[1])>1e-4:\n",
    "        return cmp(x[1],y[1])\n",
    "    else:\n",
    "        return cmp(x[0],y[0])\n",
    "\n",
    "\n",
    "Bnd.sort(cmpE)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "[(0, -1.0000000144346817),\n",
       " (0, -0.24999999783074844),\n",
       " (1, -0.24999999697029185),\n",
       " (0, -0.11111111114527727),\n",
       " (1, -0.11111111106834594),\n",
       " (2, -0.11111111287698874),\n",
       " (0, -0.06250000130575296),\n",
       " (1, -0.06250000018929516),\n",
       " (2, -0.06250000130055344),\n",
       " (3, -0.062499999882876356),\n",
       " (0, -0.040000000216110485),\n",
       " (1, -0.04000000055775173),\n",
       " (2, -0.040000000472501886),\n",
       " (3, -0.04000000001991887),\n",
       " (4, -0.0399999999299882),\n",
       " (0, -0.02777777958583683),\n",
       " (1, -0.027777785464469164),\n",
       " (2, -0.027777784587779557),\n",
       " (3, -0.027777780427529656),\n",
       " (4, -0.027777777755184058),\n",
       " (5, -0.02777777784154181),\n",
       " (0, -0.020407884400230124),\n",
       " (1, -0.020407939294276315),\n",
       " (2, -0.02040836406577627),\n",
       " (3, -0.020408139788464376),\n",
       " (4, -0.020408241028337198),\n",
       " (5, -0.020408180238043916),\n",
       " (0, -0.015566866041478888),\n",
       " (1, -0.015573778892995643),\n",
       " (2, -0.015585403553970614),\n",
       " (3, -0.015598994601132812),\n",
       " (4, -0.015609593699604052),\n",
       " (5, -0.015617994166722987)]"
      ]
     },
     "execution_count": 13,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "Bnd"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 14,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "adding state ( 0,  -1.000000014) with fermi=1.00 and current N=  2.0\n",
      "adding state ( 0,  -0.249999998) with fermi=1.00 and current N=  4.0\n",
      "adding state ( 1,  -0.249999997) with fermi=1.00 and current N= 10.0\n",
      "adding state ( 0,  -0.111111111) with fermi=1.00 and current N= 12.0\n",
      "adding state ( 1,  -0.111111111) with fermi=1.00 and current N= 18.0\n",
      "adding state ( 2,  -0.111111113) with fermi=1.00 and current N= 28.0\n"
     ]
    }
   ],
   "source": [
    "Z=28 # like Ni\n",
    "N=0\n",
    "rho=zeros(len(R))\n",
    "for (l,En) in Bnd:\n",
    "    ur = SolveSchroedinger(En,l,R)\n",
    "    dN = 2*(2*l+1)\n",
    "    if N+dN<=Z:\n",
    "        ferm=1.\n",
    "    else:\n",
    "        ferm=(Z-N)/float(dN)\n",
    "    drho = ur**2 * ferm * dN/(4*pi*R**2)\n",
    "    rho += drho\n",
    "    N += dN\n",
    "    print 'adding state (%2d,%14.9f) with fermi=%4.2f and current N=%5.1f' % (l,En,ferm,N)\n",
    "    if N>=Z: break\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Resulting charge density for a Ni-like Hydrogen atom"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 15,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x112d32710>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "from pylab import *\n",
    "%matplotlib inline\n",
    "\n",
    "plot(R,rho*(4*pi*R**2),label='charge density')\n",
    "xlim([0,25])\n",
    "show()\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Numerov algorithm"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "The general purpose integration routine is not the best method for solving the Schroedinger equation, which does not have first derivative terms. \n",
    "\n",
    "Numerov algorithm is better fit for such equations, and its algorithm is summarized below. "
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "The second order linear differential equation (DE) of the form\n",
    "\n",
    "\\begin{eqnarray}\n",
    " x''(t) = f(t) x(t) + u(t)\n",
    "\\end{eqnarray}\n",
    "\n",
    "is a target of Numerov algorithm.\n",
    "\n",
    "Due to a special structure of the DE, the fourth order error cancels\n",
    "and leads to sixth order algorithm using second order integration\n",
    "scheme.\n",
    "\n",
    "\n",
    "If we expand x(t) to some higher power and take into account the time\n",
    "reversal symmetry of the equation, all odd term cancel\n",
    "\n",
    "\\begin{eqnarray}\n",
    "  x(h) = x(0)+h x'(0)+\\frac{1}{2}h^2 x''(0)+\\frac{1}{3!}h^3\n",
    "  x^{(3)}(0)+\\frac{1}{4!}h^4 x^{(4)}(0)+\\frac{1}{5!}h^5 x^{(5)}(0)+...\\\\\n",
    "  x(-h) = x(0)-h x'(0)+\\frac{1}{2}h^2 x''(0)-\\frac{1}{3!}h^3\n",
    "  x^{(3)}(0)+\\frac{1}{4!}h^4 x^{(4)}(0)-\\frac{1}{5!}h^5\n",
    "  x^{(5)}(0)+...\n",
    "\\end{eqnarray}\n",
    "\n",
    "hence \n",
    "\n",
    "\\begin{eqnarray}\n",
    "  x(h)+x(-h) = 2x(0)+h^2 (f(0)x(0)+u(0))+\\frac{2}{4!}h^4 x^{(4)}(0)+O(h^6)\n",
    "\\end{eqnarray}\n",
    "\n",
    "\n",
    "If we are happy with $O(h^4)$ algorithm, we can neglect $x^{(4)}$ term and\n",
    "get the following recursion relation\n",
    "\n",
    "\\begin{equation}\n",
    "  x_{i+1}-2 x_i + x_{i-1} = h^2 (f_i x_i+u_i) .\n",
    "\\end{equation}\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "But we know from the differential equation that\n",
    "\n",
    "\\begin{equation}\n",
    "  x^{(4)} = \\frac{d^2 x''(t)}{dt^2} = \\frac{d^2}{dt^2}(f(t) x(t)+u(t))\n",
    "\\end{equation}\n",
    "\n",
    "which can be approximated by\n",
    "\n",
    "\\begin{equation}\n",
    "  x^{(4)}\\sim \\frac{f_{i+1}x_{i+1}+u_{i+1}-2 f_i x_i -2 u_i+ f_{i-1}x_{i-1}+u_{i-1}}{h^2}\n",
    "\\end{equation}\n",
    "\n",
    "Inserting the fourth order derivative into the above recursive equation (forth equation in his chapter), we\n",
    "get\n",
    "\n",
    "\\begin{equation}\n",
    "  x_{i+1}-2 x_i+x_{i-1}=h^2(f_i x_i+u_i)+\\frac{h^2}{12}(f_{i+1}x_{i+1}+u_{i+1}-2 f_i x_i -2 u_i+ f_{i-1}x_{i-1}+u_{i-1})\n",
    "\\end{equation}\n",
    "\n",
    "If we switch to a new variable $w_i=x_i(1-\\frac{h^2}{12} f_i)-\\frac{h^2}{12}u_i$\n",
    "we are left with the following\n",
    "equation\n",
    "\n",
    "\\begin{equation}\n",
    "  w_{i+1} -2 w_i + w_{i-1} = h^2 (f_i x_i + u_i)+O(h^6)\n",
    "\\end{equation}\n",
    "\n",
    "The variable $x$ needs to be recomputed at each step with\n",
    "$x_i=(w_i+\\frac{h^2}{12}u_i)/(1-\\frac{h^2}{12}f_i)$.\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 16,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "def Numerov(f, x0, dx, dh):\n",
    "    \"\"\"Given precomputed function f(x), solves for x(t), which satisfies:\n",
    "          x''(t) = f(t) x(t)\n",
    "    \"\"\"\n",
    "    x = zeros(len(f))\n",
    "    x[0] = x0\n",
    "    x[1] = x0+dh*dx\n",
    "    \n",
    "    h2 = dh**2\n",
    "    h12 = h2/12.\n",
    "\n",
    "    w0=x0*(1-h12*f[0])\n",
    "    w1=x[1]*(1-h12*f[1])\n",
    "    xi = x[1]\n",
    "    fi = f[1]\n",
    "    for i in range(2,len(f)):\n",
    "        w2 = 2*w1-w0+h2*fi*xi  # here fi=f1\n",
    "        fi = f[i]  # fi=f2\n",
    "        xi = w2/(1-h12*fi)\n",
    "        x[i]=xi\n",
    "        w0 = w1\n",
    "        w1 = w2\n",
    "    return x"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 17,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "def fSchrod(En, l, R):\n",
    "    return l*(l+1.)/R**2-2./R-En"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 18,
   "metadata": {
    "collapsed": false
   },
   "outputs": [],
   "source": [
    "Rl = linspace(1e-7,50,1000)\n",
    "l=0\n",
    "En=-1.\n",
    "f = fSchrod(En,l,Rl[::-1])\n",
    "ur = Numerov(f,0.0,1e-7,Rl[1]-Rl[0])[::-1]\n",
    "norm = integrate.simps(ur**2,x=Rl)\n",
    "ur *= 1/sqrt(abs(norm))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 19,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x113e8d2d0>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "from pylab import *\n",
    "%matplotlib inline\n",
    "\n",
    "plot(Rl,ur)\n",
    "show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 22,
   "metadata": {
    "collapsed": false
   },
   "outputs": [],
   "source": [
    "import weave\n",
    "def Numerovc(f, x0_, dx, dh_):\n",
    "    code_Numerov=\"\"\"\n",
    "    double h2 = dh*dh;\n",
    "    double h12 = h2/12.;\n",
    "    \n",
    "    double w0 = x(0)*(1-h12*f(0));\n",
    "    double w1 = x(1)*(1-h12*f(1));\n",
    "    double xi = x(1);\n",
    "    double fi = f(1);\n",
    "    for (int i=2; i<f.size(); i++){\n",
    "        double w2 = 2*w1-w0+h2*fi*xi;  // here fi=f1\n",
    "        fi = f(i);                     // fi=f2\n",
    "        xi = w2/(1-h12*fi);\n",
    "        x(i)=xi;\n",
    "        w0 = w1;\n",
    "        w1 = w2;\n",
    "    }\n",
    "    \"\"\"\n",
    "    x = zeros(len(f))\n",
    "    dh=float(dh_)\n",
    "    x[0]=x0_\n",
    "    x[1]=x0_+dh*dx\n",
    "    weave.inline(code_Numerov, ['f','dh','x'], type_converters=weave.converters.blitz, compiler = 'gcc')\n",
    "    return x"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 23,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x113f82d50>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "Rl = linspace(1e-7,50,1000)\n",
    "l=0\n",
    "En=-1.\n",
    "f = fSchrod(En,l,Rl[::-1])\n",
    "ur = Numerovc(f,0.0,1e-7,Rl[1]-Rl[0])[::-1]\n",
    "norm = integrate.simps(ur**2,x=Rl)\n",
    "ur *= 1/sqrt(abs(norm))\n",
    "\n",
    "plot(Rl,ur)\n",
    "show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "collapsed": true
   },
   "source": [
    "Put it all together"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 26,
   "metadata": {
    "collapsed": false
   },
   "outputs": [],
   "source": [
    "import weave\n",
    "def Numerovc(f, x0_, dx, dh_):\n",
    "    code_Numerov=\"\"\"\n",
    "    double h2 = dh*dh;\n",
    "    double h12 = h2/12.;\n",
    "    \n",
    "    double w0 = x(0)*(1-h12*f(0));\n",
    "    double w1 = x(1)*(1-h12*f(1));\n",
    "    double xi = x(1);\n",
    "    double fi = f(1);\n",
    "    for (int i=2; i<f.size(); i++){\n",
    "        double w2 = 2*w1-w0+h2*fi*xi;  // here fi=f1\n",
    "        fi = f(i);                     // fi=f2\n",
    "        xi = w2/(1-h12*fi);\n",
    "        x(i)=xi;\n",
    "        w0 = w1;\n",
    "        w1 = w2;\n",
    "    }\n",
    "    \"\"\"\n",
    "    x = zeros(len(f))\n",
    "    dh=float(dh_)\n",
    "    x[0]=x0_\n",
    "    x[1]=x0_+dh*dx\n",
    "    weave.inline(code_Numerov, ['f','dh','x'], type_converters=weave.converters.blitz, compiler = 'gcc')\n",
    "    return x\n",
    "\n",
    "def fSchrod(En, l, R):\n",
    "    return l*(l+1.)/R**2-2./R-En\n",
    "\n",
    "def ComputeSchrod(En,R,l):\n",
    "    \"Computes Schrod Eq.\" \n",
    "    f = fSchrod(En,l,R[::-1])\n",
    "    ur = Numerovc(f,0.0,-1e-7,-R[1]+R[0])[::-1]\n",
    "    norm = integrate.simps(ur**2,x=R)\n",
    "    return ur*1/sqrt(abs(norm))\n",
    "\n",
    "def Shoot(En,R,l):\n",
    "    ur = ComputeSchrod(En,R,l)\n",
    "    ur = ur/R**l\n",
    "    f0 = ur[0]\n",
    "    f1 = ur[1]\n",
    "    f_at_0 = f0 + (f1-f0)*(0.0-R[0])/(R[1]-R[0])\n",
    "    return f_at_0\n",
    "\n",
    "def FindBoundStates(R,l,nmax,Esearch):\n",
    "    n=0\n",
    "    Ebnd=[]\n",
    "    u0 = Shoot(Esearch[0],R,l)\n",
    "    for i in range(1,len(Esearch)):\n",
    "        u1 = Shoot(Esearch[i],R,l)\n",
    "        if u0*u1<0:\n",
    "            Ebound = optimize.brentq(Shoot,Esearch[i-1],Esearch[i],xtol=1e-16,args=(R,l))\n",
    "            Ebnd.append((l,Ebound))\n",
    "            if len(Ebnd)>nmax: break\n",
    "            n+=1\n",
    "            print 'Found bound state at E=%14.9f E_exact=%14.9f l=%d' % (Ebound, -1.0/(n+l)**2,l)\n",
    "        u0=u1\n",
    "    \n",
    "    return Ebnd\n",
    "\n",
    "def cmpE(x,y):\n",
    "    if abs(x[1]-y[1])>1e-4:\n",
    "        return cmp(x[1],y[1])\n",
    "    else:\n",
    "        return cmp(x[0],y[0])\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 27,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Found bound state at E=  -0.999922109 E_exact=  -1.000000000 l=0\n",
      "Found bound state at E=  -0.249990190 E_exact=  -0.250000000 l=0\n",
      "Found bound state at E=  -0.111108201 E_exact=  -0.111111111 l=0\n",
      "Found bound state at E=  -0.062498772 E_exact=  -0.062500000 l=0\n",
      "Found bound state at E=  -0.039999314 E_exact=  -0.040000000 l=0\n",
      "Found bound state at E=  -0.250000016 E_exact=  -0.250000000 l=1\n",
      "Found bound state at E=  -0.111111117 E_exact=  -0.111111111 l=1\n",
      "Found bound state at E=  -0.062500003 E_exact=  -0.062500000 l=1\n",
      "Found bound state at E=  -0.039999959 E_exact=  -0.040000000 l=1\n",
      "Found bound state at E=  -0.111111111 E_exact=  -0.111111111 l=2\n",
      "Found bound state at E=  -0.062500000 E_exact=  -0.062500000 l=2\n",
      "Found bound state at E=  -0.039999977 E_exact=  -0.040000000 l=2\n",
      "Found bound state at E=  -0.062500000 E_exact=  -0.062500000 l=3\n",
      "Found bound state at E=  -0.039999992 E_exact=  -0.040000000 l=3\n",
      "adding state (0, -0.9999221089559618) with fermi= 1.0\n",
      "adding state (0, -0.24999019020652996) with fermi= 1.0\n",
      "adding state (1, -0.25000001561170354) with fermi= 1.0\n",
      "adding state (0, -0.11110820082299919) with fermi= 1.0\n",
      "adding state (1, -0.11111111678092289) with fermi= 1.0\n",
      "adding state (2, -0.11111111114690239) with fermi= 1.0\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x113f82a90>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "image/png": "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\nFnToAPfeC6tX2z9E++wDI0aUr7/9xo3WpGaPPWzbo4gkxlFHwfnnW/ieNy90NSICaR4Sli+3+c49\n94Qvv4QpU+xcgxtvtOHNQw6Bb76J7zVvvRUKCixs1KxZOXWLZKqbboLddoMzz7RALiJhpXVIuPpq\nWLsWnnrqt2mB6tXhkktg5kxYudJ63U+btm2v9+abcNVVdu78gQdWXt0imapWLeumOnu2hXkRCStt\nQ8KCBTbFcOmlsOuuf/x+587w/vuw//7WmOnWW8vep11QAP36waGH2qJFEakcBx1ka4hGjrS+KCIS\nTtqGhHvvtTPihw0r/TE77QQvv2xB4pJL4LDD4OOPf/8Y723/9mGHQevW8OyzUK1a5dYukumuvhr2\n3hvOOENNoERCSsuQsHmz/WAfMABq1y77sVlZcMMNtqp6+XI7U/7II+03mREjYL/9bH60b197TL16\nyfl/EMlk1avb3+Evv7QpPhEJIy1Dwttvw3ff2Q/3bXXkkfDhh3D//bYg8YknYPJk2wkxfTo89tjW\nA4eIJM6++8I119hU4Ftvha5GJDOlZd/Cl1+GXXaBgw+O73nVq9v2xrPOqpy6RCQ+I0ZYWB80CD76\nSEFdJNnSciTh1VdtMWKVtPy/E8kcWVkwcaIdg37JJaGrEck8afdjdMkS+43j2GNDVyIiidCqlU05\nTJgAU6eGrkYks6RdSCieuzzyyLB1iEjinHsu9OgBgwfDTz+FrkYkc6RdSJg5037zaNgwdCUikijO\n2aLiVavgootCVyOSOdIyJHTpEroKEUm0Zs3gtttsjcILL4SuRiQzpFVIWLMG5syJf1eDiETDoEFw\n/PEwZIidayIilSutQsJHH1lTmAMOCF2JiFQG5+Cee+zv+Xnnha5GJP2lVUiYM8e2TO29d+hKRKSy\nNGoE48db47ZJk0JXI5Le0iokfPghtG2rFs4i6W7AAOjf30YTvv8+dDUi6SvtQkL79qGrEJFkuPNO\na7Y2ZEjZHVxFpPzSJiRs3mxrEhQSRDJDgwa2PuGll+Chh0JXI5Ke0iYkLFgAq1dbUxgRyQx9+tiO\nh4susn8DRCSx0iYkzJ1rX9u2DVuHiCTX2LFQp46dxrh5c+hqRNJL2oSEefNswWKzZqErEZFkqlfP\nTmOcNs36O4hI4qRNSJg7F1q3ti2QIpJZeva0/g6XXAJffRW6GpH0kTYhYd48TTWIZLJbbrGeLWed\n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\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x113feb750>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "Esearch = -1.2/arange(1,20,0.2)**2\n",
    "\n",
    "R = linspace(1e-8,100,2000)\n",
    "\n",
    "nmax=5\n",
    "Bnd=[]\n",
    "for l in range(nmax-1):\n",
    "    Bnd += FindBoundStates(R,l,nmax-l,Esearch)\n",
    "    \n",
    "Bnd.sort(cmpE)\n",
    "\n",
    "Z=28  # Like Ni ion\n",
    "\n",
    "N=0\n",
    "rho=zeros(len(R))\n",
    "for (l,En) in Bnd:\n",
    "    #ur = SolveSchroedinger(En,l,R)\n",
    "    ur = ComputeSchrod(En,R,l)\n",
    "    dN = 2*(2*l+1)\n",
    "    if N+dN<=Z:\n",
    "        ferm=1.\n",
    "    else:\n",
    "        ferm=(Z-N)/float(dN)\n",
    "    drho = ur**2 * ferm * dN/(4*pi*R**2)\n",
    "    rho += drho\n",
    "    N += dN\n",
    "    print 'adding state', (l,En), 'with fermi=', ferm\n",
    "    plot(R, drho*(4*pi*R**2))\n",
    "    if N>=Z: break\n",
    "xlim([0,25])\n",
    "show()\n",
    "\n",
    "plot(R,rho*(4*pi*R**2),label='charge density')\n",
    "xlim([0,25])\n",
    "show()\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": []
  },
  {
   "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": 2
}
