{ "metadata": { "name": "" }, "nbformat": 3, "nbformat_minor": 0, "worksheets": [ { "cells": [ { "cell_type": "code", "collapsed": false, "input": [ "from __future__ import division\n", "import numpy as np\n", "import matplotlib.pyplot as pt" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 1 }, { "cell_type": "code", "collapsed": false, "input": [ "n = 2048\n", "\n", "spikes = np.zeros(n)\n", "spikes[730] = 1\n", "spikes[1512] = 0.3\n", "pt.plot(spikes)" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "pyout", "prompt_number": 3, "text": [ "[]" ] }, { "metadata": {}, "output_type": "display_data", "png": "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\nx/dX0C7lRVmrTUNDgzZt2qTW1lZt2bJFkvTGG29o69at2rBhg77whS/ozJkzpfE//vGPFYvF1NjY\nqGc/4k/Y3nPPPaqrq1Nzc3Ppa5fy2A8dOqTm5mbFYjF95zvfWdHHUCnzrUVfX5/C4bBaW1vV2tqq\n0dHR0n2reS3y+bxuu+023XTTTWpqatLPf/5zSTavjYXWwvdrw/no/PnzLhKJuKmpKTczM+MSiYSb\nmJjw85Q1oaGhwb3++uuzvvbd737X9ff3O+ece+ihh9wDDzzgnHPuH//4h0skEm5mZsZNTU25SCTi\nisXiis+5Up577jn30ksvuaamptLXLuaxv/fee8455zZv3uwOHjzonHPui1/8ohsdHV3hR7J8861F\nX1+f+9nPfjZn7Gpfi5MnT7rx8XHnnHNnz551GzZscBMTEyavjYXWwu9rw9ed/VJelLVauQueHfvw\ni8927typP//5z5Kk4eFh3XXXXQoGg2poaFA0GtXY2NiKz7dSbr31Vq1Zs2bW1y7msR88eFAnT57U\n2bNnS/9X9LWvfa30PR8l862FNPfakFb/Wtxwww1qaWmRJF155ZWKx+MqFAomr42F1kLy99rwNfZL\neVHWauR5nj7/+c+rra1Nv/zlLyVJp06dKv2VUl1dXelVxq+++uqsP2ddjWt0sY/9wq+HQqFVtSaP\nPPKIEomEOjs7S09bWFqLEydOaHx8XO3t7eavjffX4uabb5bk77Xha+yX+qKs1eaFF17Q+Pi4RkdH\n9Ytf/ELPP//8rPs9zyu7Nqt53RZ77Ktdd3e3pqam9PLLL2vt2rW6//77qz2lFfX2229rx44devjh\nh3XVVVfNus/atfH222/rzjvv1MMPP6wrr7zS92vD19gv5UVZq9HatWslSdddd52+8pWvaGxsTHV1\ndXrttdckSSdPntT1118vaekvSvsou5jHHg6HFQqFZr3lxmpak+uvv74UtW984xulp+wsrMW5c+e0\nY8cO3X333fryl78sye618f5afPWrXy2thd/Xhq+x//CLsmZmZjQ0NKRUKuXnKavunXfe0dmzZyVJ\n//3vf/Xss8+qublZqVRKe/fulSTt3bu39ANOpVL6/e9/r5mZGU1NTWlycrL0HNxqcbGP/YYbbtDH\nP/5xHTx4UM45Pfnkk6Xv+ag7efJk6fM//elPpb/UWe1r4ZxTZ2enbrzxRt13332lr1u8NhZaC9+v\njcr9jnl+IyMjbsOGDS4SibgHH3zQ79NV3b/+9S+XSCRcIpFwN910U+kxv/766+5zn/uci8VibuvW\nre7NN98sfc+PfvQjF4lE3MaNG102m63W1CsinU67tWvXumAw6MLhsHv88ccv6bG/+OKLrqmpyUUi\nEfftb3+7Gg9l2S5ci8cee8zdfffdrrm52W3atMl96Utfcq+99lpp/Gpei+eff955nucSiYRraWlx\nLS0tbnR01OS1Md9ajIyM+H5t8KIqADCAf5YQAAwg9gBgALEHAAOIPQAYQOwBwABiDwAGEHsAMIDY\nA4AB/wcAR43qoeflkgAAAABJRU5ErkJggg==\n", "text": [ "" ] } ], "prompt_number": 3 }, { "cell_type": "code", "collapsed": false, "input": [ "pattern = np.zeros_like(spikes)\n", "pattern[n/2-100:n/2+100] = np.sin(np.linspace(-pi, pi, 200))" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stderr", "text": [ "-c:2: DeprecationWarning: using a non-integer number instead of an integer will result in an error in the future\n" ] } ], "prompt_number": 5 }, { "cell_type": "code", "collapsed": false, "input": [ "pt.plot(np.convolve(pattern, spikes))" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "pyout", "prompt_number": 9, "text": [ "[]" ] }, { "metadata": {}, "output_type": "display_data", "png": "iVBORw0KGgoAAAANSUhEUgAAAYMAAAEACAYAAABRQBpkAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAGlFJREFUeJzt3X9s1fW9x/HXKS0oFCkIPZbT7lbaYvlR2y7VLiadXbQS\nQDu4mgi7YqOYS1iYbjFm+tcgdyJscYkby6LGeTU3YWxLlN6tdMrVM7k6aMByTaxXflhcf4sURgFp\nS/u5f5zbQ3+cU7Cn5/v5cM7zkTT0nPOl37dfS199f97f7/f4jDFGAICklmK7AACAfYQBAIAwAAAQ\nBgAAEQYAABEGAABNQhg8+uij8vv9KioqirrN448/roKCAhUXF6uxsTHWXQIAJlnMYfDII4+ovr4+\n6ut1dXU6duyYjh49qpdeekkbN26MdZcAgEkWcxhUVFRo9uzZUV+vra1VTU2NJKm8vFxnzpxRV1dX\nrLsFAEyiuM8M2tralJOTE36cnZ2t1tbWeO8WAPA1eDJAHn3HC5/P58VuAQBXKTXeOwgEAmppaQk/\nbm1tVSAQGLNdfn6+jh8/Hu9yACCh5OXl6dixYzF/nbh3BtXV1Xr99dclSfv371dGRob8fv+Y7Y4f\nPy5jjFMfP/nJT6zXkKw1XbhgJBkVF7tVl4vHipqStyZjzKT9Eh1zZ7B27Vr99a9/1ZdffqmcnBxt\n2bJF/f39kqQNGzZoxYoVqqurU35+vmbMmKFXX3015qKR+Do6pLQ06YsvbFcCJIeYw2Dnzp1X3GbH\njh2x7gZJpr1duvVW6aOPpMFBKYXLI4G44p/YOCorK22XMEay1PTFF1JOjpSeLp0+PbGvkSzHKlbU\ndHVcrGky+YwxTry5jc/nkyOlwAH//u9SMCjt2ye99ZaUl2e7IsBNk/Wzk84ATjp7VrrhhtDH2bO2\nqwESH2EAJxEGgLcIAzhpKAxmzpR6emxXAyQ+wgBOOns2FAR0BoA3CAM4iWUiwFuEAZxEGADeIgzg\npJ6ey2HAzACIP8IAThqaGcyYQRgAXiAM4KRz50JXH0+fLn31le1qgMRHGMBJFy9K110nXX89YQB4\ngTCAk776KhQE118vXbhguxog8REGcNJQGLBMBHiDMIBzjGGZCPAaYQDn9PeH3r8gNZVlIsArhAGc\nM7REJNEZAF4hDOCc4WHAzADwBmEA5wzNCyQ6A8ArhAGcM3qZiJkBEH+EAZzDzADwHmEA54xeJrp4\nMXS6KYD4IQzgnOGdQUqKNHVqKBAAxA9hAOcMDwOJpSLAC4QBnEMYAN4jDOCc4TMDKXStAWcUAfFF\nGMA5ozuDadOk3l579QDJgDCAc0aHwdSphAEQb4QBnDN6mWjaNKmvz149QDIgDOAclokA7xEGcA5h\nAHiPMIBzIi0TEQZAfBEGcE5vL2EAeI0wgHN6e0NnEA0hDID4IwzgnL4+wgDwGmEA5/T1hQJgCNcZ\nAPFHGMA5kToDrjMA4oswgHOYGQDeIwzgnNHLRIQBEH+EAZzDABnwHmEA57BMBHiPMIBz6AwA7xEG\ncA4zA8B7hAGcM7ozmDqVU0uBeCMM4BxmBoD3CAM4h2UiwHuEAZzDABnwXsxhUF9fr8LCQhUUFGj7\n9u1jXg8Gg5o1a5ZKS0tVWlqqn/70p7HuEgmOZSLAe6mx/OWBgQFt2rRJe/fuVSAQ0G233abq6mot\nWrRoxHZ33nmnamtrYyoUyYPOAPBeTJ1BQ0OD8vPzlZubq7S0NK1Zs0a7d+8es50xJpbdIIkMDIT+\nTB32awphAMRfTGHQ1tamnJyc8OPs7Gy1tbWN2Mbn8+mDDz5QcXGxVqxYoaamplh2iQQ3uiuQuIU1\n4IWYlol8Pt8Vt/nmN7+plpYWTZ8+XXv27NGqVat05MiRiNtu3rw5/HllZaUqKytjKQ/XoNHzAolb\nWAPDBYNBBYPBSf+6MYVBIBBQS0tL+HFLS4uys7NHbDNz5szw58uXL9f3v/99dXd3a86cOWO+3vAw\nQHIafVqpxDIRMNzoX5S3bNkyKV83pmWisrIyHT16VCdOnFBfX5927dql6urqEdt0dXWFZwYNDQ0y\nxkQMAkCKvExEGADxF1NnkJqaqh07dmjZsmUaGBjQ+vXrtWjRIr344ouSpA0bNuiPf/yjfvOb3yg1\nNVXTp0/X7373u0kpHImJZSLADp9x5FQfn8/HWUfQJ59Iq1dL//u/l5/7xz+kb3wj9CeAkSbrZydX\nIMMpkWYGnE0ExB9hAKdEWiYaumspjSMQP4QBnBJpgDxlipSScvmCNACTjzCAUyItE0ksFQHxRhjA\nKZE6A4kzioB4IwzglEgzA4nOAIg3wgBOGW+ZiM4AiB/CAE5hmQiwgzCAU1gmAuwgDOCUaJ0By0RA\nfBEGcEq0mQHLREB8EQZwynidActEQPwQBnDKeDMDOgMgfggDOIVlIsAOwgBOYZkIsIMwgFOiLRPR\nGQDxRRjAKZxaCthBGMApyXjX0ldekf7t32xXgWQX03sgA5Otr09KSxv7fKIuEw0MSE88IZ0/L23Y\nIGVm2q4IyYrOAE5JtmWiQ4ek3Fzp3nul//5v29UgmREGcEp/f3KdTfQ//yPddptUViYdPGi7GiQz\nwgBOSbZlok8/lW65RVq8OPQ5YAthAKckW2cwFAYLFkjHj9uuBsmMATKcEq0zmDpV6unxvp54O3Ik\nFAbz54fCwBjJ57NdFZIRnQGckkxvbmOM1NIi5eRIGRmh/+4vv7RdFZIVYQCn9PdH7wwSbZnoH/+Q\nUlOlmTNDjwMBqa3Nbk1IXoQBnJJMp5a2t4cCYEhWltTRYa8eJDfCAE6JNkBOxGWi9vbQrGDI/PmE\nAewhDOCU8QbIibZMNDoMsrJCzwE2EAZwyninliZ6Z8AyEWwiDOCUZLrojDCASwgDOCWZLjrr6hp5\nYzrCADYRBnDKeDODROsMTp2S5s69/HjePK4zgD2EAZySTGcTnTol3Xjj5cdz5xIGsIcwgFOS6Wyi\nL78cGQYZGaFbbvT326sJyYswgDOMiX4FcjJ0Bikp0pw5Une3vZqQvAgDOGNgIHSTtilTxr6WaDOD\nr76SBgelGTNGPj93bigkAK8RBnBGtFtRSIm3TDTUFYy+QylzA9hCGMAZ0ZaIpMRbJhq9RDSEMIAt\nhAGckUydwejh8RDCALYQBnBGtNNKpcSbGdAZwDWEAZwR7bRSKTGXiYZfcDaEMIAthAGcMV5nMGVK\n6OybgQFva4oXOgO4hjCAM8brDHy+xFoqGi8MTp70vh6AMIAzxusMpMRaKqIzgGsIAzhjvM5ASqwz\nisY7m4jOADYQBnDGlTqDZFgmmjePMIAdMYdBfX29CgsLVVBQoO3bt0fc5vHHH1dBQYGKi4vV2NgY\n6y6RoK7UGSTaMlGks4nS00ND8gsXvK8JyS2mMBgYGNCmTZtUX1+vpqYm7dy5U5988smIberq6nTs\n2DEdPXpUL730kjZu3BhTwUhcV9MZJMoyUbTOwOdjbgA7YgqDhoYG5efnKzc3V2lpaVqzZo127949\nYpva2lrV1NRIksrLy3XmzBl1dXXFslskqKuZGSRCZ3DpUuhW1RkZkV9nqQg2pMbyl9va2pSTkxN+\nnJ2drQMHDlxxm9bWVvn9/jFf7z//M5ZqcC1ISZHuvju05DPa1ZxN9F//Jf397/GrbzLdcUfk3/67\nu0NBkBLlV7F586S6utB7JOPacMMN0p132q4iNjGFgW/0LRejMMZc1d978snN4c9vvLFSc+dWTrQ0\nOOrAAek//kO6556xr12pM/jnf5befTf04bpPP5UeeUR65pmxr0VbIhrywAOhX4waGuJXHybXggXe\nhUEwGFQwGJz0rxtTGAQCAbW0tIQft7S0KDs7e9xtWltbFQgEIn69I0c2x1IOrgH33Rd93X+8G9VJ\nkX+wuur556W2tsivRRseD/nXfw19AJFUVlaqsrIy/HjLli2T8nVjmhmUlZXp6NGjOnHihPr6+rRr\n1y5VV1eP2Ka6ulqvv/66JGn//v3KyMiIuESE5DDeuv94t7C+1tx4Y/Q3qblSZwDYEFNnkJqaqh07\ndmjZsmUaGBjQ+vXrtWjRIr344ouSpA0bNmjFihWqq6tTfn6+ZsyYoVdffXVSCse1abwwuFJncC0h\nDHCtiSkMJGn58uVavnz5iOc2bNgw4vGOHTti3Q0SRFra+J0BYQDYwRXI8NTUqaEf+pFcaYB8LRnv\nWoFot6IAbCIM4KkrzQzoDAA7CAN46kozg0TpDDIypLNnQxeYjUYYwEWEATyVLDODKVOkWbOk06fH\nvkYYwEWEATyVLDMDKTQ3iLRURBjARYQBPJUsMwMp+tyAMICLCAN4KllmBlLkMDCGMICbCAN4Ktk6\ng9Gnl549K113XeQb9QE2EQbw1HgD5ETrDCLNDOgK4CrCAJ660gA50ToDwgDXCsIAnkqWG9VJkZeJ\nCAO4ijCAp5LlRnUSy0S4thAG8FSyDZBHhwH3JYKrCAN4KpkGyJHC4IsvJN7OAy4iDOCp8QbIidgZ\njJ4ZdHZKN91kpx5gPIQBPJVMF53Nmyd1d4+8WR1hAFcRBvBUMs0MUlND3cEXX1x+rquLMICbCAN4\nKplmBpIUCEjt7Zcfd3YyM4CbCAN4KplmBpI0f/7lMBgcZIAMdxEG8FQyzQykkWHQ3S2lp3NfIriJ\nMICnkmlmII0MA5aI4DLCAJ5Kxs6grS30+d//Lv3TP9mtB4iGMICnkuVtL4cMD4PmZik312o5QFSE\nATyVTG97KUk33xwKAUk6cYIwgLsIA3gqmW5UJ0l5edLnn4f+2+gM4DLCAJ5KtgHytGnSN74hHT8u\nNTVJixfbrgiIjDCAp6LNDAYGQu8PPGWK9zXFW2GhdPBgaJmosNB2NUBkhAE8lZYWulePMSOfT8Su\nYEhFhfTss1JRUeL+N+LaRxjAUz5fKBBGD5ETcXg8ZPVq6dNPpX/5F9uVANGl2i4AyWdobjD8t+RE\n7gzy86XTp6VZs2xXAkRHGMBzkYbIidwZSFJGhu0KgPGxTATPRRoiJ3JnAFwLCAN4LtKFZ4neGQCu\nIwzguUjLRHQGgF2EATyXjDMDwHWEATzHzABwD2EAz9EZAO4hDOC5aANkOgPAHsIAnos2QKYzAOwh\nDOC5aMtEdAaAPYQBPMcAGXAPYQDPcdEZ4B7CAJ6LtEzU2xt6IxgAdhAG8BwzA8A9hAE8F2lmQGcA\n2EUYwHPROgPCALCHMIDnIg2Qe3tZJgJsmvCb23R3d+vBBx/U559/rtzcXP3+979XRoR38MjNzdUN\nN9ygKVOmKC0tTQ0NDTEVjGsfA2TAPRPuDLZt26aqqiodOXJEd911l7Zt2xZxO5/Pp2AwqMbGRoIA\nkhggAy6acBjU1taqpqZGklRTU6M333wz6rbGmInuBgmIATLgngmHQVdXl/x+vyTJ7/erq6sr4nY+\nn0933323ysrK9PLLL090d0gg0S46IwwAe8adGVRVVamzs3PM888+++yIxz6fTz6fL+LXeP/995WV\nlaWTJ0+qqqpKhYWFqqioiLjt5s2bw59XVlaqsrLyCuXjWjR1qnTmzMjnGCADVycYDCoYDE761x03\nDN5+++2or/n9fnV2duqmm25SR0eHMjMzI26XlZUlSZo3b55Wr16thoaGqwoDJC4GyMDEjf5FecuW\nLZPydSe8TFRdXa3XXntNkvTaa69p1apVY7a5cOGCenp6JEnnz5/XW2+9paKioonuEgki0syAATJg\n14TD4Omnn9bbb7+thQsX6p133tHTTz8tSWpvb9fKlSslSZ2dnaqoqFBJSYnKy8t177336p577pmc\nynHNojMA3DPh6wzmzJmjvXv3jnl+/vz5+vOf/yxJWrBggQ4fPjzx6pCQGCAD7uEKZHguWmfAMhFg\nD2EAz3FvIsA9hAE8F+2iMzoDwB7CAJ5jgAy4hzCA5xggA+4hDOC5adOkixdHPscyEWAXYQDPTZsW\n+uE/HJ0BYBdhAM9ddx2dAeAawgCeu+66sZ0BA2TALsIAnovUGXBvIsAuwgCei7ZMRGcA2EMYwHOj\nzyYaHJQuXQpdjAbADsIAnhvqDIbeDXVoiSjK+yMB8ABhAM+lpoZ+8F+6FHrMEhFgH2EAK4afUcTw\nGLCPMIAVw4fIdAaAfYQBrBgeBlx9DNhHGMCK4WcUXbxIGAC2EQawYnhn8NVX0vXX260HSHaEAawY\nPkC+eDH0GIA9hAGsoDMA3EIYwArCAHALYQArRg+QWSYC7CIMYAWdAeAWwgBWEAaAWwgDWMHZRIBb\nCANYQWcAuIUwgBWEAeAWwgBWcDYR4BbCAFbQGQBuIQxgBWEAuIUwgBWEAeAWwgBWzJghXbgQ+pyZ\nAWAfYQAr0tOlc+dCn9MZAPYRBrCCMADcQhjAiuFhcO5c6DEAewgDWEEYAG4hDGAFYQC4hTCAFcPD\noKdHmjnTbj1AsiMMYMVQGBhDZwC4gDCAFUNh0NsrpaRIU6farghIboQBrEhNldLSpJMn6QoAFxAG\nsCY9XeroIAwAFxAGsCY9XersJAwAFxAGsGbmTOnzz6U5c2xXAoAwgDWZmVJTkzR3ru1KAEw4DP7w\nhz9oyZIlmjJlij788MOo29XX16uwsFAFBQXavn37RHeHBEQYAO6YcBgUFRXpjTfe0Le//e2o2wwM\nDGjTpk2qr69XU1OTdu7cqU8++WSiu/RcMBi0XcIYiVRTZqb08cfxC4NEOlbxRE1Xx8WaJtOEw6Cw\nsFALFy4cd5uGhgbl5+crNzdXaWlpWrNmjXbv3j3RXXrOxf/5iVST3y+dOkUY2EZNV8fFmiZTXGcG\nbW1tysnJCT/Ozs5WW1tbPHeJa0hWVujPm2+2WwcAKXW8F6uqqtTZ2Tnm+a1bt+q+++674hf3+XwT\nrwwJr7w89GdRkd06AEgyMaqsrDSHDh2K+Nrf/vY3s2zZsvDjrVu3mm3btkXcNi8vz0jigw8++ODj\na3zk5eXF+mPcGGPMuJ3B1TLGRHy+rKxMR48e1YkTJzR//nzt2rVLO3fujLjtsWPHJqMUAMAETHhm\n8MYbbygnJ0f79+/XypUrtXz5cklSe3u7Vq5cKUlKTU3Vjh07tGzZMi1evFgPPvigFi1aNDmVAwAm\njc9E+7UeAJA0rF+BbPOitNzcXN16660qLS3V7bffLknq7u5WVVWVFi5cqHvuuUdnzpwJb//cc8+p\noKBAhYWFeuuttyalhkcffVR+v19Fw6aoE6nh0KFDKioqUkFBgZ544om41LV582ZlZ2ertLRUpaWl\n2rNnj6d1tbS06Dvf+Y6WLFmipUuX6pe//KUku8crWk02j9XFixdVXl6ukpISLV68WM8884wku8cp\nWk22v6ek0PVQpaWl4ZNiXPj3N7omT47TpEweJujSpUsmLy/PNDc3m76+PlNcXGyampo8239ubq45\nderUiOeeeuops337dmOMMdu2bTM//vGPjTHGfPzxx6a4uNj09fWZ5uZmk5eXZwYGBmKu4b333jMf\nfvihWbp06YRqGBwcNMYYc9ttt5kDBw4YY4xZvny52bNnz6TXtXnzZvP888+P2darujo6OkxjY6Mx\nxpienh6zcOFC09TUZPV4RavJ9rE6f/68McaY/v5+U15ebvbt22f9+ypSTbaPkzHGPP/88+Z73/ue\nue+++4wxbvz7G12TF8fJamfgwkVpZtQqWW1trWpqaiRJNTU1evPNNyVJu3fv1tq1a5WWlqbc3Fzl\n5+eroaEh5v1XVFRo9uzZE67hwIED6ujoUE9PT7i7efjhh8N/ZzLrkiKfLOBVXTfddJNKSkokSenp\n6Vq0aJHa2tqsHq9oNUl2j9X06dMlSX19fRoYGNDs2bOtf19Fqkmye5xaW1tVV1enxx57LFyH7eMU\nqSZjTNyPk9UwsH1Rms/n0913362ysjK9/PLLkqSuri75/X5Jkt/vV1dXl6TQYDw7O9uTWr9uDaOf\nDwQCcavtV7/6lYqLi7V+/fpw+2yjrhMnTqixsVHl5eXOHK+hmr71rW9JsnusBgcHVVJSIr/fH17G\nsn2cItUk2T1OP/rRj/Tzn/9cKSmXfxTaPk6RavL5fHE/TlbDwPZFae+//74aGxu1Z88e/frXv9a+\nfftGvO7z+cat0Yv6r1SDlzZu3Kjm5mYdPnxYWVlZevLJJ63Uce7cOd1///164YUXNHPmzBGv2Tpe\n586d0wMPPKAXXnhB6enp1o9VSkqKDh8+rNbWVr333nt69913R7xu4ziNrikYDFo9Tn/605+UmZmp\n0tLSqKfHe32cotXkxXGyGgaBQEAtLS3hxy0tLSPSLN6y/v9+CPPmzdPq1avV0NAgv98fvuq6o6ND\nmZmZEWttbW1VIBCIS11fp4bs7GwFAgG1trbGvbbMzMzwP47HHnssvEzmZV39/f26//77tW7dOq1a\ntUqS/eM1VNNDDz0UrsmFYyVJs2bN0sqVK3Xo0CHrx2l0TQcPHrR6nD744APV1tbq5ptv1tq1a/XO\nO+9o3bp1Vo9TpJoefvhhb45TTFOOGPX395sFCxaY5uZm09vb6+kA+fz58+bs2bPGGGPOnTtn7rjj\nDvOXv/zFPPXUU+GrpJ977rkxw6Pe3l7z2WefmQULFoQHNbFqbm4eM0D+ujXcfvvtZv/+/WZwcHBS\nBliR6mpvbw9//otf/MKsXbvW07oGBwfNunXrzA9/+MMRz9s8XtFqsnmsTp48aU6fPm2MMebChQum\noqLC7N271+pxilZTR0dHeBsb31NDgsGguffee40x7vz7G16TF99PVsPAGGPq6urMwoULTV5entm6\ndatn+/3ss89McXGxKS4uNkuWLAnv+9SpU+auu+4yBQUFpqqqKvwNbIwxzz77rMnLyzO33HKLqa+v\nn5Q61qxZY7KyskxaWprJzs42v/3tbydUw8GDB83SpUtNXl6e+cEPfjDpdb3yyitm3bp1pqioyNx6\n663mu9/9runs7PS0rn379hmfz2eKi4tNSUmJKSkpMXv27LF6vCLVVFdXZ/VYffTRR6a0tNQUFxeb\noqIi87Of/cwYM7Hv7XjXZPt7akgwGAyfuePCvz9jjHn33XfDNT300ENxP05cdAYAsH/RGQDAPsIA\nAEAYAAAIAwCACAMAgAgDAIAIAwCACAMAgKT/A50S7x9HrfVrAAAAAElFTkSuQmCC\n", "text": [ "" ] } ], "prompt_number": 9 }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Now with the FFT" ] }, { "cell_type": "code", "collapsed": false, "input": [ "spikes_hat = np.fft.ifft(spikes)\n", "pattern_hat = np.fft.ifft(pattern)\n", "\n", "convolved = np.fft.fft(spikes_hat * pattern_hat)\n", "pt.plot(convolved.real)" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "pyout", "prompt_number": 8, "text": [ "[]" ] }, { "metadata": {}, "output_type": "display_data", "png": "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\nwUJERIr6f3WGK7hpnIsHAAAAAElFTkSuQmCC\n", "text": [ "" ] } ], "prompt_number": 8 }, { "cell_type": "code", "collapsed": false, "input": [], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 8 } ], "metadata": {} } ] }