mirror of
https://asciireactor.com/otho/phy-4660.git
synced 2024-11-28 05:35:04 +00:00
302 lines
107 KiB
Plaintext
302 lines
107 KiB
Plaintext
|
{
|
||
|
"cells": [
|
||
|
{
|
||
|
"cell_type": "code",
|
||
|
"execution_count": 1,
|
||
|
"metadata": {
|
||
|
"collapsed": false
|
||
|
},
|
||
|
"outputs": [
|
||
|
{
|
||
|
"name": "stdout",
|
||
|
"output_type": "stream",
|
||
|
"text": [
|
||
|
"Populating the interactive namespace from numpy and matplotlib\n"
|
||
|
]
|
||
|
}
|
||
|
],
|
||
|
"source": [
|
||
|
"import numpy as np\n",
|
||
|
"%pylab inline\n",
|
||
|
"\n",
|
||
|
"from scipy.stats import norm\n",
|
||
|
"from scipy.stats import lognorm\n",
|
||
|
"from scipy.optimize import curve_fit\n",
|
||
|
"\n"
|
||
|
]
|
||
|
},
|
||
|
{
|
||
|
"cell_type": "code",
|
||
|
"execution_count": 65,
|
||
|
"metadata": {
|
||
|
"collapsed": false
|
||
|
},
|
||
|
"outputs": [
|
||
|
{
|
||
|
"data": {
|
||
|
"text/plain": [
|
||
|
"[<matplotlib.lines.Line2D at 0x7fa4e0d4fc90>]"
|
||
|
]
|
||
|
},
|
||
|
"execution_count": 65,
|
||
|
"metadata": {},
|
||
|
"output_type": "execute_result"
|
||
|
},
|
||
|
{
|
||
|
"data": {
|
||
|
"image/png": "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\nSl/eXvQ2kdci6RHYQz8
|
||
|
"text/plain": [
|
||
|
"<matplotlib.figure.Figure at 0x7fa4e0e32350>"
|
||
|
]
|
||
|
},
|
||
|
"metadata": {},
|
||
|
"output_type": "display_data"
|
||
|
}
|
||
|
],
|
||
|
"source": [
|
||
|
"# Define model function to be used to fit to the data above:\n",
|
||
|
"def tophat_time(x, *p):\n",
|
||
|
" mean, width = p\n",
|
||
|
" if x>(mean+width): y=0\n",
|
||
|
" if x<(mean-width): y=0\n",
|
||
|
" if x==(mean+width) | x==(mean-width): y=5\n",
|
||
|
" return y\n",
|
||
|
"\n",
|
||
|
"def tophat_freq(f, *pars):\n",
|
||
|
" A,T,t0 = pars\n",
|
||
|
" #return A*T*sinc(pi*f*T)*exp(-i*2*pi*f*t0)\n",
|
||
|
" return A*T*sinc(pi*f*T)*cos(2*pi*f*t0)\n",
|
||
|
"\n",
|
||
|
"\n",
|
||
|
"\n",
|
||
|
"# p0 is the initial guess for the fitting coefficients\n",
|
||
|
"p0 = [3, 3, 3]\n",
|
||
|
"\n",
|
||
|
"\n",
|
||
|
"#x=np.linspace(1,50,200)\n",
|
||
|
"\n",
|
||
|
"# freq bins we agreed on\n",
|
||
|
"x=array([ 0.00964867, 0.02886003, 0.0556922 , 0.08632291, 0.13380051,\n",
|
||
|
" 0.20739079, 0.32145572, 0.49825637])\n",
|
||
|
"\n",
|
||
|
"# from 3471A\n",
|
||
|
"lag = array([ 1.25569486, 2.37000041, 1.7802513 , 1.66775218, 0.49069246,\n",
|
||
|
" 0.21781609, -0.44057362, 0.01545348])\n",
|
||
|
"coeff, var_matrix = curve_fit(tophat_freq, x, lag, p0=p0)\n",
|
||
|
"\n",
|
||
|
"# Get the fitted curve\n",
|
||
|
"\n",
|
||
|
"\n",
|
||
|
"plot(tophat_freq(x, *coeff))\n",
|
||
|
"plot(lag)"
|
||
|
]
|
||
|
},
|
||
|
{
|
||
|
"cell_type": "code",
|
||
|
"execution_count": 63,
|
||
|
"metadata": {
|
||
|
"collapsed": false
|
||
|
},
|
||
|
"outputs": [
|
||
|
{
|
||
|
"data": {
|
||
|
"text/plain": [
|
||
|
"[<matplotlib.lines.Line2D at 0x7fa4e0df9250>]"
|
||
|
]
|
||
|
},
|
||
|
"execution_count": 63,
|
||
|
"metadata": {},
|
||
|
"output_type": "execute_result"
|
||
|
},
|
||
|
{
|
||
|
"data": {
|
||
|
"image/png": "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\nyC7bDiP0EryQ4rXLZq+
|
||
|
"text/plain": [
|
||
|
"<matplotlib.figure.Figure at 0x7fa4e0fdc4d0>"
|
||
|
]
|
||
|
},
|
||
|
"metadata": {},
|
||
|
"output_type": "display_data"
|
||
|
}
|
||
|
],
|
||
|
"source": [
|
||
|
"time_fit = ifft(fit)\n",
|
||
|
"plot(time_fit)"
|
||
|
]
|
||
|
},
|
||
|
{
|
||
|
"cell_type": "code",
|
||
|
"execution_count": 30,
|
||
|
"metadata": {
|
||
|
"collapsed": false
|
||
|
},
|
||
|
"outputs": [
|
||
|
{
|
||
|
"data": {
|
||
|
"text/plain": [
|
||
|
"[<matplotlib.lines.Line2D at 0x7fa4e18f6a50>]"
|
||
|
]
|
||
|
},
|
||
|
"execution_count": 30,
|
||
|
"metadata": {},
|
||
|
"output_type": "execute_result"
|
||
|
},
|
||
|
{
|
||
|
"data": {
|
||
|
"image/png": "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\nVfZdTSGyGRuGeyxwS7D
|
||
|
"text/plain": [
|
||
|
"<matplotlib.figure.Figure at 0x7fa4e1874e90>"
|
||
|
]
|
||
|
},
|
||
|
"metadata": {},
|
||
|
"output_type": "display_data"
|
||
|
}
|
||
|
],
|
||
|
"source": [
|
||
|
"xscale('log')\n",
|
||
|
"plot(np.logspace(0.01,10,200),sinc(pi*x))\n",
|
||
|
"#len(sinc(pi*x))"
|
||
|
]
|
||
|
},
|
||
|
{
|
||
|
"cell_type": "code",
|
||
|
"execution_count": 49,
|
||
|
"metadata": {
|
||
|
"collapsed": false
|
||
|
},
|
||
|
"outputs": [
|
||
|
{
|
||
|
"data": {
|
||
|
"text/plain": [
|
||
|
"[<matplotlib.lines.Line2D at 0x7fa4e16203d0>]"
|
||
|
]
|
||
|
},
|
||
|
"execution_count": 49,
|
||
|
"metadata": {},
|
||
|
"output_type": "execute_result"
|
||
|
},
|
||
|
{
|
||
|
"data": {
|
||
|
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAh8AAAFkCAYAAACAUFlOAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAAPYQAAD2EBqD+naQAAIABJREFUeJztnXmcFNW5/p+ejWGZYdhmAFkE2VHAAVRwwbjgTow7XpVg\nNCZRE/SqScxNJHo1xiSC1yQaE01cJzFxCS4Q3JEA/gRc2fd9kWUYYAaGmenfH2+/Oaeqq7qrobtn\noJ7v59Ofma4+VXVqPU8973tOAYQQQgghhBBCCCGEEEIIIYQQQgghhBBCCCGEEEIIIYQQQgghhBBC\nCCGEEEIIIYQQQgghhBBCCCGEEEIAfA/AKgA1AOYCOCVJ+VEA5sXKrwBwk0eZEgC/A7AxVm4hgPPS\nVF9CCCGEHMZcCWA/gOsB9AUwCcBuAF19yvcAsBfAw7Hy34rNf4lVpgDAxwBeAzAitqyRAAalv/qE\nEEIIOdz4COJQ2CwE8IBP+V8CWOCa9hiAWdb37wBYBiA3HRUkhBBCSPbJydByCwCUA5jumj4d4lR4\nMcKn/DAYsTEGwByIKNkM4AsAP0bmtoMQQgghaSYvQ8ttDxEMW1zTtwLo6DNPmUf5LZA6to/93xPA\n1wA8B8nz6A3g9wDyAdzrs9xOsQ8hhBBCUmNT7JNWMiU+MkUORIR8G0AUwCcAjgJwJ7zFR6fOnTtv\n3LhxY/ZqSAghhBw5bAAwHGkWIJkSH9sA1EPcDJsy+G/AZsS7ImUA6mLLA6SHSy1EeCiLY/Plxcra\ndNq4cSOee+459O/fP6UNIE2TCRMmYPLkyY1dDZImeDyPPHhMjxwWLVqEa6655ihI9OCwEB+1kC6z\nowH805p+NoBXfOaZDeAi17TRkN4t9bHv/wZwNYAIjADpAxElbuHxH/r374/y8vIUqk+aKiUlJTyW\nRxA8nkcePKYkCJlM1HwYwA0AxgPoD+lq2wXA47HffwHgaav84wC6A/hNrPz1sc+vrTKPAWgL4BGI\n6LgAknDq7lVDCCGEkCZKJnM+XgTQDsDPIJbNFwDOB7Au9ntHOMf8WB37fRKAmyFxplvhdErWAzgn\nVuazWJnJAB7K0DYQQgghJM1kOuH0sdjHi/Ee02YAGJpkmXMg3XIJIYQQchjC8THIYcXYsWMbuwok\njfB4HnnwmJIgUHyQwwre2I4seDyPPHhMSRAoPgghhBCSVUIlPvbsAb7/fWD//sauCSGEEBJeQiU+\nPv0UePRRYPnyxq4JIYQQEl5CJT4aGpx/CSGEEJJ9QiU+6mPjpFJ8EEIIIY0HxQchhBBCsgrFByGE\nEEKyCsUHIYQQQrIKxQchhBBCsgrFByGEEEKyCsUHIYQQQrIKxQchhBBCsgrFByGEEEKyCsUHIYQQ\nQrIKxQchhBBCsgrFByGEEEKyCsUHIYQQQrIKxQchhBBCsgrFByGEEEKyCsUHIYQQQrIKxQchhBBC\nsgrFByGEEEKyCsUHIYQQQrIKxQchhBBCsgrFByGEEEKyCsUHIYQQQrIKxQchhBBCsgrFByGEEEKy\nCsUHIYQQQrIKxQchhBBCskqoxIeKDooPQgghpPEIlfig80EIIYQ0PhQfhBBCCMkqFB+EEEIIySoU\nH4QQQgjJKhQfhBBCCMkqFB+EEEIIySoUH4QQQgjJKhQfhBBCCMkqmRYf3wOwCkANgLkATklSfhSA\nebHyKwDclKDsVQAaALwStDIUH4QQQkjjk0nxcSWASQDuAzAEwIcApgLo6lO+B4A3AXwQK/8AgP8D\ncIlH2aMB/Cq2zGjQClF8EEIIIY1PJsXH7QD+BOApAEsA3AZgHYDv+pT/DoDVsfmWAHgyNu8drnK5\nAJ4H8DMAKwFEglaI4oMQQghpfDIlPgoAlAOY7po+HcBIn3lG+JQfBhEcys8AbAbwZ6QgPACKD0II\nIaQpkJeh5baHCIYtrulbAXT0mafMo/wWSB3bx/4/BcD1AAbHfo+CYRdCCCHksCJT4iMTFAF4FsCN\nAHbEpkUQwP2YMGECSkpK8PHH8v2554BevcZi7NixGaoqIYQQcvhQUVGBiooKx7TKysqMrS9T4mMb\ngHqIm2FTBmCTzzybEe+KlAGoiy3vOADdAbxm/a5howMA+kB61sQxefJklJeX4+yzgbffBq66CqDu\nIIQQQoSxY+MfyOfPn4+hQ4dmZH2ZyvmohXSZHe2afjaAWT7zzI79bjMawMcQIbMIwLGQkMtgSI+Y\nKQDejX1fn6xSDLsQQgghjU8mwy4PQ8IkcwHMAfBtAF0APB77/RcAOgMYF/v+OIBbAPwG0ktmBCS/\n46rY7/sBLHStY1fsr3u6Jyo+9C8hhBBCsk8mxceLANpBeqd0AvAFgPMh3W0BCbHYY36sjv0+CcDN\nADYAuBWJBxFjwikhhBBymJHphNPHYh8vxntMmwEglQCT1zJ8ofgghBBCGh++24UQQgghWYXigxBC\nCCFZheIjARUVwL33Zq4+hBBCSBih+EjAO+8AU6Zkrj6EEEJIGKH4SEBdnXwIIYQQkj4oPpKU55gg\nhBBCSHqh+EgAnQ9CCCEk/YRefOzZA2zd6l2+ro7OByGEEJJuQiU+VHTY4uOBB4BLLvEuT+eDEEII\nST+hEh9ezkdlJbBtm395Oh+EEEJIegm9+KivB2prvcvT+SCEEELST+jFR0MDsH+/d3nmfBBCCCHp\nJ/TiI5HzUV9P54MQQghJN6EXHw0NicMudD4IIYSQ9BJ68VFfnzjsQueDEEIISS+hFx/qfESj3uXp\nfBBCCCHpJfTio75ehIeXw0HngxBCCEk/oRcf+r9X3gdzPgghhJD0E3rxodO88j7q66WsV0iGEEII\nIQdHaMSHl9th/+/nfAB0PwghhJB0EhrxYQsIL+cjkfhg3gchhBCSPkIvPvR/r7ALnQ9CCCEk/YRe\nfCRyPvQ3Oh+EEEJI+gi9+KDzQQghhGSX0ImPvDzmfBBCCCGNSejER35+cOdD56HzQQghhKSP0IuP\nIM4HxQchhBCSPkIvPoKM88GwCyGEEJI+Qi8+ko1wav8lhBBCyKETevFB54MQQgjJLqEXH37ORzRK\n54MQQgjJBKEXH37Oh12GzgchhBCSPkIvPvycD1twBHU+nn4a2Ljx4OtICCGEhIHQiw8/58MWH0Gd\njxtuAF5++eDrSAghhISB0IuPdDkf0ajM45W4SgghhBBDaMSHCo6gzoctOII4H1qG4oMQQghJTGjE\nR6ojnKbqfBw44L0cQgghhDgJvfjwe7dLqjkfdD4IIYSQYIRefPg5H7bbkYrzoX8JIYQQ4k3oxUe6\nnA+GXQghhJBgZEN8fA/AKgA1AOYCOCVJ+VEA5sXKrwBwk+v3GwF8CGBH7PMWgOHJKpHpnA+GXQgh\nhJBgZFp8XAlgEoD7AAyBiIapALr6lO8B4E0AH8TKPwDg/wBcYpUZBeB5AKcDGAFgLYDpADonqkiq\nzkeqvV3ofBBCCCHByLT4uB3AnwA8BWAJgNsArAPwXZ/y3wGwOjbfEgBPxua9wypzDYDHAXweK3Mj\nZDvOSFQR9nYhhBBCmgaZFB8FAMohroTNdAAjfeYZ4VN+GIBcn3laAsiHhGB8scWHLSbSNcIpxQch\nhBASjEyKj/YQwbDFNX0rgI4+85R5lN8CIC+2PC8eBLAewNuJKpPqCKep9nZhzgchhBASjLzGrsAh\nchckr+R0AAmb/Uy/24XOByGEEBKMTIqPbQDqIW6GTRmATT7zbEa8K1IGoC62PJs7APwYwJkAvkxU\nkQkTJqCmpgQA8MYbwI4dQEXFWIwdOzZt73ah+CCEEHK4UlFRgYqKCse0ysrKjK0vk+KjFtJldjSA\nf1rTzwbwis88swFc5Jo2GsDHECGj3AXg7thv85NVZPLkyVixohxXXAFcfjnw5JPA2LHyW7qcD4Zd\nCCGEHK6MHSsP5Dbz58/H0KFDM7K+TPd2eRjADQDGA+gP6XbbBdJbBQB+AeBpq/zjALoD+E2s/PWx\nz6+tMj8EcG9s+lqIU9I
|
||
|
"text/plain": [
|
||
|
"<matplotlib.figure.Figure at 0x7fa4e15acf50>"
|
||
|
]
|
||
|
},
|
||
|
"metadata": {},
|
||
|
"output_type": "display_data"
|
||
|
}
|
||
|
],
|
||
|
"source": [
|
||
|
"plot(np.fft.fft(ifft(sinc(pi*x))))\n"
|
||
|
]
|
||
|
},
|
||
|
{
|
||
|
"cell_type": "code",
|
||
|
"execution_count": 54,
|
||
|
"metadata": {
|
||
|
"collapsed": false
|
||
|
},
|
||
|
"outputs": [
|
||
|
{
|
||
|
"ename": "NameError",
|
||
|
"evalue": "name 'A' is not defined",
|
||
|
"output_type": "error",
|
||
|
"traceback": [
|
||
|
"\u001b[0;31m----------------------------------------------\u001b[0m",
|
||
|
"\u001b[0;31mNameError\u001b[0m Traceback (most recent call last)",
|
||
|
"\u001b[0;32m<ipython-input-54-e6c186659f7e>\u001b[0m in \u001b[0;36m<module>\u001b[0;34m()\u001b[0m\n\u001b[0;32m----> 1\u001b[0;31m \u001b[0mA\u001b[0m\u001b[0;34m*\u001b[0m\u001b[0mT\u001b[0m\u001b[0;34m*\u001b[0m\u001b[0msinc\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mpi\u001b[0m\u001b[0;34m*\u001b[0m\u001b[0mf\u001b[0m\u001b[0;34m*\u001b[0m\u001b[0mT\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m*\u001b[0m\u001b[0mcos\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;36m2\u001b[0m\u001b[0;34m*\u001b[0m\u001b[0mpi\u001b[0m\u001b[0;34m*\u001b[0m\u001b[0mf\u001b[0m\u001b[0;34m*\u001b[0m\u001b[0mt0\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m",
|
||
|
"\u001b[0;31mNameError\u001b[0m: name 'A' is not defined"
|
||
|
]
|
||
|
}
|
||
|
],
|
||
|
"source": [
|
||
|
"A*T*sinc(pi*f*T)*cos(2*pi*f*t0)"
|
||
|
]
|
||
|
},
|
||
|
{
|
||
|
"cell_type": "code",
|
||
|
"execution_count": 1,
|
||
|
"metadata": {
|
||
|
"collapsed": false
|
||
|
},
|
||
|
"outputs": [
|
||
|
{
|
||
|
"ename": "NameError",
|
||
|
"evalue": "name 'np' is not defined",
|
||
|
"output_type": "error",
|
||
|
"traceback": [
|
||
|
"\u001b[0;31m---------------------------------------------------------------------------\u001b[0m",
|
||
|
"\u001b[0;31mNameError\u001b[0m Traceback (most recent call last)",
|
||
|
"\u001b[0;32m<ipython-input-1-d7dd796a61c3>\u001b[0m in \u001b[0;36m<module>\u001b[0;34m()\u001b[0m\n\u001b[1;32m 14\u001b[0m \u001b[0;32mreturn\u001b[0m \u001b[0mA\u001b[0m\u001b[0;34m*\u001b[0m\u001b[0mT\u001b[0m\u001b[0;34m*\u001b[0m\u001b[0msinc\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mpi\u001b[0m\u001b[0;34m*\u001b[0m\u001b[0mf\u001b[0m\u001b[0;34m*\u001b[0m\u001b[0mT\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m*\u001b[0m\u001b[0mcos\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;36m2\u001b[0m\u001b[0;34m*\u001b[0m\u001b[0mpi\u001b[0m\u001b[0;34m*\u001b[0m\u001b[0mf\u001b[0m\u001b[0;34m*\u001b[0m\u001b[0mt0\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 15\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m---> 16\u001b[0;31m \u001b[0mx\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0mnp\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mlogspace\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mfqd\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0;36m0\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0mfqd\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0;34m-\u001b[0m\u001b[0;36m1\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;36m200\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 17\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 18\u001b[0m \u001b[0;31m# p0 is the initial guess for the fitting coefficients\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n",
|
||
|
"\u001b[0;31mNameError\u001b[0m: name 'np' is not defined"
|
||
|
]
|
||
|
}
|
||
|
],
|
||
|
"source": [
|
||
|
"from scipy.optimize import curve_fit\n",
|
||
|
"\n",
|
||
|
"# Define model function to be used to fit to the data above:\n",
|
||
|
"def tophat_time(x, *p):\n",
|
||
|
" mean, width = p\n",
|
||
|
" if x>(mean+width): y=0\n",
|
||
|
" if x<(mean-width): y=0\n",
|
||
|
" if x==(mean+width) | x==(mean-width): y=5\n",
|
||
|
" return y\n",
|
||
|
"\n",
|
||
|
"def tophat_freq(f, *pars):\n",
|
||
|
" A,T,t0 = pars\n",
|
||
|
" #return A*T*sinc(pi*f*T)*exp(-i*2*pi*f*t0)\n",
|
||
|
" return A*T*sinc(pi*f*T)*cos(2*pi*f*t0)\n",
|
||
|
"\n",
|
||
|
"x=np.logspace(fqd[0],fqd[-1],200)\n",
|
||
|
"\n",
|
||
|
"# p0 is the initial guess for the fitting coefficients\n",
|
||
|
"p0 = [3, 3, 3]\n",
|
||
|
"coeff, var_matrix = curve_fit(tophat_freq, fqd, lag, p0)\n",
|
||
|
"fit = tophat_freq(fqd, *coeff)\n",
|
||
|
"\n",
|
||
|
"\n",
|
||
|
"mpl.rcParams['xtick.labelsize']=12\n",
|
||
|
"mpl.rcParams['ytick.labelsize']=12\n",
|
||
|
"xscale('log'); xlim(.009,.6)\n",
|
||
|
"xlabel(\"Fourier Frequency (days$^{-1}$)\",fontsize=20)\n",
|
||
|
"ylabel(\"Time Lag (days)\",fontsize=20)\n",
|
||
|
"\n",
|
||
|
"\n",
|
||
|
"errorbar(fqd, lag, yerr=lage, fmt='o', ms=5,color=\"black\")\n",
|
||
|
"plot(fqd,fit)"
|
||
|
]
|
||
|
},
|
||
|
{
|
||
|
"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.6"
|
||
|
}
|
||
|
},
|
||
|
"nbformat": 4,
|
||
|
"nbformat_minor": 2
|
||
|
}
|