{ "metadata": { "name": "" }, "nbformat": 3, "nbformat_minor": 0, "worksheets": [ { "cells": [ { "cell_type": "code", "collapsed": false, "input": [ "%pylab" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "Using matplotlib backend: TkAgg\n", "Populating the interactive namespace from numpy and matplotlib\n" ] } ], "prompt_number": 2 }, { "cell_type": "code", "collapsed": true, "input": [ "import numpy as np\n", "import scipy as sp\n", "import matplotlib.pyplot as plt\n", "%matplotlib inline" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 3 }, { "cell_type": "code", "collapsed": false, "input": [ "# Graphing helper function\n", "def setup_graph(title='', x_label='', y_label='', fig_size=None):\n", " fig = plt.figure()\n", " if fig_size != None:\n", " fig.set_size_inches(fig_size[0], fig_size[1])\n", " ax = fig.add_subplot(111)\n", " ax.set_title(title)\n", " ax.set_xlabel(x_label)\n", " ax.set_ylabel(y_label)" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 4 }, { "cell_type": "markdown", "metadata": {}, "source": [ "Import audio file." ] }, { "cell_type": "code", "collapsed": false, "input": [ "from scipy.io import wavfile\n", "rate1,data1= wavfile.read('beethoven.wav')\n", "print 'rate1 =', rate1\n", "print 'data1 =', data1\n", "length = np.size(data1)\n", "print 'length = ', length\n", "# zero pad to power of 2\n", "data2 = np.concatenate( (data1, 128*np.ones(2**18 - length))) - [128]\n", "t1 = np.linspace(0, float(length)/float(rate1), 2**18)\n", "_ = plt.plot(t1, data2)\n", "# now write zero padded data file\n", "wavfile.write('beethoven-pad.wav', rate1, (data2+[128]).astype(uint8))\n", "# print 'data2:', (data2[0:8]+[128]).astype(uint8)\n", "setup_graph(title='$x[n]$', x_label='$n$', y_label='$ real x[n]$', fig_size=(6,3))\n", "_ = plt.plot(t1[30000:32000],data2[30000:32000].real)" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "rate1 = 22050\n", "data1 = [127 128 128 ..., 128 128 128]\n", "length = 216032\n" ] }, { "metadata": {}, "output_type": "display_data", "png": "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\nZ599tmF4ZmYmunXrhvj4eGzevFl1kHZGG7AXLQsvWhZetCzUCVc64fbt25Gbm4v9+/cjIiICP//8\nMwCgqKgI69atQ1FRESorK5Gamori4mKEhdFBAyGEGE1x5n3jjTcwb948REREAADat28PAMjJycG4\nceMQERGBmJgYxMbGoqCgQJtoCSGEyMMplJSUxM2fP58bOHAgN3jwYO7bb7/lOI7jZs6cyb333nsN\n4z388MPchx9+6DctAPqjP/qjP/pT8CdX0NM1aWlpqKqqajR80aJFqK2txenTp7Fr1y58++23GDNm\nDI4cOSJYjiug7R1Hd9UQQoghgib5LVu2iH72xhtvYMSIEQCAAQMGICwsDCdOnEDHjh1RXl7eMF5F\nRQU6duyoUbiEEELkUHxOPiMjA9u2bQMAFBcXo6amBu3atUN6ejrWrl2LmpoalJaWoqSkBDfffLNm\nARNCCJFOceuaadOmYdq0aejVqxeaNm2Kf/zjHwCAxMREjBkzBomJiQgPD8frr7/e6HQNIYQQgyi9\n8KrUp59+ynXv3p2LjY3lsrKyjJ69qRw9epRLSUnhEhMTuR49enDZ2dmsQ2KqtraWS0pK4u677z7W\noTB1+vRpbuTIkVx8fDyXkJDAffPNN6xDYmbx4sVcYmIi17NnT27cuHHc5cuXWYdkmKlTp3KRkZFc\nz549G4adPHmSS01N5bp168alpaVxp0+fDlmOoY3X6+rqMHPmTOTl5aGoqAhr1qzBwYMHjQzBVCIi\nIvDKK6/gwIED2LVrF5YtW+bo5ZGdnY3ExETHH/k99dRTuOeee3Dw4EHs378fCQkJrENioqysDG+/\n/TYKCwvx/fffo66uDmvXrmUdlmGmTp2KvLw8v2FZWVlIS0tDcXExhgwZgqysrJDlGJrkCwoKEBsb\ni5iYGERERGDs2LHIyckxMgRTiY6ORlJSEgCgZcuWSEhIwLFjxxhHxUZFRQU2bdqE6dOnO7r11dmz\nZ/HVV19h2rRpAIDw8HC0atWKcVRsXHfddYiIiMDFixdRW1uLixcvOqoRxx133IE2bdr4DcvNzcWU\nKVMAAFOmTMGGDRtClmNokq+srESnTp0a3rvdblRWVhoZgmmVlZVhz549GDhwIOtQmHj66aexZMkS\nx98ZXVpaivbt22Pq1Kno27cvHnnkEVy8eJF1WEy0bdsWzzzzDDp37owOHTqgdevWSE1NZR0WU9XV\n1YiKigIAREVFobq6OuQ0hu5RTj8MF3PhwgWMGjUK2dnZaNmyJetwDLdx40ZERkYiOTnZ0bV4AKit\nrUVhYSFmzJiBwsJCtGjRQtIhuR39+OOPePXVV1FWVoZjx47hwoULWL16NeuwTMPlcknKqYYm+cA2\n9OXl5XC73UaGYDpXrlzByJEjMXHiRGRkZLAOh4mdO3ciNzcXXbp0wbhx47Bt2zZMnjyZdVhMuN1u\nuN1uDBgwAAAwatQoFBYWMo6KjX//+9+47bbbcP311yM8PBwjRozAzp07WYfFVFRUVMMNqsePH0dk\nZGTIaQxN8v3790dJSQnKyspQU1ODdevWIT093cgQTIXjODz88MNITEzE7NmzWYfDzOLFi1FeXo7S\n0lKsXbsWd955Z0OTXKeJjo5Gp06dUFxcDADYunUrevTowTgqNuLj47Fr1y5cunQJHMdh69atSExM\nZB0WU+np6Vi5ciUAYOXKldIqhno1/xGzadMmLi4ujuvatSu3ePFio2dvKl999RXncrm4Pn36cElJ\nSVxSUhL36aefsg6Lqfz8fG748OGsw2Bq7969XP/+/bnevXtzDzzwAHfmzBnWITHz4osvNjShnDx5\nMldTU8M6JMOMHTuWu+GGG7iIiAjO7XZz77zzDnfy5EluyJAhsppQujjO4SdBCSHExpzdlIEQQmyO\nkjwhhNgYJXlCCLExSvKEEGJjlOQJIcTGKMkTQoiN/T8mAzcWUc80uQAAAABJRU5ErkJggg==\n", "text": [ "" ] }, { "metadata": {}, "output_type": "display_data", "png": "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\n", "text": [ "" ] } ], "prompt_number": 8 }, { "cell_type": "markdown", "metadata": {}, "source": [ "Now calculate FFT" ] }, { "cell_type": "code", "collapsed": false, "input": [ "Y = np.fft.fft(data2)\n", "n1 = np.linspace(0,2**18, 2**18)\n", "setup_graph(title='$Y$', x_label='$k$', y_label='real Y[k]', fig_size=(6,3))\n", "_ = plt.plot(n1,Y.real)\n", "# print Y[0:4].real\n", "setup_graph(title='$Y$', x_label='$k$', y_label='$|Y[k]|$', fig_size=(6,3))\n", "_ = plt.plot(n1[0:50000],np.abs(Y[0:50000]))" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "display_data", "png": "iVBORw0KGgoAAAANSUhEUgAAAa8AAADhCAYAAAB/TjqpAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzt3X9UVOedP/D3INh0mwhKI+KMlcjMQFWCqAHMN0lHyYCx\nDWqMgtkosWZPFjfWWDeHtqdpwKxCkk17TDY222SoaNrgykalXUFIIolNFKqS7UY2zXQdFQY0yi/R\nyC/5fP8Y5yLyQ4jM3Ln4fp0zh7nPvXfm88wd7meee5/7XJ2ICIiIiDTET+0AiIiIhorJi4iINIfJ\ni4iINIfJi4iINIfJi4iINIfJi4iINIfJi4iINIfJi4iINIfJi8jHHTlyBMnJyQgNDUVxcbFS/j//\n8z/4zne+g6ysLFy6dEnFCIm8T8cRNoh836lTpxAREYHa2lqMGzcOAJCfn4/Y2FhMmTJF5eiIvI8t\nLyINmDx5MubMmYPf/e53AICioiKYzWYmLrplMXkRaURaWhry8vJw6NAhjB49GjNnzlQ7JCLVMHkR\nacSSJUtQVVUFh8OBhIQEtcMhUhXPeRFpRENDA8xmM86fP692KESqY8uLSCM+/PBD3HfffWqHQeQT\nmLyINGDnzp149dVX0dHRgYqKCrXDIVIdDxsSEZHmqNby+uEPf4iQkBBERUUpZZmZmTAYDIiJiUFM\nTAyKioqUednZ2TCZTIiMjERJSYlSfvToUURFRcFkMmHdunVKeVtbG1JSUmAymRAfH49Tp04p8/Ly\n8mA2m2E2m7F9+3YP15SIiIadqOSjjz6SY8eOyfTp05WyzMxMeeWVV3ote/z4cYmOjpb29nZxOBwS\nHh4uXV1dIiJyzz33SHl5uYiIPPTQQ1JUVCQiIq+//rqkp6eLiEh+fr6kpKSIiEh9fb1MmTJFGhsb\npbGxUXlORETa4a9W0rz//vtx8uTJXuXSx1HMvXv3Yvny5QgICEBYWBiMRiPKy8sxefJktLS0IDY2\nFgCwcuVK7NmzB/Pnz0dhYSGysrIAuLoYP/300wCA/fv3IzExEUFBQQAAq9WK4uJipKam9nhPnU43\nnNUlIrpl9LUfH24+12HjtddeQ3R0NFavXo2mpiYAQG1tLQwGg7KMwWCA0+nsVa7X6+F0OgEATqcT\nkyZNAgD4+/sjMDAQ9fX1/b5WX0RkxD6ef/551WNg3Vg/1m/kPbzFp5JXeno6HA4HPv30U4SGhmLD\nhg1qh0RERD7Ip5LX+PHjodPpoNPp8OSTTypdgvV6Paqrq5XlampqYDAYoNfrUVNT06vcvc7p06cB\nAJ2dnWhubkZwcHCv16quru7REiMiIt/nU8mrrq5Oeb57926lJ2JycjLy8/PR3t4Oh8MBu92O2NhY\nTJgwAWPGjEF5eTlEBDt27MDChQuVdfLy8gAABQUFynA6iYmJKCkpQVNTExobG1FaWoqkpCQv11R9\nFotF7RA8ZiTXDWD9tG6k189rRCWpqakSGhoqAQEBYjAYxGazyYoVKyQqKkruvvtuWbhwoZw5c0ZZ\nftOmTRIeHi4RERFSXFyslB85ckSmT58u4eHhsnbtWqW8tbVVli5dKkajUeLi4sThcCjzcnNzxWg0\nitFolG3btvUZn4ofDRGRZnlr38mLlPuh0+m8evKRiGgk8Na+06cOGxIREQ0GkxcREWkOkxcREWkO\nkxcREWkOkxcREWkOkxcREWkOkxcREWkOkxcREWkOk9cghYUBb72ldhREdCtobwd4V6aBMXkN0qlT\nwIEDakdBRLeCtja1I/B9TF5ERKQ5TF5ERD6GhwxvjMlrCFpb1Y6AiG4FX32ldgS+j6PK9+P6kZHd\nv4T4aRGRp9XVARMnanN/w1HliYiI+qFa8vrhD3+IkJAQ5W7JANDQ0ACr1Qqz2YzExEQ0NTUp87Kz\ns2EymRAZGYmSkhKl/OjRo4iKioLJZMK6deuU8ra2NqSkpMBkMiE+Ph6nTp1S5uXl5cFsNsNsNmP7\n9u0erikR0dDwnNeNqZa8Vq1aheLi4h5lOTk5sFqt+OKLL5CQkICcnBwAQFVVFXbu3ImqqioUFxdj\nzZo1SrM0PT0dNpsNdrsddrtdeU2bzYbg4GDY7XasX78eGRkZAFwJcuPGjaioqEBFRQWysrJ6JEki\nIvJ9/mq98f3334+TJ0/2KCssLMSHH34IAEhLS4PFYkFOTg727t2L5cuXIyAgAGFhYTAajSgvL8fk\nyZPR0tKC2NhYAMDKlSuxZ88ezJ8/H4WFhcjKygIALFmyBE8//TQAYP/+/UhMTERQUBAAwGq1ori4\nGKmpqb1izMzMvGbKcvVBRORZWmp5lZWVoayszOvvq1ry6svZs2cREhICAAgJCcHZs2cBALW1tYiP\nj1eWMxgMcDqdCAgIgMFgUMr1ej2cTicAwOl0YtKkSQAAf39/BAYGor6+HrW1tT3Wcb9WX65NXlfz\nIBERXcNiscBisSjTWV7aWfpshw2dTgedln5+EBENE+76bsynkldISAjOnDkDAKirq8P48eMBuFpU\n1dXVynI1NTUwGAzQ6/WoqanpVe5e5/Tp0wCAzs5ONDc3Izg4uNdrVVdX92iJERGR7/Op5JWcnIy8\nvDwArh6BixYtUsrz8/PR3t4Oh8MBu92O2NhYTJgwAWPGjEF5eTlEBDt27MDChQt7vVZBQQESEhIA\nAImJiSgpKUFTUxMaGxtRWlqKpKQkFWpLRNQ3trwGQVSSmpoqoaGhEhAQIAaDQXJzc6W+vl4SEhLE\nZDKJ1WqVxsZGZflNmzZJeHi4RERESHFxsVJ+5MgRmT59uoSHh8vatWuV8tbWVlm6dKkYjUaJi4sT\nh8OhzMvNzRWj0ShGo1G2bdvWZ3zXfzSuywWHqfJERAP48kvX/qarS+1Ihs5baYUjbPSDI2wQkVrO\nnAFCQ4GuLu21wjjCBhHRLcp970D+WO4fkxcRkY+pr1c7At/H5EVE5GN4muLGmLyIiEhzmLyIiHwM\nW143xuRFRORjtNbDUA1MXkREPootr/4xeRER+Ri2vG6MyYuIyMd0dLj+suXVPyYvIiIfc92tDqkP\nTF5ERD6mtdX1ly2v/jF5ERH5GJ7zujEmLyIiH8PrvG6MyYuIiDSHyYuIyMdcueL6y5ZX/3wyeYWF\nheHuu+9GTEwMYmNjAQANDQ2wWq0wm81ITExEU1OTsnx2djZMJhMiIyNRUlKilB89ehRRUVEwmUxY\nt26dUt7W1oaUlBSYTCbEx8fj1KlT3qscEdENXLMbo374ZPLS6XQoKytDZWUlKioqAAA5OTmwWq34\n4osvkJCQgJycHABAVVUVdu7ciaqqKhQXF2PNmjXKjdDS09Nhs9lgt9tht9tRXFwMALDZbAgODobd\nbsf69euRkZHRbyxr1gDvv+/hChMR9aG9HZg2Te0ofJO/2gH05/o7cRYWFuLDDz8EAKSlpcFisSAn\nJwd79+7F8uXLERAQgLCwMBiNRpSXl2Py5MloaWlRWm4rV67Enj17MH/+fBQWFiIrKwsAsGTJEjz9\n9NN9xpCZmYlf/xr46CMAsFx9EBF5x8WLQFWV2lEMrKysDGVlZV5/X59MXjqdDg8++CBGjRqFp556\nCv/wD/+As2fPIiQkBAAQEhKCs2fPAgBqa2sRHx+vrGswGOB0OhEQEACDwaCU6/V6OJ1OAIDT6cSk\nSZMAAP7+/ggMDERDQwPGjRvXI47MzExkZbl++Rw/7tEqExH1ooUu8xaLBRaLRZl2Nww8zSeT18cf\nf4zQ0FCcO3cOVqsVkZGRPebrdDrovLhVedKUiMi3+OQ5r9DQUADAnXfeicWLF6OiogIhISE4c+YM\nAKCurg7jx48H4GpRVVdXK+vW1NTAYDBAr9ejpqamV7l7ndOnTwMAOjs70dzc3KvVBQDbtnmkekRE\nQxIVpXYEvsfnktdXX32FlpYWAMClS5dQUlKCqKgoJCcnIy8vDwCQl5eHRYsWAQCSk5ORn5+P9vZ2\nOBwO2O12xMbGYsKECRgzZgzKy8shItixYwcWLlyorON+rYKCAiQkJPQZy6pVrr9seRGRmj77TO0I\nfI/PHTY8e/YsFi9eDMDVKvr7v/97JCYmYvbs2Vi2bBlsNhvCwsLwH//xHwCAqVOnYtmyZZg6dSr8\n/f2xdetW5ZDi1q1b8cQTT+Dy5ctYsGAB5s+fDwBYvXo1VqxYAZPJhODgYOTn56tTWSKiAWjhnJda\ndHJ9tz4CgKsJ0PXRfP/7wH/9l6vc/Wm99BJw333AvfeqEx8RjRzt7cDjjwNXf5MrSau2Fpg40fVc\nK3tqnU7Xq7e4J/jcYUNf5E5cAPC737n+ZmQA11z3DJ3O97u0EpHv0OkAh8P1/MsvgV27ei9TVOTd\nmLSELa9+XNvyup5I74EzOZAmEQ1WUpJrFI3SUuDBB4GaGmDSJNf+49w54Gp/tB60sm9hy4uIaIRy\nD/907lzveWlp3o1Fq5i8iIhU0tDQu6ytzftxaBGTFxGRSq5PVHZ7/8umpno2Fq1h8voaRo1SOwIi\nGgna23tOP/008MEHfS/73nuej0dLmLy+hq4utSMgopHAfd8udxI7eFC9WLSGycuLzp3j8WyiW8HV\nMcBvyN0pzz22eGenZ+IZiZi8btJQroAfP57HrYlGui+/BK65ocWA6utdFyG7ex12dHgurpGGyWsY\n/OEPg192zx7PxUFE6vu//xv8sl99BdTVeS6WkYzJaxhcvUFzv7q6ALPZO7EQkbrc56+2bgWu3ryi\nX0MZcFcrFyl7y4DJ64477rjhw2QyeStWn7V1a+8ynQ54913X8y++6N0Ftq+LE4lIuy5eBC5f7j7f\n9U//BOTkuJ53dbn2CefP91znk08G//pMXj0NmLzCw8PR0tIy4ONb3/qWt2LVnCVLgKNHe39hDx7s\ne/gXItKuu+4CfvADoLCwu+zXv3b9dV9e89ZbX//12cu5pwGT17vupsNNLnMrcTiAN9/snp49G/j0\n057LuLvDzpsHREe7DjPwXBiRtlRWuo6ovPJKd6vqgw+AnTv7X+cPf+j/Oq4baW7+euuNWDII+/bt\n61X261//ejCr+qyioiKJiIgQo9EoOTk5veYDEFdD/eYf997bc3rcuJ7TBQU9pysqXH+feUakq0uF\nD4eIFF1dIg0N3f+f06YN7f9fZHj2I4PbW6tvkGnl5t9nMAvNmTNH3nvvPWX6xRdflKSkJI8F5Wmd\nnZ0SHh4uDodD2tvbJTo6WqqqqnosM5zJ62Yfhw+LPPmkSHu7yO9/L9LaKnLwoOufChCxWETeeccV\nd02NSGVldz0+/FCkqKh7+soVka++cr0G0Uhy5YrIpUsibW3dZefPi7z8cvd0fb3IJ5+4nn/wgci/\n/Vt3UjhyROTiRZHdu13/Hy++KPL88zf//zt/PpOXR95nMAudO3dO4uLi5KOPPpKf/exn8sgjj0jb\ntd8Qjfnkk096JN/s7GzJzs7usYwvJa/BPv7f/xva8mfPirzwgut5ZKTrH93pFFm2TOStt1yfQ1eX\niF4vsnSpSGenq6yvTe+eRzRYV670PrLQ2dn9XSosdH03z593TR86JDJlisi2ba71Hn+8+7t87lzP\n7/bttw/83f/FL9T/f2XyujmDvp/Xl19+iYSEBMyePRu5ublX73elTQUFBdi/fz/evHpy6u2330Z5\neTlee+01ZRlX/Z6/Zi3L1QcRkToGt7f2rrKyMpSVlSnTWVlZGGRauSn+A828/fbbeySp9vZ2OBwO\nFBQUQKfT4cKFCx4P0BMGn3gzPRkGEZHmWSwWWCwWZTorK8sr7ztgb8OLFy/26Bbf1tamlGk1cQGA\nXq9HdXW1Ml1dXQ3DYMdzGcG+972e0z/5CfD2293T//u/wNmzrueRka7eTyKu25cXF7uucxFxdent\n7ARaW9U+yMKHrzza213fiY4O1/SVK8ChQ8BvfuMqF+n+/m3f7hp5wu3ee4Hy8p7fzdLS4f/+k8YM\ndEyxrq7uhscda2trh+cAphd1dHTIlClTxOFwSFtbm8932Lj+8dxzIuPHu477R0V1H98XcXXG+N3v\nRP74R9e5g8mTXfOs1u66dXWJXLjgvc+byBtaW3t2RNqzx9WZyf2/ceiQyBtviFRXu6ZfeaX7f+rK\n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\nrkJggg==\n", "text": [ "" ] }, { "metadata": {}, "output_type": "display_data", "png": "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\n", "text": [ "" ] } ], "prompt_number": 6 }, { "cell_type": "markdown", "metadata": {}, "source": [ "Now apply ``ideal'' low pass filter to Y[k] to obtain Z[k], and plot z[n]." ] }, { "cell_type": "code", "collapsed": false, "input": [ "## your code here to calculate Z[k]\n", "##\n", "##\n", "z = np.fft.ifft(Z)\n", "setup_graph(title='$z[n]$', x_label='$n$', y_label='real z[n]', fig_size=(6,3))\n", "_ = plt.plot(n1,z.real)\n", "setup_graph(title='$z[n]$', x_label='$n$', y_label='$real z[n]$', fig_size=(6,3))\n", "_ = plt.plot(n1[30000:32000],z[30000:32000].real)\n", "setup_graph(title='$z[n]$', x_label='$n$', y_label='$imag z[n]$', fig_size=(6,3))\n", "_ = plt.plot(n1[30000:32000],z[30000:32000].imag)\n", "wavfile.write('beethoven-lpf.wav', rate1, (z.real +[128]).astype(uint8))" ], "language": "python", "metadata": {}, "outputs": [ { "ename": "NameError", "evalue": "name 'Z' is not defined", "output_type": "pyerr", "traceback": [ "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m\n\u001b[0;31mNameError\u001b[0m Traceback (most recent call last)", "\u001b[0;32m\u001b[0m in \u001b[0;36m\u001b[0;34m()\u001b[0m\n\u001b[1;32m 2\u001b[0m \u001b[0;31m##\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 3\u001b[0m \u001b[0;31m##\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m----> 4\u001b[0;31m \u001b[0mz\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mnp\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mfft\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mifft\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mZ\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 5\u001b[0m \u001b[0msetup_graph\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mtitle\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;34m'$z[n]$'\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mx_label\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;34m'$n$'\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0my_label\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;34m'real z[n]'\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mfig_size\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;36m6\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;36m3\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 6\u001b[0m \u001b[0m_\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mplt\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mplot\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mn1\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0mz\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mreal\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", "\u001b[0;31mNameError\u001b[0m: name 'Z' is not defined" ] } ], "prompt_number": 10 }, { "cell_type": "code", "collapsed": false, "input": [], "language": "python", "metadata": {}, "outputs": [] } ], "metadata": {} } ] }