{ "cells": [ { "cell_type": "markdown", "metadata": { "collapsed": false, "pycharm": { "name": "#%% md\n" } }, "source": [ "# Decoding population activity\n", "\n", "_In this notebook we sample population activity using the analytical model, then analyze the topology and successfully decode orientation using cohomological parametrization_" ] }, { "cell_type": "markdown", "metadata": { "collapsed": false, "pycharm": { "name": "#%% md\n" } }, "source": [ "**Imports**" ] }, { "cell_type": "code", "execution_count": 10, "metadata": { "collapsed": false, "pycharm": { "name": "#%%\n" } }, "outputs": [], "source": [ "%matplotlib inline\n", "\n", "import sys\n", "import seaborn as sns\n", "import umap\n", "import numpy as np\n", "import pandas as pd\n", "from matplotlib import pyplot as plt\n", "sys.path.insert(0, './model')\n", "sys.path.insert(0, './numerical')\n", "\n", "from sym_model import Population, sigmoid\n", "from model import decoding\n", "from model import persistence\n", "from utils import get_orientation_phase_grid" ] }, { "cell_type": "markdown", "metadata": { "collapsed": false, "pycharm": { "name": "#%% md\n" } }, "source": [ "## Getting the data\n", "\n", "**Sampling the activity using the model**" ] }, { "cell_type": "code", "execution_count": 11, "metadata": { "collapsed": false, "pycharm": { "name": "#%%\n" } }, "outputs": [], "source": [ "limit = 500\n", "# n_theta, n_phi = 18, 24\n", "n_theta, n_phi = 36, 72\n", "# n_theta, n_phi = 9, 12\n", "step_phi, step_theta = 360 // n_phi, 180 // n_theta\n", "N = 40 # number of cells" ] }, { "cell_type": "code", "execution_count": 12, "metadata": { "collapsed": false, "pycharm": { "name": "#%%\n" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "[0. 0.] [3.05432619 6.19591884] (2592, 2)\n" ] } ], "source": [ "grid = get_orientation_phase_grid(step_phi, step_theta)\n", "grid = grid.reshape((-1, 2))\n", "print(grid[0], grid[-1], grid.shape)" ] }, { "cell_type": "code", "execution_count": 13, "metadata": {}, "outputs": [], "source": [ "population = Population.random(N)" ] }, { "cell_type": "code", "execution_count": 14, "metadata": {}, "outputs": [], "source": [ "phi_deg, theta_deg = grid[:, 1] * 180 / np.pi, grid[:, 0] * 180 / np.pi" ] }, { "cell_type": "code", "execution_count": 15, "metadata": { "collapsed": false, "pycharm": { "name": "#%%\n" } }, "outputs": [], "source": [ "# res = population.sample_responses(limit, custom_grid=grid, use_sigmoid=False)\n", "# res, phi_deg, theta_deg = res[:, :, 0], res[:, 0, 1], res[:, 0, 2]" ] }, { "cell_type": "code", "execution_count": 16, "metadata": {}, "outputs": [], "source": [ "res = np.abs(population.response_func(grid[:, 1], grid[:, 0]).swapaxes(0, 1)) * 10" ] }, { "cell_type": "code", "execution_count": 17, "metadata": { "collapsed": false, "pycharm": { "name": "#%%\n" } }, "outputs": [], "source": [ "phi_reorder = sorted(list(range(len(phi_deg[:limit]))), key=lambda x: phi_deg[x])\n", "theta_reorder = sorted(list(range(len(theta_deg[:limit]))), key=lambda x: theta_deg[x])" ] }, { "cell_type": "code", "execution_count": 18, "metadata": { "collapsed": false, "pycharm": { "name": "#%%\n" } }, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAFoAAAAVCAYAAADGpvm7AAAACXBIWXMAAA7EAAAOxAGVKw4bAAAFAUlEQVRYCe2Z4XUUNxCAz/dSwIVUwLkDCBVgdwBOBeAOyE/7Xx50AOkg0AFQAcEd4A5irgPn+2SNLO3qzB4+Hkde5j3tjEYjzWhmdqS9m11eXs7qdnJysqz7/9Otf6b4o+fD+ayC09PTZ3TvVazJJHNH8+AtaMvJi/x3BJfZl2VHe0ZIYOAR6AH498TID/o6Kni/Ql/Yh3+WRRKi/xliQQu+tHCfsdUVefWk/7Lq34F+0pGZpLdaZ6sk9pg4x+Dj4cLwnmfeP+B92nN457UcfZN2BX4lPzmajk55D74vM4C+m30JPqx4KnGRQ/jvKv4naJ3mWip9Q/sDmeJkaMc+0lzzBXgGdkPvaQYkGQuerNc1vgVgg/s5Az+u16ev/e7L/c3AsSf9MXS2sg/hr+YKAzqvzrLEzPwmokwyu3Xe6xDKWKN+pu3R9pWjFSdnmT/Bd+AnJ8uD9g34m1br156pehHdLmCTiTQC+E9hWg6TkxWAdo/2a/sdEuSl7A9HHzEhpXgavn4cQH5izKjVYCZ/Tf21PDVRz4vq7INKz7b1ZjVfRtjgG6bzhkniZLM7SqP9gA8Qtf2Jn32qbxdzHus2r7AOPUemp9TxYQDkdUFleeCiI2CtEzwDhK3pvVpuo+dv2NpLOhcxAXr2R/I4PgTHjn7iYf0ttbaWQmFTn6oxoz5jvIku/fRqMfQLbUmzliUZsAcDrFTHxTUoLzhnhtxGep2zDUCvJaNXArQpEuUmVZ5RQ9C3h3MeZpGFfxKgUCfrkLiJxDwN+YvxFzTHbB+h6yhby5IzwTWkwMFYu5kb9NbrfDXN+tplMkR2DtcKJ66GA1W/Z7++XepoB3uvQzW/IT0E32BQOdAcpe+pW4yA1mCjWWfIkyxbnI+cTo556zbptK5eB7YEXuXWlYypKuLNrOX1bXK0kYqN1gIjGkN0mjV73as9nKPjvLynLAar5y7tMfQzmieyYx4mQtfRyG2q92q1iU/Wt+TVCdGbeVMyRrbHWVPPd08La/QkyMZ4NSt36pgI7y20Y809PMbBi6CR0dnDq1u6AsEfORp5ndDVG2veBrO+gfYGNdJdr6vdNFllL9V48HprpETW0UYqBKu51yQKvJl4Ny6ZDB1Z6uLW+V7EU6SRPbterUvdg/sOOYNQgP6X9BbZWxDuwy9iS1MN2uTbKN+32DPHUpj2Da4h7RNG71Khby90tI7qTYadaq8KR5/m8HRC1LRX2RBYDRzQK8qRcY4fLXehk1PBGqJc8zbAn6KXaclGM7IJUhqY8GCe9hUbYwp8f1Iw+CW56Ov0ePtCVKztfrD1bDAI5zrabHtAGwETDYCLq3BYww7gxYHoJ7WtlATo+LqqDXW9Yea7vgdRyXroqXpnyBqoz86nNcGCfxtwXVsB1k8JBX5ES1+HYGWOaA+LYEukIOzxk56Z85oJ/jjSALx0NWmY151mY8jqnLjyGUUdOvoMRy4yIjah7iajNtGrOVlecvQDlsxNgLVMKPfiWybo0A/w47cZ7XYPK5qHn0lavhegG8i2HcePSjrUm0DJqkb6B+hgu2VpVOe/p+nYZMDegvfn2RAjVF7772ncLXR7jphluwS+4ekNTo7GQA+1ct/dJUun2IL9vs69O+yU6d9EBpvMZn2aLgyR0Srz0BoeePJ/BHjKhuJg3hV79WWpEuUfFq3LUfBE3TWjd8V5k+zAf964/JmifMD8C7QsJSruRSwGAAAAAElFTkSuQmCC", "text/latex": [ "$\\displaystyle \\left( 2592, \\ 40\\right)$" ], "text/plain": [ "(2592, 40)" ] }, "execution_count": 18, "metadata": {}, "output_type": "execute_result" } ], "source": [ "res.shape" ] }, { "cell_type": "code", "execution_count": 19, "metadata": { "collapsed": false, "pycharm": { "name": "#%%\n" } }, "outputs": [], "source": [ "res_reshaped = res.reshape((n_phi, n_theta, -1))" ] }, { "cell_type": "code", "execution_count": 20, "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "/usr/lib/python3.10/site-packages/seaborn/distributions.py:2619: FutureWarning: `distplot` is a deprecated function and will be removed in a future version. Please adapt your code to use either `displot` (a figure-level function with similar flexibility) or `histplot` (an axes-level function for histograms).\n", " warnings.warn(msg, FutureWarning)\n" ] }, { "data": { "text/plain": [ "" ] }, "execution_count": 20, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "sns.distplot(res.ravel())" ] }, { "cell_type": "markdown", "metadata": { "collapsed": false, "pycharm": { "name": "#%% md\n" } }, "source": [ "## Plotting joint tunings" ] }, { "cell_type": "code", "execution_count": 21, "metadata": { "collapsed": false, "pycharm": { "name": "#%%\n" } }, "outputs": [], "source": [ "phase_linspace = np.linspace(0, 360, n_phi)\n", "orientation_linspace = np.linspace(0, 180, n_theta)" ] }, { "cell_type": "code", "execution_count": 22, "metadata": { "collapsed": false, "pycharm": { "name": "#%%\n" } }, "outputs": [ { "data": { "image/png": "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", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "fig, ax = plt.subplots(3, 2)\n", "ax = ax.flatten()\n", "# set title\n", "fig.suptitle('Marginal Tunings - By Phase')\n", "for i in range(6):\n", " ax[i].plot(phase_linspace, res_reshaped.mean(1)[:, i])" ] }, { "cell_type": "code", "execution_count": 23, "metadata": { "collapsed": false, "pycharm": { "name": "#%%\n" } }, "outputs": [ { "data": { "image/png": "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", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "fig, ax = plt.subplots(3, 2)\n", "ax = ax.flatten()\n", "# set title\n", "fig.suptitle('Marginal Tunings - By Orientation')\n", "for i in range(6):\n", " ax[i].plot(orientation_linspace, res_reshaped.mean(0)[:, i])" ] }, { "cell_type": "code", "execution_count": 24, "metadata": {}, "outputs": [ { "data": { "image/png": "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", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "fig, ax = plt.subplots(3, 3)\n", "ax = ax.flatten()\n", "# set title\n", "fig.suptitle('Joint Tunings')\n", "for i in range(9):\n", " # 100 is for scaling\n", " ax[i].imshow(res_reshaped[:, :, i], cmap='viridis', extent=[0, 100, 0, 100])" ] }, { "cell_type": "code", "execution_count": 25, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 25, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "plt.imshow(res_reshaped[:, :, 0], cmap='viridis')" ] }, { "cell_type": "markdown", "metadata": { "collapsed": false, "pycharm": { "name": "#%% md\n" } }, "source": [ "## PCA" ] }, { "cell_type": "code", "execution_count": 26, "metadata": { "collapsed": false, "pycharm": { "name": "#%%\n" } }, "outputs": [], "source": [ "res_df = pd.DataFrame(res, columns=['x' + str(i) for i in range(N)])" ] }, { "cell_type": "code", "execution_count": 27, "metadata": { "collapsed": false, "pycharm": { "name": "#%%\n" } }, "outputs": [], "source": [ "from sklearn.decomposition import PCA\n", "import seaborn as sns" ] }, { "cell_type": "code", "execution_count": 28, "metadata": { "collapsed": false, "pycharm": { "name": "#%%\n" } }, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 28, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "sns.heatmap(res_df.corr())" ] }, { "cell_type": "markdown", "metadata": { "collapsed": false, "pycharm": { "name": "#%% md\n" } }, "source": [ "Let's take 6 components" ] }, { "cell_type": "code", "execution_count": 29, "metadata": { "collapsed": false, "pycharm": { "name": "#%%\n" } }, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
PC1PC2PC3PC4PC5PC6PC7
0-4.5596566.088501e-155.2362111.127316e-13-3.530877-4.189611e-132.688094
1-4.542878-5.230832e-025.215859-8.860678e-02-3.5179011.007660e-012.677216
2-4.492672-1.042152e-015.154961-1.765388e-01-3.4790752.007685e-012.644661
3-4.409430-1.552890e-015.053951-2.631118e-01-3.4146662.992772e-012.590699
4-4.293779-2.051631e-014.913619-3.476756e-01-3.3251803.955234e-012.515725
\n", "
" ], "text/plain": [ " PC1 PC2 PC3 PC4 PC5 PC6 \\\n", "0 -4.559656 6.088501e-15 5.236211 1.127316e-13 -3.530877 -4.189611e-13 \n", "1 -4.542878 -5.230832e-02 5.215859 -8.860678e-02 -3.517901 1.007660e-01 \n", "2 -4.492672 -1.042152e-01 5.154961 -1.765388e-01 -3.479075 2.007685e-01 \n", "3 -4.409430 -1.552890e-01 5.053951 -2.631118e-01 -3.414666 2.992772e-01 \n", "4 -4.293779 -2.051631e-01 4.913619 -3.476756e-01 -3.325180 3.955234e-01 \n", "\n", " PC7 \n", "0 2.688094 \n", "1 2.677216 \n", "2 2.644661 \n", "3 2.590699 \n", "4 2.515725 " ] }, "execution_count": 29, "metadata": {}, "output_type": "execute_result" } ], "source": [ "N_COMP = 7\n", "pca = PCA(n_components=N_COMP)\n", "pca.fit(res_df)\n", "data_pca = pca.transform(res_df)\n", "data_pca = pd.DataFrame(data_pca, columns=[f'PC{i+1}' for i in range(N_COMP)])\n", "data_pca.head()" ] }, { "cell_type": "code", "execution_count": 30, "metadata": { "collapsed": false, "pycharm": { "name": "#%%\n" } }, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAFAAAAAVCAYAAADRhGlyAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAEXElEQVRYCe2Y63EUMQyAlxsKOEIFhA4CVEDSAdABpAMYfiX/GOgAqIBHB0AFQDpIOgCug/B9Psv49ryXveTCYwbNeCXLsiTLsry73enpaVe3g4OD7br/n/4Vn1ZsJl0Fh4eHj+nuVKzRJHOX5sGb0rZHK/lDgvpIe6S/Z7ignDEqcMUMExi4B7oDfpIY+UHfAATvNvR3+/CPskhC9H9A6EDww5lbjM16si+r/hb0w4bMKLuVnnOT2Hbt71YomCFzzXGwAbT/yn4KIB0X+wl8S2YAfRfxErxX8Z5Dq2QP/seKfwxtMNR1QntPe4ZMCR60Y19p6nwB7sBm7ieagXaevNF2lb8oYM816Uey39O3S9+EcT0JoF3DXfDsauapoM6KzO7k70dHzCSVPYJ0x9KuyAeO4N+fk4PP14xsIZeCpxS0875Aaj82ah27qrkw4EPYLrrguZEduAQvD+pr8nGSGQ8QSimZ+4GM/jFjZk4NZt556ptHpbXLHvvdys6m7da+t+jPLSa85/i0kEDKwTNWxmw64TG0KGUN1Aky5RjKrKAf2GpokdRY5lhD+/AtM6yxwsbsztWtfuJbP8M6eGbYsxUzTYQHHmFTt9SyegJKho6k9UIjcWGkafQ92gbqOs30twYmGbCFF1aqk+IalBfiyKxldz51c0/81I8dcFyeLeXGbG/Cw133AhgFKDV4GugrN3BvGX+RDTv+FdrjGOBOpyAFI+O0IdCRpb3htFlDdpdkN8Aw+2yrwJhtG0Cdbh2rocleHu8NVC1A31t5FjxoU9xdqi+nh44zVoIKbWBiXqs+OkVo2p0Pbe6JP27wLrh5KitLxiwFcAsiFlCNL5MoNRjWxKEj1p9kQHz5TFkH1s4N2n3oxzR32bEo4s0AIreuXVSeG7w0mn70NCoztQaOAhZhffMVpHXdf8hjC++RleJp0Mw3iAs3G7w4LkuOr7IbOjeMV12qtamUeBM4pmJZYC0RNItQ6U1wyTzoklmMWUdbOjTSIZsuEukB8Bh/RM7gFqB/lt0iuwkCe67BE7Hgx4BuZb8bQHfdSU1AqYtb+sSD5+Kidr5C7mZDgbWu1BIDQvtB03iCTCu3cCnBH2O31jFXeLGniSDEuua99tPkOPEImx13WjIswsBavM2O+jJQ3EIbF4mfZrZyNKHjo7tkLXPU13dO/fvI60cC6LF2O2TdDDfFL5qhEpI1n4liY2dnSvLpicyRAXxDcxEtsLa5GOtfH+oFe7H41h5BdncM1A14xRloX3F853sKDmedV7I0GxllV1nm+n6ZCjrYr6NiL+taB7km58eltmqup2Y//QvkP9cxbedf/veH//do09+xBuxs0461Nckh9hYsx29V2P/iMev0RbJvnaVZr9ObQwoghv04rm/VdZT9cVmPLk7E9/Sl+oMtS5qxSj9fIgM1arGPGmb/XwL/JseFdtl+G6NyWssfaa3m6Pqq8bucuezFblQ/cfHNws/Y8sL/EyOzkvSpYIAbAAAAAElFTkSuQmCC", "text/latex": [ "$\\displaystyle \\left( 2592, \\ 7\\right)$" ], "text/plain": [ "(2592, 7)" ] }, "execution_count": 30, "metadata": {}, "output_type": "execute_result" } ], "source": [ "data_pca.shape" ] }, { "cell_type": "markdown", "metadata": { "collapsed": false, "pycharm": { "name": "#%% md\n" } }, "source": [ "## UMAP decoding" ] }, { "cell_type": "code", "execution_count": 31, "metadata": { "collapsed": false, "pycharm": { "name": "#%%\n" } }, "outputs": [], "source": [ "# reducer = umap.UMAP()\n", "# embedding = reducer.fit_transform(data_pca.to_numpy())" ] }, { "cell_type": "code", "execution_count": 32, "metadata": { "collapsed": false, "pycharm": { "name": "#%%\n" } }, "outputs": [], "source": [ "# %matplotlib notebook\n", "# plt.scatter(\n", "# embedding[:, 0],\n", "# embedding[:, 1])\n", "# plt.show()" ] }, { "cell_type": "code", "execution_count": 33, "metadata": { "collapsed": false, "pycharm": { "name": "#%%\n" } }, "outputs": [], "source": [ "# embedding.shape" ] }, { "cell_type": "markdown", "metadata": { "collapsed": false, "pycharm": { "name": "#%% md\n" } }, "source": [ "## Cohomological decoding" ] }, { "cell_type": "code", "execution_count": 34, "metadata": {}, "outputs": [], "source": [ "step = 5" ] }, { "cell_type": "code", "execution_count": 35, "metadata": { "collapsed": false, "pycharm": { "name": "#%%\n" } }, "outputs": [ { "data": { "image/png": "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", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "Decoding... done\n" ] } ], "source": [ "param_1 = decoding.cohomological_parameterization(data_pca[::step]).to_numpy()" ] }, { "cell_type": "code", "execution_count": 36, "metadata": { "collapsed": false, "pycharm": { "name": "#%%\n" } }, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 36, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "%matplotlib inline\n", "plt.title(\"Parameter 1 of CP vs. phase\")\n", "plt.scatter(phi_deg[::step], param_1)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### Orientation is decoded:" ] }, { "cell_type": "code", "execution_count": 37, "metadata": { "collapsed": false, "pycharm": { "name": "#%%\n" } }, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 37, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "plt.title(\"Parameter 1 of CP vs. orientation\")\n", "plt.scatter(theta_deg[::step], param_1)" ] }, { "cell_type": "code", "execution_count": 38, "metadata": { "collapsed": false, "pycharm": { "name": "#%%\n" } }, "outputs": [], "source": [ "data_without_features = decoding.remove_feature(data_pca[::step].to_numpy(), pd.DataFrame(param_1))" ] }, { "cell_type": "code", "execution_count": 39, "metadata": { "collapsed": false, "pycharm": { "is_executing": true, "name": "#%%\n" } }, "outputs": [ { "data": { "image/png": "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", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "Decoding... " ] } ], "source": [ "param_2 = decoding.cohomological_parameterization(\n", " pd.DataFrame(data_without_features)).to_numpy()" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 31, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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yZMn63e/+53uueeeWus/+eQTXXPNNerSpYtT+/jx43X69Gmnv4YbWm3bjCu9evVSfHy845CbJO3fv1/btm3ThAkTHG39+vXT7t279ac//UkfffSR8vLy6jzO8r0Glfdm3XzzzWrdurX+9a9/ObVXt/1WtmbNGsXFxeniiy922kauvfZap8Mr5a666iq1bdvW8Tg8PFxhYWHVHtaq7MCBAxozZowiIiIc/38GDhwo6ex7WBeffPKJevbsqX79+jm1jx8/XsYYx3tXbtiwYfL19XU8vuiiiyRVf2gO3oPDNGgUS5cuVWxsrFq1aqXw8HCn3brbtm3T4MGDdeWVV+q1115T586d5e/vr1WrVumJJ57QmTNnnF7L1S7hjIwMJSUlqXv37nr++efVrVs3BQYGatu2bZo8eXKV1wgNDa3yGv7+/lXa/f39JZ0NIZKUk5OjkpISvfjii3rxxRddruuxY8dqfC9++uknSdL999+v+++/363XqG43eE0++ugj3XjjjRo0aJCWLVtW43kd5XJyclwuqzyg5eTkeDyO8kNv6enp6tGjh9v9atpmajJhwgRNnjxZX3/9tXr06KElS5YoICBAt956q6Nm5syZat26td566y0tWrRIvr6+GjBggJ588knHSbPuysnJUatWraocPrLZbIqIiKjynrm7Hj/99JO+//77ag/JVd5GOnToUKUmICCgyrbvysmTJ5WUlKTAwEDNmzdPF1xwgYKDg3X48GHdeOONbr2GKzk5OS6vsqpue6q8DuWHt+q6fDQfhBE0itjY2Gp/yb/zzjvy8/PTmjVrFBgY6GhftWqVy3pXX6qrVq3SqVOntGLFCkVHRzva63uOj/bt28vX11djx47V5MmTXdbExMTU+BodO3aUdPYL8cYbb3RZ0717d6fH7gSJij766CONHDlSAwcO1Pvvv+8IVbXp0KGDMjMzq7QfPXpU0n/H7olrr71Wr776qlatWqUZM2a43a+mbaYmt956q6ZPn6433nhDTzzxhN58802NHDlS7du3d9S0atVK06dP1/Tp03XixAl9/PHHeuihh3Tttdfq8OHDtZ5MW1GHDh1UUlKin3/+2SmQGGOUlZXlOJG5nLufZceOHRUUFFTlfKeKz9eXTz75REePHtWnn37q2Bsi6VfNRyI1zPYE70QYgeXKJ7aquHv2zJkzevPNNz16DUlO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JCkzM9NpzpHx48crPz9fL730ku677z61a9dOV199tZ588sn6WwsAANBscddeAADQINz9/ubeNAAAwFKEEQAAYCnCCAAAsBRhBAAAWIowAgAALEUYAQAAliKMAAAASxFGAACApQgjAADAUoQRAABgKcIIAACwFGEEAABYijACAAAsRRgBAACWIowAAABLEUYAAIClCCMAAMBShBEAAGApwggAALAUYQQAAFiKMAIAACxFGAEAAJYijAAAAEsRRgAAgKUIIwAAwFKEEQAAYCnCCAAAsBRhBAAAWIowAgAALEUYAQAAliKMAAAASxFGAACApQgjAADAUoQRAABgKcIIAACwFGEEAABYijACAAAsRRgBAACWIowAAABLEUYAAIClCCMAAMBShBEAAGApwggAALAUYQQAAFiKMAIAACxFGAEAAJYijAAAAEsRRgAAgKUIIwAAwFKEEQAAYCnCCAAAsBRhBAAAWIowAgAALEUYAQAAliKMAAAASxFGAACApQgjAADAUoQRAABgqTqFkQULFigmJkaBgYGKj4/X5s2ba6wvLCzUww8/rOjoaAUEBOi8887T4sWL6zRgAADgXVp52mH58uWaOnWqFixYoMsvv1yvvPKKkpOTtW/fPnXt2tVln1tuuUU//fSTXn/9df3mN79Rdna2SkpKfvXgAQBA82czxhhPOvTv3199+vTRwoULHW2xsbEaOXKkUlJSqtSvW7dOo0eP1oEDBxQaGlqnQebl5clutys3N1chISF1eg0A1igtM9qWflzZ+QUKaxuofjGh8vWxWT0sAI3A3e9vj/aMFBUVafv27ZoxY4ZT++DBg7VlyxaXfT744AP17dtX8+fP15tvvqnWrVvruuuu0+OPP66goCCXfQoLC1VYWOi0MgCan3V7MzVn9T5l5hY42iLtgZo1oqeGxEVaODIATYlH54wcO3ZMpaWlCg8Pd2oPDw9XVlaWyz4HDhzQZ599pr1792rlypV67rnn9N5772ny5MnVLiclJUV2u93x06VLF0+GCaAJWLc3U5Pe2uEURCQpK7dAk97aoXV7My0aGYCmpk4nsNpszrtYjTFV2sqVlZXJZrNp2bJl6tevn4YOHapnn31Wb7zxhs6cOeOyz8yZM5Wbm+v4OXz4cF2GCcAipWVGc1bvk6tjwOVtc1bvU2mZR0eJAXgpj8JIx44d5evrW2Uv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+Pn5mXfeecdRc+TIEePj42PWrVvXaGOvL5XfA1e2bdtmJJlDhw452gYOHGj+/Oc/N+zgGoGr9a9tm2+J28D1119vrr76aqe2xtoGWuSekaKiIm3fvl2DBw92ah88eLC2bNli0agaT25uriQpNDTUqf3TTz9VWFiYLrjgAt19993Kzs62YngN4rvvvlNUVJRiYmI0evRoHThwQJKUnp6urKwsp20hICBAAwcO9NptoaioSG+99ZYmTJjgdBdsb/78K3LnM9++fbuKi4udaqKiohQXF+e120Vubq5sNpvatWvn1L5s2TJ17NhRF154oe6//36v2mNY0zbf0raBn376SWvXrtWdd95Z5bnG2AaaxV1769uxY8dUWlqq8PBwp/bw8HBlZWVZNKrGYYzR9OnTdcUVVyguLs7RnpycrJtvvlnR0dFKT0/Xo48+qquvvlrbt29v9lMk9+/fX0uXLtUFF1ygn376SfPmzVNiYqK++uorx+ftals4dOiQFcNtcKtWrdKJEyc0fvx4R5s3f/6VufOZZ2Vlyd/fX+3bt69S442/IwoKCjRjxgyNGTPG6a6tv//97xUTE6OIiAjt3btXM2fO1O7dux2H+Zqz2rb5lrYN/OMf/1Dbtm114403OrU31jbQIsNIuYp/FUpnv6grt3mbKVOm6D//+Y8+++wzp/ZRo0Y5/h0XF6e+ffsqOjpaa9eurbJxNjfJycmOf/fq1UsJCQk677zz9I9//MNxwlpL2hZef/11JScnKyoqytHmzZ9/derymXvjdlFcXKzRo0errKxMCxYscHru7rvvdvw7Li5O559/vvr27asdO3aoT58+jT3UelXXbd4btwFJWrx4sX7/+98rMDDQqb2xtoEWeZimY8eO8vX1rZJus7Ozq/y15E3uueceffDBB9qwYYM6d+5cY21kZKSio6P13XffNdLoGk/r1q3Vq1cvfffdd46ralrKtnDo0CF9/PHHuuuuu2qs8+bP353PPCIiQkVFRfrll1+qrfEGxcXFuuWWW5Senq60tDSnvSKu9OnTR35+fl65XVTe5lvKNiBJmzdv1jfffFPr7wWp4baBFhlG/P39FR8fX2U3U1pamhITEy0aVcMxxmjKlClasWKFPvnkE8XExNTaJycnR4cPH1ZkZGQjjLBxFRYWav/+/YqMjHTsfqy4LRQVFWnjxo1euS0sWbJEYWFhGjZsWI113vz5u/OZx8fHy8/Pz6kmMzNTe/fu9ZrtojyIfPfdd/r444/VoUOHWvt89dVXKi4u9srtovI23xK2gXKvv/664uPj1bt371prG2wbaPBTZJuod955x/j5+ZnXX3/d7Nu3z0ydOtW0bt3aHDx40Oqh1btJkyYZu91uPv30U5OZmen4OX36tDHGmPz8fHPfffeZLVu2mPT0dLNhwwaTkJBgzjnnHJOXl2fx6H+9++67z3z66afmwIED5vPPPzfDhw83bdu2dXzWf/vb34zdbjcrVqwwe/bsMbfeequJjIz0inWvqLS01HTt2tU8+OCDTu3e+Pnn5+ebnTt3mp07dxpJ5tlnnzU7d+50XCnizmc+ceJE07lzZ/Pxxx+bHTt2mKuvvtr07t3blJSUWLVaHqnpPSguLjbXXXed6dy5s9m1a5fT74XCwkJjjDHff/+9mTNnjvniiy9Menq6Wbt2renRo4e55JJLmsV7UNP6u7vNe/M2UC43N9cEBwebhQsXVunfmNtAiw0jxhjz8ssvm+joaOPv72/69OnjdKmrN5Hk8mfJkiXGGGNOnz5tBg8ebDp16mT8/PxM165dze23324yMjKsHXg9GTVqlImMjDR+fn4mKirK3Hjjjearr75yPF9WVmZmzZplIiIiTEBAgBkwYIDZs2ePhSNuGB999JGRZL755hundm/8/Dds2OBym7/99tuNMe595mfOnDFTpkwxoaGhJigoyAwfPrxZvSc1vQfp6enV/l7YsGGDMcaYjIwMM2DAABMaGmr8/f3NeeedZ+69916Tk5Nj7Yq5qab1d3eb9+ZtoNwrr7xigoKCzIkTJ6r0b8xtwGaMMfW7rwUAAMB9LfKcEQAA0HQQRgAAgKUIIwAAwFKEEQAAYCnCCAAAsBRhBAAAWIowAgAALEUYAQAAliKMAAAASxFGAACApQgjAADAUv8/Dco8Ic8DKGcAAAAASUVORK5CYII=", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "plt.title(\"Parameter 2 of CP vs. orientation\")\n", "plt.scatter(theta_deg[::step], param_2)" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 32, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAiMAAAGxCAYAAACwbLZkAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjUuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8qNh9FAAAACXBIWXMAAA9hAAAPYQGoP6dpAABARElEQVR4nO3deXxU1cH/8W8I2QhkJIEsbCGlLtDIFkQTRSqUJQJKrRX1UUTUFgr6INZWxMqiLZVaH7AKaN2KUqEuUKmIphVwAR62oCBoVaKhkJiHUJLIEiA5vz/4ZcokM0lmMsmZ5fN+veb1Infucs7ce+Z+OffeMxHGGCMAAABLWtkuAAAACG+EEQAAYBVhBAAAWEUYAQAAVhFGAACAVYQRAABgFWEEAABYRRgBAABWEUYAAIBVhBEEnRdeeEERERHOV+vWrdWlSxfdeuutOnDggO3iNauDBw9q9uzZ2rlzZ4tt85///Kd+/vOfKysrS+ecc44SExN16aWX6tVXX/X7tvLz8zV48GA5HA5FRERowYIF9c5fXl6uX//61xowYIASEhIUExOj7t27a+LEidqxY4dzvlA+Zmrqtm3bNttFAXzW2nYBAF89//zzuuCCC3T8+HG99957mjdvnjZs2KBdu3YpPj7edvGaxcGDBzVnzhx1795dffv2bZFtvvPOO3rzzTd1880366KLLtLp06e1YsUK/fjHP9acOXP04IMP+m1bEydO1NGjR7V8+XK1b99e3bt39zjvl19+qeHDh6ukpESTJk3SnDlz1LZtW3311Vf6y1/+oqysLB05ckQOh8O5TDgeM0AwIIwgaGVmZmrAgAGSpCuuuEJVVVV66KGHtGrVKv3Xf/1Xk9Z9/PhxxcXF+aOYQeH48eOKjY1VREREnfeuv/56TZkyxeW93NxcHTp0SI888oh++ctfKiYmxi/l2L17t+644w7l5ubWO19VVZV++MMf6tChQ9q0aZMyMzOd7w0ePFi33HKL3nrrLUVFRbks15zHDADfcZkGIeOSSy6RJH399deSpDlz5ujiiy9WYmKiEhIS1L9/fz377LOq/duQ3bt31+jRo/X666+rX79+io2N1Zw5cyRJTz75pC6//HIlJycrPj5eF154oebPn69Tp065rOP73/++MjMztWnTJuXk5CguLk7du3fX888/L0l688031b9/f7Vp00YXXnih1q5dW6f8n3/+uW688UYlJycrJiZGPXv21JNPPul8f/369broooskSbfeeqvzksPs2bOd82zbtk1XXXWVEhMTFRsbq379+ukvf/mLy3ZquvXfeecdTZw4UR07dlSbNm1UWVnp9nPt0KGD25AycOBAHTt2TIcPH3a73Nl2796tq6++Wu3bt1dsbKz69u2rP/3pT3XKdPr0aS1evNhZN09WrVqlXbt2acaMGS5B5Gy5ublq06ZNveWqfczUdurUKSUnJ+vmm2+u896RI0cUFxen6dOnS5Kqq6v18MMP6/zzz1dcXJzOOecc9e7dWwsXLqy3DJ5ERERo6tSpeuqpp3TeeecpJiZGvXr10vLly93OX1FRocmTJ6tDhw5KSkrSNddco4MHD7rMs2LFCg0fPlxpaWmKi4tTz549dd999+no0aMu8+3bt0/XX3+9OnXqpJiYGKWkpGjo0KF1Lg+uWLFC2dnZio+PV9u2bTVixAjl5+f7VF+EN3pGEDK++OILSVLHjh0lSV999ZV++tOfqlu3bpKkzZs3684779SBAwfqXFrYsWOH9u7dqwceeEAZGRnOLvsvv/xSN954ozIyMhQdHa2PPvpIv/71r/Xpp5/queeec1lHcXGxbr31Vv3iF79Qly5d9Ic//EETJ07U/v379eqrr+r++++Xw+HQ3LlzNXbsWO3bt0+dOnWSJO3Zs0c5OTnq1q2bfv/73ys1NVVvv/227rrrLh06dEizZs1S//799fzzz+vWW2/VAw88oFGjRkmSunTpIklat26dRo4cqYsvvlhLliyRw+HQ8uXLNW7cOB07dkwTJkxwKe/EiRM1atQovfjiizp69GidXoSGrFu3Th07dlRycnK983322WfKyclRcnKyHn/8cSUlJemll17ShAkT9M033+gXv/iFRo0apU2bNik7O1vXXnut7rnnnnrX+c4770iSxo4d61WZa6t9zNQWFRWlm266SUuWLNGTTz6phIQE53svv/yyTpw4oVtvvVWSNH/+fM2ePVsPPPCALr/8cp06dUqffvqpjhw54nP53njjDa1bt05z585VfHy8Fi1apBtuuEGtW7fWtdde6zLv7bffrlGjRunPf/6z9u/fr3vvvVc33XST3n33Xec8n3/+ua688kpNmzZN8fHx+vTTT/XII49oy5YtLvNdeeWVqqqq0vz589WtWzcdOnRI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i1/oxIkTWrx4sf7973/7vbwLFy7UZZddpkGDBmny5Mnq3r27Kioq9MUXX2j16tXOJx169OihuLg4LVu2TD179lTbtm3VqVMnderUSU899ZRyc3M1YsQITZgwQZ07d9bhw4e1d+9e7dixQ6+88opPZfvggw80duxYpaam6v7776/TM9SrVy+Xp0xqmzVrlv72t7/piiuu0IMPPqjExEQtW7ZMb775pubPn+8yKFljRUZGauXKlRo+fLiys7M1efJkXXHFFYqPj9fXX3+tV199VatXr/brvpo4caJWrFihqVOnqkuXLvrBD37g8v6YMWOc45h07NhRX3/9tRYsWKD09HSde+65kqQNGzZo6NChevDBBxs1WFyHDh00ZMgQ/epXv3I+TfPpp596fLy3Pjk5OWrfvr0mTZqkWbNmKSoqSsuWLdNHH33kMt/HH3+sqVOn6sc//rHOPfdcRUdH691339XHH3/s7IXq3r275s6dq5kzZ2rfvn0aOXKk2rdvr2+++UZbtmxRfHy88/F4oFFs30ELeKvm6YGtW7fWO99zzz1nzj//fBMTE2O+853vmHnz5plnn33WSDIFBQXO+dLT082oUaPcrmP16tWmT58+JjY21nTu3Nnce++95q233jKSzLp165zzDR482Hzve9+rs7yndcvNUyMFBQVm4sSJpnPnziYqKsp07NjR5OTkmIcffthlvpdfftlccMEFJioqykgys2bNcr730Ucfmeuuu84kJyebqKgok5qaaoYMGWKWLFninKexn1+NWbNmGUkeX2d/Dp7s2rXLjBkzxjgcDhMdHW369Onj9okgd59LfY4cOWIeeugh079/f9O2bVsTFRVlunXrZm666Sbz4YcfOufzts7uVFVVma5duxpJZubMmXXe//3vf29ycnJMhw4dTHR0tOnWrZu57bbbzFdffeWcZ926dXX2mSc1n8WiRYtMjx49TFRUlLngggvMsmXLXObzVLeabZ29fzZu3Giys7NNmzZtTMeOHc3tt99uduzY4fKE1jfffGMmTJhgLrjgAhMfH2/atm1revfubf7nf/7HnD592mUbq1atMldccYVJSEgwMTExJj093Vx77bXm73//e4P1A84WYUytEaAAANZFRERoypQpeuKJJ2wXBWh2PE0DAACsIowAAACruIEVAAIQV9ARTugZAQAAVhFGAACAVYQR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vEwE+EOwtr3mwtM0TWD71xABfwnWUE2vJIJdsLa9xuLR3mbGWAcINZzYATtCue3xaG8za+pPwgOBJhRvigOCAW0vjH+bpqkY6wAAAP8gjPiIsQ4AAPAPn8LIokWLlJGRodjYWGVlZen999+vd/5ly5apT58+atOmjdLS0nTrrbeqtLTUpwIHimD6NUQAAAKZ12FkxYoVmjZtmmbOnKn8/HwNGjRIubm5KiwsdDv/Bx98oPHjx+u2227TJ598oldeeUVbt27V7bff3uTC2+TLz8gDAIC6vA4jjz32mG677Tbdfvvt6tmzpxYsWKCuXbtq8eLFbuffvHmzunfvrrvuuksZGRm67LLL9NOf/lTbtm1rcuFtqxnrINXheikm1RHLY70AADSSV0/TnDx5Utu3b9d9993nMn348OHauHGj22VycnI0c+ZMrVmzRrm5uSopKdGrr76qUaNGedxOZWWlKisrnX+Xl5d7U8wWFaq/EwAAQEvxqmfk0KFDqqqqUkpKisv0lJQUFRcXu10mJydHy5Yt07hx4xQdHa3U1FSdc845+sMf/uBxO/PmzZPD4XC+unbt6k0xW1zNY1lX9+2s7B5JBBEAALzg0w2sERGuJ1tjTJ1pNfbs2aO77rpLDz74oLZv3661a9eqoKBAkyZN8rj+GTNmqKyszPnav3+/L8UEAABBwKvLNB06dFBkZGSdXpCSkpI6vSU15s2bp0svvVT33nuvJKl3796Kj4/XoEGD9PDDDystre59FTExMYqJifGmaAAAIEh51TMSHR2trKws5eXluUzPy8tTTk6O22WOHTumVq1cNxMZGSnpTI8KAAAIb15fppk+fbqeeeYZPffcc9q7d6/uvvtuFRYWOi+7zJgxQ+PHj3fOP2bMGL3++utavHix9u3bpw8//FB33XWXBg4cqE6dOvmvJgAAICh5/ds048aNU2lpqebOnauioiJlZmZqzZo1Sk9PlyQVFRW5jDkyYcIEVVRU6IknntA999yjc845R0OGDNEjjzziv1oAAICgxa/2AgCAZtHY8ze/TQMAAKwijAAAAKsIIwAAwCrCCAAAsIowAgAArCKMAAAAqwgjAADAKsIIAACwijACAACsIowAAACrCCMAAMAqwggAALCKMAIAAKwijAAAAKsIIwAAwCrCCAAAsIowAgAArCKMAAAAqwgjAADAKsIIAACw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ubkqLCx0O39BQYGuvPJKDRo0SPn5+br//vt111136bXXXmty4b0V2SrC+ShV7Z0T4eHfvqhZft41F+rD+4bq5Tsu0cLr++rlOy7REzf0V4QX2/ClXM1RF3+sy9N6m7p8oK7L5vZnjenlMlZAfce+P8vlz+37Ui5322/pdu/NumxvvyXW5Wm9ttdl+/MK9HZfe13Nzesw8thjj+m2227T7bffrp49e2rBggXq2rWrFi9e7Hb+JUuWqFu3blqwYIF69uyp22+/XRMnTtSjjz7a5ML7YmRmmhbf1F+pDtfup1RHrJbc1F9L3LyX5ojVTy8/87+rxkxPdcQ6H4uKbBXhvG6f3SNJV/Z2v/361uVtufxdF2/X1b5NlOrz08szmrVcDW3/nFrvN1THYb2S6/RotYqQhvVKdluun16e4bft19TF00nU3bo8PZLn6dj397Hnr+37Ui5P22+pdh9sbTWQ272ndvfTyzNapN0H2773Z7v312O93vBqnJGTJ0+qTZs2euWVV/TDH/7QOf2///u/tXPnTm3YsKHOMpdffrn69eunhQsXOqetXLlS1113nY4dO6aoqLoHUGVlpSorK51/l5eXq2vXrn4b9Exq/hFYm2M0vGAaPTFvT7Fmv/GJisv/sx9TE2I0+6rvaWRmWrOXq77tuxtAzN8jsK7dXeS37bsb3Ky+wdAC5djz1/abc8TaQGgrgbD9QG333o7A6u92H4z73p/t3h+aZdCzgwcPqnPnzvrwww+Vk5PjnP6b3/xGf/rTn/TZZ5/VWea8887ThAkTdP/99zunbdy4UZdeeqkOHjyotLS66Wv27NmaM2dOnen+DCNofraHGQ6l7duuC9BYto9V29uHq8aGEZ+epomIcN2xxpg60xqa3930GjNmzND06dOdf9f0jCC41FyiYvuBtS6gOdk+Vm1vH77xKox06NBBkZGRKi4udpleUlKilJQUt8ukpqa6nb9169ZKSnJ/wMTExCgmpuXHRQAAAC3PqxtYo6OjlZWVpby8PJfpeXl5LpdtzpadnV1n/nfeeUcDBgxwe78IAAAIL14/TTN9+nQ988wzeu6557R3717dfffdKiws1KRJkySducQyfvx45/yTJk3S119/renTp2vv3r167rnn9Oyzz+rnP/+5/2oBAACCltf3jIwbN06lpaWaO3euioqKlJmZqTVr1ig9PV2S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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "plt.title(\"Parameter 2 of CP vs. phase\")\n", "plt.scatter(phi_deg[::step], param_2)" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] } ], "metadata": { "kernelspec": { "display_name": "Python 3.10.5 64-bit", "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.10.5" }, "vscode": { "interpreter": { "hash": "e7370f93d1d0cde622a1f8e1c04877d8463912d04d973331ad4851f04de6915a" } } }, "nbformat": 4, "nbformat_minor": 0 }