Lugovtsov/project/data-processing/gen-data.ipynb

276 lines
129 KiB
Plaintext
Raw Normal View History

2022-11-15 16:39:40 +03:00
{
"cells": [
{
"cell_type": "code",
"execution_count": 220,
"id": "50f27832-a7b1-4fac-b9b8-988606608b84",
"metadata": {},
"outputs": [],
"source": [
"import numpy as np\n",
"import matplotlib.pyplot as plt"
]
},
{
"cell_type": "code",
"execution_count": 344,
"id": "80a10edc-520c-4b05-af86-29dbb440717e",
"metadata": {},
"outputs": [],
"source": [
"l = int(7e3)\n",
"t = np.linspace(0, 1e-6, l)"
]
},
{
"cell_type": "code",
"execution_count": 345,
"id": "70c787d1-fa7a-4d43-95ec-73f9929f357b",
"metadata": {},
"outputs": [],
"source": [
"nu1 = 2e8\n",
"phi1 = 1\n",
"a1 = 0.6\n",
"nu2 = 2e8\n",
"phi2 = 2\n",
"a2 = 0.4"
]
},
{
"cell_type": "code",
"execution_count": 346,
"id": "8730fd74-6b30-4b92-87af-7205d5732ac9",
"metadata": {},
"outputs": [],
"source": [
"V1 = a1*np.sin(nu1*t/(2*np.pi) + phi1)\n",
"V2 = a2*np.sin(nu2*t/(2*np.pi) + phi2)"
]
},
{
"cell_type": "code",
"execution_count": 347,
"id": "b0aaf4c1-aee0-4ecf-99ad-560f93770840",
"metadata": {},
"outputs": [],
"source": [
"f = V1\n",
"g = np.random.normal(loc=V2, scale=0.01)"
]
},
{
"cell_type": "code",
"execution_count": 348,
"id": "b66882de-6ed3-4931-8049-33c27da52528",
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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
"text/plain": [
"<Figure size 640x480 with 1 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"plt.plot(t, f)\n",
"plt.plot(t, g)\n",
"plt.show()"
]
},
{
"cell_type": "code",
"execution_count": 349,
"id": "e56a0992-4cdc-4839-9aea-91a2497c2696",
"metadata": {},
"outputs": [],
"source": [
"with open(r'sig1.csv', 'w') as file:\n",
" string = 'voltage[V],time[ns]\\n'\n",
" for i in range(l):\n",
" string += f'{f[i]:.10f},{t[i]*1e9:.4f}\\n'\n",
" file.write(string)"
]
},
{
"cell_type": "code",
"execution_count": 350,
"id": "29fee1dc-eb0e-4e10-958a-640203b7e4ba",
"metadata": {},
"outputs": [],
"source": [
"with open(r'sig2.csv', 'w') as file:\n",
" string = 'voltage[V],time[ns]\\n'\n",
" for i in range(l):\n",
" string += f'{g[i]:.10f},{t[i]*1e9:.4f}\\n'\n",
" file.write(string)"
]
},
{
"cell_type": "code",
"execution_count": 351,
"id": "c11ded9c-8375-4740-bcf1-3b07bfc07b19",
"metadata": {
"tags": []
},
"outputs": [],
"source": [
"Ff = np.fft.fft(f)\n",
"Fg = np.fft.fft(g)\n",
"lamb = Fg / Ff\n",
"freq = np.fft.fftfreq(l)"
]
},
{
"cell_type": "code",
"execution_count": 352,
"id": "8bc8887d-bc88-4e3b-99c9-309f2e9ee0eb",
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"[<matplotlib.lines.Line2D at 0x7eff6cc37a00>]"
]
},
"execution_count": 352,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAh8AAAGdCAYAAACyzRGfAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjYuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8o6BhiAAAACXBIWXMAAA9hAAAPYQGoP6dpAABW+UlEQVR4nO3dd3wUdfoH8M+GNCCNUBJKaAKhCSIIBAQRI4iIeOKpyE+Rw454gJ6KZ8UClhNFgwURbIjiHVhQULpAEiCAhJLQEhJINoWQnmza/P4I2ewm22Z3dmZ25/N+vfKCbGZnn2xmZ575luerEwRBABEREZFMfJQOgIiIiLSFyQcRERHJiskHERERyYrJBxEREcmKyQcRERHJiskHERERyYrJBxEREcmKyQcRERHJylfpAJqqq6tDVlYWgoODodPplA6HiIiIHCAIAkpKStCpUyf4+Nhu21Bd8pGVlYWoqCilwyAiIiInZGZmokuXLja3UV3yERwcDKA++JCQEIWjISIiIkcUFxcjKirKeB23RXXJR0NXS0hICJMPIiIiD+PIkAkOOCUiIiJZMfkgIiIiWTH5ICIiIlkx+SAiIiJZMfkgIiIiWTH5ICIiIlkx+SAiIiJZMfkgIiIiWTH5ICIiIlkx+SAiIiJZMfkgIiIiWTH5ICIiIllpNvnIKzHg451nkFdiUDoUIiIitzmWVYSVu9NQU1undChGopKPl19+GTqdzuyrb9++xp9XVlZizpw5aNu2LYKCgjBt2jTk5ORIHrQUHvzyAJb8loIHvzygdChERERuM3nZbrz6y3F8uz9T6VCMRLd8DBgwANnZ2cav3bt3G382f/58/Pzzz1i3bh127tyJrKws3H777ZIGLJXDmYVm/xIREXmz41nFSodg5Cv6Cb6+iIyMbPZ4UVERVq5ciTVr1mD8+PEAgFWrVqFfv35ISEjAyJEjXY+WiIiIPJ7olo9Tp06hU6dO6NmzJ2bMmIGMjAwAQFJSEqqrqxEbG2vctm/fvujatSvi4+Oli5iIiIg8mqiWjxEjRmD16tWIjo5GdnY2XnnlFYwZMwZHjx6FXq+Hv78/wsLCzJ4TEREBvV5vdZ8GgwEGQ+Ogz+Ji9TQLERERkfREJR+TJk0y/n/QoEEYMWIEunXrhu+//x4tW7Z0KoDFixfjlVdeceq5RERE5HlcmmobFhaGPn364PTp04iMjERVVRUKCwvNtsnJybE4RqTBwoULUVRUZPzKzFTPaFwiIiKSnkvJR2lpKc6cOYOOHTti6NCh8PPzw9atW40/T01NRUZGBmJiYqzuIyAgACEhIWZfStp5Mg/f7stQNAYiIiKxyqtqELf9NE7nliodil2iul2eeuopTJkyBd26dUNWVhZeeukltGjRAtOnT0doaChmz56NBQsWIDw8HCEhIZg7dy5iYmI8aqbLzM/3AQAGdQnFgE6hCkdDRETkmP/8fhIrd6fh7c2pSF8yWelwbBKVfJw/fx7Tp0/HxYsX0b59e1x77bVISEhA+/btAQBLly6Fj48Ppk2bBoPBgIkTJ2L58uVuCdzdcoormXwQEZHHOJhxSekQHCYq+Vi7dq3NnwcGBiIuLg5xcXEuBUVERETS0umUjqCRZtd2ISIi0hJBUDqCRkw+iIiISFZMPoiIiEhWTD6IiIhIVkw+iIiISFZMPoiIiEhWTD6sUNOoYCIiIns86brF5IOIiIhkxeSDiIhIA1hkjIiIiDSLyQcRERHJiskHERGRBqhpQCqTDyIiIpIVkw8r1DQwh4iIyJsw+SAiIvICnnTTzOSDiIjIC6hpTIc9TD6s8KQ/IhERkSdh8kFERKQBauqWYfJBREREsmLyQURERLJi8kFERESyYvJBREREsmLyQURERLJi8kFERKQBaiohweSDiIjIC6got7CLyQcZ7U8vwMs/HUOZoUbpUIiInHI6txQvbDiK7KIKpUMhG3yVDkCt1NQ8JZe/fxwPAPBrocO/J/dXOBoiIvGmfrgbZVW1OHK+ED8+fq3S4agKi4yRqqXllysdAhGRU8qqagEAyReKFI6EbGHyYYWaMkQiIiJvwuSDiIiIZMXkg4iIyAt4UoM9kw8iIiKSFZMPB1RU1eKBL/bj+/2ZSociEw1O9SEir6Lz8oF7L/90DG/8ekLpMJzG5MMBq/amYcuJXDz93yNKh0JERBqXU1yJ1XvT8emusyivaqzL5Em3jUw+HFBUUa10CERERACA6to64//rPCnjMMHkwwotFhkjIiKSA5MPIiLyOt494sPzMfkgIiIiWTH5ICIir8Oec3Vj8uEIDz2KSyqrMf+7w9iemqt0KEREqrRi11m8tSlF6TCcJnjoAEUmH17svS2nsP7QBcxatV/pUIiIVOn1X09g+Y4zOHexTOlQHOYNNUyYfHix7KIKpUMgIlKE2MtzRXWtW+Igy5h8eBlPbYIjIlILjz2PelDcTD6s8MRWrdc3HseYt7ajqLy+KJoHHYdERKqQePYirnl9CzYeyVY6FK/G5MOLrPgzDecvVeDrxHNKh0JE5JFmrtqH/NIqzFlzUOlQJKeme2omH1aYthp4WgOCq02GbDEhIq2qq7O/jWrZabJX06mdyQcREXkdT+w6d5Q3/GpMPoiIiC4TVNU+YJn6I7SPyYcDvCHLJCIiUgsmH0REpHkc6yYvJh/UjDf3lRIRkfKYfDjAUxNiZzN53gEQkVZ59PnPg4Jn8kFERORBTBunxaQbamrUZvLhhTwo+SUiUgV2N8uLyYcV3nD95oeJiIjUiMmHF2MLCBFplc7JTgaeNuXhUvKxZMkS6HQ6zJs3z/hYZWUl5syZg7Zt2yIoKAjTpk1DTk6Oq3ESERGRC9SUWDmdfOzfvx+ffPIJBg0aZPb4/Pnz8fPPP2PdunXYuXMnsrKycPvtt7scqNzMBvRorAlBW78tERHJzanko7S0FDNmzMCKFSvQpk0b4+NFRUVYuXIl3n33XYwfPx5Dhw7FqlWrsHfvXiQkJEgWNNnWMNbDE8oEExGpgSfdY3rDeD6nko85c+Zg8uTJiI2NNXs8KSkJ1dXVZo/37dsXXbt2RXx8vMV9GQwGFBcXm31pXW5JJX45koXqWk9eXpGISDsulVXh57+yUFldq3QoHkF08rF27VocPHgQixcvbvYzvV4Pf39/hIWFmT0eEREBvV5vcX+LFy9GaGio8SsqKkpsSF7nlmW78fiaQ/h011mlQyEi8kwytw5MX5GAud8ewpubUuR9YQ8lKvnIzMzEP//5T3zzzTcIDAyUJICFCxeiqKjI+JWZmSnJfj1ZbokBALDlhGsDdZ0d7U1E5PFk7kZJ0ZcAAH45ku3213K2i0hNVwRRyUdSUhJyc3Nx9dVXw9fXF76+vti5cyeWLVsGX19fREREoKqqCoWFhWbPy8nJQWRkpMV9BgQEICQkxOxLbXQe2sHm7JgPz/xtiYhcp7UJBkrxFbPxDTfcgOTkZLPHZs2ahb59++KZZ55BVFQU/Pz8sHXrVkybNg0AkJqaioyMDMTExEgXtUZwbRYiIs/C869jRCUfwcHBGDhwoNljrVu3Rtu2bY2Pz549GwsWLEB4eDhCQkIwd+5cxMTEYOTIkdJFLQPT48cdmfChjEtoHeCLPhHBku/bVfzsEJHHc6AJV85Wjr2n8xEV3gpR4a1ke001E5V8OGLp0qXw8fHBtGnTYDAYMHHiRCxfvlzql/FoeSUG/G35XgBA+pLJCkdDRETulHSuAPd8lghAmnO+6UgAT21pcTn52LFjh9n3gYGBiIuLQ1xcnKu7Vq0LhRUICfRFcKCfU8/PKqxwOQZBEPDAFwdQVVuHlTOvgV8LjtQgInKV6bW8qqYOhRVV+PvH8bhzWBTmXN/LqX0ePFcoSWxZhRVoHSB5m4EivOO3kNHIN7ZCX1wJHx1wdrFyrRbFlTXYmpILAOjz/G8Y3j3c+DMPTYSJiBRn2pIw6JXNqKyur7f09uZUp5MPKeSWVGLUkm0AgBv6dnBqH2q6NnBhOZH0xZUAgDql/4pNXn9feoHx/xdLDTIHQ0TkfRoSDzU4kllk/H/DjacnY/KhALnyFk/tCyQicpU
"text/plain": [
"<Figure size 640x480 with 1 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"plt.plot(freq, np.absolute(lamb))"
]
},
{
"cell_type": "code",
"execution_count": 353,
"id": "22214b98-571f-45e4-9fdd-44551aab288a",
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"[<matplotlib.lines.Line2D at 0x7eff6c99db70>]"
]
},
"execution_count": 353,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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
"text/plain": [
"<Figure size 640x480 with 1 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"plt.plot(freq, np.angle(lamb))"
]
},
{
"cell_type": "code",
"execution_count": null,
"id": "95f5907e-94b0-4102-8e01-f313d3fb3aca",
"metadata": {},
"outputs": [],
"source": []
},
{
"cell_type": "code",
"execution_count": 120,
"id": "c6c2f53c-98a6-4b27-a8b3-03028c24126c",
"metadata": {},
"outputs": [
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAigAAAGdCAYAAAA44ojeAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjYuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8o6BhiAAAACXBIWXMAAA9hAAAPYQGoP6dpAAAk8klEQVR4nO3df3BU9f3v8dfmNz+yCUGzayRBrT8gCtKChPVHtZgSaerAmPlWKYPRm1tbbqCVVKvMUEBoC2WcitqA/VoG7K1cFOeiFRHlh8JX2QBGmW8E5arFBg2biJRsCOb3uX9g1iwEZCHJfs7Z52PmDNlzPmf3fQ5nktec9zlnXZZlWQIAADBIXLQLAAAAOBkBBQAAGIeAAgAAjENAAQAAxiGgAAAA4xBQAACAcQgoAADAOAQUAABgnIRoF3AuOjo6VFNTo9TUVLlcrmiXAwAAzoJlWWpoaFBWVpbi4s58jsSWAaWmpkbZ2dnRLgMAAJyDgwcPasiQIWccY8uAkpqaKunEBrrd7ihXAwAAzkYwGFR2dnbo7/iZ2DKgdLZ13G43AQUAAJs5m8szuEgWAAAYh4ACAACMQ0ABAADGIaAAAADjEFAAAIBxCCgAAMA4BBQAAGAcAgoAADAOAQUAABiHgAIAAIxDQAEAAMYhoAAAAOMQUIA+Vhds0lPbPtGRxpZolwIb2v3pET2781+yLCvapQC9ypbfZgzY2bQVu7S/tkFvfXRYf/+fedEuBzbzH0/5JUmXDB6gGy6/IMrVAL2HMyhAH9tf2yBJeuvjw1GuBHb26ZeN0S4B6FUEFAAAYBwCCgAAME5EAWX+/PlyuVxh07Bhw0LLm5qaVFpaqsGDB2vgwIEqKipSbW1t2HtUV1ersLBQ/fv3V2Zmph588EG1tbX1zNYAAABHiPgi2auvvlqbN2/+5g0SvnmLWbNm6ZVXXtHatWuVlpamGTNm6I477tDbb78tSWpvb1dhYaG8Xq927NihQ4cO6e6771ZiYqL+8Ic/9MDmAAAAJ4g4oCQkJMjr9Z4yv76+XitWrNDq1as1fvx4SdLKlSs1fPhwVVRUaNy4cXr99de1b98+bd68WR6PR6NGjdLChQv10EMPaf78+UpKSjr/LQIAALYX8TUoH330kbKysnTZZZdp6tSpqq6uliRVVlaqtbVV+fn5obHDhg1TTk6O/P4Tt8X5/X6NGDFCHo8nNKagoEDBYFB79+497Wc2NzcrGAyGTQAAwLkiCih5eXlatWqVNm7cqOXLl+vAgQO66aab1NDQoEAgoKSkJKWnp4et4/F4FAgEJEmBQCAsnHQu71x2OosWLVJaWlpoys7OjqRsAABgMxG1eCZOnBj6eeTIkcrLy9PQoUP1/PPPq1+/fj1eXKfZs2errKws9DoYDBJSAABwsPO6zTg9PV1XXnmlPv74Y3m9XrW0tOjo0aNhY2pra0PXrHi93lPu6ul83d11LZ2Sk5PldrvDJgAA4FznFVCOHTumTz75RBdddJFGjx6txMREbdmyJbR8//79qq6uls/nkyT5fD5VVVWprq4uNGbTpk1yu93Kzc09n1IAAICDRNTieeCBB3T77bdr6NChqqmp0bx58xQfH68pU6YoLS1NJSUlKisrU0ZGhtxut2bOnCmfz6dx48ZJkiZMmKDc3FxNmzZNS5YsUSAQ0Jw5c1RaWqrk5ORe2UAAAGA/EQWUzz77TFOmTNGXX36pCy+8UDfeeKMqKip04YUXSpIee+wxxcXFqaioSM3NzSooKNCyZctC68fHx2v9+vWaPn26fD6fBgwYoOLiYi1YsKBntwoAANhaRAFlzZo1Z1yekpKi8vJylZeXn3bM0KFDtWHDhkg+FgBwEsuKdgVA7+K7eAAAgHEIKABgQy5XtCsAehcBBQBsiBYPnI6AAgAAjENAAQAbosUDpyOgAAAA4xBQAACAcQgoAADAOAQUAABgHAIKAAAwDgEFAAAYh4ACAACMQ0ABAADGIaAAAADjEFAAAIBxCCgAAMA4BBQAAGAcAgoAADAOAQUAABiHgAIAAIxDQAEAAMYhoAAAAOMQUAAAgHEIKAAAwDgEFAAAYBwCCgAAMA4BBQAAGIeAAgAAjENAAQAbsqxoVwD0LgIKAAAwDgEFAGzI5Yp2BUDvIqAAgA3R4oHTEVAAAIBxCCgAYEO0eOB0BBQAsCFaPHA6AgoAADAOAQUAbIgWD5yOgAIANkSLB05HQAEAAMYhoACADdHigdMRUADAhmjxwOkIKAAAwDgEFACwIVo8cDoCCgAAMA4BBQAAGIeAAgAAjENAAQAAxiGgAAAA4xBQAACAcQgoAADAOAQUAABgHAIKAAAwDgEFAAAYh4ACAACMQ0ABAADGOa+AsnjxYrlcLt1///2heU1NTSotLdXgwYM1cOBAFRUVqba2Nmy96upqFRYWqn///srMzNSDDz6otra28ykFAAA4yDkHlN27d+svf/mLRo4cGTZ/1qxZevnll7V27Vpt27ZNNTU1uuOOO0LL29vbVVhYqJaWFu3YsUPPPPOMVq1apblz5577VgAAAEc5p4By7NgxTZ06VU8//bQGDRoUml9fX68VK1boT3/6k8aPH6/Ro0dr5cqV2rFjhyoqKiRJr7/+uvbt26e///3vGjVqlCZOnKiFCxeqvLxcLS0tPbNVAOBwlhXtCoDedU4BpbS0VIWFhcrPzw+bX1lZqdbW1rD5w4YNU05Ojvx+vyTJ7/drxIgR8ng8oTEFBQUKBoPau3dvt5/X3NysYDAYNgEAAOdKiHSFNWvW6N1339Xu3btPWRYIBJSUlKT09PSw+R6PR4FAIDSmazjpXN65rDuLFi3SI488EmmpAOBYLle0KwB6V0RnUA4ePKhf/epXevbZZ5WSktJbNZ1i9uzZqq+vD00HDx7ss88GABPR4oHTRRRQKisrVVdXp+9973tKSEhQQkKCtm3bpieeeEIJCQnyeDxqaWnR0aNHw9arra2V1+uVJHm93lPu6ul83TnmZMnJyXK73WETAABwrogCyq233qqqqirt2bMnNI0ZM0ZTp04N/ZyYmKgtW7aE1tm/f7+qq6vl8/kkST6fT1VVVaqrqwuN2bRpk9xut3Jzc3toswDA2WjxwOkiugYlNTVV11xzTdi8AQMGaPDgwaH5JSUlKisrU0ZGhtxut2bOnCmfz6dx48ZJkiZMmKDc3FxNmzZNS5YsUSAQ0Jw5c1RaWqrk5OQe2iwAcDZaPHC6iC+S/TaPPfaY4uLiVFRUpObmZhUUFGjZsmWh5fHx8Vq/fr2mT58un8+nAQMGqLi4WAsWLOjpUgAAgE2dd0B58803w16npKSovLxc5eXlp11n6NCh2rBhw/l+NADELFo8cDq+iwcAbIgWD5yOgAIAAIxDQAEAG6LFA6cjoACADdHigdMRUAAAgHEIKABgQ7R44HQEFACwIVo8cDoCCgAAMA4BBQBsiBYPnI6AAgA2YXXp69DigdMRUAAAgHEIKABgQ7R44HQEFACwia5tHVo8cDoCCgAAMA4BBQBsiBYPnI6AAgA2QVcHsYSAAgAAjENAAQCbsLgyFjGEgAIAAIxDQAEAAMYhoACATXRt8NDtgdMRUAAAgHEIKABgQzwHBU5HQAEAm+BR94glBBQAAGAcAgoA2BAtHjgdAQUAbMLqch8PLR44HQEFAAAYh4ACADZEiwdOR0ABAJvgLh7EEgIKAAAwDgEFAGyIFg+cjoACADZEiwdOR0ABAADGIaAAgA3R4oHTEVAAwCa4iwexhIACAACMQ0ABABuixQOnI6AAgE3wXTyIJQQUAABgHAIKANgQLR44HQEFAGyCu3gQSwgoAADAOAQUALAhWjxwOgIKANhE164OLR44HQEFAAAYh4ACADZhdTltQosHTkdAAQAbosUDpyOgAAAA4xBQAMAmOGmCWEJAAQAAxiGgAIANcZEsnI6AAgA2waPuEUsIKAAAwDgRBZTly5dr5MiRcrvdcrvd8vl8evXVV0PLm5qaVFpaqsGDB2vgwIEqKipSbW1t2HtUV1ersLBQ/fv3V2Zmph588EG1tbX1zNYAQIygxQOniyigDBkyRIsXL1Z
"text/plain": [
"<Figure size 640x480 with 1 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"t = np.arange(1024)\n",
"sp = np.fft.fft(np.sin(t))\n",
"freq = np.fft.fftfreq(t.shape[-1])\n",
"plt.plot(freq, abs(sp))\n",
"plt.show()"
]
},
{
"cell_type": "code",
"execution_count": 122,
"id": "71804e1a-1895-4bbe-9b3a-c46c7a25948a",
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"1.000155473701438"
]
},
"execution_count": 122,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"omega = freq[abs(sp).argmax()]\n",
"omega * 2*np.pi"
]
},
{
"cell_type": "code",
"execution_count": null,
"id": "e723f8f7-bb64-4cd1-9d83-38be08e5baeb",
"metadata": {},
"outputs": [],
"source": []
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 3 (ipykernel)",
"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.6"
}
},
"nbformat": 4,
"nbformat_minor": 5
}