{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "A particle moves in a periodic box of length $L=10$. Consider a position-space wavefunction $\\psi(x)$ which is unity in the interval $x_1=2\\le x \\le x_2=3$ and zero for all other values of $x$. Approximate this wave function as a Fourier series with $2\\ell+1$ terms with $-\\ell \\le m \\le \\ell$ and plot the result for values of $\\ell$ that you can choose.\n", "\n", "First, determine the Fourier amplitudes:\n", "\\begin{eqnarray}\n", "\\widetilde \\psi_m &=& \\frac{1}{\\sqrt{L}}\\int_{x_1}^{x_2}dx e^{-i 2\\pi mx/L} \\psi(x) \\\\\n", " &=&\\sqrt{L}\\frac{\\Bigl\\{e^{-i2\\pi m x_2/L} - e^{-i2\\pi m x_1/L}\\Bigr\\}}\n", " {-2\\pi i m}\n", "\\end{eqnarray}\n", "Note the case $m=0$ is special and should be evaluated directly:\n", "$$\n", "\\widetilde \\psi_0 = \\frac{x_2-x_1}{\\sqrt{L}}\n", "$$\n", "We can then obtain an approximate expression for $\\psi(x)$ by summing $m$ over the specified range:\n", "$$\n", "\\psi^{(\\ell)}(x) = \\sum_{m=-\\ell}^{\\ell}e^{i2\\pi m x/L}\\widetilde \\psi_m\n", "$$\n" ] }, { "cell_type": "code", "execution_count": 126, "metadata": {}, "outputs": [ { "data": { "image/png": "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\nVmnIkLRidccdMd27V3rkkbj+P/8T2/Ckk9Jw1doaVb///M/O47M2buQoQwDoQ7pTsZouabG7L3H3\nZkm3SppZNs9MSTd2XL9d0llmZpXr5muwcaP02GMRDtzjsm6d9NRTcQqAJEBs2CA9/niEira29L6P\nPhofjsl8W7fGB+Pzz8eHoCRt3y499JD0zDNpNWLnzjjNwGOPSXv2pPe94w7p3nvj78l9b7892rdu\njbbmZum//zvCy+rV0dbaKv32t9I//3O6e62tLQaHX365NG9etLW3S7feKl18sXTPPdHmLt14ozRj\nRlSVku3wwx9KRx0lXXZZLGvvXul975OOPlp673vjMVtbpfe/Px7jjDNi2zU3S1dcEcu+887YHjt2\nSA8/LF1wQbTff7+0bFnc/4QTpFGjomKVbIuiBavBg2Pd3CNYHX54hKakYvXYY7FtBw+O51GSvve9\n2OYvvyxdf320XXVVVP0uuCANqvfcI40dG5e77oq2l1+W6uulqVPToNbUJH3iE9K558brW4rX2ZVX\nxuuhoSHa3OP1dfnl0a+k7cknpe98J9qSUPfii9KPfhTvjaRt6VLp5pul555L2xYtiqrc73+fvleW\nL4/Xx1NPpe+LtWvjtfH00+l4u40bYx0aGjq/V554It5Tu3ZF2549sfznnkvfP83N0oIFEeSTcNrS\nEttn/nxp27Zoa22N9/b8+dLmzdHW1hb/AxYs6Hzf5cujrfS+K1fGttiyJda5rS3emwsXRuB1j/Ve\nuzae86amtG39+mhbvz5uu8c6v/xyzN/WFm2bN0d/li2L9XeP/qxfH33asiXu39IS/6+WL4/7tLdH\nH5uaom3TplhmW1tcX748Hq+1NdqSx2lqimW1t8eyV66M5TY3R9vWrdG2fn08V+3tsU0aG+P/wO7d\n0ccdO2JbrF2btu3cGW1r1sTz5x7TNWuifceOaNu9O+63alX8L2xvj7Z16+Jxtm2Ltr17o2+rVqVt\nzc2xDo2N0de2tmjbuDHatmyJtpaW2A6NjbHuyf+1zZujbdOmmKetLd0OTU2xrLa2WHZjYzx++XYo\n3Tbbt0f/1q1L/xd0tW2SttWrYzuVbptVq9K28m3jHstdty76mLQ1N0c/VqyIvibbpvx109VrJGlb\ntiy2W+nrZunS+Ftra9x/8+ZoW78+2txj2UuXRp9aWqJt27ZoW7MmfS0l74vkM661NdZrwYL0/dPW\n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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# This is the first version of this example of a simple square wave function \n", "# for which the coefficients of the Fourier series are computed analytically \n", "# and then used to reconstruct the wave function from a truncated version of\n", "# the Fourier series, including only a finite number. This serves as both \n", "# sample code and and easy place to experiment with Fourier series to see how\n", "# the description improves as more terms are included and to recognize the \n", "# difficulty that the Fourier series has in representing the sharp edges of\n", "# the square wave function.\n", "import numpy as np\n", "import matplotlib.pyplot as plt\n", "# assign constants\n", "L=10 # the spatial extent of the system\n", "x2=3 # upper limit of psi(x)\n", "x1=2 # lower limit of psi(x)\n", "l=100 # The largest value of m that is included: |m| \\le l or (-l \\le m \\le +l)\n", "Dx = 0.01 # Accuracy for plotting position\n", "Nx = int(L/Dx) # Number of positions plotted.\n", "# prevent dividing by zero:\n", "d=0.000001\n", "psi_tilde = np.zeros((2*l+1),dtype=complex) # Fourier coefficients\n", "# Calculate psi_tilde from analytic results in Latex at the top\n", "# We take advantage of Python allowing negative values for the indices of\n", "# arrays but must be aware that negative values are stored starting from \n", "# the uppper limit of the array so if the array is insufficiently large \n", "# strange things might happen.\n", "for m in range(-l,l+1):\n", " psi_tilde[m] = L**0.5*1j/(2*(np.pi)*(m + d))*(np.e**(-2j*np.pi*m*x2/L)-np.e**(-2j*np.pi*m*x1/L))\n", "# print('psi_tilde = ', psi_tilde[m], 'm = ',m)\n", "# correct the value of psi_tilde for the singular case m-l=0\n", "psi_tilde[0] = (x2-x1)/L**0.5\n", "# Reconstruct psi\n", "psi = np.zeros((Nx+1),dtype=complex) # Reconstructed wave function, one element for each position. \n", "x = np.zeros((Nx+1)) # Values for each of the Nx positions, needed for plotting our results.\n", "# compute the value of the position and the wave function for each position:\n", "for n in range(0,Nx+1):\n", " x[n]=n*Dx\n", " psi[n] = 0+0j\n", " # sum over the 2l+1 values of m\n", " for m in range(-l,l):\n", " psi[n] = psi[n]+psi_tilde[m]*np.e**(+2j*np.pi*m*x[n]/L)/L**0.5 \n", "fig = plt.figure(figsize=(10,4))\n", "ax = fig.add_subplot(1,1,1)\n", "ax.plot(x,psi.real,'r-') #Add a curve described by the arrays x and psi.real to Plot, choose a red solid curve.\n", "plt.show()" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": true }, "outputs": [], "source": [] } ], "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.6.3" } }, "nbformat": 4, "nbformat_minor": 2 }