diff --git a/RadiativeLossesModeSolver.ipynb b/RadiativeLossesModeSolver.ipynb new file mode 100644 index 0000000..3557aab --- /dev/null +++ b/RadiativeLossesModeSolver.ipynb @@ -0,0 +1,1724 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Radiative losses analysis with `ModeSolver`\n", + "\n", + "`ModeSolver` can be used to simulate small radiative losses, without the need for a full FDTD simulation. Since these losses are often very small (on the order of $10^{-5}$ dB/cm), careful tuning of the parameters is necessary to ensure good convergence.\n", + "\n", + "In this notebook, we will benchmark the required parameters to accurately calculate the imaginary part of the effective index for two types of losses: substrate leakage and bend losses.\n", + "\n", + "For more information about the `ModeSolver` plugin, refer to this [tutorial](https://www.flexcompute.com/tidy3d/examples/notebooks/ModeSolver/)." + ] + }, + { + "cell_type": "markdown", + "metadata": { + "vscode": { + "languageId": "plaintext" + } + }, + "source": [ + "## Substrate leakage losses\n", + "\n", + "In this example, we will simulate radiative losses into the substrate for a strip waveguide fabricated in SOI, where the SiO₂ layer is thin enough to allow losses into the Si layer.\n", + "\n", + "We will compare our results with the ones obtained in the paper of `P. Bienstman, S. Selleri, L. Rosa, H. P. Uranus, W. C. L. Hopman, R. Costa, A. Melloni, L. C. Andreani, J. P. Hugonin, P. Lalanne, D. Pinto, S. S. A. Obayya, M. Dems, and K. Panajotov, \"Modelling leaky photonic wires: A mode solver comparison\", Optical and Quantum Electronics 38:731–759, (2006).` [DOI: 10.1007/s11082-006-9025-9](https://link.springer.com/article/10.1007/s11082-006-9025-9), where the authors benchmarked the radiative losses of the structure depicted above, using different numerical methods. \n", + "\n", + "\n", + "\"Schematic\"" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": {}, + "outputs": [], + "source": [ + "import tidy3d as td\n", + "import numpy as np\n", + "import matplotlib.pyplot as plt\n", + "\n", + "from tidy3d.plugins.mode import ModeSolver\n", + "from tidy3d.plugins.mode.web import run as run_mode_solver\n", + "from tidy3d.plugins.mode.web import run_batch" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "vscode": { + "languageId": "plaintext" + } + }, + "source": [ + "### Defining the simulation domain" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "We start defining a function for creating the `ModeSolver` object.\n", + "\n", + "Since we are interested in losses, some attributes must be carefully defined.\n", + "\n", + "1. The default boundary condition (BC) for the `ModeSolver` object is PEC. To study losses, we need to define a PML layer. This requires adding a tuple to the `num_pml` argument of the `ModeSpec` object, specifying the number of PML layers in each plane dimension.\n", + "\n", + " Note that the PML is added **inside** the simulation plane, so it is necessary to ensure that the simulation plane is large enough to prevent the PML from being too close to the structures. A good way to check this is by calling the `ModeSolver.plot()` method.\n", + "\n", + "2. To study low losses, we set the `precision` argument to `double`, so the results will have more than six significant digits." + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": {}, + "outputs": [], + "source": [ + "# defining the function for creating the ModeSolver object\n", + "\n", + "\n", + "def mode_solver_substrate_loss(\n", + " resolution, npml, delta_override=None, size=(3, 4.3), num_modes=3, target_neff=2.41\n", + "):\n", + " # waveguide structure\n", + " wg = td.Structure(\n", + " geometry=td.Box(size=(td.inf, 0.5, 0.22)),\n", + " medium=td.Medium(permittivity=3.5**2),\n", + " )\n", + "\n", + " # SiO2 layer\n", + " box = td.Structure(\n", + " geometry=td.Box.from_bounds(\n", + " rmin=(-td.inf, -td.inf, -100), rmax=(td.inf, td.inf, -0.11)\n", + " ),\n", + " medium=td.Medium(permittivity=1.45**2),\n", + " )\n", + "\n", + " # Si substrate\n", + " substrate = td.Structure(\n", + " geometry=td.Box.from_bounds(\n", + " rmin=(-td.inf, -td.inf, -100), rmax=(td.inf, td.inf, -1.11)\n", + " ),\n", + " medium=td.Medium(permittivity=3.5**2),\n", + " )\n", + "\n", + " # mesh override region\n", + " if delta_override:\n", + " mesh_override = [\n", + " td.MeshOverrideStructure(\n", + " geometry=td.Box(center=(0, 0, 0), size=(0, 1.5, 1)),\n", + " dl=(delta_override,) * 3,\n", + " )\n", + " ]\n", + " else:\n", + " mesh_override = []\n", + "\n", + " grid_spec = td.GridSpec.auto(\n", + " min_steps_per_wvl=resolution, wavelength=1.55, override_structures=mesh_override\n", + " )\n", + "\n", + " sim = td.Simulation(\n", + " size=(4, size[0], size[1]),\n", + " grid_spec=grid_spec,\n", + " structures=[wg, box, substrate],\n", + " run_time=1e-12,\n", + " boundary_spec=td.BoundarySpec.all_sides(boundary=td.PML()),\n", + " symmetry=(0, -1, 0),\n", + " )\n", + "\n", + " mode_spec = td.ModeSpec(\n", + " num_modes=num_modes,\n", + " target_neff=target_neff,\n", + " num_pml=(npml, npml),\n", + " precision=\"double\",\n", + " )\n", + "\n", + " mode_solver = ModeSolver(\n", + " simulation=sim,\n", + " plane=td.Box.from_bounds(\n", + " rmin=(0, -size[0] / 2, -((size[1] - 0.3) / 2 + 0.3)),\n", + " rmax=(0, size[0] / 2, 2 + (size[1] - 0.3) / 2),\n", + " ),\n", + " mode_spec=mode_spec,\n", + " freqs=[td.C_0 / 1.55],\n", + " )\n", + " return mode_solver" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAWoAAAHWCAYAAABe0MPtAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy88F64QAAAACXBIWXMAAA9hAAAPYQGoP6dpAAB6IElEQVR4nO29eZwcdZ3///p86upjpmdykZlIQC4TBITIZeIBSJYEWNcsyIKiHCKsCLuwYXWJIgh82SzKtSISUSArysqyu6IrLhgCkQUjCpKfyBEJIpFIAgmZ6Znu6a7j8/79UdOd7pmemerqqp7uyfvJox5kqut4d1X3qz/1/rwPQUQEhmEYpmWRk20AwzAMMz4s1AzDMC0OCzXDMEyLw0LNMAzT4rBQMwzDtDgs1AzDMC0OCzXDMEyLw0LNMAzT4rBQMwzDtDgs1Mxuz7p16yCEwLp16ybbFIapCQs1s9vwzW9+E6tXr55sM0Jx77334pZbbplsM6q48847ceCBByKRSOCAAw7ArbfeGnjfYrGIf/qnf8KcOXOQTCZx9NFHY82aNTW3/cUvfoEPfOADSKVS6Onpwd///d9jcHAwqrfRHhDD7CYcdNBBdMwxx4xa73keDQ0Nked5zTcqICeffDLtvffek21GmVWrVhEAOvXUU+mOO+6gT33qUwSA/uVf/iXQ/meccQbpuk7/+I//SN/61rdo4cKFpOs6/d///V/Vds8++ywlEglasGAB3X777fSlL32JLMuipUuXxvG2WhYW6t2MwcHByTZh0hhLqNuBVhLqfD5PM2bMoJNPPrlq/ZlnnknpdJrefvvtcfd/6qmnCAB97WtfK68bGhqi/fbbjxYuXFi17Yknnki9vb3U399fXvftb3+bANDDDz8cwbtpD1io25jXX3+dPv3pT1Nvby+ZpknvfOc76bOf/SwVi0UiIrr77rsJAK1bt44uvPBCmjVrFnV3d5f3v+222+jd7343maZJvb299LnPfY527txZdY7f//73dMopp9Ds2bPJsix6xzveQaeffjr19fWVt/nZz35G73//+6mrq4vS6TS9613vohUrVkxof5D9CoUCXXnllbTffvuRaZq055570uc//3kqFAqjjnfPPffQkUceSclkkrq7u+mDH/xg+cu89957E4CqpSTajz32GAGgxx57rOp4//Ef/0Hvfe97KZFI0IwZM+jMM8+k119/vWqbs88+m9LpNL3++uv00Y9+lNLpNM2cOZMuu+wycl13wmvwwAMP0EknnVS+h/vuuy9dc801Vfsec8wxo2wfT7TvuusuAkB33nln1frrrruOANCDDz44oV3j8eCDD9Y8zi9+8QsCQPfcc8+4+3/+858nTdOqxJeI6J//+Z8JAG3evJmIiPr7+0nXdfr85z9ftV2xWKSOjg4677zzGnof7YTeZE8LExF//vOfcdRRR6Gvrw8XXHAB5s+fjy1btuA///M/kc/nYZpmedvPfe5zmDVrFq688krkcjkAwFe+8hVcffXVWLx4MS688EJs3LgRt99+O37961/jySefhGEYsG0bS5YsQbFYxN/93d+hp6cHW7ZswU9+8hP09fWhq6sLzz//PP7yL/8S73nPe3DNNdfAsixs2rQJTz755Lj2B9lPKYW/+qu/whNPPIELLrgABx54IJ577jncfPPN+P3vf48HHnigvO3VV1+Nr3zlK1i0aBGuueYamKaJp556Co8++ihOOOEE3HLLLfi7v/s7dHR04Etf+hIAYPbs2WPat3r1apx77rk48sgjsXLlSmzbtg3/+q//iieffBLPPvssuru7y9t6noclS5bg6KOPxg033IBHHnkEN954I/bbbz9ceOGF416H1atXo6OjA8uXL0dHRwceffRRXHnllchms/ja174GAPjSl76E/v5+vP7667j55psBAB0dHWMe89xzz8V///d/Y/ny5fiLv/gLzJ07F8899xyuvvpqnHfeeTjppJPK2+7cuROe541rIwCkUimkUikAwLPPPgsAOOKII6q2OfzwwyGlxLPPPotPfvKTYx7r2Wefxbve9S5kMpmq9UcddRQAYMOGDWWbXdcddR7TNHHYYYeV7dgtmOxfCiYcZ511Fkkp6de//vWo15RSRLRrRP2BD3ygaoT25ptvkmmadMIJJ1T5Zb/xjW8QALrrrruIyPcPAqD7779/TDtuvvlmAkBvvfVWXfYH2e+ee+4hKeUov2XJP/rkk08SEdHLL79MUkr667/+61F+5tK1IBrb9TFyRG3bNu2xxx508MEH09DQUHm7n/zkJwSArrzyyvK6s88+mwDQNddcU3XMBQsW0OGHHz7+RSDfjTCSv/3bv6VUKlX11FCv6+ONN96g6dOn01/8xV9QsVikBQsW0F577TVqFFvrSaPWctVVV5X3ueiii0jTtJrnnTVrFp1xxhnj2nbQQQfRhz/84VHrn3/+eQJAq1atIiKi+++/nwDQ448/Pmrb0047jXp6eia6DFMGjvpoQ5RSeOCBB/CRj3xk1GgDAIQQVX+ff/750DSt/PcjjzwC27Zx6aWXQkpZtV0mk8GDDz4IAOjq6gIAPPzww8jn8zVtKY0sf/SjH0EpFfg9BNnv/vvvx4EHHoj58+dj+/bt5eXDH/4wAOCxxx4DADzwwANQSuHKK6+sej/A6GsRhKeffhpvvvkmPve5zyGRSJTXn3zyyZg/f375+lTy2c9+turvD37wg/jDH/4w4bmSyWT53wMDA9i+fTs++MEPIp/P46WXXqrb9hI9PT247bbbsGbNGnzwgx/Ehg0bcNddd40axX7/+9/HmjVrJlzOOuus8j5DQ0NVT2yVJBIJDA0NjWvb0NAQLMuquW/p9cr/j7XtROeZSrDrow156623kM1mcfDBBwfafp999qn6+7XXXgMAzJs3r2q9aZrYd999y6/vs88+WL58OW666SZ8//vfxwc/+EH81V/9FT75yU+WRfz000/Hd77zHXzmM5/B5ZdfjuOPPx6nnHIKPvaxj40SzUqC7Pfyyy/jxRdfxKxZs2oe48033wQAvPLKK5BS4t3vfneg6zERY10fAJg/fz6eeOKJqnWJRGKUjdOmTcPOnTsnPNfzzz+PK664Ao8++iiy2WzVa/39/fWaXsUZZ5yB733ve3jwwQdxwQUX4Pjjjx+1zfvf//66j5tMJmHbds3XCoVC1Y/PWPsXi8Wa+5Zer/z/WNtOdJ6pBAv1bkAjH+gbb7wR55xzDn70ox/hZz/7Gf7+7/8eK1euxC9/+UvsueeeSCaTePzxx/HYY4/hwQcfxEMPPYT77rsPH/7wh/Gzn/2saiQ/0qaJ9lNK4ZBDDsFNN91U8xhz584N/b6iZKz3OBF9fX045phjkMlkcM0112C//fZDIpHAb37zG/zTP/1TXU8otdixYweefvppAMALL7wApdSoH8+33norkI+6o6Oj7Bfv7e2F53l48803sccee5S3sW0bO3bswJw5c8Y9Vm9vL7Zs2TJq/RtvvAEA5f17e3ur1o/cdqLzTCXY9dGGzJo1C5lMBr/73e9C7b/33nsDADZu3Fi13rZtvPrqq+XXSxxyyCG44oor8Pjjj+P//u//sGXLFqxatar8upQSxx9/PG666Sa88MILuO666/Doo4+WXRNjMdF+++23H95++20cf/zxWLx48ailNOLdb7/9oJTCCy+8MO75grpBxro+pXUjr09Y1q1bhx07dmD16tW45JJL8Jd/+ZdYvHgxpk2bNmrbMC6ciy66CAMDA1i5ciWeeOKJmgkzRx55JHp7eydcbrjhhvI+hx12GACUfwRKPP3001BKlV8fi8MOOwy///3vRz1BPPXUU1XHP/jgg6Hr+qjz2LaNDRs2THieqQQLdRsipcSyZcvwP//zP6M+xABAE/QrXrx4MUzTxNe//vWqbe+880709/fj5JNPBgBks1m4rlu17yGHHAIpZflx9O233x51/NIXqNYja4kg+/3N3/wNtmzZgm9/+9ujth0aGipHsCxbtgxSSlxzzTWjRqGV7y+dTqOvr29Mm0occcQR2GOPPbBq1aqq9/C///u/ePHFF8vXp1FKI/FKG23bxje/+c1R26bT6bpcIf/5n/+J++67D//yL/+Cyy+/HGeccQauuOIK/P73v6/aLoyP+sMf/jCmT5+O22+/vepYt99+O1KpVNX12b59O1566aWqOY6Pfexj8DwPd9xxR3ldsVjE3XffjaOPPrr8pNTV1YXFixfje9/7HgYGBsrb3nPPPRgcHMRpp50W+Hq0PZM7l8mE5fXXX6eenh5KpVJ06aWX0re+9S36yle+QgcddFA5FroU9VErMuSqq64iAHTCCSfQN77xDfq7v/s70jSNjjzySLJtm4iIfvjDH9I73vEOuvTSS+mb3/wmff3rX6cjjzySDMOg9evXExHRJZdcQgsWLKArrriCvv3tb9N1111H73jHO2jPPfesirUeSZD9PM+jk046iYQQdMYZZ9Ctt95Kt9xyC332s5+l6dOnV72vL3/5ywSAFi1aRDfccAPdeuutdNZZZ9Hll19e3uZzn/scCSHo2muvpX//93+ntWvXElHtOOrStTv66KPplltuoRUrVlAqlaJ3vvOdVbHmpTjqsa7veGzfvp2mTZtGe++9N914441000030YIFC+jQQw8dZc9Xv/pVAkD/8A//QPfeey/9+Mc/HvO427Zto5kzZ9Jxxx1XjnrZvn07zZ49mxYuXBhJBuZtt91GAOhjH/sYffvb36azzjqLANB1111XtV3pOoyMUT/ttNPKMdLf+ta3aNGiRaTr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vBgvv/xyvIZW8Pbbb+PMM89EJpNBd3c3zjvvPAwODo67z7HHHjvqGn/2s5+NzcbbbrsN73znO5FIJHD00UeX+3GOxf3334/58+cjkUjgkEMOwU9/+tPYbBuLemxevXr1qOuZSCSaZuvjjz+Oj3zkI5gzZw6EEHjggQcm3GfdunV473vfC8uysP/++2P16tWx21lJvTavW7du1DUWQlT1ew0CC3UNbNvGaaedhgsvvLCu/ZYuXYo33nijvPz7v/97TBZWE8ber371q/j617+OVatW4amnnkI6ncaSJUtQKBRitHQXZ555Jp5//nmsWbMGP/nJT/D444/jggsumHC/888/v+oaf/WrX43Fvvvuuw/Lly/HVVddhd/85jc49NBDsWTJErz55ps1t//FL36Bj3/84zjvvPPw7LPPYtmyZVi2bBl+97vfxWJfFDYDfjJJ5fV87bXXmmZvLpfDoYceittuuy3Q9q+++ipOPvlkHHfccdiwYQMuvfRSfOYzn8HDDz8cs6W7qNfmEhs3bqy6znvssUd9JyZmTO6++27q6uoKtO3ZZ59NH/3oR2O1ZyKC2quUop6eHvra175WXtfX10eWZdG///u/x2ihzwsvvEAA6Ne//nV53f/+7/+SEIK2bNky5n7HHHMMXXLJJbHbR0R01FFH0UUXXVT+2/M8mjNnDq1cubLm9n/zN39DJ598ctW6o48+mv72b/82Vjsrqdfmej7fcQOAfvjDH467zRe+8AU66KCDqtadfvrptGTJkhgtG5sgNj/22GMEgHbu3NnQuXhEHSHr1q3DHnvsgXnz5uHCCy/Ejh07Jtukmrz66qvYunUrFi9eXF7X1dWFo48+GuvXr4/9/OvXr0d3dzeOOOKI8rrFixdDSomnnnpq3H2///3vY+bMmTj44IOxYsWKqq7zUWHbNp555pmq6yOlxOLFi8e8PuvXr6/aHgCWLFnSlOsJhLMZAAYHB7H33ntj7ty5+OhHP4rnn3++GeaGYrKvcSMcdthh6O3txV/8xV/gySefrHt/rvUREUuXLsUpp5yCffbZB6+88gq++MUv4sQTT8T69euhaU2q/xuQkn9s9uzZVetnz55dt+8s7PlHPvrpuo7p06ePe/5PfOIT2HvvvTFnzhz89re/xT/90z9h48aN+O///u9I7du+fTs8z6t5fV566aWa+2zdunXSricQzuZ58+bhrrvuwnve8x709/fjhhtuwKJFi/D8889jzz33bIbZdTHWNc5msxgaGkIy2Xjnnqjp7e3FqlWrcMQRR6BYLOI73/kOjj32WDz11FN473vfG/g4u41QX3755bj++uvH3ebFF1/E/PnzQx3/jDPOKP/7kEMOwXve8x7st99+WLduHY4//vi6jxe3vXEQ1OawVPqwDznkEPT29uL444/HK6+8wqVoQ7Bw4UIsXLiw/PeiRYtw4IEH4lvf+hauvfbaSbRs6jBv3jzMmzev/PeiRYvwyiuv4Oabb8Y999wT+Di7jVBfdtllOOecc8bdJsr6sfvuuy9mzpyJTZs2hRLqOO3t6ekBAGzbtg29vb3l9du2bcNhhx0W6phAcJt7enpGTXC5rou33367bFsQjj76aADApk2bIhXqmTNnQtM0bNu2rWr9tm3bxrSvp6enru2jJozNIzEMAwsWLMCmTZviMLFhxrrGmUymJUfTY3HUUUfhiSeeqGuf3UaoZ82ahVmzZjXtfK+//jp27NhRJYT1EKe9++yzD3p6erB27dqyMGezWTz11FN1R7pUEtTmhQsXoq+vD8888wwOP/xwAMCjjz4KpVRZfIOwYcMGAAh9jcfCNE0cfvjhWLt2LZYtWwYAUEph7dq1uPjii2vus3DhQqxduxaXXnpped2aNWuqRqxxEsbmkXieh+eeew4nnXRSjJaGZ+HChaNCHpt5jaNiw4YN9X9mG5qKnKK89tpr9Oyzz9LVV19NHR0d9Oyzz9Kzzz5LAwMD5W3mzZtH//3f/01ERAMDA/SP//iPtH79enr11VfpkUceofe+9710wAEHUKFQaDl7iYj+5V/+hbq7u+lHP/oR/fa3v6WPfvSjtM8++9DQ0FDs9hIRLV26lBYsWEBPPfUUPfHEE3TAAQfQxz/+8fLrr7/+Os2bN4+eeuopIiLatGkTXXPNNfT000/Tq6++Sj/60Y9o3333pQ996EOx2PeDH/yALMui1atX0wsvvEAXXHABdXd309atW4mI6FOf+hRdfvnl5e2ffPJJ0nWdbrjhBnrxxRfpqquuIsMw6LnnnovFvihsvvrqq+nhhx+mV155hZ555hk644wzKJFI0PPPP98UewcGBsqfVQB000030bPPPkuvvfYaERFdfvnl9KlPfaq8/R/+8AdKpVL0+c9/nl588UW67bbbSNM0euihh5pibxibb775ZnrggQfo5Zdfpueee44uueQSklLSI488Utd5WahrcPbZZ/uND0csjz32WHkbAHT33XcTEVE+n6cTTjiBZs2aRYZh0N57703nn39++QvSavYS+SF6X/7yl2n27NlkWRYdf/zxtHHjxqbYS0S0Y8cO+vjHP04dHR2UyWTo3HPPrfphefXVV6vew+bNm+lDH/oQTZ8+nSzLov33358+//nPU39/f2w23nrrrbTXXnuRaZp01FFH0S9/+cvya8cccwydffbZVdv/x3/8B73rXe8i0zTpoIMOogcffDA228aiHpsvvfTS8razZ8+mk046iX7zm980zdZS6NrIpWTj2WefTcccc8yofQ477DAyTZP23Xffqs90K9p8/fXX03777UeJRIKmT59Oxx57LD366KN1n5er5zEMw7Q4HEfNMAzT4rBQMwzDtDgs1AzDMC0OCzXDMEyLw0LNMAzT4rBQMwzDtDgs1AzDMC0OCzXDMEyLw0LNMAzT4rBQMwzDtDgs1AzDMC0OCzXDBOS73/0uZsyYgWKxWLV+2bJl+NSnPjVJVjG7AyzUDBOQ0047DZ7n4cc//nF53ZtvvokHH3wQn/70pyfRMmaqw0LNMAFJJpP4xCc+gbvvvru87nvf+x722msvHHvssZNnGDPlYaFmmDo4//zz8bOf/QxbtmwBAKxevRrnnHMOhBCTbBkzleF61AxTJ4cffjg+9rGP4YQTTsBRRx2FP/7xj5g7d+5km8VMYXabnokMExWf+cxncMstt2DLli1YvHgxizQTOzyiZpg66e/vx5w5c+C6Lr773e/i9NNPn2yTmCkO+6gZpk66urpw6qmnoqOjo9zxm2HihIWaYUKwZcsWnHnmmbAsa7JNYXYD2PXBMHWwc+dOrFu3Dh/72MfwwgsvYN68eZNtErMbwJOJDFMHCxYswM6dO3H99dezSDNNg0fUDMMwLQ77qBmGYVocFmqGYZgWh4WaYRimxWGhZhiGaXFYqBmGYVocFmqGYZgWh4WaYRimxWGhZhiGaXFYqBmGYVqc/x9fKfy34S1CxwAAAABJRU5ErkJggg==", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "# visualizing the mode solver\n", + "mode_solver = mode_solver_substrate_loss(\n", + " resolution=20,\n", + " npml=9,\n", + " delta_override=None,\n", + ")\n", + "\n", + "mode_solver.plot()\n", + "\n", + "plt.show()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Next, we run the mode solver to analyze the modes:" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
09:44:52 -03 Mode solver created with                                           \n",
+       "             task_id='fdve-dae1405f-031d-40d7-899a-a5d45ea619a9',               \n",
+       "             solver_id='mo-5bfee099-0443-4b82-a56d-c6a59b1c1746'.               \n",
+       "
\n" + ], + "text/plain": [ + "\u001b[2;36m09:44:52 -03\u001b[0m\u001b[2;36m \u001b[0mMode solver created with \n", + "\u001b[2;36m \u001b[0m\u001b[33mtask_id\u001b[0m=\u001b[32m'fdve-dae1405f-031d-40d7-899a-a5d45ea619a9'\u001b[0m, \n", + "\u001b[2;36m \u001b[0m\u001b[33msolver_id\u001b[0m=\u001b[32m'mo-5bfee099-0443-4b82-a56d-c6a59b1c1746'\u001b[0m. \n" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "application/vnd.jupyter.widget-view+json": { + "model_id": "eba78fc1f9f6468fb3818eb3f822ebea", + "version_major": 2, + "version_minor": 0 + }, + "text/plain": [ + "Output()" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/html": [ + "
\n"
+      ],
+      "text/plain": []
+     },
+     "metadata": {},
+     "output_type": "display_data"
+    },
+    {
+     "data": {
+      "text/html": [
+       "
\n",
+       "
\n" + ], + "text/plain": [ + "\n" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "application/vnd.jupyter.widget-view+json": { + "model_id": "9648e05f21e5432ab64d9c46207f5a2e", + "version_major": 2, + "version_minor": 0 + }, + "text/plain": [ + "Output()" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/html": [ + "
\n"
+      ],
+      "text/plain": []
+     },
+     "metadata": {},
+     "output_type": "display_data"
+    },
+    {
+     "data": {
+      "text/html": [
+       "
\n",
+       "
\n" + ], + "text/plain": [ + "\n" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/html": [ + "
09:44:56 -03 Mode solver status: success                                        \n",
+       "
\n" + ], + "text/plain": [ + "\u001b[2;36m09:44:56 -03\u001b[0m\u001b[2;36m \u001b[0mMode solver status: success \n" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "application/vnd.jupyter.widget-view+json": { + "model_id": "a899b58c48fe47f49c56ee92bc7c0bec", + "version_major": 2, + "version_minor": 0 + }, + "text/plain": [ + "Output()" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/html": [ + "
\n"
+      ],
+      "text/plain": []
+     },
+     "metadata": {},
+     "output_type": "display_data"
+    },
+    {
+     "data": {
+      "text/html": [
+       "
\n",
+       "
\n" + ], + "text/plain": [ + "\n" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "# run the mode solver\n", + "mode_data = run_mode_solver(mode_solver)" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAYAAAAHWCAYAAAB+EF5VAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy88F64QAAAACXBIWXMAAA9hAAAPYQGoP6dpAABrTklEQVR4nO2deZwU1bn3f6eqtxkGRlEEJoIiSUTRKFHkihpBiYrEKEavJkZRE42KGoIxwlVxuZeMJsZwowSXi2ISTcwGJvqJu0g00QSR97oriSteRKMysvV013neP6rOUt3VM9MzPfRSz5dPM9XV1dWn6nSfZz3PEUREYBiGYWKHU+0GMAzDMNWBBQDDMExMYQHAMAwTU1gAMAzDxBQWAAzDMDGFBQDDMExMYQHAMAwTU1gAMAzDxBQWAAzDMDGFBQCzTVi+fDmEEFi+fHm1m8IwTAALAKai/PSnP8WSJUuq3Yxecdddd2HBggXVbkaIxYsXY4899kAmk8FnPvMZ3HDDDT1+bzabxSWXXIK2tjY0NTVhwoQJeOihhyKP/ctf/oKDDz4Yzc3NGDZsGC688EJs3LixUpfB1CrEMBVk7NixdOihhxbt9zyPtmzZQp7nbftG9ZBp06bRLrvsUu1maG666SYCQF/5ylfolltuoVNPPZUA0DXXXNOj95988smUSCTou9/9Lt1888104IEHUiKRoD//+c+h45599lnKZDI0btw4WrRoEV166aWUTqfpqKOO6o/LYmoIFgD9wMaNG6vdhKpRSgDUA7UkADZv3kw77LADTZs2LbT/lFNOoQEDBtCHH37Y5fuffvppAkA//OEP9b4tW7bQ6NGj6cADDwwdO3XqVBo+fDht2LBB77v11lsJAD3wwAMVuBqmVmEB0A3vvPMOnXnmmTR8+HBKpVK066670jnnnEPZbJaIiG6//XYCQMuXL6dzzz2XhgwZQtttt51+/8KFC2nPPfekVCpFw4cPp/POO48++uij0Ge8+uqrdPzxx9PQoUMpnU7Tpz71KTrppJPo448/1sc8+OCDdNBBB1FraysNGDCAPvvZz9LcuXO7bX9P3rd161aaN28ejR49mlKpFO2888508cUX09atW4vO9/Of/5zGjx9PTU1NtN1229EhhxyiB4lddtmFAIQeShg89thjBIAee+yx0Pl+/etf0+c//3nKZDK0ww470CmnnELvvPNO6JgZM2bQgAED6J133qFjjz2WBgwYQDvuuCNddNFFlM/nu70Hy5Yto6OPPlr34W677UZXX3116L2HHnpoUdu7Ega33XYbAaDFixeH9s+fP58A0H333ddtu7rivvvuizzPX/7yFwJAP//5z7t8/8UXX0yu64YGdSKi73//+wSA3nrrLSIi2rBhAyUSCbr44otDx2WzWWppaaFvfOMbfboOprZJbGOPU13x7rvv4oADDsDHH3+Ms88+G2PGjMHatWvx29/+Fps3b0YqldLHnnfeeRgyZAjmzZuHTZs2AQCuvPJKXHXVVZgyZQrOPfdcvPLKK1i0aBH+/ve/48knn0QymURnZyeOPPJIZLNZXHDBBRg2bBjWrl2Le++9Fx9//DFaW1vxwgsv4Etf+hI+97nP4eqrr0Y6ncaaNWvw5JNPdtn+nrxPSokvf/nLeOKJJ3D22Wdjjz32wHPPPYcf//jHePXVV7Fs2TJ97FVXXYUrr7wSEydOxNVXX41UKoWnn34ajz76KI444ggsWLAAF1xwAVpaWnDppZcCAIYOHVqyfUuWLMEZZ5yB8ePHo729He+99x7++7//G08++SSeffZZbLfddvpYz/Nw5JFHYsKECbjuuuvw8MMP40c/+hFGjx6Nc889t8v7sGTJErS0tGD27NloaWnBo48+innz5qGjowM//OEPAQCXXnopNmzYgHfeeQc//vGPAQAtLS0lz3nGGWfg97//PWbPno0vfvGLGDFiBJ577jlcddVV+MY3voGjjz5aH/vRRx/B87wu2wgAzc3NaG5uBgA8++yzAID9998/dMx+++0Hx3Hw7LPP4utf/3rJcz377LP47Gc/i0GDBoX2H3DAAQCA1atX6zbn8/miz0mlUth33311O5gGpdoSqJY57bTTyHEc+vvf/170mpSSiIwFcPDBB4c0yvXr11MqlaIjjjgi5Pe+8cYbCQDddtttROT7XwHQb37zm5Lt+PGPf0wA6P333y+r/T15389//nNyHKfIL6z8z08++SQREb322mvkOA5Nnz69yI+v7gVRaRdQoQXQ2dlJO+20E+211160ZcsWfdy9995LAGjevHl634wZMwgAXX311aFzjhs3jvbbb7+ubwL57pRCvvWtb1Fzc3PIyinXBfR///d/NHjwYPriF79I2WyWxo0bRyNHjizSuqMso6jHFVdcod8zc+ZMcl038nOHDBlCJ598cpdtGzt2LB122GFF+1944QUCQDfddBMREf3mN78hALRixYqiY0888UQaNmxYd7eBqWM4C6gEUkosW7YMxxxzTJF2BABCiNDzs846C67r6ucPP/wwOjs7MWvWLDiOEzpu0KBBuO+++wAAra2tAIAHHngAmzdvjmyL0oTvueceSCl7fA09ed9vfvMb7LHHHhgzZgw++OAD/TjssMMAAI899hgAYNmyZZBSYt68eaHrAYrvRU9YuXIl1q9fj/POOw+ZTEbvnzZtGsaMGaPvj80555wTen7IIYfgn//8Z7ef1dTUpLc/+eQTfPDBBzjkkEOwefNmvPzyy2W3XTFs2DAsXLgQDz30EA455BCsXr0at912W5HWfeedd+Khhx7q9nHaaafp92zZsiVkYdpkMhls2bKly7Zt2bIF6XQ68r3qdftvqWO7+xymvmEXUAnef/99dHR0YK+99urR8aNGjQo9f/PNNwEAu+++e2h/KpXCbrvtpl8fNWoUZs+ejeuvvx533nknDjnkEHz5y1/G17/+dS0cTjrpJPzP//wPvvnNb2LOnDk4/PDDcfzxx+OEE04oGoxtevK+1157DS+99BKGDBkSeY7169cDAP7xj3/AcRzsueeePbof3VHq/gDAmDFj8MQTT4T2ZTKZojZuv/32+Oijj7r9rBdeeAGXXXYZHn30UXR0dIRe27BhQ7lND3HyySfjF7/4Be677z6cffbZOPzww4uOOeigg8o+b1NTEzo7OyNf27p1a0iolXp/NpuNfK963f5b6tjuPoepb1gAVIi+/FB+9KMf4fTTT8c999yDBx98EBdeeCHa29vx1FNPYeedd0ZTUxNWrFiBxx57DPfddx/uv/9+3H333TjssMPw4IMPhiyPwjZ19z4pJfbee29cf/31kecYMWJEr6+rkpS6xu74+OOPceihh2LQoEG4+uqrMXr0aGQyGaxatQqXXHJJWRZVFP/617+wcuVKAMCLL74IKWWRUH7//fd7FANoaWnRcYfhw4fD8zysX78eO+20kz6ms7MT//rXv9DW1tbluYYPH461a9cW7f+///s/ANDvHz58eGh/4bHdfQ5T37ALqARDhgzBoEGD8Pzzz/fq/bvssgsA4JVXXgnt7+zsxOuvv65fV+y999647LLLsGLFCvz5z3/G2rVrcdNNN+nX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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAY0AAAHWCAYAAACL7tXlAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy88F64QAAAACXBIWXMAAA9hAAAPYQGoP6dpAABx3UlEQVR4nO29eZwU5bX//3meql5mYGaQiMBEXMAormgIElDjAhHRGFeixBtwI4kBEy/RRG6MuMRLjEa9CcTtqpgYr9svwXxjolEUiHtQeV1xxysiKCAKjIPQPV11fn9UPUv1Nj0z3dMzPefNq19UV1c9/Tw1XXWec85zzhFERGAYhmGYEpDV7gDDMAzTe2ChwTAMw5QMCw2GYRimZFhoMAzDMCXDQoNhGIYpGRYaDMMwTMmw0GAYhmFKhoUGwzAMUzIsNBiGYZiSYaHBdAtLliyBEAJLliypdlcYhukCLDSYsvK73/0OCxcurHY3OsW9996Lm266qdrdiHDHHXdg3333RTKZxJe+9CX89re/LfncVCqFn/70p2hubkZdXR3Gjh2Lxx9/PO+xzz77LA4//HDU19djyJAh+OEPf4jW1tZyDYOpJYhhysj+++9PRx55ZM5+z/No+/bt5Hle93eqRE444QTafffdq90NzS233EIA6LTTTqPbbruNvvOd7xAA+uUvf1nS+WeeeSa5rksXX3wx3XrrrTRu3DhyXZf++c9/Ro575ZVXKJlM0iGHHEI333wz/exnP6NEIkHHHXdcJYbF9HJYaFSA1tbWanehahQSGr2BniQ0Pv/8c/rCF75AJ5xwQmT/WWedRf369aNPP/206PkvvPACAaDrrrtO79u+fTuNGDGCxo0bFzl28uTJNHToUNq6daved/vttxMAeuyxx8owGqaWYKHRDmvXrqVzzz2Xhg4dSvF4nPbYYw/6/ve/T6lUioiI7rrrLgJAS5YsoQsuuIAGDRpEAwYM0OcvWLCA9ttvP4rH4zR06FD6wQ9+QJs3b458x9tvv02nnnoqDR48mBKJBH3xi1+kM844g7Zs2aKP+cc//kGHHXYYNTU1Ub9+/WjvvfemOXPmtNv/Us7bsWMHXX755TRixAiKx+O066670iWXXEI7duzIae8Pf/gDjRkzhurq6mjAgAF0xBFH6AfL7rvvTgAiLyVAnnrqKQJATz31VKS9Bx54gL785S9TMpmkL3zhC3TWWWfR2rVrI8dMnz6d+vXrR2vXrqWTTjqJ+vXrRzvvvDP9+Mc/pkwm0+41WLRoER1//PH6bzh8+HC66qqrIuceeeSROX0vJkDuvPNOAkB33HFHZP8111xDAOiRRx5pt1/FeOSRR/K28+yzzxIA+sMf/lD0/EsuuYQcx4kIAiKi//zP/yQAtGbNGiIi2rp1K7muS5dccknkuFQqRf3796fzzjuvS+Ngag+3m61hvYoPP/wQhx56KLZs2YLvfve7GDlyJNatW4eHHnoIn3/+OeLxuD72Bz/4AQYNGoTLL78c27ZtAwBcccUVuPLKKzFx4kRccMEFeOutt3DzzTfjX//6F5555hnEYjGk02lMmjQJqVQKF154IYYMGYJ169bhr3/9K7Zs2YKmpia89tpr+MY3voGDDjoIV111FRKJBFatWoVnnnmmaP9LOc/3fXzzm9/E008/je9+97vYd9998eqrr+LGG2/E22+/jUWLFuljr7zySlxxxRUYP348rrrqKsTjcbzwwgt48sknceyxx+Kmm27ChRdeiP79++NnP/sZAGDw4MEF+7dw4UKcc845GDNmDObNm4cNGzbgv/7rv/DMM8/glVdewYABA/Sxnudh0qRJGDt2LK6//no88cQT+PWvf40RI0bgggsuKHodFi5ciP79+2P27Nno378/nnzySVx++eVoaWnBddddBwD42c9+hq1bt2Lt2rW48cYbAQD9+/cv2OY555yDP/3pT5g9eza+/vWvY9iwYXj11Vdx5ZVX4rzzzsPxxx+vj928eTM8zyvaRwCor69HfX09AOCVV14BAHzlK1+JHDN69GhIKfHKK6/g3/7t3wq29corr2DvvfdGY2NjZP+hhx4KAFixYoXucyaTyfmeeDyOgw8+WPeDYTTVllo9mWnTppGUkv71r3/lfOb7PhEZTePwww+PzFw3btxI8Xicjj322Igdf/78+QSA7rzzTiIK7MkA6MEHHyzYjxtvvJEA0Mcff9yh/pdy3h/+8AeSUubYuZU9/ZlnniEionfeeYeklHTKKafk+CXUtSAqbJ7K1jTS6TTtsssudMABB9D27dv1cX/9618JAF1++eV63/Tp0wkAXXXVVZE2DznkEBo9enTxi0CBqSeb733ve1RfXx/Rpjpqnvroo49o4MCB9PWvf51SqRQdcsghtNtuu+XM7vNpYPlec+fO1efMnDmTHMfJ+72DBg2iM888s2jf9t9/fzrmmGNy9r/22msEgG655RYiInrwwQcJAC1btizn2ClTptCQIUPauwxMH4NXTxXA930sWrQIJ554Ys4sDACEEJH3M2bMgOM4+v0TTzyBdDqNiy66CFLKyHGNjY145JFHAABNTU0AgMceewyff/553r6oGffDDz8M3/dLHkMp5z344IPYd999MXLkSGzatEm/jjnmGADAU089BQBYtGgRfN/H5ZdfHhkPkHstSmH58uXYuHEjfvCDHyCZTOr9J5xwAkaOHKmvj833v//9yPsjjjgC//d//9fud9XV1entzz77DJs2bcIRRxyBzz//HG+++WaH+64YMmQIFixYgMcffxxHHHEEVqxYgTvvvDNndv/HP/4Rjz/+eLuvadOm6XO2b98e0WRtkskktm/fXrRv27dvRyKRyHuu+tz+v9Cx7X0P0/dg81QBPv74Y7S0tOCAAw4o6fg999wz8v79998HAOyzzz6R/fF4HMOHD9ef77nnnpg9ezZuuOEG/PGPf8QRRxyBb37zm/i3f/s3LVDOOOMM/Pd//zfOP/98XHrppZgwYQJOPfVUnH766TkPcJtSznvnnXfwxhtvYNCgQXnb2LhxIwDg3XffhZQS++23X0nXoz0KXR8AGDlyJJ5++unIvmQymdPHnXbaCZs3b273u1577TVcdtllePLJJ9HS0hL5bOvWrR3teoQzzzwT99xzDx555BF897vfxYQJE3KOOeywwzrcbl1dHdLpdN7PduzYERGEhc5PpVJ5z1Wf2/8XOra972H6Hiw0ykRXbq5f//rXOPvss/Hwww/jH//4B374wx9i3rx5eP7557Hrrruirq4Oy5Ytw1NPPYVHHnkEjz76KO6//34cc8wx+Mc//hHRcLL71N55vu/jwAMPxA033JC3jWHDhnV6XOWk0BjbY8uWLTjyyCPR2NiIq666CiNGjEAymcTLL7+Mn/70px3S3PLxySefYPny5QCA119/Hb7v5wjyjz/+uCSfRv/+/bUfZejQofA8Dxs3bsQuu+yij0mn0/jkk0/Q3NxctK2hQ4di3bp1Ofs/+ugjANDnDx06NLI/+9j2vofpe7B5qgCDBg1CY2MjVq5c2anzd999dwDAW2+9FdmfTqfx3nvv6c8VBx54IC677DIsW7YM//znP7Fu3Trccsst+nMpJSZMmIAbbrgBr7/+Oq655ho8+eST2nxUiPbOGzFiBD799FNMmDABEydOzHkpTWDEiBHwfR+vv/560e8r1VRV6PqofdnXp7MsWbIEn3zyCRYuXIgf/ehH+MY3voGJEydip512yjm2M2a2mTNn4rPPPsO8efPw9NNP5w0OHDNmDIYOHdru6/rrr9fnHHzwwQCgBZJi+fLl8H1ff16Igw8+GG+//XaOZvXCCy9E2j/ggAPgum7O96TTaaxYsaLd72H6Hiw0CiClxMknn4z/9//+X84NBQBEVPT8iRMnIh6P4ze/+U3k2DvuuANbt27FCSecAABoaWlBJpOJnHvggQdCSqlNBp9++mlO++pmzmdWUJRy3re+9S2sW7cOt99+e86x27dv1yvBTj75ZEgpcdVVV+XMzu3x9evXD1u2bCnYJ8VXvvIV7LLLLrjlllsiY/j73/+ON954Q1+frqI0FLuP6XQav/vd73KO7devX4fMVQ899BDuv/9+/PKXv8Sll16KM888E5dddhnefvvtyHGd8Wkcc8wxGDhwIG6++eZIWzfffDPq6+sj12fTpk148803Iz6x008/HZ7n4bbbbtP7UqkU7rrrLowdO1ZrkE1NTZg4cSLuuecefPbZZ/rYP/zhD2htbcWUKVNKvh5MH6G6fviezdq1a2nIkCFUX19PF110Ed166610xRVX0P77769jLdTqqXwrrObOnUsA6Nhjj6X58+fThRdeSI7j0JgxYyidThMR0Z///Gf64he/SBdddBH97ne/o9/85jc0ZswYisVi9NxzzxER0Y9+9CM65JBD6LLLLqPbb7+drrnmGvriF79Iu+66aySWI5tSzvM8j44//ngSQtCZZ55Jv/3tb+mmm26i73//+zRw4MDIuH7+858TABo/fjxdf/319Nvf/pamTZtGl156qT7mBz/4AQkh6Oqrr6b/+Z//ocWLFxNR/jgNde3Gjh1LN910E82ZM4fq6+tpjz32iMSyqDiNQte3GJs2baKddtqJdt99d/r1r39NN9xwAx1yyCE0atSonP786le/IgD07//+73TvvffSX/7yl4LtbtiwgXbeeWc6+uij9eqxTZs20eDBg2ncuHFliXxfsGABAaDTTz+dbr/9dpo2bRoBoGuuuSZynLoO2TEwU6ZM0TEYt956K40fP55c16WlS5dGjnvppZcokUhEIsKTySQde+yxXR4DU3uw0GiH999/n6ZNm0aDBg2iRCJBw4cPp5kzZ+YE9+UTGkTBEtuRI0dSLBajwYMH0wUXXBB5IP7f//0fnXvuuTRixAhKJpM0cOBAOvroo+mJJ57QxyxevJhOOukkam5upng8Ts3NzTR16lR6++23i/a91PPS6TRde+21tP/++1MikaCddtqJRo8eTVdeeWXO8tE777yTDjnkEH3ckUceSY8//rj+fP369XTCCSdQQ0NDScF9999/v25v4MCBRYP7silFaBARPfPMM/TVr36V6urqqLm5mX7yk5/QY489ltOf1tZW+va3v00DBgxoN7jv1FNPpYaGBlq9enVk/8MPP0wA6Nprr223X6Vw22230T777EPxeJxGjBhBN954Y2SJM1FhobF9+3a6+OKLaciQIZRIJGjMmDH06KOP5v2ef/7znzR+/HhKJpM0aNAgmjlzJrW0tJRlDExtIYjasbMwDMMwTAj7NBiGYZiSYaHBMAzDlAwLDYZhGKZkWGgwDMMwJcNCg2EYhikZFhoMwzBMyfSp3FO+7+PDDz9EQ0NDp1JGMAxTHCLCZ599hubm5qLJNJneS58SGh9++GGPScDHMLXMBx98gF133bXa3Yjg+z6OOvoQ7L7bYPzhD/+odnd6LX1KaDQ0NIRbEgBrGgxTfgiAb91rPYcHHngAq95Zh5dfehsvvPACxo4dW+0u9Up6jf54880346CDDkJjYyMaGxsxbtw4/P3vf+9QG8YkJfjFL35V7IUeZ/5NpVKYM+ffcfXV5+Gif5+CH188o92ko0x+eo3Q2HXXXfHLX/4SL730EpYvX45jjjkGJ510El577bVqd41hmB7O/AWz0dBQj+9MOxYXX3wm3nl7Lf7yl79Uu1u9kl6de2rgwIG47rrrcN5555V0fEtLS1gNz4GaETEMU04IgIetW7fmlL2tFps3b8aIEbvjnj9ehkmTDgUA3HrLX/Cb3zyEV199F7FYrMo97F30Gk3DxvM83Hfffdi2bRvGjRtX8LhUKoWWlpbIi2GYvsUvrrkAX/7y3jj22DF637nnHQ8AuO22n1SrW72WXiU0Xn31VfTv3x+JRALf//738ec//7lozep58+ahqalJv3jlFMP0LVavXo2bf7cI1/7q+xE/SyzmYt687+Kqq+6OFJ9i2qdXmafS6TTWrFmDrVu34qGHHsJ///d/Y+nSpQUFRyqVilSFa2lpCQUHm6cYpjL0LPPUt789Ea7r4K6Fc3I+IyIcffRF+NrXRuGaX/y+Cr3rnfQqoZHNxIkTMWLECNx6660lHc8+DYapND1HaLz00ks44ojD8Pobv8ewYbvkPebFF9/AxAmz8c4776K5ubmbe9g76VXmqWx83y9aI5thmL4JEeHiS2bgwh+eVlBgAMChh+6Lb3xjHH7+8xnd2LveTa8J7pszZw4mT56M3XbbDZ999hnuvfdeLFmyBI899li1u8YwTA/jb3/7G17933fx//1/V7V77C+uOR8HHXgO/v3fV+KAAw7oht71bnqN0Ni4cSOmTZuGjz76CE1NTTjooIPw2GOP4etf/3q1u8YwTA8ik8ngJz+Zict+Pg1NTf3bPX748GZ893vfxCWXnI+///35buhh76ZX+zQ6Cvs0GKbSVN+nceutF+P66+/D/756F+Lx0mIwPvlkK/bZ+9/w0EOLMGHChAr3sHfTq30aDMMwNq2trbjiirtwzTUzShYYAPCFLzTh0jln4ZJLLoDv+xXsYe+HhQbDMDXD9b++ELvvMQSnnva1Dp87a9ap+OSTFtxzz88r0LPagYUGwzA1wfr16/Hr6+/Hr7IC+UolmYzj6qvPw89/fgd27NhRgR7WBiw0GIapCebO/S4mTvwKDjvswE63MfXbE7Dzzo246b9+VMae1RbsCGcYpoxUxxH+3nvvYd9998ErK+7A3nt3LV3Qk0++jCmnX461a9ejf//2V1/1NVjTYBim1/Phhx9il1126rLAAICjjjoYW7du4wSnBeg1cRoMwzDtUo6VT7x6qiisaTAMwzAlw5oGwzA1ArGm0Q2w0GAYpjYgsNDoBlhoMAxTO5RjMWjfWVDaKdinwTAMw5QMaxoMw9QObJ6qOCw0GIapHVhoVBwWGgzD1Ai8eqo7YJ8GwzAMUzIsNBiGqQ3UkttyvDrIsmXLcOKJJ6K5uRlCCCxatCjyuRAi7+u6664r2OYVV1yRc/zIkSM73Ldyw+YphmFqhyqZp7Zt24ZRo0bh3HPPxamnnprz+UcffRR5//e//x3nnXceTjvttKLt7r///njiiSf0e9et/iO7+j1gGIYpE4K6LjQ608bkyZMxefLkgp8PGTIk8v7hhx/G0UcfjeHDhxdt13XdnHOrDZunGIZhupENGzbgkUcewXnnndfuse+88w6am5sxfPhwnHXWWVizZk039LA4rGkwDFMjlHf1VCqVykmPnkgkkEgkutT83XffjYaGhrxmLJuxY8di4cKF2GefffDRRx/hyiuvxBFHHIGVK1eioaGhS33oCqxpMAxTGxAAn8rzAjB//nw0NTVFXvPmzetyN++8806cddZZSCaTRY+bPHkypkyZgoMOOgiTJk3C3/72N2zZsgUPPPBAl/vQFVjTYBiGycOsWbMwd+7cyL6uahn//Oc/8dZbb+H+++/v8LkDBgzA3nvvjVWrVnWpD12FhQbDMLVDGc1TiUSi7CVr77jjDowePRqjRo3q8Lmtra1499138Z3vfKesfeoobJ5iGKZ2qFKcRmtrK1asWIEVK1YACGqWr1ixIuK4bmlpwYMPPojzzz8/bxsTJkzA/Pnz9fuLL74YS5cuxerVq/Hss8/ilFNOgeM4mDp1aof7V05Y02AYpnYow5LbzrSxfPlyHH300fr97NmzAQDTp0/HwoULAQD33XcfiKjgQ//dd9/Fpk2b9Pu1a9di6tSp+OSTTzBo0CAcfvjheP755zFo0KAO96+cCKK+kzy+paUFTU1NABwAotrdYZgahAB42Lp1a9lNO8V45plnMPVbJ2H18zd1uS3f9xHbYzrWrVuH5ubmrneuxmBNg2GYGoETFnYHLDQYhqkN1JLbrlKONmoYFhoMw9QOrGlUHF49xTAMw5QMaxoMw9QOrGlUHBYaDMPUCARRhgd+OdqoZVhoMAxTO5QjgqDvRCF0CvZpMAzDMCXDmgbDMLWBKvfaVdg8VRQWGgzD1A4sNCoOm6cYhmGYkmFNg2GY2oEjwisOCw2GYWoHNk9VHBYaDMPUBsQJC7sD9mkwDMMwJcOaBsMwtQMH91UcFhoMw9QObJ6qOCw0GIapHXj1VMVhnwbDMAxTMqxpMAxTO7B5quKw0GAYpjbgJbfdAgsNhmFqB/ZpVBz2aTAMwzAlw5oGwzC1A5XBtFSONmoYFhoMw9QObJ6qOGyeYhiGYUqGNQ2GYWoHXj1VcVhoMAxTGxDYPNUNsNBgGKZGKFecBguNYrBPg2EYhikZ1jQYhqkd2DxVcVhoMAxTO5QlToOFRjFYaDAMUzuwplFxeo1PY968eRgzZgwaGhqwyy674OSTT8Zbb71V7W4xDMP0KXqN0Fi6dClmzpyJ559/Ho8//jja2tpw7LHHYtu2bdXuGsMwPQG15LYcL6YgvcY89eijj0beL1y4ELvssgteeuklfO1rX6tSrxiG6VHwktuK02uERjZbt24FAAwcOLDgMalUCqlUSr9vaWmpeL8YhmFqmV5jnrLxfR8XXXQRDjvsMBxwwAEFj5s3bx6ampr0a9iwYd3YS4ZhupcymaY6oWksW7YMJ554IpqbmyGEwKJFiyKfn3322RBCRF7HHXdcu+0uWLAAe+yxB5LJJMaOHYsXX3yxw30rN71SaMycORMrV67EfffdV/S4OXPmYOvWrfr1wQcfdFMPGYapClUSGtu2bcOoUaOwYMGCgsccd9xx+Oijj/Trf/7nf4q2ef/992P27NmYO3cuXn75ZYwaNQqTJk3Cxo0bO9y/ctLrzFOzZs3CX//6Vyxbtgy77rpr0WMTiQQSiUQ39YxhmKpCqJpPY/LkyZg8eXLRYxKJBIYMGVJymzfccANmzJiBc845BwBwyy234JFHHsGdd96JSy+9tMN9LBe9RtMgIsyaNQt//vOf8eSTT2LPPfesdpcYhqlhUqkUWlpaIi/bR9pRlixZgl122QX77LMPLrjgAnzyyScFj02n03jppZcwceJEvU9KiYkTJ+K5557rdB/KQa8RGjNnzsQ999yDe++9Fw0NDVi/fj3Wr1+P7du3V7trDMP0FIjK8wIwf/78iE+0qakJ8+bN61S3jjvuOPz+97/H4sWLce2112Lp0qWYPHkyPM/Le/ymTZvgeR4GDx4c2T948GCsX7++U30oF73GPHXzzTcDAI466qjI/rvuugtnn31293eIYZieRxkjwmfNmoW5c+dGPuqsufvMM8/U2wceeCAOOuggjBgxAkuWLMGECRM639cq0GuEBnE+GIZh2qOMQiORSKCxsbHr7eVh+PDh2HnnnbFq1aq8QmPnnXeG4zjYsGFDZP+GDRs65BepBL3GPMUwDFMrrF27Fp988gmGDh2a9/N4PI7Ro0dj8eLFep/v+1i8eDHGjRvXXd3MCwsNhmFqhLAIUzleHaS1tRUrVqzAihUrAADvvfceVqxYgTVr1qC1tRWXXHIJnn/+eaxevRqLFy/GSSedhL322guTJk3SbUyYMAHz58/X72fPno3bb78dd999N9544w1ccMEF2LZtm15NVS16jXmKYRimKFUs97p8+XIcffTR+v3s2bMBANOnT8fNN9+M//3f/8Xdd9+NLVu2oLm5GcceeyyuvvrqiI/k3XffxaZNm/T7M844Ax9//DEuv/xyrF+/HgcffDAeffTRHOd4d8NCg2GY2qFKQuOoo44q6nd97LHH2m1j9erVOftmzZqFWbNmdbg/lYTNUwzDMEzJsKbBMEztwEWYKg4LDYZhagYqwwO/HG3UMmyeYhiGYUqGNQ2GYWoDgk4B0rV2WNMoBgsNhmFqB/ZpVBwWGgzD1A4sNCoO+zQYhmGYkmFNg2GY2oE1jYrDQoNhmBqhc6Vac2ChURQWGgzD1AbEcRrdAfs0GIZhmJJhTYNhmNqBzVMVh4UGwzC1AwuNisNCg2GY2oGFRsVhnwbDMAxTMqxpMAxTG3DuqW6BhQbDMDUDdby8d0XaqGXYPMUwDMOUDGsaDMPUDuwIrzgsNBiGqR1YaFQcFhoMw9QM7NOoPOzTYBiGYUqGNQ2GYWoDKlOWW15yWxQWGgzD1A7lMC2xzCgKCw2GYWqGsqRGZ02jKOzTYBiGYUqGNQ2GYWoHNk9VHBYaDMPUDuV44LPQKAoLDYZhagIqV7lX9mkUhX0aDMMwTMmwpsEwTO3APo2Kw0KDYZiaoSxpRFhoFIXNUwzDMEzJsKbBMEztwOapisNCg2GY2oDYPNUdsHmKYZjawS/Tq4MsW7YMJ554IpqbmyGEwKJFi/RnbW1t+OlPf4oDDzwQ/fr1Q3NzM6ZNm4YPP/ywaJtXXHEFhBCR18iRIzveuTLDQoNhGKaLbNu2DaNGjcKCBQtyPvv888/x8ssv4+c//zlefvll/OlPf8Jbb72Fb37zm+22u//+++Ojjz7Sr6effroS3e8QbJ5iGKZmKIdpqTNtTJ48GZMnT877WVNTEx5//PHIvvnz5+PQQw/FmjVrsNtuuxVs13VdDBkypOMdqiCsaTAMUzOQX55Xpdm6dSuEEBgwYEDR49555x00Nzdj+PDhOOuss7BmzZrKd64dWNNgGKZ2KOPqqVQqhZaWlshHiUQCiUSiS83v2LEDP/3pTzF16lQ0NjYWPG7s2LFYuHAh9tlnH3z00Ue48sorccQRR2DlypVoaGjoUh+6AmsaDMMweZg/fz6ampoir3nz5nWpzba2NnzrW98CEeHmm28ueuzkyZMxZcoUHHTQQZg0aRL+9re/YcuWLXjggQe61IeuwpoGwzC1QZmX3M6aNQtz586NfNYVLUMJjPfffx9PPvlkUS0jHwMGDMDee++NVatWdboP5YA1DYZhagai8ryAQEA0NjZGXp0VGkpgvPPOO3jiiSfwhS98ocNttLa24t1338XQoUM71YdywUKDYZjawRfleXWQ1tZWrFixAitWrAAAvPfee1ixYgXWrFmDtrY2nH766Vi+fDn++Mc/wvM8rF+/HuvXr0c6ndZtTJgwAfPnz9fvL774YixduhSrV6/Gs88+i1NOOQWO42Dq1Kldvkxdgc1TDMMwXWT58uU4+uij9fvZs2cDAKZPn44rrrgCf/nLXwAABx98cOS8p556CkcddRQA4N1338WmTZv0Z2vXrsXUqVPxySefYNCgQTj88MPx/PPPY9CgQZUdTDuw0GAYpmaoVhqRo446qmjxplIKO61evTry/r777ut4R7oBFhoMw9QMRB03LeW2UYaO1DDs02AYhmFKhjUNhmFqAuIst90CCw2GYWoGFhqVh4UGwzA1gmCfRjfAPg2GYRimZFjTYBimZqBOBObltMGaRlFYaDAMUzNUq55GX4KFBsMwNQP7NCpPr/JpFKvDyzAMw1SeXiU0itXhZRimj0OBT6McL6Ywvco8VawOL8MwDPs0Kk+vEhoMwzCFILBPozuoaaGRSqWQSqX0++x6vwzDMEzH6FU+jY4yb968SH3fYcOGVbtLDMNUEN8XZXkxhalpoTFnzhxs3bpVvz744INqd4lhmApSznKvTH5q2jyVSCS6VAieYRiGidKrhEZraytWrVql36s6vAMHDsRuu+1WxZ4xDNMTYEd45elVQqNYHd6FCxdWqVcMw/QIiIVGd9CrhEZ7dXgZhunLCPhlEBo+P2KKUtOOcIZhGKa89CpNg2EYphicGr3ysNBgGKYmCCLCy9AOC42isNBgGKZmYJ9G5WGfBsMwDFMyrGkwDFMz8JLbysNCg2GYmoHNU5WHhQbDMDUDaxqVh30aDMMwTMmwpsEwTE1AAPwytFOONmoZFhoMw9QGnHuqW2DzFMMwDFMyrGkwDFMz8OqpysNCg2GYmoHNU5WHhQbDMDVDObQE1jSKwz4NhmEYpmRY02AYpkYQbJ7qBljTYBimJgjiNERZXh1l2bJlOPHEE9Hc3AwhBBYtWhTtGxEuv/xyDB06FHV1dZg4cSLeeeeddttdsGAB9thjDySTSYwdOxYvvvhih/tWblhoMAxTMxCV59VRtm3bhlGjRmHBggV5P//Vr36F3/zmN7jlllvwwgsvoF+/fpg0aRJ27NhRsM37778fs2fPxty5c/Hyyy9j1KhRmDRpEjZu3NjxDpYRFhoMwzBdZPLkyfjFL36BU045JeczIsJNN92Eyy67DCeddBIOOugg/P73v8eHH36Yo5HY3HDDDZgxYwbOOecc7LfffrjllltQX1+PO++8s4IjaR8WGgzD1Aw+ibK8ysl7772H9evXY+LEiXpfU1MTxo4di+eeey7vOel0Gi+99FLkHCklJk6cWPCc7oId4QzD1Ayd8UfkthGQSqXQ0tIS+SyRSCCRSHSovfXr1wMABg8eHNk/ePBg/Vk2mzZtgud5ec958803O/T95YY1DYZhmDzMnz8fTU1Nkde8efOq3a2qw5oGwzA1QzmWy6o2Zs2ahblz50Y+66iWAQBDhgwBAGzYsAFDhw7V+zds2ICDDz447zk777wzHMfBhg0bIvs3bNig26sWrGkwDFMzlNOnkUgk0NjYGHl1RmjsueeeGDJkCBYvXqz3tbS04IUXXsC4cePynhOPxzF69OjIOb7vY/HixQXP6S5Y02AYpiYgAFQGn0ZnlJXW1lasWrVKv3/vvfewYsUKDBw4ELvtthsuuugi/OIXv8CXvvQl7Lnnnvj5z3+O5uZmnHzyyfqcCRMm4JRTTsGsWbMAALNnz8b06dPxla98BYceeihuuukmbNu2Deecc04XR9g1WGgwDMN0keXLl+Poo4/W72fPng0AmD59OhYuXIif/OQn2LZtG7773e9iy5YtOPzww/Hoo48imUzqc959911s2rRJvz/jjDPw8ccf4/LLL8f69etx8MEH49FHH81xjnc3gqjvBM23tLSgqakJgAOUYUbCMEw2BMDD1q1b0djY2G3f+swzz+DUYybjoTHf73JbPhGOevZ6rFu3Ds3NzWXoXW3BmgbDMDUD19OoPCw0GIapGarl0+hL8OophmEYpmRY02AYpmbgIkyVh4UGwzA1AUGweaobYKHBMEzNwJpGwLJlyzp13h577IHddtut6DEsNBiGYWqM6dOnd/gcIQQuuugi/PCHPyx6XKeExjHHHIMjjzwyJy/L5s2bcdppp+HJJ5/sTLMMwzBdgpfcBrz33nsVa7tTQmPJkiV49dVX8corr+CPf/wj+vXrByDIAb906dKydpBhGKZUyvG8rwGZUVE6veT2iSeewPr16/HVr34Vq1evLmOXGIZhmK7ywAMPIJ1O6/dr166F7/v6/eeff45f/epXHW6300Jj6NChWLp0KQ488ECMGTMGS5Ys6WxTDMMwZaEnVu6rFlOnTsWWLVv0+/322y8ywf/ss88wZ86cDrfbKaEhhEkdfO+99+JHP/oRjjvuOPzud7/rTHMMwzBdhhBU3SvHqxbITitYrjSDnfJpZH/5ZZddhn333bdTHnuGYZhyQWXQEvpOCtfO0Smh8d5772HQoEGRfaeddhpGjhyJ5cuXl6VjDMMwTM+jU0Jj9913z7t///33x/7779+lDjEMw3SWcpiWasU8BQCPPfZYWA7CVP5buXIlAET8HR2Bg/sYhqkZOCI8SrbL4Hvf+17kvfJPdwQWGgzD1Ayce8pgL68tJ5wanWEYhikZ1jQYhqkJiNg8pdhzzz07ZXqqWO4phmGYngibpwIWLlzYqfP22GOPdo9hocEwTM3AmkbAkUceWbG22afBMAzDlAxrGgzD1AysaVQeFhoMw9QM7NOoPGyeYhiGYUqGNQ2GYWoGNk9VHhYaDMPUBCo1eleppdxTlYCFBsMwNQOnRq887NNgGIZhSoY1DaZifPnLX652FzQvv/xytbvAdANsnqo8LDQYhqkZ2BFeeVhoMAxTM5Tjec8yozjs02AYhmFKptcJjQULFmCPPfZAMpnE2LFj8eKLL1a7SwzD9AAIgE+iDK9qj6Rn06uExv3334/Zs2dj7ty5ePnllzFq1ChMmjQJGzdurHbXGIbpAVCZXkxhepXQuOGGGzBjxgycc8452G+//XDLLbegvr4ed955Z7W7xjBMD8Cn8ryYwvQaoZFOp/HSSy9h4sSJep+UEhMnTsRzzz2X95xUKoWWlpbIi2EYhuk8vUZobNq0CZ7nYfDgwZH9gwcPxvr16/OeM2/ePDQ1NenXsGHDuqOrDMNUCb9Mr46wxx57QAiR85o5c2be4xcuXJhzbDKZ7PBYq0VNL7mdM2cOZs+erd+3tLSw4GCYGqYcKUA62sa//vUveJ6n369cuRJf//rXMWXKlILnNDY24q233tLvO1PPu1r0GqGx8847w3EcbNiwIbJ/w4YNGDJkSN5zEokEEolEd3SPYZg+yqBBgyLvf/nLX2LEiBFFS64KIQo+t3o6vcY8FY/HMXr0aCxevFjv830fixcvxrhx46rYM4ZhegIEAb9MLyC/TzSVShXtQzqdxj333INzzz23qPbQ2tqK3XffHcOGDcNJJ52E1157razXopL0GqEBALNnz8btt9+Ou+++G2+88QYuuOACbNu2Deecc061u8YwTLWhwLRUjhcAzJ8/P+ITbWpqwrx584p2YdGiRdiyZQvOPvvsgsfss88+uPPOO/Hwww/jnnvuge/7GD9+PNauXVvGi1E5eo15CgDOOOMMfPzxx7j88suxfv16HHzwwXj00UdznOMMw/RNypmwcNasWZg7d27ks/bM3XfccQcmT56M5ubmgseMGzcuYh0ZP3489t13X9x66624+uqrO93v7qJXCQ0g+EPOmjWr2t1gGKbGSSQSaGxsLPn4999/H0888QT+9Kc/deh7YrEYDjnkEKxataqjXawKvco8xTAMU4xqBvfddddd2GWXXXDCCSd06DzP8/Dqq69i6NChnfvibqbXaRrlwHHcXrXErbfyv//7v9XugsZ1++RPvdshosjy027//iq14fs+7rrrLkyfPj3ntzZt2jR88Ytf1P6Qq666Cl/96lex1157YcuWLbjuuuvw/vvv4/zzzy9D7ysP30kMw9QEQcLCrrfTmTaeeOIJrFmzBueee27OZ2vWrIGUxqizefNmzJgxA+vXr8dOO+2E0aNH49lnn8V+++3XlW53Gyw0GIZhusixxx4LKhAVuGTJksj7G2+8ETfeeGM39KoysNBgGKZmqEZEeF+DhQbDMDUD1wivPCw0GIapGbhGeOXhJbcMwzBMybCmwTBMzVCtJbd9CRYaDMPUDGyeqjxsnmIYhmFKhjUNhmFqAkKQHr3r7XC2iGKw0GAYpmYoh2mJ4zSKw0KDYZiagYVG5WGfBsMwDFMyrGkwDFMz8JLbysNCg2GY2qALtTAizbDUKAoLDYZhagYqg55QjjZqGfZpMAzDMCXDmgbDMDVBuYowsXmqOCw0GIapGdgRXnlYaDAMUzOwplF52KfBMAzDlAxrGgzD1Axc7rXysNBgGKZmKEepVpYZxWHzFMMwDFMyrGkwDFMT8JLb7oGFBsMwNQP7NCoPCw2GYWoG9mlUHvZpMAzDMCXDmgbDMDUDm6cqDwsNhmFqBjZPVR4WGgzD1AgEKoOaUI42ahn2aTAMwzAlw5oGwzA1AcdpdA8sNBiGqRk4NXrlYfMUwzAMUzKsaTAMUxsQm6e6AxYaDMPUDCw0Kg8LDYZhagYqg0eCZUZx2KfBMAzTBa644goIISKvkSNHFj3nwQcfxMiRI5FMJnHggQfib3/7Wzf1tuuw0GAYpiZQS27L8eoo+++/Pz766CP9evrppwse++yzz2Lq1Kk477zz8Morr+Dkk0/GySefjJUrV3Z+8N0ICw2GYWoGovK8OorruhgyZIh+7bzzzgWP/a//+i8cd9xxuOSSS7Dvvvvi6quvxpe//GXMnz+/CyPvPvq80BCdfDFMrVEL94IPKsuro7zzzjtobm7G8OHDcdZZZ2HNmjUFj33uuecwceLEyL5Jkybhueee6/D3VgN2hDMMw+QhlUqhpaUlsi+RSCCRSET2jR07FgsXLsQ+++yDjz76CFdeeSWOOOIIrFy5Eg0NDTntrl+/HoMHD47sGzx4MNavX1/+QVSAPq9pMAxTO5TTPDV//nw0NTVFXvPmzcv5zsmTJ2PKlCk46KCDMGnSJPztb3/Dli1b8MADD3Tz6LsH1jQYhqkZypkafdasWZg7d27ks2wtIx8DBgzA3nvvjVWrVuX9fMiQIdiwYUNk34YNGzBkyJBO9be76ZOaRjnssZ21/1brxXQ/1f6bd9dvpCf91oioLC8gEBCNjY2RVylCo7W1Fe+++y6GDh2a9/Nx48Zh8eLFkX2PP/44xo0b1/UL0A30SaHBMAxTLi6++GIsXboUq1evxrPPPotTTjkFjuNg6tSpAIBp06Zhzpw5+vgf/ehHePTRR/HrX/8ab775Jq644gosX74cs2bNqtYQOgSbpxiGqQmqlRp97dq1mDp1Kj755BMMGjQIhx9+OJ5//nkMGjQIALBmzRpIaebn48ePx7333ovLLrsM//Ef/4EvfelLWLRoEQ444ICud74bYKHBMEzN0Jnlstl0NBXJfffdV/TzJUuW5OybMmUKpkyZ0qHv6Sn0TaEhRPAC0DELXTncbBWkyBSps7bmUm6fatuxu0JVxid6wxXr5H3B2f5qnr4pNBiGqUnKIbNY7hWHhQbDMDVDNcxTfQ0WGgzD1AadzBuV0wzLjKL0UaEhIZTNtiP2Zep+W3SHZj15u9cBP0yeu6XTI+6Jdvuqja/zK9tFtTxGnbgvCNQz/+5MWemjQoNhmFqDwOap7oCFBsMwNYNfBtsSsX2qKH1SaAjhQuhgGwcij0qd94cTOcyrRNdyvrd0Zb+AGaqASS3vbCpyaGeWF7dvhukOc0vBmWKFx1dwbAVNNp0zW+X7vZYHp8PfS0SA8NQbVOq+KJXylHtloVEMTiPCMAzDlEyvERrXXHMNxo8fj/r6egwYMKDa3WEYpgfil+nFFKbXCI10Oo0pU6bgggsuqHZXGIbpkZSnal85nOm1TK/xaVx55ZUAgIULF3a5LSnjkCIWbrt5bdH57JpE+ecghfa3T3t+hXxnFPqu6H7tG9HtZdmaI76TPG12Znlxibb7ytnkg3FHW++Yr6coOf1ub1xOkc9yz9fHdmou17lrKkSBPuTZX+g+8f1MsC08+H5bp/pRDgjlcWKzI7w4vUbTYBiGYapPr9E0OkMqlUIqldLvs+v9MgxTW3CcRuWpqqZx6aWXQghR9PXmm292uv158+ZF6vsOGzasjL1nGKanwT6NylNVTePHP/4xzj777KLHDB8+vNPtz5kzB7Nnz9bvW1paMGzYMLhOPVwZlG10ZCyv/db2U9g2znw+hYK+jk6swyh0Tl47q91H64dO5GsTd7RvpL/DmNj9PG171vnFb6Cu2PE7Z7vPj7puwVfm+xvZ4/AiLoCOjTHf+PKNSVjHyfzbdify+RAK+H46c90KnZPfd2H3N/84FEQ+vNCP4VEbPKRyjmFqi6oKjUGDBunqVpUgkUiUVNOXYZjaoDMTtdw2WNMoRq/xaaxZswaffvop1qxZA8/zsGLFCgDAXnvthf79+3eorbhTB9epBwC4IgkZzqyEkDlag2+t3LY/s1VYyhMFW/SHV+Jqq/a0GiKKHKM+i+zTfSf9vQQyx5IPIaJ9JThAZObeHoW0BxG2UcJM26bAip6gc4W0uixNK2vbHiNFIp/9EscIRBJdBq2GbZvfjx6TkHqWLrKuT/aMPdhXfEZfknZR7Loh//UW1rWQebUjqe8Pe7+6rj58ZOQOAIDnp9BW5ZJc7NOoPL1GaFx++eW4++679ftDDjkEAPDUU0/hqKOOqlKvGIbpKXDCwu6h1wiNhQsXliVGAwAcWY+kbAQQaBpOeBkESZA0MyggDBdSs3IRncHnm9HbFIzfCCdjfkFVukhbwtwYtoZDsDUJq8+hvZ6EH9FEtAbie/om0bNyOFbfSy+Imq1R2LNus1/kzLxzWisyY853TbP/DhEfRR7tKjq+UvwDxccnpKPHImBrHWpbGG0EUl8Pe+avZvz5Z/s2+fsr2xlHPu0mezvvPmscEhKCQk0jvE88ZJChOAAghW0gqm7uKaby9BqhwTAMUxwqMhHrSCusaRSjTwqN0QceigY3cMAnqA5unsugfjgePK1h+JEfpe3f8PNrGiL3x+cXyAKaPwLdy/u50jD8UCEPjvUj2pEfnquODWbaGX2stkmTZ7SOvP6PqA8l34oeU9AqasePzlZzZ9BR/0bWTDnfLDtLy8jrz8laUZZXuyowPv0ZslYNtTM+KRwzTj02k2lAwDHHWD6CqN/AHGu+175muRloC/mEZJ5stSIrAt7WHuwz1T7dH5JwoPqe+30ZZJAS2wEAO9CCz9Ob8eSzb+XtV3dgWwM63QYLjaL0SaGRRCP6UQMAoJ6ScPWDQOgfjBYNRDpHvx+KByBMn2A/tITZD31uPlNK/h+k/WO37bK5M6eocFDf64mMFjIEgicy+ngA8CgDQrDPFwQ/3JaUiQgQ025+oaHI91C1nbxSOAVNMvlMMSgmQMwH0Ye8vTBBGJOdvsZkCwq/pPGpYXVofMINx+Oah61w4Qh1e0ljAoXQAsCYRUXWQ9yMXz/USb23+kWF0pDkPtwjzmyIiBDRQiw8T4aiTW8Ltd8co65xhgifq8eIAFKyuktu2adReTiNCMMwDFMyfVLTSFAd6ikJAKhzXMSUpiGEcRyHx3oES9Mg/bk1nw3NHdDHBOdnL2PNZ6qyHba5x/mWJmG3ozQNX3hZWlBofoKvNQ0/NElJ4cAPZ75EPrxwtu/DhR8eK/KYr2wTTz5rSMQhXMw8Y83A8y3hjM6uCy/bjFwzYbQIR3/uazOcL8iY5wSVfXwyvH2kpTloTQSO9bkLh5SmISFJaSbWbJ4cvS9iliIROTZoI58mkc9smG2SEjnHBgsTEPbf3AfqGCkEHKV9wWhg6j5oIwK84F7y4GG7SOb0ozthn0bl6ZNCI05xxMMVL0kp4Tq55illifGI4Ic3rk/GmBHICXOsFhaUKzSyf8b5fpK26ScSA5LVnh885sL++PC1v8WHHz68MvC06ULt8+Doh6YnMnDUVwjTIV8/HIwAAvnanEKg3AeR/SC1zFDZppqoHd88LIVlL89nt89GHUFkrfoSnr5mDnyQNrf4IPW3A0XGR5bAsfPiqjbz+WCkcKPjyzYzCVdvS3ubjABx4UQERPC55eeAeWCL8J9N9gPfpr08uiKPUBDC3m/O0SYpATgi91h1nRyP4IXjiftxxKl6QoOQfxVjx9thoVGMPik0GIapRUhPorrWCguNYvRJoeHCQSysEe46QpunpIDRKsJjhbC1DsC3zEhqhuoLQIbnaYe49bvLds7ly3VkL27x9Wwu9xx7BZeAgAw1Ck94+gRXQOkJphEBMxUlwAu3HYruD8aT0TNjO74j0Dqya0hYUdJCGpMMhOUgltZ2fu3CnlHnW/1jro0Xfq9raXqBjhgMwYOvtAHKaJOcpAzUz90XGQj7utjoCPLcOIXI+IQT0TCAQOOQ9rbWKFy4yvlPjl6N5JAZuzYH2SuXIs54dW1g7cvW+oqbrbSTHyKiVQj9eX7tQpmtpAhegLlP4ACx8Dfo+k7Rvx1TG/RJocEwTG3CPo3K0yeFhh2TLCD07Cmw9Wb9YEjAC6elkgTUFNWHUUEkjD9AqQxCWHZfiKjmkc/4bH2u+hD5+atZIEFrONI6RpCA1HmBCFJPpU2uIGEtLS6Gmbdn7e9IbqMC+abs44Rw8moY2TEFNsqP4MMz5woH0Mtps/qrndxSH1NofPn6mq/fxT7XYyN72aqJpA62o38HaZ0XaGjqc2vcefqQrVlkO8Ptj6Pn2e1FNQzTh2Dbse4PKaxjle+Hsu6ldq5RpWGhUXn6pNCw0/wRjKPbEfYxAT6MqcmHWSUVJAvMPcb+jnwZt/M5uQv1ze6HbZ6y2zLO4PZ/6PrYdm6Kct80lGXWMnEUXvDAR/ShVspY7HZsp3j295YTY5As/Hkp186YMM3kQJmAfBCkNp2Zq2KSnpjFCNlxM+q3IfXn1pcK+zwzcZGRA5W5lbRg80V+B7ttpo3cS/zArXn6pNBgGKY24dVTladPCg0Pvolv8AFfBd36RjvwYH1uzQjtbbJmWxFtJCRavClfnAasz63tPMtvbS3B3ucJKwo8dBJ7wtNLZj2YZbYUSS1iJWbUMQueuhCwI6nbnbHrqagEdBtCO/eDmbT6PgmpU6kYsxKEo/tazAwUTYFupUjJk1olkt6FfERSqnRifIKC5b1qfGqljhobwdNLfL3APpnTBgjaEa7+dg458MI2JITWZwLTT/RakDBrpCPmq8hvRn2l7Ug359mRIGSZoogsTUUnugRU4DmR0Cnm9e/duj88K1tBNQj+ql1PmMhCozh9UmhkRAZtfvDjahNCr1ayb1B9I1hmKM+KzfDIBPplm5SCfdZ2lhkqnwofzS1VWGjYAX+2oCDhI6NvGD8iLILxZLQg8eHB04FuGX0s2Wk2rFxOpdcGyQDh6iEPGQi1ekhAf5+E1KubALJyHFmmllKFRgdzcBlzVqZz4zPPXXgCOtbFsz83nctZlQYAvjCCTGeMtUxHti8kn4/A9vcUi+FQXyyMRMgSMqYNdYxeMUXGVCuI4FimKj0OdR/4pO+ljMjAQxuqCWsalYfTiDAMwzAl0yc1DQ8ZpMMZpOubOm72yilPqd9kzEE+GeWbEHVOF0sbkhOnkddUlZv80D7WzJ6pYNZdrTEI0tsqjUjw3kpeaO23NQwA8P2MNSvPn8FXrZkJJtRmFZmJEJFmHARI9d0iupJIzdKF8NCxOUzUrGRrF0o7CHpuItvzJi+MZMXNP041PkE+pHT1mCKxLgg1Dm2SIzjaxGN+H4GmoBL8hTE28KwocGM8yk4pYs6H/jza1zxxGgU0k3wrtzKk2oVeiSet1VOOsH/T4Zh90vdSRmSQEVXUNAQ4uK8b6JNCo02k0RY+TFIkEfPNDWILCCDbj2GtVsryLWTbcvM9+LPJZ/+NmF/yZL61y8/aNntbUBAZn4ZJb2LMUCA/cqwtLFQf8qUUj/ZTBRhKbX7xETxYgWhQnC9g2ekdI0AA/eC0M7YWKygUEa6Wv8K+Tu2lgy9lfFmDDRBSXyMp3YipCgiERwbKz+Hq/cE1VkGJTpYAUX4eO4DQ/B4V+vqIAsKhwDXLl8fKPj4IEI0uAQ72hRMBIbQpSwoTeKh+V23k63upTaT0JKU6sE+jO2DzFMMwNYOaBHT11RHmzZuHMWPGoKGhAbvssgtOPvlkvPVW8ZoiCxcuDCs6mlcyWd1kj6XSJzUNDxlkQgdxhuyiNwZbu9BZZS1NI9shrc+LzITzOLwLqM+Fa2j4WcdFtQvfmlWrWR7BM/tJzeozekaebZKyNQx1jl2YKV88icYeD8EE9WU7yGGcvlrrgANpF0PS5poSbtoi2kX+srd+Wcfn+5mIqQpQzvFwIYCVFNK3Ax2JzGosHShnys8G2ln4HeGnwQde+C5/NmB7hp2vzoaACbiQkLBT0WRn0o2kNSGjXcjIbzsgQ56+lzxk9MKMvsTSpUsxc+ZMjBkzBplMBv/xH/+BY489Fq+//jr69etX8LzGxsaIcMmXBqYn0ieFBsMwtQcRtK+qa+10zDz16KOPRt4vXLgQu+yyC1566SV87WtfK3ieEAJDhgzpVB+rCZunsiBkLZct0b7pwy+qZZDwc7QMWyG22ynWfk55UvWvDDdLtN2Oq+mdITJ+8pFd0jW3Y9mO7srbn8t9LYg8HcWeu4DCz/kt2dj78/1+gPy/tULacLt9tX1sJZ1RvTgNoDrmqWy2bt0KABg4cGDR41pbW7H77rtj2LBhOOmkk/Daa6916Xu7iz6paQQZSMPMnMKBq8wldhEmZUKAUzDDbDQIz5iMFJEHAjmR44CoxDZ5qpwsB7jUW7D2AqGzXq3WEVapWjJt+9pJ6+qYDUFOJIZAZJuUrBVOwfvCN1GhWuCF6mzklHttp8yrbUpRfQu6ba4MyIcpw+SBtHMdWbETZnyRJ2A749Pb2ePT41apUBzdv+yCTHrMVnEqaWW+NWan6IKA3DiN4sWY1Hm544g6xPMVdSqUadexjssuwgTh6HvJySqw1f0YM2VXWwGAVCqFlpaWyGeJRAKJRKLgub7v46KLLsJhhx2GAw44oOBx++yzD+68804cdNBB2Lp1K66//nqMHz8er732Gnbdddcuj6GSsKbBMAyTh/nz56OpqSnymjdvXtFzZs6ciZUrV+K+++4rety4ceMwbdo0HHzwwTjyyCPxpz/9CYMGDcKtt95aziFUhD6pacQojjoEs4WkdOBaWUXVBFRHP5CVWoRMVTjfOpasWI72U4cUjwYP0nqE+wvEa5gkhVY6FGSMw164ekmtDM1WvsjomXHgCFfpLmBlxzXLU/X3km/FZPg52kAx7cKegesZszVDD+ps2O3ld/KaUq72tYsuvRXase0Y85Vd7hVe3mp9BJk3ViNbwwCCDLv5ytlGKvfpuiGmWp+wam/YWkWk9gjZTmizrftQID6jM6VfI9UBraSIdrZaR4/TquKH3CD3DBHIC+6lNmqDW0PlXmfNmoW5c+dGPiumZcyaNQt//etfsWzZsg5rC7FYDIcccghWrVrV8Q53M31SaCQoiTonGHrSkbogk2NS7hTIPSVLzj2V7UwrVv41+NzaNg2b9qz/dQoH8rRg8WCKEnnIn3sqX71wYQf6KdMDPP1wjOZmyi2wU7QuuBYaUj9MVciaOsZOk67bLGB2sa9D0DdT/zuSUkRYQYwwqdTteuGR+I3I90XHWEgQBuansOBSHkFh1wV3yNQTd8ixhI1JBe9YJrtIvES2eSpPYSZFttmgUJEmO/V5dkGmoO8iui3VlTHHquDXNt+HeoykvWRVy70CVuxOl9oIBpdIJNDY2Nj+8US48MIL8ec//xlLlizBnnvu2eHv9DwPr776Ko4//vgOn9vd9EmhwTAMUy5mzpyJe++9Fw8//DAaGhqwfv16AEBTUxPq6uoAANOmTcMXv/hFbd666qqr8NWvfhV77bUXtmzZguuuuw7vv/8+zj///KqNo1T6pNCoFy6STjB96h9zEA9nUnZRI1VjIyjxSnrby6NdkKURQGsc+Zfu5TewGK1FtZ29P38qkxg8vZLIj2ggau28H67vz1hR4hmRjmgdXpYTNntWbsc95DirLfOUA7egI9g21diOYF2QiCSiTtR87rZo2pBC8SpKA5HCsfabKHiQb7Qqa3zqOMAyT9nmN0t7cuDCEbGwp0a7cCkebFO0xKurtA7LVKfG6wijT2Sn8Mheup9dTCnf1cqnpwlLe4AwJiwhENE6gv6YhIVSCGvbWmAR/p/2jWbW5sewjeryfHt3UZ5VhB1dcnvzzTcDAI466qjI/rvuugtnn302AGDNmjWQ0vyVNm/ejBkzZmD9+vXYaaedMHr0aDz77LPYb7/9utT37qBPCo2446KfG/wB+7kwQkNAF5dR/3swAsT3TX4eH6Yan0+mkFPUzKSOjZKzzJKi2xHbvfanKPOUtAQbwQtt4T6Z8C6PHMTCh1RbKBxc4eu8QJJceEgDADKiDaZmtzJppY1ZhzydDlzANiHlroCyTTaB5yLXVBMIB1M73GS5zc2zpI4plG5F5+AiOwAzox/8tkku8OmEdc+tYEOQD18HaXqRMapxRs1scT1WVQ/cpUB4OBTXgsKlmF5VFIMbERA615m6bkLk9Rs4QuRIgGxBUqg6nzk+33FWlT6Ra55yBbRJSgpY/TXnqfsj5gMUjjPtu0i0xXP60J1Uo3JfKUJmyZIlkfc33ngjbrzxxg59T0+hTwoNhmFqjyDGinNPVZo+KTSSUqLODaZM9S6QKKJpZMjSOmS2BqKOFRGzlH2+ImqKis4Is53gttaSra3Yq7kCTUM5v42TPuMLbXJSs90MmZraEh4yVqLAjK6joO0U2lEshAQh1wGuKGSGKqRduHAgVZ0NWKYfyr9qKJu8q8is+BlfOLquiCAJgknrYbQOUyU+0EpUkr08jn4Ys5kQLlzE9PiUKcpF+D+52qHtWuYpV0hdztWVUmsV6ttsTSNntZL5k4TfW9gZnm3KyjbwSVujsE1OKpbHOs42Sbl5jlW/b9cHvPB3sz0jEReFfytMbdAnhQbDMLVJOerCd9Sn0dfok0Ij7ggkw2lYPwdIhLmfhSCtBai5p0cCmfB36JNVR8DWQExoheWkznZuG7K1EJCtiYjI59maC1nOeI+ErtngWRqKFAJeeIJ2cZNJgd1mz0+t4JRMuNulYDYefOzlvRFNfIWd0M6288cLahc6gthyCgtrqWlwXK62ESmlC1M5MSjkqpbcSh1pna11qPHZfwxfSLhK6ygwTh25nTU+W8NQ/8esMav4H1c4cKTatutTmL+Xo/dZS2NFYW0h6A8iqobMumTZWojtbNd+E2lpGpYmova50tTRcAGr3KsZT1toEUo4AnFZTU0jt0RB51phoVGMPik0YlIgGY48IQlJJ8wnKsyDV6ncGSJtvvEJyJDZ1iuppLUdXUSlj40IkKyb20e2icq04SuBpc0CxlXrE7RAkxQVFBm1+Cd8WAvfz/oS6/tDh7JrC4+sB2s2+WItIquHEF09pMw2DgWiIjgmmq7CfqjlR2QJZSM0VDse+br2NsiYVjIFxies1BOFxpl3dRTciLAAAoe3GnNMSLhSpaoRWoBIIbQAcfSDWURMR5Ft9XdUVyDboY3o+8jVElFBYrehy7kiaooK+kuRbXUNHUGQQq3iM3+tZHhALGPGWS2qsXqqr8FpRBiGYZiS6ZOaRtxy7sUkIR6apxxBkTKvAOCQ0HURMr7QM60MCTNztWa0XiFNw3qfPZEhRM1PahLnA1DavkllYjngAYhwSih8gpRKO4K2a+lYbiGNE5mknvkTSM+OddU5cnWkuaRgNh4ca9Vs0Mt0hTbZBJHP4ezaMkk5cODobeNYtuMTgmjj9s1TapZDRLoynoDIr0VZGoUrouNTzQfOcWV+yj8+HQWeNT6tPcGY3tRM2xHG4e1a2oVtnnItjUNas32tBWSZlNSQhHVsMUe4QH5Nw7H2ucJ84IZ/cweAG94TgaZBVt+UORTh/6THHNxXVdY02DxVcfqk0JAysNUCQEz6WmgIQUZA6Ce39QOSgEoHJWHKfIKyHlqIniqtjwmwHlhW0+E+sgSMbdbyrAeJFhr2/SEFMto8JbTgMXWqTbEdR0hdzjZYtaQysJqVSY5edQRAq/y5qT6EcPT5wUoje8VUKByyTFKOjuuw27HzIeVfQSVgrSYTpjY3gWCKP1knEEyhLCIt3Hz4us9BcF/x8encUtb4JDlW8SJzXY2pzpgRpR2HIaLCAsiNizCCNCog1DXIXlFlf27vL/S5LSgcQVY/1eTJCBBXkL5XXEHap2HuE1+b4aQ0K7+qBTvCK0+fFBoMw9Qi5U2NzuSnTwoNYanZgWlAqeVkZZYNI62FgIRZPWLmb5YdSZifmarNUWi+Y2sX9qTMXn0Vsa4I6wME8SH6NBFN66BNHGTV0Qi/xAPpGb5HntYCpGUustNb+HluvmgKC8t8Y5ULzbcayt62477t+gyOEFnt53w9QCIyy9Y9tExoEgJUoA/2+HR5VSEAFVvQjhPVHl/0uqn4EkSyw6prL6y/UxBnYbbVibZ2oOM3ZK4D3DY5RUxTdj/zXDsZ6QPp9hxENQxAOcKNScpoHb7+HqX5OkLoe8lObsjULn1SaDAMU3sEK+rYPFVp+qTQsEy6QXK2cJbqSILnq9mhmX2Z2gvQWodPZl7swMy8pKUnZCd3K4StfTiW/8NTXwoz03TIdJ6szyWs2AphJfvOo31IW9vJ4zsAYBIJWjPxfMsZg1jnaMLDYEtGbP5R3wWsbUsrsLqSN12h3VWyrq8AZB7fjbS1IGFrT3ZND8ckMrTHn0eTyjkm69rZEdx2DEUkKaDIvVrZUdm2VqH/7gW0i0Jahd0ndbD6bQphtBn7XlDahb0k17H8GALBPQJA/6idLC2pWDR/d8BCo/L0SaHhwL5pSN8I9k2hfnskhH6IE5EWIMFNlStAzEOa9EPcfkjb95TtKM/ep74j20XrWe2RsB6klP/mNatuTMPZdRpMKg+T2TUfpdS8sMuRyogQUcIh28yV24YdfJa9334kiMjYVfsmZsO3+uDDt8YXFX66P+2mwJCRYkm5Y7OvaXS//beJHISo6SgSQyFyhUWHBIX9HaCoMNLnUSSoDwgmUXawoT2p0hMldc/4xpHuZI+PqUn6pNBgGKY24YjwytMnhUZgLrAd4eF+GE1COwJBepmtsJzigDFb2U5x7dAWZnYfhE1YM/8sDcNHVOvI1jYAWIYVs+zUnnW61hQvMNeYbdV3exxaEyERSVSor5FlvrFrVWRjJxrMLkMq8szAZfj9wbZttsqORcgzZyUTp+EL6GsuYZvezEr9wn2QUN9G5OedHkdqfuQxlgXjtkx4iF5XkZVy3E7VYScA1OOF2WebpLI1lIhGIfJrFWacUe3Cvr62o9s4so15Si8syHKKm9+00bi1+coac3UgNk91A31SaNg3rit8OGEaDWkJDbUMhDyCtrj4gLkzSV88DyboTwU9CRIRASItAZLn0VvQ/6EFiH0zWgfrcBIBSxiZ/tgPGyWAbHNavprU2Q9VVU/CXlFlx2ZACw3roUlRf4XO4mqZxuxaDoEtP2pSy0GYNCLCCu6TEHrsBBM859t9IBERVr4es5WrKt/4soSifY2MQDL9sFNy2KukIvELWULDQbBSSu3LlwNK98sWFNbvKrw8kf6oNtQ+e6KkzUyWULBXT6ngPgd2nIavhYaaBAUpUpycdqsFpxGpPLxAjmEYhimZPqlpuNKkSQjSiISahiT4avWUmuI7jt4WUmoTj0NC17KQkQyzwec5kd1Q+810zMRmUGSfqZchrESFwf8CxlQlbM+wLf59gMKOGIe+ZcIRQf+DQyU8lV5DRUkT6SSGAlI3IoWTs5LIjlcQVnoSx0pk6AhjuLLTa0RnvOZNvhQiBkv10ium1JUJzlazTUdIPWt0gigcPT5pxeMok4YDkz5Frx6zNCnHSrwoIHSUu6qVYUd+O1aSQkcaDcS1shGom8/NyjSbr7xq1HRksDUJhb3aKRpJTvocW7sw32dFgasklhKIhQsHXEmQ4X2j7pOMlCbliOQ0In2Bvik0hEmHnnQySLjBkkt7ya3rhyYJ3wTFOT7ghJ97QkTqiJucVeH/wpi6bG3Xh0m/riDrvMB8FZ4nTHyryroryaRw8MgySfhZi560MDF9UF9LgnRGVw8El4ywUJ+rmy9jNeZb9mJjsnGtvFLRHFPabAHobSmElTXVPAEdy1RVbNmmyT2FSG4WZTYJirpawXo6cA8gNU5BEdljLplvpYkxC2Nd5I7PhWMJCJXN1jw0XSF0uhBX2GlrLNOoNvtkCQp9TczKJG1OtJZT5+aeMkLB7FPnkyWACge3Bv0iuFIJDV9Pqhzp61VT6j7xCUhIN2ccVYHYp9Ed9EmhwTBMbcJCo/L0SaERdwh1MpjDJ10PdbFgPm2bpzKe0i4k2vwwC6zvwws1kAxJqwiTgKe0g/A7PBJm5m7NBwNTlTKTmD6ZOhHmPM9ypitTmE8iyGIbbiutwxGAVLU1YDlQdaCHcSL7EGHRUsD3pWU6Cx3CZBL6uQLaaWy76WUek020xKmjU6o4QhYsQmSXNs1eGZRNcL2VWc04l33LFigI+vrAdyDUQ0Q40ayRIs92nvFJCFNAiiytQ0i4oYYRUwkIpclmG3OMRhV3gJilXcQsDUP9b0xDUdOR7bAGslY2WdcmkhE34nM35zmW2cqOvTAr8IxGYcy3HmJK63D8HPMUkUBdWIUp4TiIc7XXmqdPCg2GYWqPwGLJPo1K0yeFRlIS6txgdlQfb0NdXRsAQEgfpDSJsDZoLOPC84Jj23wHGU/5MSQyyr8hpfY5KK3CJ7tGhpn62TEb9k+TtGPaONV9IqPNQH0vab+KTyZSXPoiYrNWQc86yNmDZXA2zm1fypx1vmTN3ANHeehYzpM6PNvOr3wXLkTeynWOFBFHuLHlR+MaCqE1MjI1TzyrlK1PpDWujISJAvf9iH/DpGcxcSr5HhYOHF2eNgZXjy8mJGLW+AAgJiUSjvFjJMKviwkgZm0b/0aoXcDSNKQVjQ2jBZj/jW9CCNNfAbP8Nq+fw/KVCJDl0zBahVp67jqEWKiJOw7BDX1+rksQ4cVV9wkA1LUFemtSktaoqgWbpypP3xQajo96N/hx1dW1IdE/EBrSAfxQQMTaQuHR5sHLhA+KjAcvNFtlPAkvfJh4vrAe9OZ/7RQnETFRmVVVRtBESrxa5xlhYdrNWIWgVN0PF0CberD4VhyGfQ9Zpir9aPZ8kFAxGcqcZoSDR76Obwhc+8G2rs0BUyvDNknFpGMc3tJ2Cptte3WQXeMh28FrXzcdt0Km5olj7c/4xvkL34xfBH/c8I1jmbNMbEmwAEA9eMO2rVogLsz4XCERV8IiDLJIWCaphAPELee32o5bD9Z8hY6ClVTqIU7ajBQNsAv7bpuq7Hxj6nNEA/PMthWbIckSFqF5yvHhhveH43pwY+F5MV8XBVP3CQDUp4L7p86J6zLKTO3Cf2KGYWoG1jQqT58UGv2kh36JQOVO9G9DrCnYL1yhZ+PejnD21QZ46WDbaxNa6/AyQjvFPU9qx6DWNCCMyYmM+Smw/Jhjgp32edCzYI9kRMMAgpKzni7rKtAWfm+bEJC+NYO3TEBqn8aDjnInCMs6paaRpg92lldb07DrSqglp7Es57BtklIzbUcaM5or88ckCCBvOorsUrj20uOMWgTgCDhKu4BJ+yKI9PiE9WCxI9d9yqNpQGpNIzBJOWZ8YefV2GyTVDJH0wgdy8KUF45Z/7vWslelgQTJBKOmI1jXSQqyYlso4vQO/jfmLSFIXwspTLyF4/hw1JLasH6x43pwQu3CiRNEuGrCSQr9EyG92qAN/bYHmka/HR4SVQ0XDoy/5WmHKUSfFBpJ19d+jFgT4AwI74qYBNrCoLa6MN/SDoJsC2+gHQQ/3PYzAl7o9/BtoaGC6UjA96XeNgF7VkcsgWB8IZZZyxfwVJZW3wiNjDKLkUBaxwiYh3TKt6MMChmZLXNZ1j1CMH6OdoWGEFpQuELqlUS20LBXErnCpMxwLTt7dp1su5d293zrOtqxMTpHlw9kVN10AbSpdiKN2DmybIGdR2gIaUxSMjq+hLUNBAIjGT5U4xL6ARq36tAnpB8RFsHnvhYOruVjkJLgwASeqmtjUsRYQYrWAI2gsHwa0re2rfYcXwsLqf6PEWQybCsmIJLh9Yw7ZulXm3o4t6GuNTRPbau20GBNozvgNCIMwzBMyfRJTaPezSDRL4wCb3Ihm8JpVUzq6SvtCD6nRAYiFcZxJAiUDjWNNCFcVAI/48MPV1WpfGm+b7QLkIiap9S20kpgrZ7ypd72fGhtxXa6K00j4wk4arWSMNtSGOe1NgZZ9h47rQkg9IxdO+OFgK7b6fsQylEOO1lH+H+WSSpmObxj1koitX4/kizSNk8hqmnkm83Y2YB9MoYIj0yMSkbA1C+xV4x5iDZqaRsqnbZJx2fFR1irwGKWNmePNW5pF8oklXCARDizjzs+klqrIMTDlUlG0/DgOkbTcKzVTFJHY4f9EqT32dHhQlrpQyyTFKx9SrsQDiAdo12I8Ckg4+F5cQERD38/CRci9G6LpGuuZ5tWqZHYEtwI9VsySDrVnYfyktvK0yeFBsMwtQmbpypPnxQaCTcDtyGcdTUmgZ36BR+4DpAJZoEimQ7+35ExWseODCiMfhUp0qHHfoa0Y1D/Zj2zwhMkjFZBQk/zzT5b+7Ac6L6A5xkNBAi0Cy+MUG8TEm449U570nIqmyR7Us28PJMVj2AlRZRAzNKCgHDGrXNXydCJHNxMdnrx4Ltsf0V+P4YdER2zE/Zl+THsiOVCmoZWIiJLms0E2PEtc7uD6DLjcJsEdGLC4ApZPg1SM3Pl04g69CM+G+WzsJbZKpt+QhCSoUc+Ls12Qvpa04g7Jr9TTC13tbQOKX04elv1iyDsbaVVSGj1SGscElrTkFa5SiFhtAvXqH4iEf4fc6LahVpHm4gH9whg7hOf4Da0AgCSbgYJqXINVAMCrPT2XWuHKUSfFBrJeBtk/3AlTWMd0BgKjZgLtIU2p1Soq8d2QMSDfSLeBkqHDvJEBhSuqpIZH7rMtDJv+QSpfr8+mYcwkTFbmdwhEQFjm7q0gz2MD3EzAl7obXcyEm1e8CeUgiA99TCx/6yhIx2+TlmXIaGDzTxETT7BsdKSfsYpTBFnq1pdBB3k5sj8JqmYMP7TmGWSCrKikm4nXyyCDUX6aOqyZ0gYx3120sY8wY2qekrwxoenTHkEbdsxjvBo8J6deFCPKfwOV5hVUnHH19tJx7eERkYLi5j+P4OYiouQlmPaStuh4hKlQ1FBYNkLtQXSFiTKrOUAIlIJKtzvSojQpibioaCIO0AyfPgnXKAuNN8mYsE9Auj7RLR5kP0/D8aZaENSVtc8xVSeXvEXXr16Nc477zzsueeeqKurw4gRIzB37lyk0+lqd41hmB4EkV+WF1OYXqFpvPnmm/B9H7feeiv22msvrFy5EjNmzMC2bdtw/fXXd7i9WNyD7B/OnhrrgMb+AAByXQgv/MHs2BEe7AA7QuEUdyF2hClH0o7ROjKeNlVRGDAgPN9oFBnYth9jnrL2KectZQjS5A7RGogftu9koGNFpPThhBqOFI7lxgWIgj+t9sVD6rQbCVjLTGU0Aj34n+BbtWizS3wG36fMU9BJ+uJZab9tk1QsMkMPnb5AVkxCcIydxtvGt/rgWTVMHB9wwpm4iluJnBSOU22TBNJWrIygyKFhHwIcIaxki7DMU1YchjZPkR5bQhISlkkqIcO4IMdDPNQq4mEqG9fNwLViJKQ2HZkI7HymJWHZ8UQkYyHMAfaxoZNauOYPJVwn0CyCDgX/J2OBVgEAybjRNJJJkGojE/7w2tog+wfHxuMeYo75DVYHjtOoNL1CaBx33HE47rjj9Pvhw4fjrbfews0339w5oZH0Ifsngjf9+4MaGoJt1wUpoeGGqrrrAq4SIClj001nINKhip7xAsEBQKigJ883bfnQARzkQwsQVdyJyEr34ZGxvXsEEQYayFAY+RlAhvuEFHqRU2DHVoJCwCdV11s1K+CFMyiPpBUgaB70ytzjSeMvgPWw9WGpplo4mAJDjjR+DNt3ERUahJiV0dUuK2rXkSgU3KdWejlWfwWsMAVpdc4avx006UsBR/lppEAmHKy0Ah3VOB0r3sSVWfEmymejhYcp6BWThIRUPg1Pm6Tiro9EmFU5FgvzO2Wn6tCmI0C5CIRJSBVZcqavk1VfVpvopLTMUzISICPU79h1jLCICI3w/qhLgpKh0Kir021QKDREqg2y/5ZgPMnPkJDl8Cl0gXJoCewIL0qvME/lY+vWrRg4cGC1u8EwDNOn6BWaRjarVq3Cb3/723a1jFQqhVQqpd+3tLQAAJwkAfXBTIr69wM1NAYHuC7gZcw2AMTcQNsIt+GG7aUzQLpNbwtlR2pTeUjI5LYI8oQAAIRntsnWOKxgCVLbHsFpU2av8NhUYLYAlKaRf1akM+lmVMyHgB/aOjJEyITfHScTp6GUJIeMluD7JmjC/iqpJ63RCnV2tHc+k1RMGBNOkKgvPF5S1uqp3HH5QsAN93sk9OUVkkwZ2ix1SGsaZEIzXB8R85vlE49YdoBwdZhKgWKPzzJPRUsHB/sSwlS8i7s+EqEpKhHLaA0jFi6wcGIEJxGO3QVkOMkXrtC2L6VpCMdoFHYYvRDWUrRI7hhlhrJWIMQcaLtX3AXiMbMNAMkEEGoXVJcEJeuC/XVJwAmPUeapHSmI8F5y6lq0RlUdqCwxFhynUZyqCo1LL70U1157bdFj3njjDYwcOVK/X7duHY477jhMmTIFM2bMKHruvHnzcOWVV+bsd+oA9A9uBGpoMDcNYOwBseB/chxjMHekESDpNJBW2xlzEymTVJsHoXKKRPKk+1pAaPOUTyb/iA/tV6E2H4iHZqm0yQ+kAgwhyVotpJZvhWlL9JuwWySQCR8gcV+aTLlSIKaEhrU6Vwkdl0hve4Iiq4rU/7YfI2Ke0qYcY5KKSULc2o6ap0i3md88RZZ5SsBxlE9D6OA+25wW1EXP9d2QvS0A9WD1pHlgmLrfxmeTMz7LLAUAcUG6YFHc8ZFwVKGvjPZfxGKeFhZuKChkguAoQRE3gkLGpZbOQklgx5icIKVZESUte5n6Udj50KU0y7wcaSZFEaERrBikRDwwRQGBwOhXjxzCc6ihASK8l5w646epHuzTqDRVFRo//vGPcfbZZxc9Zvjw4Xr7ww8/xNFHH43x48fjtttua7f9OXPmYPbs2fp9S0sLhg0b1un+MgzD9HWqKjQGDRqEQYMGlXTsunXrcPTRR2P06NG46667IEtYD55IJJBQDj0LWSe1poHGhuKN9KsHhVqHcF1QPDBPiR0pIK7MU2kT35FR5ikfUDUHiIwG4vuI2EyAwLSlHeGeMVVZq7KkylmS8eHHTLEcT9mMBCGqbahuhNoFCZ0xNyMF4uEBbURWHEJ4DuxZuXEUm8oTliXEcg47lkkqcHIH20GchpmNx3XKDNIlRgPriYqgsBLxWfgkjNZD0vRLSqOZWOlCiIQ2SdnmKd83GoMvhfk7wKzOUs1FnN8ya3xKw7DMU9r57XiIOZ7ejofaRSyegZsMtcbQv+wkBZC0tAvXipuwVjnpi6w0XwljZrKDW6SllWhTlmPZ1hwTbxGPG606Gd4riQSoLtQu4u0E6zU26HtJ1kvEnWo7wsuhJbCmUYxe4dNYt24djjrqKOy+++64/vrr8fHHH+vPhgwZUsWeMQzTkyiPP4KFRjF6hdB4/PHHsWrVKqxatQq77rpr5LPO5IkR9S7Qr1/pJyj7rdsIxHeYfWmjaZh160ojyJjpuudZPgsyywJt7cKoBlorEZmMdqyrtfSU9rTWQY4Hx1FOcYLQ63Yz5it0ynYBL5yBZqSp+JcgMtX/wi4EjmLTXTv9iEJpGtnOb51aQyLiu1DbcYcQF2ZZqhvOzF3hW+Z3yu8Ih7Dqlvi6jofjQ9cSgSPNkmVpReJLs5zWy3KKa2ey9ZUmTsNKewJrWwaxGGocgEoRomIzPO3TiMcy2o8Rq/MDnxoAWRd+b1JChIU4RNw1cRMxyw+hfBD20lmRpXXYvozgQlqfi8jiDnItTUP9vhMq8jtp2iiF8F4S/WKIx7eXfl4ZGTx4cLhFyJ9PoOM0NLRjheij9AqhcfbZZ7fr++gIsn8C1NTYiROFcRAmkkAqECAindbr1pEJBUnGh1DmKd+Lmqd0NJ36nIwpy7fMWm2eMXcp4ZHOADtC84WTAanoPuHDSCEflBWnEZSOVWlEpF49lSFCPOxPRueNMl1wLceyjWs9oyN5pazVUHYNCWWSSghfB4DFhIlfCDK6hk5omVu6VI3Fs4SgG44hDYII82wIzzcPVWtplA/AtQIa9VxDWhly83xn9qIjnU9LRAP5gEAg6lVSrodEIqzZkvAQqwvHWReYcQDzv0i4QboOACIZM6uYYo6JC9JObMcyPzmWgHCiwiK4kNp8RY5jSbyYFiAUjwdCAuiYoLBQ95Lsn4Abb+1UG11lr732QiAs7NwxnYGgbJwsNPLTa+M0GIZhbNaseR9hOs4utBKc29raUo4u1SS9QtMoO/0ToKamrrVhax11dUCb0jDU0lvPTNc938R/kK1VmGW4On2J5xkTl29tt1kxIWommkoD28NZq8wAUuUU8RFTmoZSavyMdiJnfBPjkCGBTDhTNvkVhV1uQk9A7aqDevYtzCQ4LoNUGkAw+zbLTwkJYZaiKmdp3M7umlU7QuRxhBMJS2GT8MLBSWFSrwg4VmZbqWtlRA1e1pJku86GHYdiOfftdCFqfHFJRsMIo6ATTgbJ0HSYiGcQi4fLbOs8OKE1VNZLyPpQq1D/18WCDLJAEI2tNQ0rQaByeMdcbXIiR0ZNUsoUpZ3frongtpeOu652fpcDdS+JhiRiyerFaQQrIwXC7JTouJmKAPi47bbb0K8j5us+Rt8UGg0V+EHEovEdgPUM8skSGjDbEZ+HFeehzVMZ4ytRyRlTaSA0e2C7CxELV3O5bdb6/QxcY8EPv1dY6dWlrm/uk4dMeJ4uIytFxCKlBIyd1kkZAGJW2vO47buQPpLhAzYpPZ2HKS4toeF4cFV6cNczWW6dwmlEVAZgnwQyYQ4uR0hIL8zHBZMtV3hk9dSHH44viNNQD1ZziWzrjLqU9oqpuDQxGQnpIxkKC5XBNul4xjyVyCBeH+aW6g/I/sok5ZoUNvUqv1MCqAv3xS0BEo8b34MSHtYqKJJu1GehAu+0Q8bttMmpUzT2g9u/+74uH1u2bMaAAQPQOd9G8Lc955xzytyr2oLNUwzD1AxNTU34zW9+g2j1lVIItIy//vWvcN2+OZculb55dZq62cElhYk0BwDkmgaMucRymre1AW0qbYm1Uiulsu7GzDp6dwekTjWRBhAcozUO8uD7QRueb2baGZJIkjJPBf/7VhQ4YOZr+VZPxYRd7pQi5illkkpa0dEJ10MsdN7HY54uMuS4nnaE23UihCBdlMquO+L7Qp/regKyTZm2CDLUQARgiltJqZdjBo+HsE1lyUCQPiV7zHa6kKCYUqg9OSbepC40SSVjbdr5Ha/39Kxb9pdwGgLtQfSPA/1Cx3O9SgSY0JlkKRHXkdmIx0CxUANRGqxjrYjqaQxohGyoft++973v4Yc//CE6pm34AASOP/74ynWsRuiTQoMaqqxDF8O2PcdjIIRBVkpo7NhhVm3ZNm9HmgctAKmdGcF5TsZHPFyJ5VnV/9J+JuLfAICMpIh/Q5nNbaFhZ3u1l9YmrBVTSWWqsc02bgYxneXVh6OKD8WtinQOdNEh+5vJg67BTr6AF6ZT8TJS+0BUBuDomQBl7LTq0GniIYXOqZXJIzQcOzAxy4+RCIWfHls8g3gyzFxbR2aVVP9YICwAoH8S6B/+TfupnE51IC00kjrvU7uBdT0MamiA7Ff9PsfjcTz00EM4/fTTEeZAbueMwHm+fPlyXbGRKQybpxiGqTlOPfXUcKsUx3ygZYwePbqCPaod+qamkairdhc6jpp1CmvGT2Sy62bslVYeRBjXIVWhqJQPuUM5nQlO6MR1pauX76sVSK4kuL5J4qfraZAVCqDjNEx22iAtiNE6TIoQHzH1fa5nFRzy4cRDDSFGpriQWyhhYaAxACbrb9gzY4YiTwcAelLoccSkiU1xBXTCRkeaAEgXZm2CDl6U5iZxpUlv4kqrFogeG0GGKV5kApDJMA4j6ZqiRom4cXSH/1MyYQLr6pJlXdnUnVCyziylqzJCCDzzzDM47LDDUNxMFWgZq1ev7ra+9XZY02AYpiYZP348TMBfIQItY/fdd++eTtUAfVLTEG2p9g/qaag4jVQKoi10hKfTQKrNfN5mpTJJBbNflVKd2gA/XFvrZczyW983VfqUc9wqHhjJ6m4VHdR4ZJbn+iS0XyBjpy0h0st5Hc8xS2KlgFBh2IJMyVvfqj5nQT50x3wP8FWtEE/A09uO/q4MSXhq2zepU3wS1ljN+D2ytTgzfl3RkOySuHaKFuu6hteY2nyTzj7lAQnrb6P/luHt56YhVOyFvUS2l2kcoi1l1ZDpGbz99lvYe++9kV/bCFZYffrpp93fsV5M3xQaH3wI7LZr+weWixLiNIRKkpTJFI/TSLcFsRoAsD0F7AgF4Odt8D8P9vutbfBbg/YyYVaH9DYX27cH5pBtqRi2tQUPpM8zDlrD1Uafe8EDb7svlcxB2rfiNKwh2XEa6dCW1EYS6XBMaQdIhQ/spCexI/yOpOPBDVeSxXd4iClHuNPxOA0vjM1oy0ikw+2ML7Ej3E55EjtCh/8OT2BHOL6UL7DDU3226mZZ32XHabTp0rgOMmEOsYzvIhMKjbZQaKQ9B/3CNDJ1qTTin4d1M1p3QH4W/G1k/x2Q9duCxsM4DWHFaYiEyQVVME5DpQARskfFaYj31yLzUXVyTxXiS1/6EvKnFyGoNDM77bRTNbrWa2HzFMMwNc3GjRtghIQimKDs2PF5NbrUq+mTmkbbM6shVVTtyBGgAXlmGmq2v+1ziB3B7EnsSAGqfGwqbZbBtmVMYkH7f9+2cai1ojDlXvXnvpXx1gfplCIEP6PMS+GxbQQ/3PZ3AF4qnAWnJdpS4TLatiRSmeBPu70t/N9zsT2caW/LSL29w5P4POxayvo/pUJFfFMtz047rSrbBRHTalsgEW7HHYmEzggbQ8JykOv0ItLUpJCC4KiqeSUkLPQgrFgTgbTur0RbeEzKKgmb8oG0Z7Yz1vh0xcJIopGgjWDJbZgRWAKJ8HeTcCTqw5m9igivc+Lotz3c/sxHXbgkty6WQcJVsSkZxBLBg8oNqzI6CYJUOQNjwpR4jYmgTKvqCABhZbkVEqayn12lT2saTnTlgkp+6NqJEK3KfdpBn9C1NSKV+/LEh4gtmyHefDe4li+uw4fv9rzl7EHNHrWiQ10cH/fdd1/eejtMcfqk0HhhxWDs/0GQkGzgTk8j3himF3dMHIAfWoC8NgmvLXxQZSQyyi/gOfA8ZReXxkbuq1U8Ji7AhwAouOF8ywdg7OZCH0uw7eamfrduH0KbRTJk7PRtvtAPyzQJ/YBUsiZtCYK0D6TDhtOej3RocmlTpiXykAnNZRl4Wlj41kxNhkqqAwk3VPtdIeCGARYxKXRxJ8fadqWAI92wDRPvIWXuMy8f6rFuV8jNkC1zyYo78eGpDL5EenwZ8kyWX3jwwrPzjU9AWOOTiFvji4cP7LijBKVraoRLE/QYCYC0suNGa6WblWtKeEpBVrlvs09dH2EXqxJWFpnIPl8fK0IHkiPt0rq+CbB01CowK34mRnDUirC4iZ9R90m6ReLTzUFantWfDcXbW/PlCq4+n3/eivr6etjRRt/61req16FeDJunGIapeerq6nDXXXchmF74WLp0KQfydRJBnali1EvZunUrBgwYgPO/+gvsXB+o0f1doRPSCSsGQl2VjFX+wl5d4xFFZr3ZFcOIoiuNfPvzPFdczXHtPwdF9qt9pLO7EpFu1yfoGbMHH17o1vXDWAlPtCET7vPQBi+cdXrUpo+lMAjCRwa+rsfh5YzNRkDAUQqrkJDhthCumfnChRRKu3AgQu0oOM/cuGp2L4voGn4erSfoZViYShB8NXbKwIcaU3R8qjqTh0y74xOhpiGFExmfA5UwMTDvOOTCCVPEuHDgULAtSZpjIeGocSotAkI/wBxhiuoKS3uwr4g6NmfGl3XZ7OsoRDT2RX2HXSXWCQ8QgKXhmDIcwjpW/R7bfKA1XDLXks7g4/SnePDF/8SWLVvQ1NVM0mXG87wwr5QAkd/u8Ux++pTQWLt2bZg+mWGYSvLBBx/kVNlkaoM+JTR838eHH36IhoaGHqOatrS0YNiwYfjggw/Q2NiJaoI1DF+b4vTE60NE+Oyzz9Dc3Awp2fpdi/QpR7iUssfOfhobG3vMjd/T4GtTnJ52fXqaWYopLzwVYBiGYUqGhQbDMAxTMiw0qkwikcDcuXM5yCgPfG2Kw9eHqQZ9yhHOMAzDdA3WNBiGYZiSYaHBMAzDlAwLDYZhGKZkWGj0IK655hqMHz8e9fX1GDBgQLW7U3UWLFiAPfbYA8lkEmPHjsWLL75Y7S71CJYtW4YTTzwRzc3NEEJg0aJF1e4S04dgodGDSKfTmDJlCi644IJqd6Xq3H///Zg9ezbmzp2Ll19+GaNGjcKkSZOwcePGanet6mzbtg2jRo3CggULqt0Vpg/Cq6d6IAsXLsRFF12ELVu2VLsrVWPs2LEYM2YM5s+fDyBIATNs2DBceOGFuPTSS6vcu56DEAJ//vOfcfLJJ1e7K0wfgTUNpseRTqfx0ksvYeLEiXqflBITJ07Ec889V8WeMQzDQoPpcWzatAme52Hw4MGR/YMHD8b69eur1CuGYQAWGhXn0ksvhRCi6OvNN9+sdjcZhmFKok9lua0GP/7xj3H22WcXPWb48OHd05lews477wzHcbBhw4bI/g0bNmDIkCFV6hXDMAALjYozaNCgsLA9UyrxeByjR4/G4sWLtYPX930sXrwYs2bNqm7nGKaPw0KjB7FmzRp8+umnWLNmDTzPw4oVKwAAe+21F/r371/dznUzs2fPxvTp0/GVr3wFhx56KG666SZs27YN55xzTrW7VnVaW1uxatUq/f69997DihUrMHDgQOy2225V7BnTJyCmxzB9+nRCUBo88nrqqaeq3bWq8Nvf/pZ22203isfjdOihh9Lzzz9f7S71CJ566qm8v5Pp06dXu2tMH4DjNBiGYZiS4dVTDMMwTMmw0GAYhmFKhoUGwzAMUzIsNBiGYZiSYaHBMAzDlAwLDYZhGKZkWGgwDMMwJcNCg2EYhikZFhoMwzBMybDQYBiGYUqGhQbDMAxTMiw0mB7H73//e3zhC19AKpWK7D/55JPxne98p0q9YhgGYKHB9ECmTJkCz/Pwl7/8Re/buHEjHnnkEZx77rlV7BnDMCw0mB5HXV0dvv3tb+Ouu+7S++655x7stttuOOqoo6rXMYZhWGgwPZMZM2bgH//4B9atWwcAWLhwIc4++2wIIarcM4bp23A9DabHMnr0aJx++uk49thjceihh2L16tUYNmxYtbvFMH0aLvfK9FjOP/983HTTTVi3bh0mTpzIAoNhegCsaTA9lq1bt6K5uRmZTAa///3vccYZZ1S7SwzT52GfBtNjaWpqwmmnnYb+/fvj5JNPrnZ3GIYBCw2mh7Nu3TqcddZZSCQS1e4KwzBg8xTTQ9m8eTOWLFmC008/Ha+//jr22WefaneJYRiwI5zpoRxyyCHYvHkzrr32WhYYDNODYE2DYRiGKRn2aTAMwzAlw0KDYRiGKRkWGgzDMEzJsNBgGIZhSoaFBsMwDFMyLDQYhmGYkmGhwTAMw5QMCw2GYRimZFhoMAzDMCXz/wO/rM2sHIUoGAAAAABJRU5ErkJggg==", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "image/png": "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M1OuueYa2bBhg7HNxo0b5aabbpLc3FxxuVySm5srt912m3z11Vd1xh7pfl6vVx5//HHp0aOHuN1uad26tfTt21fmz59frUvj8uXLpU+fPsZ2V199taxfv954/8iRI3L99ddLy5YtIxoItmrVKuN4mZmZdQ4EO1ckCUBE5L333pPLL79cUlJSJDc3Vx5++GF56623qsVTWloqt99+u7Rq1aregWA333yztGzZUr799tuw9a+//roAkMcff7zeuCLxwgsvyIUXXigul0u6desmTz/9dFi3W5HaE0BFRYU89NBDkp2dLW63W/r16yfr1q2r8XP++c9/yqBBgyQ5OVmysrJk6tSpUlJSYso5UPxSROqpyyAiIktiGwARkU0xARAR2RQTABGRTTEBEBHZFBMAEZFNMQEQEdmUreYC0jQN3333HVq2bNmgYf9EVDcRwZkzZ5Cbm1vnRIUUH2yVAL777ru4mdyMyMoOHjyIDh06xDqMah58aDzefutD7NjxZY1TYNuNrQaCFRcXB+bIVwGwBEBkPgGgGU+ziyf79u1Dz54XIyenDaY+MAYPzlgc65BiLmHKaEuWLMGll16K9PR0pKenY+DAgfjHP/4R1TGqqn0ULly4NNmCuKxinTnzbtx+ez6eXTwdC//75YieJWF1CZMAOnTogMceeww7d+7Ejh07MHToUNx00034/PPPYx0aEcW57du34x//2I558+/EiBH90bfvhVj4m7qfJW0HCV0FlJmZid/+9re4++67I9q+pKQkUCx1IHinQkRmEgB+FBcXV3s0ZqyICAZf1QtDhvTG/Pl3AQB27dqLwVc+gC+/NO/ZE4koYUoAofx+P/7yl7+grKwMAwcOrHU7j8eDkpKSsIWI7OX111/H118dwkMPjTfW9e59Hm655Wr88pc/iWFksZdQCeDTTz9FWloa3G437rvvPqxevbrOZ9QWFBQgIyPDWNgDiMhefD4fHnnkp5gzZyJatkwNe2/Br+/G6tX/xM6dO2MUXewlVBWQ1+vFgQMHUFxcjL/+9a/4wx/+gC1bttSaBDweT9jTpkpKSgJJgFVARE0jvqqAnl08Hc8+8zfs+vdyJCVV7/X+y1++iA8//BLvbNwZlw3XTS2hEsC58vPz0a1bNzz//PMRbc82AKKmFj8J4MyZM+jWrSOef/5B3HjTlTVuU1xcigsv+BFeemkl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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "# plot the fields\n", + "for i in range(mode_solver.mode_spec.num_modes):\n", + " mode_solver.plot_field(\"E\", \"abs\", mode_index=i)\n", + "\n", + "plt.show()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "As one can note, the use of PMLs can lead to non-physical solutions. In this particular case, the physical mode is only the third one. Hence, when dealing with lossy structures, where PMLs are needed, it is important to carefully analyze the fields to exclude the non-physical ones. One way to achieve this is by looking at the effective index, which is approximately 2.4 for the real mode. Hence, we can just look at the mode closest to this value:" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": {}, + "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", + "
wavelengthn effk effloss (dB/cm)TE (Ey) fractionwg TE fractionwg TM fractionmode area
fmode_index
1.934145e+1401.552.8184993.787846e-01133368.9712461.000000.9692060.6483221.405865
11.552.7322044.492293e-01158172.3516661.000000.8971110.6695131.245057
21.552.4052653.473466e-080.0122300.979560.7268400.8143110.185759
\n", + "
" + ], + "text/plain": [ + " wavelength n eff k eff loss (dB/cm) \\\n", + "f mode_index \n", + "1.934145e+14 0 1.55 2.818499 3.787846e-01 133368.971246 \n", + " 1 1.55 2.732204 4.492293e-01 158172.351666 \n", + " 2 1.55 2.405265 3.473466e-08 0.012230 \n", + "\n", + " TE (Ey) fraction wg TE fraction wg TM fraction \\\n", + "f mode_index \n", + "1.934145e+14 0 1.00000 0.969206 0.648322 \n", + " 1 1.00000 0.897111 0.669513 \n", + " 2 0.97956 0.726840 0.814311 \n", + "\n", + " mode area \n", + "f mode_index \n", + "1.934145e+14 0 1.405865 \n", + " 1 1.245057 \n", + " 2 0.185759 " + ] + }, + "execution_count": 6, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "mode_data.to_dataframe()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "In most cases, the effective index is not known beforehand. To automatically filter the correct mode, we will create an auxiliary function that will compares the field energy around a given radius at the center of the simulation plane with the fields outside it, and return `True` if the field energy inside is higher than the energy outside, and `False` otherwise. Also, we will define a function to iterate through the modes and return the first valid mode." + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": {}, + "outputs": [], + "source": [ + "# function to decide if a mode is a valid solution\n", + "def isMode(mode_data, mode_index, radius=1, freq_index=0):\n", + " E = abs((mode_data.Ex**2 + mode_data.Ey**2 + mode_data.Ez**2))[\n", + " 0, :, :, freq_index, mode_index\n", + " ]\n", + " center = (\n", + " E.y.min() + (E.y.max() - E.y.min()) / 2,\n", + " E.z.min() + (E.z.max() - E.z.min()) / 2,\n", + " )\n", + "\n", + " bmInside = (abs(E.y) < (center[0] + radius)) & (abs(E.z) < (center[1] + radius))\n", + "\n", + " if E.values[bmInside].sum() > E.values[~bmInside].sum():\n", + " return True\n", + " else:\n", + " return False\n", + "\n", + "\n", + "# function to find the first valid mode\n", + "def findMode(mode_data, radius=1):\n", + " for i in range(mode_data.Ex.shape[-1]):\n", + " if isMode(mode_data, i, radius) == True:\n", + " return i\n", + " return None" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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M1OuueYa2bBhg7HNxo0b5aabbpLc3FxxuVySm5srt912m3z11Vd1xh7pfl6vVx5//HHp0aOHuN1uad26tfTt21fmz59frUvj8uXLpU+fPsZ2V199taxfv954/8iRI3L99ddLy5YtIxoItmrVKuN4mZmZdQ4EO1ckCUBE5L333pPLL79cUlJSJDc3Vx5++GF56623qsVTWloqt99+u7Rq1aregWA333yztGzZUr799tuw9a+//roAkMcff7zeuCLxwgsvyIUXXigul0u6desmTz/9dFi3W5HaE0BFRYU89NBDkp2dLW63W/r16yfr1q2r8XP++c9/yqBBgyQ5OVmysrJk6tSpUlJSYso5UPxSROqpyyAiIktiGwARkU0xARAR2RQTABGRTTEBEBHZFBMAEZFNMQEQEdmUreYC0jQN3333HVq2bNmgYf9EVDcRwZkzZ5Cbm1vnRIUUH2yVAL777ru4mdyMyMoOHjyIDh06xDqMah58aDzefutD7NjxZY1TYNuNrQaCFRcXB+bIVwGwBEBkPgGgGU+ziyf79u1Dz54XIyenDaY+MAYPzlgc65BiLmHKaEuWLMGll16K9PR0pKenY+DAgfjHP/4R1TGqqn0ULly4NNmCuKxinTnzbtx+ez6eXTwdC//75YieJWF1CZMAOnTogMceeww7d+7Ejh07MHToUNx00034/PPPYx0aEcW57du34x//2I558+/EiBH90bfvhVj4m7qfJW0HCV0FlJmZid/+9re4++67I9q+pKQkUCx1IHinQkRmEgB+FBcXV3s0ZqyICAZf1QtDhvTG/Pl3AQB27dqLwVc+gC+/NO/ZE4koYUoAofx+P/7yl7+grKwMAwcOrHU7j8eDkpKSsIWI7OX111/H118dwkMPjTfW9e59Hm655Wr88pc/iWFksZdQCeDTTz9FWloa3G437rvvPqxevbrOZ9QWFBQgIyPDWNgDiMhefD4fHnnkp5gzZyJatkwNe2/Br+/G6tX/xM6dO2MUXewlVBWQ1+vFgQMHUFxcjL/+9a/4wx/+gC1bttSaBDweT9jTpkpKSgJJgFVARE0jvqqAnl08Hc8+8zfs+vdyJCVV7/X+y1++iA8//BLvbNwZlw3XTS2hEsC58vPz0a1bNzz//PMRbc82AKKmFj8J4MyZM+jWrSOef/5B3HjTlTVuU1xcigsv+BFeemklrrvuumaOMPYSqgroXJqm1flMXCKyr8cen4oLu3fEDTdeUes2GRlpmP2rCXj44anVns1tBwmTAGbNmoWtW7fi22+/xaeffopZs2Zh8+bNuOOOO2IdGhHFmcOHD2PR06/h8cfvrbdq5557boDH48Py5bOaKbr4kTAJ4NixY5gwYQIuvPBCDBs2DB999BHeeustXHvttbEOjYjizK9+NRnXX385BgyovZNIkMuVhIULJ2PevBUoKytrhujiR0K3AUSLbQBETS32bQCffvop+ve/DJ98ugJdu+ZGtI+IYPDgaRgxoh/mzV3RxBHGDyYAIjJR7BPAyJEDcGH3jnjqqalR7ff++5/hulEP4+uvv0F2dnYTRRdfEqYKiIioPhs2bMAHH3yORx/9UdT7DhrUE9deexnmzbu3CSKLT0wARGQJmqbh4Yfvx8xZd6BNm4bNRLrwN5Px0kvrsHv37oj3KSgoQL9+/dCyZUu0a9cOo0ePxp49e8K2GTJkCBRFCVvuu+++BsVoJiYAIrKEV155BSdPlmDatLENPsYFF+Thrruuw8MPRza/GABs2bIFU6dOxQcffID169fD5/Nh+PDh1RqUJ0+ejO+//95YnnjiiQbHaRZbPRCGiKzr0Ucfwq9/fTeSk12NOs6v5kzEBeffge3bt2PAgAH1br9u3bqwnwsLC9GuXTvs3LkTV111lbE+NTU17toWWAIgIks4ePAYrh7Su9HHycpqhYt7dMaBAwcatH9xcTEAfbbiUK+88gratm2Lnj17YtasWSgvL290rI3FEgARWYem6UtjicDn81WbQdjtdtf5KElN0zB9+nRcccUV6Nmzp7H+9ttvR6dOnZCbm4tPPvkEjzzyCPbs2YO//e1vjY+1EZgAiIhqsHr16mozDcydOxfz5s2rdZ+pU6fis88+w7vvvhu2/p577jFeX3LJJcjJycGwYcOwb98+dOvWzdS4o8EEQETWYVYJAMCYMWOwbNmysHV13f0/8MADePPNN7F161Z06NChzmMH2xb27t3LBEBEZArTqoCApKSkiAaziQimTZuG1atXY/PmzejSpUu9++zatQsAkJOT09hIG4UJgIisxZTJDSI/xtSpU7Fy5Uq8/vrraNmyJY4cOQIAyMjIQEpKCvbt24eVK/Xpptu0aYNPPvkEP//5z3HVVVfh0ksvNSHWhmMCICJqhCVLlgDQB3uFWrFiBSZNmgSXy4UNGzZg0aJFKCsrQ15eHsaOHYvZs2fHINpwTABEZB0mtgFEqr7p1PLy8rBly5ZmiiY6TABEZB0mdgO1AyYAIrKOGJQAEhlHAhMR2RRLAERkHSZ2A7UDJgAisg4Rk6qA7JEBmACIyDIU0aBI4xOAXZ4XyDYAIiKbYgmAiKyD3UCjwgRARNahib5QRFgFRERkUywBEJF1aCb1ArJJIYIJgIisQ8waCWyPDMAEQETWIZq+UETYBkBEZFMsARCRdbAbaFSYAIjIOtgNNCpMAERkHewFFBW2ARAR2RRLAERkHewGGhUmACKyDEXToLAKKGJMAERkHSIm9eCxRwZgGwARkU2xBEBE1sGHwkeFCYCIrMOsR0LaowaIVUBERHbFEgARWYdpI4HtUQRgAiAi6zBtLqDGHyIRMAEQkXWY1ghsjwzANgAiIptiCYCIrMO0gWD2wARARNZh1lxANskhTABEZB0a+DyAKLANgIjIplgCICLr4CMho8IEQETWwbmAosIEQETWwZHAUWEbABGRTbEEQEQWouldQRvLHgUAJgAishDTqoDsgVVAREQ2xRIAEVmHZtYDYexRimACICLrYBVQVJgAiMg6OA4gKmwDICKyKZYAiMg6xKQqILYBEBElGDFpHIBNMAEQkXWYNR20PQoAidMGUFBQgH79+qFly5Zo164dRo8ejT179sQ6LCKihJUwCWDLli2YOnUqPvjgA6xfvx4+nw/Dhw9HWVlZrEMjongR7Aba2MUmEqYKaN26dWE/FxYWol27dti5cyeuuuqqGEVFRHHFtG6g9kgCCZMAzlVcXAwAyMzMrHUbj8cDj8dj/FxSUtLkcRERJYqEqQIKpWkapk+fjiuuuAI9e/asdbuCggJkZGQYS15eXjNGSUTNTkyqArJHASAxE8DUqVPx2Wef4S9/+Uud282aNQvFxcXGcvDgwWaKkIhigm0AUUm4KqAHHngAb775JrZu3YoOHTrUua3b7Ybb7W6myIgo5vhM4KgkTAIQEUybNg2rV6/G5s2b0aVLl1iHRESU0BImAUydOhUrV67E66+/jpYtW+LIkSMAgIyMDKSkpMQ4OiKKCyK2uXs3Q8K0ASxZsgTFxcUYMmQIcnJyjGXVqlWxDo2I4oWAbQBRSJgSgDCrE1F9zPoCt8nXTcKUAIiIyFxMAERkHcFeQI1doigCRDJP2dmzZzF16lS0adMGaWlpGDt2LI4ePWryyUePCYCIrMOscQBRVAFFMk/Zz3/+c7zxxht47bXXsGXLFnz33Xe4+eabm+ACRCdh2gCIiOoVg0bc+uYpKy4uxrJly7By5UoMHToUALBixQpcdNFF+OCDD3D55Zc3a7yhWAIgIqqBz+dDSUlJ2BI6t1htzp2nbOfOnfD5fMjPzze26d69Ozp27Iht27Y1TfARYgIgIuswbS4gwerVq8PmEsvIyEBBQUGdH1/TPGVHjhyBy+VCq1atwrZt3769MZ4pVlgFRESWIZpATKoCGjNmDJYtWxa2rr6pZYLzlL377rumxNDUmACIiGqQlJSE9PT0iLevbZ6y7OxseL1eFBUVhZUCjh49iuzsbDNDjhqrgIjIOoJTQTR2ieojBQ888ABWr16Nd955p9o8ZX379kVSUhI2btxorNuzZw8OHDiAgQMHmnLaDcUSABFZRwweCl/fPGUZGRm4++67MWPGDGRmZiI9PR3Tpk3DwIEDY9oDCGACICIriUE30CVLlgAAhgwZErZ+xYoVmDRpEgDg6aefhqqqGDt2LDweD0aMGIHnnnuuWeOsCRMAEVEjRDJPWXJyMhYvXozFixc3Q0SRYwIgIusQk0oANpl8kgmAiKzDZtM5NxYTABFZhlnjAGxSAGA3UCIiu2IJgIisg1VAUWECICLrMKsR2CaPBGMCICLr4CMho8I2ACIim2IJgIisowFz+dgZEwARWYZo+tL4A5lwjATAKiAiIptiCYCIrMOs2UBtggmAiKzDtG6g9sAEQESWwTaA6LANgIjIplgCICLrMG0qCHsUAZgAiMg6tMDSWPb4/mcCICLrEDFnOmi7YBsAEZFNsQRARNbBKqCoMAEQkXUIbPPlbQYmACKyDLMeCWkXbAMgIrIplgCIyDrYBhAVJgAisgwRc6aCsMn3P6uAiIjsiiUAIrIOVgFFhQmAiKzDrNlAbYIJgIisgyWAqLANgIjIplgCICLLENEXigwTABFZhlndQO2CCYCIrINtAFFhGwARkU2xBEBElmHWQ+FtUgBgAiAi62AjcHSYAIjIOjRFXxrLJkmEbQBERDbFEgARWQa7gUaHCYCILENEgYgJVUA2wSogIiKbYgmAiCzDrG6gdmkEZgIgIsvgOIDoMAEQkXWY1QZgk3YEtgEQEdkUSwBEZBmiKRAzBoLZBBMAEVmGgFNBRIMJgIgsQ58LqPElALvkkIRqA9i6dStuuOEG5ObmQlEUrFmzJtYhERElrIRKAGVlZejVqxcWL14c61CIKA4F2wAau9ilCJBQVUCjRo3CqFGjYh0GEcUpTgcdnYRKAEREdeFcQNGxdALweDzweDzGzyUlJTGMhogoviRUG0C0CgoKkJGRYSx5eXmxDomImpCmKaYsdilFWDoBzJo1C8XFxcZy8ODBWIdERE0s2A7QmMUuLF0F5Ha74Xa7Yx0GEVFcSqgEUFpair179xo/79+/H7t27UJmZiY6duwYw8iIKB6wETg6CZUAduzYgWuuucb4ecaMGQCAiRMnorCwMEZREVG8YAKITkK1AQwZMgQiUm3hlz8RAYAmiilLtO0A9c1SMGnSJCiKEraMHDnSvBNvoIRKAERE8SiSWQpGjhyJ77//3lj+/Oc/N2OENUuoKiAiorqYNx10dMeIZJYCt9uN7OzsxgRlOpYAiMgyzOgC2lTdQDdv3ox27drhwgsvxJQpU3Dy5Mmm+aAosARARJYRrMNvLBHA5/NVmz2goV3LR44ciZtvvhldunTBvn378Mtf/hKjRo3Ctm3b4HA4Gh1vQ7EEQERUg9WrV4fNJJCRkYGCgoIGHWv8+PG48cYbcckll2D06NF488038dFHH2Hz5s3mBh0llgCIyDpMeiAMAIwZMwbLli0LW2fWwNKuXbuibdu22Lt3L4YNG2bKMRuCCYCILEODOVVAAJCUlIT09HRTjnWuQ4cO4eTJk8jJyWmS40eKCYCILMOsgWDRtgPXNUtBZmYm5s+fj7FjxyI7Oxv79u3Dww8/jPPOOw8jRoxodKyNwQRARNRIdc1SsGTJEnzyySd46aWXUFRUhNzcXAwfPhy//vWvYz5XGRMAEVmGFliaW3CWgtq89dZbzRhN5JgAiMgyzJsLyB7zCbEbKBGRTbEEQESWISYOBLMDJgAisgxOBx0dJgBqEMWCdaQSdec/ijea6AtFhm0AREQ2xRIAEVlGrAaCJSomACKyDA0KNFOqJ61XxVkTJgAisgzT5vO3SRGAbQBERDbFEgAZourZozS0iNwc9xwNmwxAieKujz2G4pNp4wBMiCURMAEQkWXocwHZo/7eDKwCIiKyKZYAiMgyBPaZxsEMTABEZBmmPRTehFgSAROAjdTbyFtrw271msJaj6XUV6sYB43AUvP7UmMrcM3b1tdgzEbi2BAoELYBRIxtAERENsUSABFZBieDiw4TABFZhnnPA7BHNRITABFZBtsAosM2ACIim2IJwKLq7PFTrbdP+H1A2L5hvXpUKNV6+TjC1imBY1XfroaeRPX2GIqc1NizR6txGwlZr6/z6/GEHSf4pyOs15DRu0epfvzAAQNvh19j9gpqHma1Adjlb4sJgIgsg1VA0WECICLLsGIvoK1btzZov86dO6Njx451bsMEQEQUxyZOnBj1PoqiYPr06fjpT39a53YNSgBDhw7F1Vdfjblz54atP336NMaOHYt33nmnIYclImoUK04HvX///iY7doMSwObNm/Hpp5/i448/xiuvvIIWLVoAALxeL7Zs2WJqgBSZ2qdmqGm9WktDb2gDrsN4rSpO431VdQY+T99WVZ0hr5Oghhwj2MirhDQUKyGNwYriCIko+gZhLawx11/1OrBeRIMEGnhFNKOBV4MGTfMZ22paZbXXwQZeTSpDGob9IQ3CGiA1NPQqNTcM1/T3w4Zh8wni68s73jW4G8aGDRtw5MgRXH755fj2229NDImIiEK9+uqr8Hq9xs+HDh2CplXdbJSXl+OJJ56I+rgNTgA5OTnYsmULLrnkEvTr1w+bN29u6KGIiEwRnA20scu5pbtYu+2221BUVGT8fPHFF4fdeJ85cwazZs2K+rgNSgBKoFrB7XZj5cqV+NnPfoaRI0fiueeea8jhiIhMoZm0xFs1kpzzkINzf26oBrUBnPvhs2fPxkUXXdSg1moiIrOIKLaZx8cMDUoA+/fvR1ZWVti6sWPHonv37tixY4cpgRERUdNqUALo1KlTjet79OiBHj16NCogilxkPX9Cp2kIrFdUIKy3TpK+ZUhvH4fq0l+pTjhUNwDAqbrgVFP114q+zqWkIEnR1yWJG0lwB1674Az0JHKIE2rgsx1wGK9VKEZ1ohrSP6iuaSyCPWf0orr+WkSgKcH1An+g54+mCPyK3qunEn74FL0RzQcPfIpHfy3l8EqFvo14UKmV6681fVu/5jF6Bvk1L8J7BwV6EgV6BikhPYPCeviE9gwKKT2Hnid7BJkjWIVjRW+99RYyMjIAAJqmYePGjfjss88AIKx9IBocCEZEliGw7lxA51ax33vvvWE/K7U+0a92TABEZBn6OADrtQGEdvk0E6eDJiKyKZYAiMgyrDgddJcuXRpUvdNkcwFRbEXT+BtJw68SaPwNNgI7HSlwBhqBkxxpcKtpAIBkJR2pkg4ASNNaAgDSkYyWDv1YqU4HWiQpgdeAMxBPkgo4Ao20DgVwBkJyqqGvxXitAFAVMV4Hfxk1UYzXlQJUakrI66r1/sBGflHgM9YLygOzPJT5BOWVekPxmUofSuQsAKBUPYNyRwkA4Kzof3q0Uvj8pfoxNC8q/XqDsSKVEHEG4gpMJSE+YxoKvUE4+PwBFUbTpKKENQQHBf+e2BjcOFacDrqwsLBB+3Xu3LnebZgAiMgyrDgd9NVXX91kx2YbABGRTbEEkGAirf4Jr/oJrAvOyKkkGdU9iuI0+vw7HSkAgCQ1BS6HPsNrspKBNLQBAKT7M9BG1de3TtH3b5eiol2y/gnt3H60d+t94zNcXrgcWuCTBQ5VAp/hR5Kqr3e7KuFy6dUnSW4/nK7A9kmC4JAERa2agFMqAc0XqPbxqvB59HEGXq8THq++g09TUenX1/s1BVrgOnj9Koq9+nke9SThmEff/thZJ45V6GMXTnta4KRfr9oqCVR7laoncTYQjNdfZlzDSn8F/Frwyur0H4NjAwDjr0C0QDVQYKvg31UtVUGsBmo4MasNwCZ/BUwARGQZVmwDaEqsAiIisimWABJdLdM+1CzwkBdU9QhSFWdV759gzx81BW5FrwJpgdZI1/Th520dLZCVrPf4yU3V9++Y6sd5aXrPmPPbnULb7voUC86uLQFv4GEs3qqHtSguB5QW+ucgoyWQ0aLqdZr+WlJTgKTANqpSVab3eaGU65+F0jKg+Iz+urgMKNancJAyL8R7NuzzAAAuByq/OQYAOLHbja+PZQIA9pamIMXhCJy3AuVsIJ5AyKJqEMVf9To4zYTmgwSmePAbU0GoEAQfclPbwJ1zegQB9qlvaAZWbARuSkwARGQZZs0FZJccwgRgE4qi1vizoqhQ1eCYAP1Pp+I2JnhL1lKRGpj4raXTidZu/a41O1n/NeuWdhYXdzgOAGiTnwLccC0AQNq1Ayr1Bl7l2LGqPvGpLSCtWzf4POr9xTx9Gkp5WeAkVT0OAHA64TymlwCy39iCpA16zHKoHbya3vhd4VdwtlL/lSjX9HP2SCo8gQnwKhUPKgOTyKlqktH/P3gtQ2/kFUUNeZQkNRfzpoO2RzsC2wCIiGyKJQALUqBUe9A7EH7XH1YCMNoDqkoCSaLfAbvFjVSH/s8kzaWidaBqvn2yfvfbKaMYmX31dXJzPhB6d+9spa/PbWXm6dWtdRqkxgJGaVVp4OZ8ZJ5+AwDQ6UwxTnn18y7yJeGMT78WZ4IlAb/buBYeJanqGiH8Ggb/DE5qrT+kPnDtFb0rKMCRvk1NYN3poJsCE0CCqGuO/OhVfVEpUKGqgakgAuscSDLm9XcjCcmBRtIWTiA9Sf8Cy3LrVSFt2pdB7dERAKA1omqnWbVuDbVHLgCgzZcHkFWi9/3//qwTLQLzUQTP2e2vuhYOJFUlS9UJRau6hjpzCtScFqLhrDgXUFNiAiAiyxDY58vbDEwAtuEIuVOtoigOKIGui8HqDYeSBKem/9NIUhxIdgTvihW0dOrdIFu59SdmJWcD6JTb1MGbLxBzcvYBtDqgn0tLZwqSA9VdwXNOUhxwBiZ9c6hVVUAKHFAUx7lHraoCggOsjKB4l3CNwIsXL0bnzp2RnJyMAQMG4MMPP4x1SAkn2AZw7hL8z4EkOOCEA04kKSqSVAVJqoJkhyDVoSHVoSHN7UGa2wNHWxckuz0ku32sTysqwZgdbV3GuaQ6NCQ7BMkOMc45SVGNaxGsAgrW/9e0UGxpopiy2GVoRkL9i121ahVmzJiBuXPn4l//+hd69eqFESNG4Figex8R2ZuYtNhFQiWAp556CpMnT8add96Jiy++GEuXLkVqaiqWL18e69BiI4JRwA29M9WbifXFoejz+CcpgFsVuFWBKzCRm5LmgrRqDWmVIA3AAcGYlTSXcS5uVZAUOM/gOYdeh2jVfu2rRmIHNmzweVC4YCNwYxe7SJgE4PV6sXPnTuTn5xvrVFVFfn4+tm3bVuM+Ho8HJSUlYQvVTlH0em1VVCjBRdEfNq0vgKIIFEXgcOiLkuQAVFVfEkkgZiXJUXUuigTO8ZxzDlwLVVTjGhFZQcL81p44cQJ+vx/t24fXNbdv3x5HjhypcZ+CggJkZGQYS15eXnOESkQxEhwH0NjFLoWAhEkADTFr1iwUFxcby8GDB2MdUsIJbQwTqRpqr2n6Iv7E7ukifq3qXAKNf+eeMyUOAYy/w8YsdpEw3UDbtm0Lh8OBo0ePhq0/evQosrOza9zH7XbD7XY3R3hERAknYUoALpcLffv2xcaNG411mqZh48aNGDhwYAwjsw4RP0T80BQNElg0CPyavlQK4BNFXyod8FU6IOU+oKJCXxJJIGYp9xnn4hNFf8C8wDhnDVJ1LRTNuEYUnzQopix2kTAJAABmzJiBF198ES+99BK+/PJLTJkyBWVlZbjzzjtjHVrcEtHqnJUy+L6Ihqr//KgMLH7R4NMAnwZ4NQVn/SrO+lWUe5JQ7kmCdtoD5cRxKCeON+NZNV4wZu20xziXs34VXk2BV1OMc/aLZlwLDX7jCoVet9rU9z6Zz4zqH5Ho2wC2bt2KG264Abm5uVAUBWvWrDknLsGcOXOQk5ODlJQU5Ofn4+uvvzbtvBsqoRLArbfeiieffBJz5sxB7969sWvXLqxbt65awzAR2ZMZDcANSdllZWXo1asXFi9eXOP7TzzxBH7/+99j6dKl2L59O1q0aIERI0bg7NmzNW7fXBKmDSDogQcewAMPPBDrMBLauXemwadcBf/0iw9+RZ/t06dp8Gr6thV+BWcq9XuG4rN624r3iIbU/xzS98/r2DwnYAIlELP3iGacy5lKFRV+/d4veM4+0eBX9WvhF1+1awXAuJa827evUaNGYdSoUTW+JyJYtGgRZs+ejZtuugkA8Mc//hHt27fHmjVrMH78+OYMNUzCJQAKIRIyiEhDfQU6QfDRhVWv9Trt4KMN9S86TfHBB31+nAp4UVGpzwF9xufAKa/+ed9XJAMAsg+mIe/jb/UPuHKQCSfVPLRAzMcPphnncsqr4IxPf7+iMpD04DWuhQafcY30JBpMBqHJNJIkcM42dup20sTExIFcPp+v2tihhnQs2b9/P44cORI2hikjIwMDBgzAtm3bmACam8PhhJJgoy9rjbaG0cD68wCU8HWBQU36+wJV1X9LVNUPRQ186wWedqUp5aiE/g/fowhKFb2Y6hYnkgM3vqlefZ+U8mKcPhJY+ck3DT6/ZnekCABwtNyBA179WhzzJ6Eo8OVRGigBeZRyVCr6s4c1lBvXSFF9UAOlAIei76QoYqRgvUtpSEKW0Cmez/nbrCUBJGJaEBH4/bFrJDdrKgcBsHr1atxxxx1h6+fOnYt58+ZFdazgOKVoxjA1F1smAHvyo+qvu+pXRKBBAl9AxgPPA82eAOBX/PBp+nqP34EKf6AKyKePhj1ZloKMr08BAFI3vQ/tmvgvBaib3kf51/pd/cmyTONcKvwKPIFxDcFz9it+41poqKyqAhKp4W4/9KuHPYViwbSpHAQYM2YMli1bFrbaat3KE6oRmIiouSQlJSE9PT1saUgCCI5TimYMU3NhCcCmqhou9X7u+utgI3AlfIFqH4/iRoWmz4HvqnSg2BucJ1+/d3AqKfAfaAMAyCstQvqev+vrf5AGqCFVHcH6p2QnkBL4JUpNAVL1+ndJSwNSAq9dLsCZVLVfsIqk0gfFq9+5o+IslNJS/XX5WaA8MA6hwgOcrQyeZNXna4LKw/r2Rd86cfCUHvOhsmQc9wRKNV5BWaV+DSpEr+LyqB74cNa4LqH1/kbJiY2/cSMeR/J26dIF2dnZ2LhxI3r37g0AKCkpwfbt2zFlypSYxsYEQESW0dBunOeKNoeUlpZi7969xs/79+/Hrl27kJmZiY4dO2L69On47//+b5x//vno0qULfvWrXyE3NxejR482IdqGYwKwIIFACf4LVoK/Dg7jjhWKVtUoKX74xRtYHXyIecioXgVGRaFWKfBp+t17ReCh6SU+FUc9qQCAb0pTkP6dfoecnuSHy6G/dioCp6rH4VQr4VT1z0tyFMEZeMKY06nB4dS3UVWBWsO/TK0S0DQ9bn+lispAl9TKSgd8fr0ev1JTURk4j0pNRWXgPL1+B0p8+rN/SyodOB0oyRR5gWKvFjiXSpRqeiNvmVoGAChHMTyilxx8UgG/ppcM/OKtKg0YD3yvKhUEIkZgAz7ft5nEajrnHTt24JprrjF+njFjBgBg4sSJKCwsxMMPP4yysjLcc889KCoqwpVXXol169YhOTm5+YMNwQRARNRIQ4YMOSf5h1MUBQsWLMCCBQuaMar6MQEQkaWwrBU5JgAisgyzqoDskkSYABKEUaVf51bB+v7QAUhVffyDHXEkZCySFtJiVqnqvV3Er0GC0x8oPmN9hSMVpdICAFDkTQEApHqSkeLQ/xklqyrcTr0u3u1wwhn4jCQVUAMf7lSqBk6pgccuAoHHLypV0dc0Tk+k6gw1AQKzNsAf8kvvD8zoqW8j8AV2qBTAE9jBU6nhrDG9RSXKAz2ezioVOOvQ6/59Ug4A8GoV8EugF5DmM9pLNK0SmlZpXFs9Pj8Q+rrGKoH6myjt8uVDsccEQESWIVAgNprOubGYAIjIMkyrArJJMYwJINEZXTtD73o0SOi8QIHtqmawDPnXrWjQAr8xRpWGWtU11KH4jCoQj1KKs4o+MZxT0buvOdVkJIneNdTpd8EVmDjOKU44AjGoUOEIDBxzVEUEh6KGzE+khJ2CWsNdnBY6hYXA6Fopos/bHzwzf2C9P/CMAwDwQ0NlYH4fr+JFZWCCN5/Dg8rA+VXKWVRqgSqewECw0Gof0fxGN1D904MTwwXjqERo10+EbFlj1Y9dvmWakYbYdANNVJwKgojIplgCICJLYQEgckwARGQZ7AYaHSaABFPDbPKBN6RaO4C+fVUtX+j0EBJ4sIn+dIDgfPb6/pWaH4qmd+fU1EpUBl6rigM+xWm81v90Qgm8dsAJJfC+Q3VCDfzzUqBCMZ5LUPVahQpFQuOril+Fo9opaqFP4QptDwg8sF1fX/W0M1E0Y8pmDZVVD3PRqqa7FvFDCz4I55zXxvth3T2rJtFDyNTQwQirut3WMCWEEXDtXy92+eJpKgJOuxENtgEQEdkUSwBEZBmxmgwuUTEBEJFlmPlISDtgAkhAof84w9oDQuuWwx4WH9xPNbZTgn3oA4+ID91dURRIoA5eNB+UwD8TPxQoSlVdvv6nw2g7CK3r19sGqqIztg+tdVRC6v8bMHozrK5XQs8zWE8fsk7EqN8XaCHbSNi0zlX7BK9PZUgdv7/W6Z6rxcN6/5hgCSA6bAMgIrIplgCIyDrMeiSkTUoRTABEZBmxeiRkomICSHC1ThN97m2QoqC+9oCq98LbBRQlOGYgZCYfYxc1pF4/vM5fqa+OX6m5BlKpaS7oYGy13d7V8GD2sLECYfX7+rv6/8O/MkLr+6t/nhZ2Xav3N4+83r8qAqLYYQIgIstgI3B0mACIyDLErDYAm2ACsIhau4YaG5zbRbSG6qCQbUOrhaoesOGHSPi2epfRUA4joJqrciLreKbUsJ1EXLtbQ3VQ2LeCv473aq/GqbfK55zta8LvpqbFNoDosBsoEZFNsQRARJbBKqDoMAEQkWXU8uw1qgUTgAVF1R4AAEpNXSiD1LDtq3UZDfswBaH161XvRVjvH9JmUN9NXK3dQaup5euglv1rnko4umNUPyY1F31qj8ZfcbuUItgGQERkUywBEJFl8KHw0WECICLLMGs6aLtgArC4mn4Z6p02Imzj8Prv6luG1CLWehwtoumeza53jfzRgPU0G0YRGL98KJEwARCRZfCh8NFhAiAiyxDOBRQVJgAisgwJ/EeRYQKwoXN/Peqsna+v/ruGMQSRfGZcaWDjQ1yfE1EEmACIyDLYBhAdJgAisgzT5gKySQZgAqB6/603qooowVn77KxHg0Az4W/NLu0InAqCiMimWAIgIsvgdNDRYQIgIsvgdNDRYQKgejXkhqr+iR+aH28Mrc+s6aDtgm0AREQ2xRIAEVkGxwFEhwmAiCzDrG6gdsEEQE2Cv4JE8Y8JgIgsw6xuoHZpR2YCICLL0LuB2uTb2wRMAERkGQL73L2bgd1AiYhsiiUAIrIM8yaDswcmACKyDE0EGueDjhgTABFZBh8JGR22ARAR2VTCJICFCxdi0KBBSE1NRatWrWIdDhHFIc2kxS5liIRJAF6vF+PGjcOUKVNiHQoRxSkJNAI3drGLhGkDmD9/PgCgsLAwtoEQUdzidNDRSZgSABERmSthSgAN4fF44PF4jJ9LSkpiGA0RNTU+FD46MS0BzJw5E4qi1Lns3r27wccvKChARkaGseTl5ZkYPRHFGzPq/+3UBhDTBPDggw/iyy+/rHPp2rVrg48/a9YsFBcXG8vBgwdNjJ6ISDdv3rxqN6/du3ePdVj1imkVUFZWFrKysprs+G63G263u8mOT0TxRQL9gBp/nOj16NEDGzZsMH52OuO/hj3+Iww4cOAATp06hQMHDsDv92PXrl0AgPPOOw9paWmxDY6I4oLEsArH6XQiOzs7Jp/dUAmTAObMmYOXXnrJ+LlPnz4AgE2bNmHIkCExioqI4ol5dfjRH+Prr79Gbm4ukpOTMXDgQBQUFKBjx44mxNJ0EqYbaGFhodHHN3Thlz8RNQWfz4eSkpKwJbRXYagBAwagsLAQ69atw5IlS7B//34MHjwYZ86caeaoo5MwCYCIqD6aSf8JgNWrV4f1IszIyEBBQUGNnztq1CiMGzcOl156KUaMGIH/+7//Q1FREV599dXmvQBRSpgqIDP17NkTDocj1mEQWY7f78e//70zZp8vigZRGt8IDAjGjBmDZcuWha2NtFNJq1atcMEFF2Dv3r0mxNJ0WAIgIsswaxyAAEhKSkJ6enrYEmkCKC0txb59+5CTk9O0J9xITABERI300EMPYcuWLfj222/x/vvvY8yYMXA4HLjttttiHVqdbFkFRETWpHcDNaMKKDqHDh3CbbfdhpMnTyIrKwtXXnklPvjggyYd52QGJgAisoxgJY4ZR4rGX/7yFxM+s/kxARCRZWiKBs2ERmC7zAbENgAiIptiCYCILCPYj7/x7FEGYAIgIsswKwHY4+ufVUBERLbFEgARWYZZ00HbBRMAEVmGwA8NflOOZAdMAERkGbEaB5Co2AZARGRTLAEQkWVo4ECwaDABEJFl6J1A2QYQKSYAIrIMs9oA7PH1zzYAIiLbYgmAiCxD4IcmrAKKFBMAEVkGB4JFhwmAiCxD4IewEThibAMgIrIplgCIyDI4G2h0mACIyDI4FUR0WAVERGRTLAEQkWWIaBBTuoHaAxMAEVmGmNYGYI8qICYAIrIMdgONDtsAiIhsiiUAIrIMEYEIRwJHigmAiCxDgwaF4wAixgRARJYh4jepF5A9UgDbAIiIbIolACKyDI4Ejg4TABFZhmmNwPb4/mcCICLrMGscgF0GgrENgIjIplgCICLrEI3jAKLABEBEliGmJQBWARERkYWxBEBElqFBAD4UPmJMAERkGWZVAdmjAogJgIgsRJ8KwoSabbFHCmAbABGRTbEEQESWwakgosMEQESWIeDzAKLBBEBEliFiTgnAHvf/bAMgIrItlgCIyELYBhANJgAisgy9/p9tAJFiFRARkU2xBEBEliFi1lQQrAIiIkowGgAl1kEkDCYAIrIMvQ3AhATAqSCIiMjKWAIgIssQk6qA7HH/zwRARBZiWhWQTVIAEwARWQjHAESDbQBERDaVEAng22+/xd13340uXbogJSUF3bp1w9y5c+H1emMdGhHFkeATwRq7sAoojuzevRuapuH555/Heeedh88++wyTJ09GWVkZnnzyyViHR0Rxg1VA0UiIBDBy5EiMHDnS+Llr167Ys2cPlixZwgRARFVMexaAPUoACVEFVJPi4mJkZmbGOgwiooSVECWAc+3duxfPPPNMvXf/Ho8HHo/H+LmkpKSpQyOiGJKQ/1P9YloCmDlzJhRFqXPZvXt32D6HDx/GyJEjMW7cOEyePLnO4xcUFCAjI8NY8vLymvJ0iCjmNJOW6C1evBidO3dGcnIyBgwYgA8//LBxp9IMFJHYTXpx/PhxnDx5ss5tunbtCpfLBQD47rvvMGTIEFx++eUoLCyEqtadv2oqAeTl5aFXr75wOByNPwEiCuP3+/Hvf+9EcXEx0tPTm/WzFUUBkBT4s3FEfHj11VUYN25cRNuvWrUKEyZMwNKlSzFgwAAsWrQIr732Gvbs2YN27do1Op6mEtMqoKysLGRlZUW07eHDh3HNNdegb9++WLFiRb1f/gDgdrvhdrsbGyYRJQyJSQ3QU089hcmTJ+POO+8EACxduhRr167F8uXLMXPmzOYPKEIJ0QZw+PBhDBkyBJ06dcKTTz6J48ePG+9lZ2fHMDIiii9i0ve/wOfzVWs3rOmm0uv1YufOnZg1a5axTlVV5OfnY9u2baZE01QSohfQ+vXrsXfvXmzcuBEdOnRATk6OsRARVTHj618/xoYNG8LaEDMyMlBQUFBt6xMnTsDv96N9+/Zh69u3b48jR46YEE/TSYgEMGnSJIhIjQsREQC88MIL0BtwG/u9oE8ot2TJEhQXF4ctoXf5VpAQCYCIqD7B+vfGJQABINi162O43W6kp6eHLTW1KbZt2xYOhwNHjx4NW3/06NG4r6JmAiAiS3A6nXjjjTfQuFKAfvffq1eviPdwuVzo27cvNm7cWHUUTcPGjRsxcODABsbRPBKiEZiIKBLXX3899OcBaACi7eqt3/0fPHgw6s+dMWMGJk6ciMsuuwz9+/fHokWLUFZWFlIqiU9MAERkGYqiYMeOj3DZZZdB/0KPdEyAAPADUNChQ4eoP/fWW2/F8ePHMWfOHBw5cgS9e/fGunXrqjUMx5uYDgRrbiUlJcjIyOBAMKImEsuBYKEUJVi7HenvuT4CuKioCBkZGU0UVfxhGwARWc7+/d8gWKVTPwGg4ZlnnrHVlz/ABEBEFtS5c2dUtQXUlwT09++9996mDSoOMQEQkSWdOnUS9ZcC9Lv///3f/0VSUlLzBBZHmACIyJJat24N/SuurlKAvn7MmDHNFFV8YQIgIss6e7Y88KqmBKDf/b/33numzCCaiJgAiMiy3G43/vznP6PmUoA+6GvQoEHNH1icYAIgIku79dZbA69CE4DeNvDVV3tiEFH8YAIgIktTFAVbtmxBeClAv/s///zzYxdYHGACICLLu+qqqxDeLVRw7NjRuneyASYAIrKFL774HFVTPqgRP43Qymw1F1Bw1gu/3x/jSIisKfi7FY8zzFx00UXQSwGC8vLSWIcTF2yVAM6cOQMA+OyzXbENhMjizpw5E5fTKohosQ4hrthqMjhN0/Ddd9+hZcuWcdPvt6SkBHl5eTh48GBMJ8+KR7w2dYvH6yMiOHPmDHJzc6GqrGGOd7YqAaiq2qCpXptD8IlDVB2vTd3i7frE450/1YwpmojIppgAiIhsigkgxtxuN+bOnVvjw6btjtembrw+1Fi2agQmIqIqLAEQEdkUEwARkU0xARAR2RQTQBxZuHAhBg0ahNTUVLRq1SrW4cTc4sWL0blzZyQnJ2PAgAH48MMPYx1SXNi6dStuuOEG5ObmQlEUrFmzJtYhUYJiAogjXq8X48aNw5QpU2IdSsytWrUKM2bMwNy5c/Gvf/0LvXr1wogRI3Ds2LFYhxZzZWVl6NWrFxYvXhzrUCjBsRdQHCosLMT06dNRVFQU61BiZsCAAejXrx+effZZAPo0Hnl5eZg2bRpmzpwZ4+jih6IoWL16NUaPHh3rUCgBsQRAccfr9WLnzp3Iz8831qmqivz8fGzbti2GkRFZCxMAxZ0TJ07A7/ejffv2Yevbt2+PI0eOxCgqIuthAmhiM2fOhKIodS67d++OdZhEZEO2mg00Fh588EFMmjSpzm26du3aPMEkiLZt28LhcODo0fBH9h09ehTZ2dkxiorIepgAmlhWVhYfPRcll8uFvn37YuPGjUbjpqZp2LhxIx544IHYBkdkIUwAceTAgQM4deoUDhw4AL/fj127dgEAzjvvPKSlpcU2uGY2Y8YMTJw4EZdddhn69++PRYsWoaysDHfeeWesQ4u50tJS7N271/h5//792LVrFzIzM9GxY8cYRkYJRyhuTJw4UaA/tTps2bRpU6xDi4lnnnlGOnbsKC6XS/r37y8ffPBBrEOKC5s2barx38nEiRNjHRolGI4DICKyKfYCIiKyKSYAIiKbYgIgIrIpJgAiIptiAiAisikmACIim2ICICKyKSYAIiKbYgIgIrIpJgAiIptiAiAisikmAIo7f/zjH9GmTRt4PJ6w9aNHj8aPf/zjGEVFZD1MABR3xo0bB7/fj7///e/GumPHjmHt2rW46667YhgZkbUwAVDcSUlJwe23344VK1YY6/70pz+hY8eOGDJkSOwCI7IYJgCKS5MnT8bbb7+Nw4cPAwAKCwsxadIkKIoS48iIrIPPA6C41bdvX9xyyy0YPnw4+vfvj2+//RZ5eXmxDovIMvhISIpbP/nJT7Bo0SIcPnwY+fn5/PInMhlLABS3iouLkZubi8rKSvzxj3/ErbfeGuuQiCyFbQAUtzIyMjB27FikpaVh9OjRsQ6HyHKYACiuHT58GHfccQfcbnesQyGyHFYBUVw6ffo0Nm/ejFtuuQVffPEFLrzwwliHRGQ5bASmuNSnTx+cPn0ajz/+OL/8iZoISwBERDbFNgAiIptiAiAisikmACIim2ICICKyKSYAIiKbYgIgIrIpJgAiIptiAiAisikmACIim/r/74dprd7KG5UAAAAASUVORK5CYII=", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "# testing\n", + "idx = findMode(mode_data)\n", + "mode_solver.plot_field(\"E\", \"abs\", mode_index=idx)\n", + "plt.show()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Convergence tests\n", + "\n", + "First, we will analyze the convergence of the effective index as a function of the plane size:" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
09:45:08 -03 Running a batch of 7 mode solvers.                                 \n",
+       "                                                                                \n",
+       "
\n" + ], + "text/plain": [ + "\u001b[2;36m09:45:08 -03\u001b[0m\u001b[2;36m \u001b[0m\u001b[36mRunning a batch of \u001b[0m\u001b[1;38;5;125m7\u001b[0m\u001b[38;5;125m mode solvers.\u001b[0m \n", + "\u001b[2;36m \u001b[0m \n" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "application/vnd.jupyter.widget-view+json": { + "model_id": "40baefb0595b43848ceec9d633aaf20b", + "version_major": 2, + "version_minor": 0 + }, + "text/plain": [ + "Output()" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/html": [ + "
09:45:27 -03 A batch of `ModeSolver` tasks completed successfully!              \n",
+       "
\n" + ], + "text/plain": [ + "\u001b[2;36m09:45:27 -03\u001b[0m\u001b[2;36m \u001b[0m\u001b[32mA batch of `ModeSolver` tasks completed successfully!\u001b[0m \n" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/html": [ + "
\n"
+      ],
+      "text/plain": []
+     },
+     "metadata": {},
+     "output_type": "display_data"
+    },
+    {
+     "data": {
+      "text/html": [
+       "
\n",
+       "
\n" + ], + "text/plain": [ + "\n" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "sizes = np.arange(1, 4.5, 0.5)\n", + "\n", + "# create a list with the mode solver objects\n", + "mode_solvers = []\n", + "for s in sizes:\n", + " mode_solver = mode_solver_substrate_loss(\n", + " resolution=30,\n", + " npml=9,\n", + " delta_override=None,\n", + " size=(s, s + 1.3),\n", + " )\n", + " mode_solvers.append(mode_solver)\n", + "\n", + "# run in batch\n", + "batch_data = run_batch(\n", + " mode_solvers=mode_solvers,\n", + " task_name=\"substrate_leakage_size\",\n", + " folder_name=\"radiative_losses\",\n", + " results_files=[f\"size_{size:.2f}.hdf5\" for size in sizes],\n", + ")" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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GjZsmGpra/XKK69o7Nix2rt3r4YMGeLr5rUZh8OhzMxMjRo1SgkJCU3Wa+ra6gxjyOq521f9+/fXq6++qkGDBslut+u3v/2tRo4cqSNHjqhPnz5t2OK2d/jwYSUnJ6umpkY33HCDNm3apPj4+EbrdvZrqiV91ZmvKUnauHGjDh48qP3797tV3xfXFiEKnUr//v3Vv39/5+eRI0fq+PHjeu655/T73//ehy1rWzabTcXFxdq9e7evm+L33O2r5ORklzsKI0eO1G233aZVq1bpV7/6lbeb6VP9+/dXUVGR7Ha73nzzTWVkZKigoKDJcNCZtaSvOvM1dfLkST322GPKy8vz68H0hKgOICoqShUVFS5lFRUVCgsL4y6UG4YPH96pwsTs2bO1detWFRYWXvP/Zpu6tqKiorzZRL/Rkr66WteuXXXHHXfos88+81Lr/EdQUJBuvfVWSdLQoUO1f/9+vfDCC1q1alWDup39mmpJX12tM11TBw4c0OnTp12eENTV1amwsFAvvfSSamtrFRgY6LKNL64txkR1AMnJycrPz3cpy8vLa/Y5O/6pqKhI0dHRvm6G1xmGodmzZ2vTpk3avn274uLirrlNZ722POmrq9XV1enw4cOd4tq6msPhUG1tbaPrOus11ZTm+upqnemauueee3T48GEVFRU5l2HDhuknP/mJioqKGgQoyUfXlteGrMNjVVVVxqFDh4xDhw4Zkoxnn33WOHTokPH5558bhmEY8+fPN6ZOneqs/7e//c34zne+YzzxxBPGJ598YmRnZxuBgYFGbm6ur06hzbS0r5577jlj8+bNxrFjx4zDhw8bjz32mBEQEGC8//77vjqFNjNr1izDYrEYO3fuNMrKypzLxYsXnXWmTp1qzJ8/3/n5gw8+MLp06WL89re/NT755BNj8eLFRteuXY3Dhw/74hTajCd9tWTJEmPbtm3G8ePHjQMHDhhTpkwxzGazceTIEV+cQpuZP3++UVBQYJSWlhp/+ctfjPnz5xsmk8l47733DMPgmvq2lvZVZ72mmnL1r/P84doiRPmh+p/hX71kZGQYhmEYGRkZxl133dVgm8TERCMoKMi4+eabjbVr17Z5u32hpX31zDPPGLfccothNpuN8PBwY+zYscb27dt90/g21lg/SXK5Vu666y5n39V74403jO9+97tGUFCQMXDgQOOdd95p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6hDlD9eWyTAMw3v3uQAAADomxkQBAAB4gBAFAADgAUIUAACABwhRAAAAHiBEAQAAeIAQBQAA4AFCFAAAgAcIUQAAAB4gRAEAAHiAEAUAAOABQhSADmvs2LHKzMz06jHOnj0rq9WqEydOePU4kjRlyhT953/+p9ePA8A9vDsPQLt15swZLVq0SO+8844qKirUo0cPDR48WIsWLdKoUaN07tw5de3aVaGhoV5rw9y5c1VVVaXVq1d77Rj1iouLNWbMGJWWlspisXj9eACa18XXDQAAT/3oRz/SN998o3Xr1unmm29WRUWF8vPzdfbsWUlSeHi4V49/8eJFrVmzRtu2bfPqceolJCTolltu0fr162Wz2drkmACaxuM8AO3S+fPntWvXLj3zzDMaN26c+vbtq+HDh2vBggW67777JLk+zjtx4oRMJlODZezYsZIkh8OhrKwsxcXFKSQkRIMHD9abb77ZbBv+9Kc/KTg4WN/73vdcynfv3q2uXbuqpqbGWVZ//M8//9zZtjlz5igzM1M9evRQZGSkVq9ererqaj300EMKDQ3Vrbfeqnfffddl32lpadq4ceP1dB2AVkKIAtAu3XDDDbrhhhu0efNm1dbWXrN+bGysysrKnMuhQ4fUs2dPjRkzRpKUlZWl1157TStXrtSRI0f0s5/9TA8++KAKCgqa3OeuXbs0dOjQBuVFRUW67bbbZDabnWWHDh1Sjx491LdvX2fZunXrFBERoX379mnOnDmaNWuWfvzjH2vkyJE6ePCgxo8fr6lTp+rixYvObYYPH659+/a5dc4AvIsQBaBd6tKli3JycrRu3Tp1795do0aN0i9+8Qv95S9/abR+YGCgoqKiFBUVpe7du+v//J//o+TkZP3yl79UbW2tfv3rX+vVV19Vamqqbr75Zk2fPl0PPvigVq1a1WQbPv/8c8XExDQo//Of/6w77rjDpayoqEiDBw92KRs8eLCefvpp9evXTwsWLJDZbFZERIQeeeQR9evXT4sWLdLZs2ddzikmJkbffPONysvLW9JdALyAEAWg3frRj36kU6dO6a233tKECRO0c+dODRkyRDk5Oc1uN2PGDFVVVWnDhg0KCAjQZ599posXL+ree+913uG64YYb9Nprr+n48eNN7ucf//iHy92mekVFRUpMTHQpO3ToUIOyQYMGOf85MDBQPXv21O233+4si4yMlCSdPn3aWRYSEiJJLnenAPgGA8sBtGtms1n33nuv7r33Xi1cuFAzZ87U4sWLNX369EbrL1u2TNu2bdO+ffucv9q7cOGCJOmdd95R7969XeoHBwc3eeyIiAh9/fXXLmV1dXUqLi5ucCfq4MGD+tGPfuRS1rVrV5fPJpPJpcxkMkm6Ml6r3rlz5yRJvXr1arJdANoGIQpAhxIfH6/Nmzc3uu6///u/tXTpUr377ru65ZZbXLYJDg7WF198obvuusvtY91xxx1av369S1lJSYlqampcHvPt2bNHf//73xvcifJEcXGx+vTpo4iIiOveF4DrQ4gC0C6dPXtWP/7xjzVjxgwNGjRIoaGh+vjjj7V8+XJNnjy5Qf3i4mJNmzZNP//5zzVw4EDnmKKgoCCFh4dr3rx5+tnPfiaHw6HRo0fLbrfrgw8+UFhYmDIyMhptQ2pqqhYsWKCvv/5aPXr0kHTlUZ4k/e53v9NPf/pTffbZZ/rpT38qSfrmm2+u+7x37dql8ePHX/d+AFw/xkQBaJduuOEGjRgxQs8995zGjBmjhIQELVy4UI888oheeumlBvU//vhjXbx4UcuWLVN0dLRz+eEPfyhJ+tWvfqWFCxcqKytLt912myZMmKB33nlHcXFxTbbh9ttv15AhQ/TGG284y4qKipSamqq//e1vuv322/XUU09pyZIlCgsL04svvnhd51xTU6PNmzfrkUceua79AGgdzFgOANfhnXfe0RNPPKHi4mIFBAQoNTVVSUlJWrZsWasfa8WKFdq0aZPee++9Vt83gJbjThQAXIeJEyfq0Ucf1d///ndJV6Y3+PYv7FpT165d9bvf/c4r+wbQctyJAoBWUl5erujoaB05ckTx8fG+bg4ALyNEAQAAeIDHeQAAAB4gRAEAAHiAEAUAAOABQhQAAIAHCFEAAAAeIEQBAAB4gBAFAADgAUIUAACABwhRAAAAHiBEAQAAeOD/AyYymMvLg2ieAAAAAElFTkSuQmCC", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "# analyzing the results\n", + "Real = []\n", + "Imag = []\n", + "\n", + "for i, mode_data in enumerate(batch_data):\n", + " idx = findMode(mode_data)\n", + "\n", + " Real.append(\n", + " float(mode_data.n_complex.sel(f=mode_solver.freqs[0], mode_index=idx).real)\n", + " )\n", + " Imag.append(\n", + " float(mode_data.n_complex.sel(f=mode_solver.freqs[0], mode_index=idx).imag)\n", + " )\n", + "\n", + "fig, ax = plt.subplots(2, 1)\n", + "ax[0].plot(sizes, Imag, \"o\")\n", + "ax[0].set_ylabel(\"k\")\n", + "ax[0].set_yscale(\"log\")\n", + "\n", + "ax[1].plot(sizes, Real, \"o\")\n", + "ax[1].set_ylabel(\"n\")\n", + "ax[1].set_xlabel(\"Size ($\\mu$m)\")\n", + "\n", + "plt.show()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "It is possible to note that the simulation size makes little difference in the results for the real part of the effective index. However, to achieve precise results for the imaginary part, it is important to fine-tune the mode plane size." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Next, we will run a sweep varying the resolution, analyze the behavior of both the real and imaginary parts of the effective index, and compare the results with the most precise values reported in the reference paper." + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
09:45:28 -03 Running a batch of 6 mode solvers.                                 \n",
+       "                                                                                \n",
+       "
\n" + ], + "text/plain": [ + "\u001b[2;36m09:45:28 -03\u001b[0m\u001b[2;36m \u001b[0m\u001b[36mRunning a batch of \u001b[0m\u001b[1;38;5;125m6\u001b[0m\u001b[38;5;125m mode solvers.\u001b[0m \n", + "\u001b[2;36m \u001b[0m \n" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "application/vnd.jupyter.widget-view+json": { + "model_id": "127736d1fccb41d28b551e85c0c97f18", + "version_major": 2, + "version_minor": 0 + }, + "text/plain": [ + "Output()" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/html": [ + "
09:48:43 -03 A batch of `ModeSolver` tasks completed successfully!              \n",
+       "
\n" + ], + "text/plain": [ + "\u001b[2;36m09:48:43 -03\u001b[0m\u001b[2;36m \u001b[0m\u001b[32mA batch of `ModeSolver` tasks completed successfully!\u001b[0m \n" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/html": [ + "
\n"
+      ],
+      "text/plain": []
+     },
+     "metadata": {},
+     "output_type": "display_data"
+    },
+    {
+     "data": {
+      "text/html": [
+       "
\n",
+       "
\n" + ], + "text/plain": [ + "\n" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "resolution = [20, 60, 100, 140, 180, 200]\n", + "mode_solvers = []\n", + "for r in resolution:\n", + " mode_solver = mode_solver_substrate_loss(\n", + " resolution=r, npml=9, delta_override=None, size=(4, 5.3)\n", + " )\n", + " mode_solvers.append(mode_solver)\n", + "\n", + "batch_data = run_batch(\n", + " mode_solvers=mode_solvers,\n", + " task_name=\"substrate_leakage_resolution\",\n", + " folder_name=\"radiative_losses\",\n", + " results_files=[f\"resolution_{r:.2f}.hdf5\" for r in resolution],\n", + ")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "It is notable that the results converge well toward the most precise values reported in the paper, although high resolution is needed for optimal accuracy." + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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3bt3a9myZcrNzb2qdaSlpWn+/PmNUC0AAPB1fnEGqUePHsrNzVVOTo6mTZumyZMn68iRIzX6lZWVadKkSVq6dKk6dux4VeuYM2eOHA6H+3Xy5MnGKh8AAPgYv5yDlJycrG7duundd9/1aM/NzVXfvn3VqlUrd5vL5ZIkBQQEKD8/X926davXOpiDBABAy1Pf47dfXGKzcrlcunDhQo32nj176vDhwx5tL774osrKyrRkyRLFxsY2V4kAAMCHtfiANGfOHI0cOVJdunRRWVmZVq9erczMTG3ZskWSlJKSoptuuklpaWkKCgpSfHy8x/vDwsIkqUY7AAC4frX4gHTmzBmlpKSouLhYdrtdvXv31pYtW3TfffdJkoqKihQQ4BdTrQAAQDPxyzlIzYE5SAAAtDzX5XOQAAAAGgMBCQAAwIKABAAAYEFAAgAAsCAgAQAAWBCQAAAALAhIAAAAFgQkAAAACwISAACABQEJAADAgoAEAABgQUACAACwICABAABYEJAAAAAsCEgAAAAWBCQAAAALAhIAAIAFAQkAAMCCgAQAAGBBQAIAALAgIAEAAFgQkAAAACwISAAAABYEJAAAAAsCEgAAgAUBCQAAwIKABAAAYEFAAgAAsCAgAQAAWBCQAAAALAhIAAAAFgQkAAAACwISAACABQEJAADAgoAEAABgQUACAACwICABAABYEJAAAAAsvBqQ1qxZU+ey5557rhkrAQAA+F9eDUjTpk3Txx9/XKP95z//uVatWlWvz0hPT1fv3r0VGhqq0NBQJSUl1fqZ1ZYuXapBgwapffv2at++vZKTk7V3794GjwEAAPgfrwak3/3ud5owYYJ2797tbpsxY4Y++OAD7dy5s16f0blzZy1cuFD79+/Xvn37dO+992rMmDH64osvau2fmZmpCRMmaOfOncrOzlZsbKyGDRumr776qlHGBAAAWj6bMcZ4s4DVq1dr+vTp2rp1q5YtW6aNGzdq586duu222xr8meHh4Vq8eLGmTp16xb5VVVVq3769fv3rXyslJaXe63A6nbLb7XI4HAoNDW1wrQAAoPnU9/jduhlrqtVPf/pTlZaWauDAgerUqZOysrJ06623NuizqqqqtG7dOpWXlyspKale7zl//rwqKysVHh7eoHUCAAD/0+wB6Zlnnqm1vVOnTurXr5/+67/+y9325ptv1uszDx8+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as7ytYQv7G7O8RCQALQIrQJsLeIP+PWEOWK+z9/O8jXneAhI1+itt97S+PHj9dvf/lZdu3bVPffco/fff189evRQnz599MEHH6hPnz7q2rWrPvroIyUmJiosLExbtmzRPffcI0nKysrS8OHDVVpaqpycHN1///06ceKEDh06pIceekiHDh1Sfn6+UlJSlJWVpRMnTuiJJ57Qxo0bdfr0aT311FNauXKlHA6HfvGLX2jJkiW6cOGC5s6dqwULFkhSrf8ODAzU008/rUWLFslut2vy5Ml6++23FRkZqTFjxjAmxsSYGNMVx9SnbXudOB2m8rztat2hs9p2ilP5Xz9RYMQtamXvpOjWx/WHdf9oUWPyp99Tl7736Oz2pWptj1BQbILO5W1Xm+/9ntpG3KLW9k5a8/ZmVQwf4vNjqmgdosp/RqssN+OyY/p7wiU98/4btf6e/vznP9fr+G4zxrSMC48+xul0ym63y+FwKDQ01NvlAIDX+NsdUv6kymV092s7rniWb/fse1vEJevGGE99j9+cQQIAXBPmiPmu6jtBp606IJvkESpa4p2gzTkeziA1EGeQAAAthb+d5buW8dT3+E1AaiACEgCgJalyGb86y9fQ8XCJDQAAuPnbnaBNPR4eFAkAAGDBGaQGqr4y6XQ6vVwJAACor+rj9pVmGBGQGqisrEySFBsb6+VKAADA1SorK5Pdbq9zOZO0G8jlcunUqVMKCQmRzdZ0k9ycTqdiY2N18uTJ63YyONuAbVCN7cA2kNgGEtugWkO2gzFGZWVliomJUUBA3TONOIPUQAEBAercuXOzrS80NPS6/j+BxDaQ2AbV2A5sA4ltILENql3tdrjcmaNqTNIGAACwICABAABYEJB8XGBgoObNm6fAwEBvl+I1bAO2QTW2A9tAYhtIbINqTbkdmKQNAABgwRkkAAAACwISAACABQEJAADAgoAEAABgQUDyAWlpaRowYIBCQkIUERGhsWPHKj8/36PPkCFDZLPZPF5PPvmklypufC+//HKN8fXs2dO9vKKiQqmpqerQoYPatWuncePG6fTp016suGncfPPNNbaDzWZTamqqJP/cD3bt2qXRo0crJiZGNptNGzZs8FhujNHcuXMVHR2t4OBgJScn6+jRox59zp49q4kTJyo0NFRhYWGaOnWqzp0714yjuDaX2waVlZWaPXu2EhISdOONNyomJkYpKSk6deqUx2fUtu8sXLiwmUdyba60Lzz66KM1xjhixAiPPv68L0iq9e+DzWbT4sWL3X1a+r5Qn2NifY4JRUVFGjVqlG644QZFREToueee06VLl+pdBwHJB2RlZSk1NVV/+ctftHXrVlVWVmrYsGEqLy/36Pf444+ruLjY/Vq0aJGXKm4ad9xxh8f4du/e7V7285//XJs2bdK6deuUlZWlU6dO6YEHHvBitU3js88+89gGW7dulSQ9+OCD7j7+th+Ul5erT58++s1vflPr8kWLFuntt9/WO++8o5ycHN14440aPny4Kioq3H0mTpyoL774Qlu3btXmzZu1a9cuPfHEE801hGt2uW1w/vx5HThwQC+99JIOHDigDz/8UPn5+br//vtr9F2wYIHHvjFjxozmKL/RXGlfkKQRI0Z4jHHNmjUey/15X5DkMfbi4mK99957stlsGjdunEe/lrwv1OeYeKVjQlVVlUaNGqWLFy9qz549WrlypVasWKG5c+fWvxADn3PmzBkjyWRlZbnb7rnnHvP00097r6gmNm/ePNOnT59al5WWlpo2bdqYdevWudu+/PJLI8lkZ2c3U4Xe8fTTT5tu3boZl8tljPH//UCSWb9+vftnl8tloqKizOLFi91tpaWlJjAw0KxZs8YYY8yRI0eMJPPZZ5+5+3z88cfGZrOZr776qtlqbyzWbVCbvXv3GknmxIkT7rauXbuat956q2mLa0a1bYfJkyebMWPG1Pme63FfGDNmjLn33ns92vxtX7AeE+tzTPjTn/5kAgICTElJibtPenq6CQ0NNRcuXKjXejmD5IMcDockKTw83KP9d7/7nTp27Kj4+HjNmTNH58+f90Z5Tebo0aOKiYnRLbfcookTJ6qoqEiStH//flVWVio5Odndt2fPnurSpYuys7O9VW6Tu3jxolatWqUpU6Z4fCGyv+8H31dYWKiSkhKP373dbldiYqL7d5+dna2wsDD94Ac/cPdJTk5WQECAcnJymr3m5uBwOGSz2RQWFubRvnDhQnXo0EF9+/bV4sWLr+pyQkuRmZmpiIgI9ejRQ9OmTdM333zjXna97QunT5/WH//4R02dOrXGMn/aF6zHxPocE7Kzs5WQkKDIyEh3n+HDh8vpdOqLL76o13r5slof43K5NHPmTA0cOFDx8fHu9p/+9Kfq2rWrYmJi9Pnnn2v27NnKz8/Xhx9+6MVqG09iYqJWrFihHj16qLi4WPPnz9egQYOUl5enkpIStW3btsbBIDIyUiUlJd4puBls2LBBpaWlevTRR91t/r4fWFX/fr//R6765+plJSUlioiI8FjeunVrhYeH++X+UVFRodmzZ2vChAkeX8751FNPqV+/fgoPD9eePXs0Z84cFRcX68033/RitY1rxIgReuCBBxQXF6eCggK98MILGjlypLKzs9WqVavrbl9YuXKlQkJCakw38Kd9obZjYn2OCSUlJbX+3aheVh8EJB+TmpqqvLw8j/k3kjyuoSckJCg6OlpDhw5VQUGBunXr1txlNrqRI0e6/927d28lJiaqa9eu+uCDDxQcHOzFyrxn2bJlGjlypGJiYtxt/r4f4PIqKyv10EMPyRij9PR0j2XPPPOM+9+9e/dW27Zt9W//9m9KS0vzm6+jePjhh93/TkhIUO/evdWtWzdlZmZq6NChXqzMO9577z1NnDhRQUFBHu3+tC/UdUxsDlxi8yHTp0/X5s2btXPnTnXu3PmyfRMTEyVJx44da47Sml1YWJhuu+02HTt2TFFRUbp48aJKS0s9+pw+fVpRUVHeKbCJnThxQtu2bdPPfvazy/bz9/2g+vdrvTvl+7/7qKgonTlzxmP5pUuXdPbsWb/aP6rD0YkTJ7R161aPs0e1SUxM1KVLl3T8+PHmKdALbrnlFnXs2NG9/18v+4IkffLJJ8rPz7/i3wip5e4LdR0T63NMiIqKqvXvRvWy+iAg+QBjjKZPn67169drx44diouLu+J7cnNzJUnR0dFNXJ13nDt3TgUFBYqOjlb//v3Vpk0bbd++3b08Pz9fRUVFSkpK8mKVTWf58uWKiIjQqFGjLtvP3/eDuLg4RUVFefzunU6ncnJy3L/7pKQklZaWav/+/e4+O3bskMvlcgfIlq46HB09elTbtm1Thw4drvie3NxcBQQE1Ljk5E/+/ve/65tvvnHv/9fDvlBt2bJl6t+/v/r06XPFvi1tX7jSMbE+x4SkpCQdPnzYIzBX/4dFr1696l0IvGzatGnGbrebzMxMU1xc7H6dP3/eGGPMsWPHzIIFC8y+fftMYWGh2bhxo7nlllvM4MGDvVx543n22WdNZmamKSwsNJ9++qlJTk42HTt2NGfOnDHGGPPkk0+aLl26mB07dph9+/aZpKQkk5SU5OWqm0ZVVZXp0qWLmT17tke7v+4HZWVl5uDBg+bgwYNGknnzzTfNwYMH3XdoLVy40ISFhZmNGzeazz//3IwZM8bExcWZb7/91v0ZI0aMMH379jU5OTlm9+7dpnv37mbChAneGtJVu9w2uHjxorn//vtN586dTW5ursffiOq7cfbs2WPeeustk5ubawoKCsyqVatMp06dTEpKipdHdnUutx3KysrMrFmzTHZ2tiksLDTbtm0z/fr1M927dzcVFRXuz/DnfaGaw+EwN9xwg0lPT6/xfn/YF650TDTmyseES5cumfj4eDNs2DCTm5trMjIyTKdOncycOXPqXQcByQdIqvW1fPlyY4wxRUVFZvDgwSY8PNwEBgaaW2+91Tz33HPG4XB4t/BGNH78eBMdHW3atm1rbrrpJjN+/Hhz7Ngx9/Jvv/3W/Pu//7tp3769ueGGG8y//uu/muLiYi9W3HS2bNliJJn8/HyPdn/dD3bu3Fnr/j958mRjzHe3+r/00ksmMjLSBAYGmqFDh9bYNt98842ZMGGCadeunQkNDTWPPfaYKSsr88JoGuZy26CwsLDOvxE7d+40xhizf/9+k5iYaOx2uwkKCjK33367efXVVz2CQ0twue1w/vx5M2zYMNOpUyfTpk0b07VrV/P444973MZtjH/vC9XeffddExwcbEpLS2u83x/2hSsdE42p3zHh+PHjZuTIkSY4ONh07NjRPPvss6aysrLeddj+pxgAAAD8D+YgAQAAWBCQAAAALAhIAAAAFgQkAAAACwISAACABQEJAADAgoAEAABgQUACAACwICABAABYEJAAAAAsCEgAAAAWrb1dQEvlcrl06tQphYSEyGazebscAABQD8YYlZWVKSYmRgEBdZ8nIiA10KlTpxQbG+vtMgAAQAOcPHlSnTt3rnM5AamBQkJCJH23gUNDQ71cDQAAqA+n06nY2Fj3cbwuBKQGqr6sFhoaSkACAKCFudL0GCZpAwAAWBCQAAAALAhIAAAAFsxBAgAALU6Vy2hv4VmdKatQREiQ7ooLV6uAxnvsDgHpGr311lsaP368fvvb36pr166655579P7776tHjx7q06ePPvjgA/Xp00ddu3bVRx99pMTERIWFhWnLli265557JElZWVkaPny4SktLlZOTo/vvv18nTpzQoUOH9NBDD+nQoUPKz89XSkqK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8eMaPXq0u636e+Bat26t/Px89wTr06dPKzo62t3v9OnTuvPOOyVJO3bs0ObNm/XPf/7Tff3xv/7rv7R161atXLlSzz//fI11BwYGKjAw8JrHCgAAfJ9XA5IxRjNmzND69euVmZmpuLi4y/bv2bOnDh8+7NH24osvqqysTEuWLFFsbKzatGmjqKgobd++3R2InE6ncnJyNG3aNEnS+fPnJUkBAZ4n0AICAmp88S4AALj+eDUgpaamavXq1dq4caNCQkLcc4TsdruCg4MlSSkpKbrpppuUlpamoKCgGvOTwsLCJMmjfebMmXrllVfUvXt3923+MTEx7uclJSUlqX379po8ebLmzp2r4OBgLV26VIWFhRo1alTTDxwAAPg0rwak9PR0SdKQIUM82pcvX65HH31UklRUVFTjTM+V/OIXv1B5ebmeeOIJlZaW6u6771ZGRob7GUgdO3ZURkaGfvnLX+ree+9VZWWl7rjjDm3cuFF9+vS55nEBAICWzaeeg9SS8BwkAABanhb5HCQAAABfQEACAACwICABAABYEJAAAAAsCEgAAAAWBCQAAAALAhIAAIAFAQkAAMCCgAQAAGBBQAIAALAgIAEAAFgQkAAAACwISAAAABYEJAAAAAsCEgAAgAUBCQAAwIKABAAAYEFAAgAAsCAgAQAAWBCQAAAALAhIAAAAFgQkAAAACwISAACABQEJAADAgoAEAABgQUACAACwICABAABYeDUgpaWlacCAAQoJCVFERITGjh2r/Pz8er9/7dq1stlsGjt2rEe7MUZz585VdHS0goODlZycrKNHj9Z4/x//+EclJiYqODhY7du3r/E5AADg+uTVgJSVlaXU1FT95S9/0datW1VZWalhw4apvLz8iu89fvy4Zs2apUGDBtVYtmjRIr399tt65513lJOToxtvvFHDhw9XRUWFu89///d/a9KkSXrsscd06NAhffrpp/rpT3/aqOMDAAAtk80YY7xdRLWvv/5aERERysrK0uDBg+vsV1VVpcGDB2vKlCn65JNPVFpaqg0bNkj67uxRTEyMnn32Wc2aNUuS5HA4FBkZqRUrVujhhx/WpUuXdPPNN2v+/PmaOnVqg2p1Op2y2+1yOBwKDQ1t0GcAAIDmVd/jt0/NQXI4HJKk8PDwy/ZbsGCBIiIiag03hYWFKikpUXJysrvNbrcrMTFR2dnZ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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "Real = []\n", + "Imag = []\n", + "\n", + "\n", + "for i, mode_data in enumerate(batch_data):\n", + " idx = findMode(mode_data)\n", + "\n", + " Real.append(\n", + " float(mode_data.n_complex.sel(f=mode_solver.freqs[0], mode_index=idx).real)\n", + " )\n", + " Imag.append(\n", + " float(mode_data.n_complex.sel(f=mode_solver.freqs[0], mode_index=idx).imag)\n", + " )\n", + "\n", + "\n", + "fig, ax = plt.subplots(2, 1)\n", + "ax[0].plot(resolution, Imag, \"o\")\n", + "ax[0].hlines(2.913e-8, xmin=0, xmax=300, color=\"black\", ls=\"--\", lw=0.4)\n", + "ax[0].set_xlim(15, 205)\n", + "ax[0].set_ylabel(\"k\")\n", + "\n", + "\n", + "ax[1].plot(resolution, Real, \"o\")\n", + "ax[1].hlines(2.41237, xmin=0, xmax=300, color=\"black\", ls=\"--\", lw=0.4)\n", + "ax[1].set_xlim(15, 205)\n", + "ax[1].set_ylabel(\"n\")\n", + "ax[1].set_xlabel(\"resolution\")\n", + "\n", + "plt.show()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Real part\n", + "\n", + "One can note that the imaginary part of the effective index converges better than the real part in the plot shown above. It is worth mentioning that, for calculating the real part, placing a mesh override region around the waveguide improves the convergence speed without requiring a high mesh density across the entire simulation plane. However, in this case, the imaginary part may exhibit greater error." + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
09:48:46 -03 Running a batch of 5 mode solvers.                                 \n",
+       "                                                                                \n",
+       "
\n" + ], + "text/plain": [ + "\u001b[2;36m09:48:46 -03\u001b[0m\u001b[2;36m \u001b[0m\u001b[36mRunning a batch of \u001b[0m\u001b[1;38;5;125m5\u001b[0m\u001b[38;5;125m mode solvers.\u001b[0m \n", + "\u001b[2;36m \u001b[0m \n" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "application/vnd.jupyter.widget-view+json": { + "model_id": "15c3c65f385644c8afb129d40630c9f4", + "version_major": 2, + "version_minor": 0 + }, + "text/plain": [ + "Output()" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/html": [ + "
09:49:33 -03 A batch of `ModeSolver` tasks completed successfully!              \n",
+       "
\n" + ], + "text/plain": [ + "\u001b[2;36m09:49:33 -03\u001b[0m\u001b[2;36m \u001b[0m\u001b[32mA batch of `ModeSolver` tasks completed successfully!\u001b[0m \n" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/html": [ + "
\n"
+      ],
+      "text/plain": []
+     },
+     "metadata": {},
+     "output_type": "display_data"
+    },
+    {
+     "data": {
+      "text/html": [
+       "
\n",
+       "
\n" + ], + "text/plain": [ + "\n" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "grid_step = [0.1, 0.05, 0.01, 0.005, 0.002]\n", + "mode_solvers = []\n", + "for dl in grid_step:\n", + " mode_solver = mode_solver_substrate_loss(\n", + " resolution=20,\n", + " npml=9,\n", + " delta_override=dl,\n", + " size=(4, 5.3),\n", + " )\n", + " mode_solvers.append(mode_solver)\n", + "\n", + "batch_data = run_batch(\n", + " mode_solvers=mode_solvers,\n", + " task_name=\"substrate_leakage_dl\",\n", + " folder_name=\"radiative_losses\",\n", + " results_files=[f\"dl_{dl:.2f}.hdf5\" for dl in grid_step],\n", + ")" + ] + }, + { + "cell_type": "code", + "execution_count": 14, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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GD8wgoO0iYiIyPbIpBLIIEGIp4t52R19/czvnxoTaX4fr/bAxuyLFu33Uo1lU2TcHsPZiYiIyK75KRUWrefrZtl6DEhERERk865P09DeSDEJrg22HxzuadH+GJCIiIjI5smkEixOjQGAViHp+t+LU2MsHmzPgERERER2YVJsIFY8Nsg8m/l1ASpFh+ew4iBtIiIishuTYgMxPibglqdpYEAiIiIiuyKTSm75NwjZxUZERETUAgMSERERUQsMSEREREQtMCARERERtcCARERERNQCAxIRERFRCwxIRERERC0wIBERERG1wIBERERE1AIDEhEREVELDEhERERELTAgEREREbXAgERERETUAgMSERERUQsMSEREREQt2HxAWrFiBeLi4uDu7g53d3ckJSXhhx9+uOE269atQ3R0NBQKBQYMGIDvv/++h6olIiIiW2DzASkkJASvvfYajhw5gsOHD2PcuHGYMmUKTp482eb6P/30Ex555BHMmDEDx44dQ1paGtLS0pCbm9vDlRMREZG1kgiCIIhdRFfz8vLCm2++iRkzZrT67Pe//z1qa2uxZcsW87Lhw4cjISEBH330kcXH0Gq1UKlU0Gg0cHd375K6iYiIqHtZev+2+Rak3zIajVi7di1qa2uRlJTU5jr79+9HSkpKs2UTJ07E/v37b7hvg8EArVbb7EVERET2yS4CUk5ODtzc3CCXy/H0009j/fr1iImJaXPd8vJy+Pv7N1vm7++P8vLyGx4jIyMDKpXK/FKr1V1WPxEREVkXuwhIffv2RXZ2Ng4ePIiZM2di2rRpyMvL69JjLFiwABqNxvwqKSnp0v0TERGR9XAQu4Cu4OTkhKioKADA4MGD8fPPP2PZsmX4+OOPW60bEBCAioqKZssqKioQEBBww2PI5XLI5fKuK5qIiIisll20ILVkMplgMBja/CwpKQk7d+5stmz79u3tjlkiIiKi24/NtyAtWLAAkydPRmhoKHQ6HdasWYPMzExs27YNAJCeno7g4GBkZGQAAJ577jmMHTsWb7/9Nu666y6sXbsWhw8fxieffCLmaRAREZEVsfmAVFlZifT0dJSVlUGlUiEuLg7btm3D+PHjAQDFxcWQSn9tKBsxYgTWrFmDhQsX4u9//zt69+6NDRs2IDY2VqxTICIiIitjl/Mg9QTOg0RERGR7bst5kIiIiIi6AgMS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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "Real = []\n", + "Imag = []\n", + "\n", + "for i, mode_data in enumerate(batch_data):\n", + " idx = findMode(mode_data)\n", + "\n", + " Real.append(\n", + " float(mode_data.n_complex.sel(f=mode_solver.freqs[0], mode_index=idx).real)\n", + " )\n", + " Imag.append(\n", + " float(mode_data.n_complex.sel(f=mode_solver.freqs[0], mode_index=idx).imag)\n", + " )\n", + "\n", + "fig, ax = plt.subplots(2, 1)\n", + "ax[0].plot(grid_step, Imag, \"--o\", lw=0.4)\n", + "ax[0].hlines(2.913e-8, xmin=0, xmax=300, color=\"black\", ls=\"--\", lw=0.4)\n", + "ax[0].set_xlim(0.11, 0.0019)\n", + "ax[0].set_xscale(\"log\")\n", + "ax[0].set_ylabel(\"k\")\n", + "\n", + "ax[1].plot(grid_step, Real, \"--o\", lw=0.4)\n", + "ax[1].hlines(2.41237, xmin=0, xmax=300, color=\"black\", ls=\"--\", lw=0.4)\n", + "ax[1].set_xlim(0.11, 0.0019)\n", + "ax[1].set_xscale(\"log\")\n", + "ax[1].set_ylabel(\"n\")\n", + "ax[1].set_xlabel(\"grid step\")\n", + "\n", + "plt.show()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Bent SiN waveguide\n", + "\n", + "Next, we will study radiative losses in a bent SiN waveguide." + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": {}, + "outputs": [], + "source": [ + "# function to define the mode solver\n", + "def mode_solver_SiN_wvg(\n", + " resolution,\n", + " npml,\n", + " delta_override=None,\n", + " size=(20,15),\n", + " nun_modes=10,\n", + " target_neff=1.547,\n", + " bend_radius=None,\n", + " bend_axis=1,\n", + " symmetry=(0, 0, 1),\n", + "):\n", + " siN = td.Medium(permittivity=2**2)\n", + " sio2 = td.Medium(permittivity=1.444**2)\n", + "\n", + " structures = [td.Structure(geometry=td.Box(size=(100, 0.6, 0.4)), medium=siN)]\n", + "\n", + " mode_spec = td.ModeSpec(\n", + " num_modes=nun_modes,\n", + " target_neff=target_neff,\n", + " precision=\"double\",\n", + " bend_radius=bend_radius,\n", + " bend_axis=bend_axis,\n", + " num_pml=(npml, npml),\n", + " )\n", + "\n", + " if delta_override:\n", + " mesh_override = [\n", + " td.MeshOverrideStructure(\n", + " geometry=td.Box(center=(0, 0, 0), size=(0, 2 * 0.6, 2 * 0.22)),\n", + " dl=(delta_override,) * 3,\n", + " )\n", + " ]\n", + " else:\n", + " mesh_override = []\n", + "\n", + " grid_spec = td.GridSpec.auto(\n", + " min_steps_per_wvl=resolution, wavelength=1.55, override_structures=mesh_override\n", + " )\n", + "\n", + " sim = td.Simulation(\n", + " size=(10, size[0], size[1]),\n", + " center=(0, 0, 0),\n", + " grid_spec=grid_spec,\n", + " structures=structures,\n", + " sources=[],\n", + " monitors=[],\n", + " run_time=1e-12,\n", + " boundary_spec=td.BoundarySpec.all_sides(boundary=td.PML()),\n", + " symmetry=symmetry,\n", + " medium=sio2,\n", + " )\n", + "\n", + " plane = td.Box(center=(0, 0, 0), size=(0, size[0], size[1]))\n", + "\n", + " mode_solver = ModeSolver(\n", + " simulation=sim, plane=plane, mode_spec=mode_spec, freqs=[td.C_0 / 1.55]\n", + " )\n", + "\n", + " return mode_solver" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAnYAAAFmCAYAAADgatf/AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy88F64QAAAACXBIWXMAAA9hAAAPYQGoP6dpAABqH0lEQVR4nO3deZwcdZ0//lddfR+Z3IkECFEBCQobIBIPriwguJoVURBFEEEgqCweEEUiuG5QkfCVVUCFZFdwRXysoKJCuBUQAZPfcisICIEQZpjp+6jj8/ujp6qP6erumenq6eP1fDxGSVd1far7/an+vLu6Pu+ShBACRERERNTz5JneASIiIiJqDyZ2RERERH2CiR0RERFRn2BiR0RERNQnmNgRERER9QkmdkRERER9gokdERERUZ9gYkdERETUJ5jYEREREfUJJnZENHDuueceSJKEe+65Z6Z3hYiorZjYEVHf+sEPfoDNmzfP9G5MyU9/+lNcccUVM70bVa699lrsvffeCAQCeMtb3oIrr7yy5ecWCgWcf/75WLx4MYLBIFauXIktW7bUXfeBBx7Au9/9boRCISxcuBCf+9znkE6n2/UyiPqaxHvFElG/Wr58OebOnTvhzJxlWSgWi/D5fJDl7vx++/73vx+PP/44XnjhhZneFQDANddcgzPPPBPHHXccjjrqKPzhD3/AT37yE1x66aU4//zzmz7/xBNPxC9+8Quce+65eMtb3oLNmzfj4Ycfxt133413v/vdznrbtm3DwQcfjL333htnnHEGXn75ZVx22WU47LDD8Lvf/c7Ll0jUF5jYEfW5TCaDcDg807sxI9wSu17QTYldLpfDkiVL8M53vhO/+c1vnMc//vGP4+abb8ZLL72EoaEh1+f/+c9/xsqVK/Gd73wHX/ziFwEA+Xwey5cvx/z58/HAAw846x5zzDHYtm0bnn76acRiMQDAj3/8Y5x++um47bbbcOSRR3r0Kon6Q3d+VSWiurZv347TTjsNixcvht/vx9KlS3HWWWehWCwCADZv3gxJknDvvffi7LPPxvz587HLLrs4z//BD36AffbZB36/H4sXL8batWsxNjZW1cbf/vY3HHfccVi4cCECgQB22WUXnHDCCUgkEs46W7Zswbvf/W7MmjULkUgEe+65J77yla803f9WnlcoFLB+/Xq8+c1vht/vx5IlS/DlL38ZhUJhwvauv/56HHTQQQiFQhgaGsJ73/te3H777QCA3XffHU888QTuvfdeSJIESZJw6KGHAnC/xu6mm27CihUrEAwGMXfuXHz84x/H9u3bq9Y55ZRTEIlEsH37dqxZswaRSATz5s3DF7/4RZim2fQ9uOWWW3Dsscc6MVy2bBm+8Y1vVD330EMPxa233ooXX3zR2ffdd9/ddZubNm2CJEm47rrrqh7/j//4D0iShN/+9rdN96uRu+++GyMjIzj77LOrHl+7di0ymQxuvfXWhs//xS9+AUVRcMYZZziPBQIBnHbaaXjwwQfx0ksvAQCSySS2bNmCj3/8405SBwAnn3wyIpEIfv7zn0/rdRANAnWmd4CIWvPKK6/goIMOwtjYGM444wzstdde2L59O37xi18gm83C5/M565599tmYN28eLrroImQyGQDA17/+dVx88cVYvXo1zjrrLDzzzDO46qqr8PDDD+P++++HpmkoFos46qijUCgU8NnPfhYLFy7E9u3b8Zvf/AZjY2OIx+N44okn8P73vx9vf/vbcckll8Dv9+PZZ5/F/fff33D/W3meZVn4wAc+gD/+8Y8444wzsPfee+Oxxx7Dxo0b8de//hU333yzs+7FF1+Mr3/961i1ahUuueQS+Hw+PPTQQ7jrrrtw5JFH4oorrsBnP/tZRCIRfPWrXwUALFiwwHX/Nm/ejFNPPRUHHnggNmzYgNdeew3/7//9P9x///3YunUrZs2a5axrmiaOOuoorFy5EpdddhnuuOMOfPe738WyZctw1llnNXwfNm/ejEgkgvPOOw+RSAR33XUXLrroIiSTSXznO98BAHz1q19FIpHAyy+/jI0bNwIAIpGI6zZPPfVU/O///i/OO+88/PM//zOWLFmCxx57DBdffDFOO+00HHPMMc66o6OjLSWgoVAIoVAIALB161YAwAEHHFC1zooVKyDLMrZu3YqPf/zjrtvaunUr3vrWt1YlawBw0EEHASj9/Grvs2EYE9rx+XzYb7/9nP0gogYEEfWEk08+WciyLB5++OEJyyzLEkIIsWnTJgFAvPvd7xaGYTjLd+7cKXw+nzjyyCOFaZrO4//5n/8pAIjrrrtOCCHE1q1bBQBx0003ue7Hxo0bBQDx+uuvT2r/W3neT37yEyHLsvjDH/5Q9fjVV18tAIj7779fCCHE3/72NyHLsvjXf/3XqtcjRPm9EEKIffbZRxxyyCET2rn77rsFAHH33XcLIYQoFoti/vz5Yvny5SKXyznr/eY3vxEAxEUXXeQ89slPflIAEJdccknVNvfff3+xYsWKxm+CECKbzU547DOf+YwIhUIin887jx177LFit912a7o926uvvipmz54t/vmf/1kUCgWx//77i1133VUkEomq9XbbbTcBoOnf+vXrneesXbtWKIpSt9158+aJE044oeG+7bPPPuLwww+f8PgTTzwhAIirr75aCCHETTfdJACI++67b8K6xx9/vFi4cGGzt4Fo4PGnWKIeYFkWbr75ZvzLv/zLhLMZACBJUtW/Tz/9dCiK4vz7jjvuQLFYxLnnnls1WeD0009HLBZzfkqLx+MAgNtuuw3ZbLbuvthnrm655RZYltXya2jleTfddBP23ntv7LXXXhgeHnb+Dj/8cAClnwQB4Oabb4ZlWbjooosmTH6ofS9a8cgjj2Dnzp04++yzEQgEnMePPfZY7LXXXnV/ajzzzDOr/v2e97wHf//735u2FQwGnf9OpVIYHh7Ge97zHmSzWTz99NOT3nfbwoUL8f3vfx9btmzBe97zHmzbtg3XXXfdhLNkN9xwA7Zs2dL07+STT3aek8vlqs4IVwoEAsjlcg33LZfLwe/3132uvbzy/93WbdYOEfGnWKKe8PrrryOZTGL58uUtrb906dKqf7/44osAgD333LPqcZ/Phz322MNZvnTpUpx33nm4/PLLccMNN+A973kPPvCBD+DjH/+4k/R99KMfxY9//GN8+tOfxgUXXIAjjjgCH/rQh/DhD3+44QzTVp73t7/9DU899RTmzZtXdxs7d+4EADz33HOQZRlve9vbWno/mnF7fwBgr732wh//+MeqxwKBwIR9HBoawujoaNO2nnjiCVx44YW46667kEwmq5ZVXsc4FSeccAKuv/563HrrrTjjjDNwxBFHTFjnXe9616S3GwwGnes4a+Xz+apk1e359a6RzOfzzvLK/3dbt1k7RMTEjqgvTWcA/O53v4tTTjkFt9xyC26//XZ87nOfw4YNG/CnP/0Ju+yyC4LBIO677z7cfffduPXWW/H73/8eN954Iw4//HDcfvvtVWcKa/ep2fMsy8K+++6Lyy+/vO42lixZMuXX1U5ur7GZsbExHHLIIYjFYrjkkkuwbNkyBAIB/OUvf8H5558/qTOg9YyMjOCRRx4BADz55JOwLGtCsv3666+3dI1dJBJxrutbtGgRTNPEzp07MX/+fGedYrGIkZERLF68uOG2Fi1aNGESCgC8+uqrAOA8f9GiRVWP167brB0i4qxYop4wb948xGIxPP7441N6/m677QYAeOaZZ6oeLxaLeP75553ltn333RcXXngh7rvvPvzhD3/A9u3bcfXVVzvLZVnGEUccgcsvvxxPPvkkvvnNb+Kuu+5yfip10+x5y5YtwxtvvIEjjjgCq1evnvBnn1FbtmwZLMvCk08+2bC9Vn+WdXt/7Mdq35+puueeezAyMoLNmzfj85//PN7//vdj9erVdUuFTOUn5bVr1yKVSmHDhg344x//WLfA8YEHHohFixY1/bvsssuc5+y3334A4CSNtkceeQSWZTnL3ey3337461//OuEM5UMPPVS1/eXLl0NV1QntFItFbNu2rWk7RMTEjqgnyLKMNWvW4Ne//vWEQQ8ARJNylKtXr4bP58P3vve9qnWvvfZaJBIJHHvssQBK5SYMw6h67r777gtZlp2fx954440J27cH3Ho/odlaed5HPvIRbN++HT/60Y8mrJvL5ZwZvmvWrIEsy7jkkksmnOWqfH3hcHhCOZd6DjjgAMyfPx9XX3111Wv43e9+h6eeesp5f6bLPtNXuY/FYhE/+MEPJqwbDocn9dPsL37xC9x444249NJLccEFF+CEE07AhRdeiL/+9a9V603lGrvDDz8cs2fPxlVXXVW1rauuugqhUKjq/RkeHsbTTz9ddY3mhz/8YZimiR/+8IfOY4VCAZs2bcLKlSudM7HxeByrV6/G9ddfj1Qq5az7k5/8BOl0Gscff3zL7wfRwJrZuRtE1KqXX35ZLFy4UIRCIXHuueeKa665Rnz9618X++yzjxgdHRVClGfF1ps5u379egFAHHnkkeI///M/xWc/+1mhKIo48MADRbFYFEII8ctf/lK86U1vEueee674wQ9+IL73ve+JAw88UGiaJh588EEhhBCf//znxf777y8uvPBC8aMf/Uh885vfFG9605vELrvsIsbGxlz3v5XnmaYpjjnmGCFJkjjhhBPElVdeKa644gpx5plnitmzZ1e9rq997WsCgFi1apW47LLLxJVXXilOPvlkccEFFzjrnH322UKSJPGNb3xD/M///I+48847hRATZ8VW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3p0Zx/ejGt+Panw/qvH9qMb3YyK+J9USiQR23XVXJxfxykAldrJc+o0/Ho+zk1WIxWJ8Pyrw/ajG96Ma349qfD+q8f2YiO9JNTsX8Wz7nm6diIiIiDqGiR0RERFRnxioxM7v92P9+vXw+/0zvStdge9HNb4f1fh+VOP7UY3vRzW+HxPxPanWqfdjoGbFEhEREfWzgTpjR0RERNTPmNgRERER9QkmdkRERER9gokdERERUZ/oq8Tum9/8JlatWoVQKIRZs2bVXecf//gHjj32WIRCIcyfPx9f+tKXYNTc163WG2+8gZNOOgmxWAyzZs3CaaedhnQ67cEr8M4999wDSZLq/j388MOuzzv00EMnrH/mmWd2cM+9tfvuu094fZdeemnD5+TzeaxduxZz5sxBJBLBcccdh9dee61De+ydF154AaeddhqWLl2KYDCIZcuWYf369SgWiw2f10995Pvf/z523313BAIBrFy5En/+858brn/TTTdhr732QiAQwL777ovf/va3HdpTb23YsAEHHnggotEo5s+fjzVr1uCZZ55p+JzNmzdP6AeBwPTuUdpNvv71r094fXvttVfD5/Rr/wDqf3ZKkoS1a9fWXb/f+sd9992Hf/mXf8HixYshSRJuvvnmquVCCFx00UVYtGgRgsEgVq9ejb/97W9NtzvZz6B6+iqxKxaLOP7443HWWWfVXW6aJo499lgUi0U88MAD+K//+i9s3rwZF110UcPtnnTSSXjiiSewZcsW/OY3v8F9992HM844w4uX4JlVq1bh1Vdfrfr79Kc/jaVLl+KAAw5o+NzTTz+96nnf/va3O7TXnXHJJZdUvb7PfvazDdf/t3/7N/z617/GTTfdhHvvvRevvPIKPvShD3Vob73z9NNPw7IsXHPNNXjiiSewceNGXH311fjKV77S9Ln90EduvPFGnHfeeVi/fj3+8pe/4B3veAeOOuoo7Ny5s+76DzzwAE488UScdtpp2Lp1K9asWYM1a9bg8ccf7/Cet9+9996LtWvX4k9/+hO2bNkCXddx5JFHIpPJNHxeLBar6gcvvvhih/a4M/bZZ5+q1/fHP/7Rdd1+7h8A8PDDD1e9F1u2bAEAHH/88a7P6af+kclk8I53vAPf//736y7/9re/je9973u4+uqr8dBDDyEcDuOoo45CPp933eZkP4NciT60adMmEY/HJzz+29/+VsiyLHbs2OE8dtVVV4lYLCYKhULdbT355JMCgHj44Yedx373u98JSZLE9u3b277vnVIsFsW8efPEJZdc0nC9Qw45RHz+85/vzE7NgN12201s3Lix5fXHxsaEpmnipptuch576qmnBADx4IMPerCHM+vb3/62WLp0acN1+qWPHHTQQWLt2rXOv03TFIsXLxYbNmyou/5HPvIRceyxx1Y9tnLlSvGZz3zG0/2cCTt37hQAxL333uu6jtvnbr9Yv369eMc73tHy+oPUP4QQ4vOf/7xYtmyZsCyr7vJ+7h8AxC9/+Uvn35ZliYULF4rvfOc7zmNjY2PC7/eL//mf/3HdzmQ/g9z01Rm7Zh588EHsu+++WLBggfPYUUcdhWQyiSeeeML1ObNmzao6q7V69WrIsoyHHnrI8332yq9+9SuMjIzg1FNPbbruDTfcgLlz52L58uVYt24dstlsB/awcy699FLMmTMH+++/P77zne80/Gn+0Ucfha7rWL16tfPYXnvthV133RUPPvhgJ3a3oxKJREs3rO71PlIsFvHoo49WxVWWZaxevdo1rg8++GDV+kDp86Rf+wGApn0hnU5jt912w5IlS/DBD37Q9XO1V/3tb3/D4sWLsccee+Ckk07CP/7xD9d1B6l/FItFXH/99fjUpz4FSZJc1+v3/mF7/vnnsWPHjqr4x+NxrFy50jX+U/kMcqNObbd7044dO6qSOgDOv3fs2OH6nPnz51c9pqoqZs+e7fqcXnDttdfiqKOOwi677NJwvY997GPYbbfdsHjxYvzf//0fzj//fDzzzDP43//93w7tqbc+97nP4Z/+6Z8we/ZsPPDAA1i3bh1effVVXH755XXX37FjB3w+34RrOBcsWNDT/aGeZ599FldeeSUuu+yyhuv1Qx8ZHh6GaZp1Px+efvrpus9x+zzpt35gWRbOPfdcvOtd78Ly5ctd19tzzz1x3XXX4e1vfzsSiQQuu+wyrFq1Ck888UTTz5lesHLlSmzevBl77rknXn31VVx88cV4z3veg8cffxzRaHTC+oPSPwDg5ptvxtjYGE455RTXdfq9f1SyYzyZ+E/lM8hN1yd2F1xwAb71rW81XOepp55qehFrv5rK+/Pyyy/jtttuw89//vOm26+8lnDffffFokWLcMQRR+C5557DsmXLpr7jHprMe3Leeec5j7397W+Hz+fDZz7zGWzYsKFvboMzlT6yfft2HH300Tj++ONx+umnN3xuL/YRat3atWvx+OOPN7yeDAAOPvhgHHzwwc6/V61ahb333hvXXHMNvvGNb3i9m5573/ve5/z329/+dqxcuRK77bYbfv7zn+O0006bwT2beddeey3e9773YfHixa7r9Hv/6CZdn9h94QtfaPgtAAD22GOPlra1cOHCCTNM7NmMCxcudH1O7YWLhmHgjTfecH1OJ03l/dm0aRPmzJmDD3zgA5Nub+XKlQBKZ3O6ddCeTp9ZuXIlDMPACy+8gD333HPC8oULF6JYLGJsbKzqrN1rr73WFf2hnsm+H6+88goOO+wwrFq1Cj/84Q8n3V4v9JFac+fOhaIoE2Y3N4rrwoULJ7V+LzrnnHOcCWOTPauiaRr2339/PPvssx7t3cyaNWsW3vrWt7q+vkHoHwDw4osv4o477pj0Gfp+7h92jF977TUsWrTIefy1117DfvvtV/c5U/kMctP1id28efMwb968tmzr4IMPxje/+U3s3LnT+Xl1y5YtiMVieNvb3ub6nLGxMTz66KNYsWIFAOCuu+6CZVnOADaTJvv+CCGwadMmnHzyydA0bdLtbdu2DQCqOmu3mU6f2bZtG2RZnvDzu23FihXQNA133nknjjvuOADAM888g3/84x9V30a7yWTej+3bt+Owww7DihUrsGnTJsjy5C/D7YU+Usvn82HFihW48847sWbNGgClnyDvvPNOnHPOOXWfc/DBB+POO+/Eueee6zy2ZcuWru0HkyGEwGc/+1n88pe/xD333IOlS5dOehumaeKxxx7DMccc48Eezrx0Oo3nnnsOn/jEJ+ou7+f+UWnTpk2YP38+jj322Ek9r5/7x9KlS7Fw4ULceeedTiKXTCbx0EMPuVbtmMpnkKtJTbXoci+++KLYunWruPjii0UkEhFbt24VW7duFalUSgghhGEYYvny5eLII48U27ZtE7///e/FvHnzxLp165xtPPTQQ2LPPfcUL7/8svPY0UcfLfbff3/x0EMPiT/+8Y/iLW95izjxxBM7/vra4Y477hAAxFNPPTVh2csvvyz23HNP8dBDDwkhhHj22WfFJZdcIh555BHx/PPPi1tuuUXsscce4r3vfW+nd9sTDzzwgNi4caPYtm2beO6558T1118v5s2bJ04++WRnndr3RAghzjzzTLHrrruKu+66SzzyyCPi4IMPFgcffPBMvIS2evnll8Wb3/xmccQRR4iXX35ZvPrqq85f5Tr92kd+9rOfCb/fLzZv3iyefPJJccYZZ4hZs2Y5s+g/8YlPiAsuuMBZ//777xeqqorLLrtMPPXUU2L9+vVC0zTx2GOPzdRLaJuzzjpLxONxcc8991T1g2w266xT+35cfPHF4rbbbhPPPfecePTRR8UJJ5wgAoGAeOKJJ2biJbTdF77wBXHPPfeI559/Xtx///1i9erVYu7cuWLnzp1CiMHqHzbTNMWuu+4qzj///AnL+r1/pFIpJ8cAIC6//HKxdetW8eKLLwohhLj00kvFrFmzxC233CL+7//+T3zwgx8US5cuFblcztnG4YcfLq688krn380+g1rVV4ndJz/5SQFgwt/dd9/trPPCCy+I973vfSIYDIq5c+eKL3zhC0LXdWf53XffLQCI559/3nlsZGREnHjiiSISiYhYLCZOPfVUJ1nsNSeeeKJYtWpV3WXPP/981fv1j3/8Q7z3ve8Vs2fPFn6/X7z5zW8WX/rSl0QikejgHnvn0UcfFStXrhTxeFwEAgGx9957i//4j/8Q+XzeWaf2PRFCiFwuJ84++2wxNDQkQqGQ+Nd//deq5KdXbdq0qe7xU/n9r9/7yJVXXil23XVX4fP5xEEHHST+9Kc/OcsOOeQQ8clPfrJq/Z///OfirW99q/D5fGKfffYRt956a4f32Btu/WDTpk3OOrXvx7nnnuu8dwsWLBDHHHOM+Mtf/tL5nffIRz/6UbFo0SLh8/nEm970JvHRj35UPPvss87yQeoftttuu00AEM8888yEZf3eP+xcofbPfs2WZYmvfe1rYsGCBcLv94sjjjhiwvu02267ifXr11c91ugzqFWSEEJM7hwfEREREXWjgapjR0RERNTPmNgRERER9QkmdkRERER9gokdERERUZ9gYkdERETUJ5jYEREREfUJJnZEREREfYKJHREREVGfYGJHRERE1CeY2BERERH1CSZ2REQu/vu//xtz5sxBoVCoenzNmjX4xCc+MUN7RUTkjokdEZGL448/HqZp4le/+pXz2M6dO3HrrbfiU5/61AzuGRFRfUzsiIhcBINBfOxjH8OmTZucx66//nrsuuuuOPTQQ2dux4iIXDCxIyJq4PTTT8ftt9+O7du3AwA2b96MU045BZIkzfCeERFNJAkhxEzvBBFRN1uxYgU+/OEP48gjj8RBBx2EF154AUuWLJnp3SIimkCd6R0gIup2n/70p3HFFVdg+/btWL16NZM6IupaPGNHRNREIpHA4sWLYRgG/vu//xsf/ehHZ3qXiIjq4jV2RERNxONxHHfccYhEIlizZs1M7w4RkSsmdkRELdi+fTtOOukk+P3+md4VIiJX/CmWiKiB0dFR3HPPPfjwhz+MJ598EnvuuedM7xIRkStOniAiamD//ffH6OgovvWtbzGpI6KuxzN2RERERH2C19gRERER9QkmdkRERER9gokdERERUZ9gYkdERETUJ5jYEREREfUJJnZEREREfYKJHREREVGfYGJHRERE1CeY2BERERH1if8fcts3bu4OyKcAAAAASUVORK5CYII=", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "# visualizing the mode solver\n", + "ms = mode_solver_SiN_wvg(10,12)\n", + "ms.plot()\n", + "plt.show()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "First, let's analyze the losses as a function of the bend radius using two different resolution parameters: 10 and 50." + ] + }, + { + "cell_type": "code", + "execution_count": 14, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
12:04:49 -03 Running a batch of 10 mode solvers.                                \n",
+       "                                                                                \n",
+       "
\n" + ], + "text/plain": [ + "\u001b[2;36m12:04:49 -03\u001b[0m\u001b[2;36m \u001b[0m\u001b[36mRunning a batch of \u001b[0m\u001b[1;38;5;125m10\u001b[0m\u001b[38;5;125m mode solvers.\u001b[0m \n", + "\u001b[2;36m \u001b[0m \n" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "application/vnd.jupyter.widget-view+json": { + "model_id": "b24d81afb2e54720838c4c8dc2332738", + "version_major": 2, + "version_minor": 0 + }, + "text/plain": [ + "Output()" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/html": [ + "
12:05:27 -03 A batch of `ModeSolver` tasks completed successfully!              \n",
+       "
\n" + ], + "text/plain": [ + "\u001b[2;36m12:05:27 -03\u001b[0m\u001b[2;36m \u001b[0m\u001b[32mA batch of `ModeSolver` tasks completed successfully!\u001b[0m \n" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/html": [ + "
\n"
+      ],
+      "text/plain": []
+     },
+     "metadata": {},
+     "output_type": "display_data"
+    },
+    {
+     "data": {
+      "text/html": [
+       "
\n",
+       "
\n" + ], + "text/plain": [ + "\n" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "# creating the mode solver objects and running in batch\n", + "\n", + "radius = np.linspace(20, 130, 10)\n", + "\n", + "mode_solvers = []\n", + "for r in radius:\n", + " mode_solver = mode_solver_SiN_wvg(\n", + " resolution=10,\n", + " npml=12,\n", + " nun_modes=5,\n", + " bend_radius=r,\n", + " bend_axis=1,\n", + " size=(20,15),\n", + " )\n", + "\n", + " mode_solvers.append(mode_solver)\n", + "\n", + "batch_data = run_batch(\n", + " mode_solvers=mode_solvers,\n", + " task_name=\"SiN_wvg\",\n", + " folder_name=\"radiative_losses\",\n", + " results_files=[f\"radius_res20_{r:.2f}.hdf5\" for r in radius],\n", + ")" + ] + }, + { + "cell_type": "code", + "execution_count": 15, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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6mySvEUnZo+lxod7syz4EYIQAKDXCg6yKDcrQZLahaG27dysBNYTMjGCEACgV8tMtGv5rDGKsbne/oqxWbV81hjWETI5FlQEAPR6mYl2TU6IYWVptEMQAgCYQnCQRenDI3xdBvyMKW6NVVRUaOLEiUpISFBSUpKampp8XRIAAPADprgidPPNN+vhhx/WZZddptraWoWEhPi6JAAA4Ad6fRD69NNP1bdvX1122WWSpPBwpkgCAIATfH5rbOPGjcrKylJsbKwsFovWrVvXrs+yZcs0bNgwWa1WpaWlqbi4uMvH37FjhwYOHKisrCyNGTNGv/3tbz1YPQAACGQ+vyLU1NSk5ORk3XLLLZo+fXq7/WvWrFFOTo5WrFihtLQ0LV26VBkZGdq+fbuioqIkSSkpKTp+/Hi7v12/fr2OHz+u999/X6WlpYqKilJmZqbGjx+vyZMn9/h3AwAA/s3nQWjKlCmaMmVKp/uffPJJ3XbbbZozZ44kacWKFfrnP/+pP/3pT1qwYIEkqbS0tNO/P+ecczRu3DjFxcVJkr7//e+rtLS00yDU0tKilpYW53Z9fX13vxIAAAgQPr81dipHjx7V1q1bNWnSJGdbUFCQJk2apKKioi4dY/z48aqpqdHBgwflcDi0ceNGjRw5stP+ixcvls1mc37aAhQAAOh9/DoIffPNN2ptbVV0dLRLe3R0tKqrq7t0jD59+ui3v/2tvve972nUqFE6//zzdfXVV3faf+HChaqrq3N+Kisrz+g7AAAA/+XzW2PecLrbbycLCQlhej0AACbh11eEIiMjFRwcrH379rm079u3TzExMT6qCgAA9BZ+HYT69eunsWPHqrCw0NnmcDhUWFio9PR0H1YGAAB6A5/fGmtsbNTOnTud2xUVFSotLVV4eLiGDh2qnJwcZWdna9y4cUpNTdXSpUvV1NTknEUGAADgLp8HoS1btmjixInO7ZycHElSdna2Vq1apRtuuEH79+/XokWLVF1drZSUFBUUFLR7gBoAAKC7LIZhGL4uwp/V19fLZrOprq5OYWFhvi4HAAB0QVd/v/36GSEAAICeRBACAACmRRACAACmRRACAACmRRACAACmRRACAACmRRACAACmRRACAACmRRACAACmRRACAACmRRACAACmRRACAACmRRACAACm1cfXBQAAgK5rdRgqrqhVTUOzokKtSo0PV3CQxddlBSyCEAAAAaKgrEp5+eWqqmt2ttltVuVmJSgz0e7DygIXt8YAAAgABWVVmru6xCUESVJ1XbPmri5RQVmVjyoLbAQhAAD8XKvDUF5+uYwO9rW15eWXq9XRUQ+cCkEIAAA/V1xR2+5K0MkMSVV1zSquqPVeUb0EQQgAAD9X09B5CHKnH/4PQQgAAD8XFWr1aD/8H4IQAAB+LjU+XHabVZ1NkrfoxOyx1Phwb5bVKxCEAADwc8FBFuVmJUhSuzDUtp2blcB6Qm4gCAEAEAAyE+1aPmuMYmyut79ibFYtnzWGdYTcxIKKAAAEiMxEuyYnxLCytAcRhAAACCDBQRalD4/wdRm9BrfGAACAaRGEAACAaRGEAACAaRGEAACAaRGEAACAaRGEAACAaRGEAACAaRGEAACAaRGEAACAaRGEAACAaRGEAACAafGuMQAA4HWtDsMvXh5LEAIAAF5VUFalvPxyVdU1O9vsNqtysxKUmWj3ai3cGgMAAF5TUFaluatLXEKQJFXXNWvu6hIVlFV5tR6CEAAA8IpWh6G8/HIZHexra8vLL1ero6MePYMgBAAAvKK4orbdlaCTGZKq6ppVXFHrtZoIQgAAwCtqGjoPQe708wSCEAAA8IqoUKtH+3kCQQgAAHhFany47DarOpskb9GJ2WOp8eFeq4kgBAAAvCI4yKLcrARJaheG2rZzsxK8up4QQQgAAHhNZqJdy2eNUYzN9fZXjM2q5bPGeH0dIRZUBAAAXpWZaNfkhBhWlgYAAOYUHGRR+vAIX5fBrTEAAGBeBCEAAGBaBCEAAGBaBCEAAGBaBCEAAGBaBCEAAGBaBCEAAGBaBCEAAGBaBCEAAGBarCx9GoZhSJLq6+t9XAkAAOiqtt/ttt/xzhCETqOhoUGSFBcX5+NKAABAdzU0NMhms3W632KcLiqZnMPh0N69exUaGiqLxXMvg6uvr1dcXJwqKysVFhbmseOaDePoGYyjZzCOnsE4eobZx9EwDDU0NCg2NlZBQZ0/CcQVodMICgrSkCFDeuz4YWFhpvwX1NMYR89gHD2DcfQMxtEzzDyOp7oS1IaHpQEAgGkRhAAAgGkRhHwkJCREubm5CgkJ8XUpAY1x9AzG0TMYR89gHD2DcewaHpYGAACmxRUhAABgWgQhAABgWgQhAABgWgQhAABgWgShHrZ48WKNHz9eoaGhioqK0rXXXqvt27e79GlubtYdd9yhiIgIDRw4UNdff7327dvno4r936OPPiqLxaJ58+Y52xjDrtmzZ49mzZqliIgI9e/fX0lJSdqyZYtzv2EYWrRokex2u/r3769JkyZpx44dPqzY/7S2turBBx9UfHy8+vfvr+HDh+s3v/mNy/uMGMeObdy4UVlZWYqNjZXFYtG6detc9ndl3Gpra3XjjTcqLCxMgwYN0q233qrGxkYvfgvfO9U4Hjt2TPPnz1dSUpIGDBig2NhYzZ49W3v37nU5BuP4fwhCPey9997THXfcof/85z/asGGDjh07pquuukpNTU3OPvfee6/y8/P1yiuv6L333tPevXs1ffp0H1btvz766CP98Y9/1KhRo1zaGcPTO3jwoC655BL17dtXb775psrLy7VkyRINHjzY2efxxx/XU089pRUrVmjz5s0aMGCAMjIy1Nzc7MPK/ctjjz2m5cuX65lnntFnn32mxx57TI8//riefvppZx/GsWNNTU1KTk7WsmXLOtzflXG78cYb9emnn2rDhg164403tHHjRv3kJz/x1lfwC6cax8OHD6ukpEQPPvigSkpK9Nprr2n79u2aNm2aSz/G8SQGvKqmpsaQZLz33nuGYRjGoUOHjL59+xqvvPKKs89nn31mSDKKiop8VaZfamhoMM4//3xjw4YNxuWXX27cc889hmEwhl01f/5849JLL+10v8PhMGJiYownnnjC2Xbo0CEjJCTE+Nvf/uaNEgPC1KlTjVtuucWlbfr06caNN95oGAbj2FWSjLVr1zq3uzJu5eXlhiTjo48+cvZ58803DYvFYuzZs8drtfuTb49jR4qLiw1Jxq5duwzDYBy/jStCXlZXVydJCg8PlyRt3bpVx44d06RJk5x9RowYoaFDh6qoqMgnNfqrO+64Q1OnTnUZK4kx7Kp//OMfGjdunGbMmKGoqCiNHj1azz77rHN/RUWFqqurXcbRZrMpLS2NcTzJxRdfrMLCQn3xxReSpI8//libNm3SlClTJDGO7urKuBUVFWnQoEEaN26cs8+kSZMUFBSkzZs3e73mQFFXVyeLxaJBgwZJYhy/jZeuepHD4dC8efN0ySWXKDExUZJUXV2tfv36Of8FbRMdHa3q6mofVOmfXnrpJZWUlOijjz5qt48x7JqvvvpKy5cvV05Ojn75y1/qo48+0t13361+/fopOzvbOVbR0dEuf8c4ulqwYIHq6+s1YsQIBQcHq7W1VY888ohuvPFGSWIc3dSVcauurlZUVJTL/j59+ig8PJyx7URzc7Pmz5+vmTNnOl+8yji6Igh50R133KGysjJt2rTJ16UElMrKSt1zzz3asGGDrFarr8sJWA6HQ+PGjdNvf/tbSdLo0aNVVlamFStWKDs728fVBY6XX35ZL774ov73f/9X3/3ud1VaWqp58+YpNjaWcYRfOXbsmH7wgx/IMAwtX77c1+X4LW6Necmdd96pN954Q++8846GDBnibI+JidHRo0d16NAhl/779u1TTEyMl6v0T1u3blVNTY3GjBmjPn36qE+fPnrvvff01FNPqU+fPoqOjmYMu8ButyshIcGlbeTIkdq9e7ckOcfq27PtGEdX999/vxYsWKAf/vCHSkpK0k033aR7771XixcvlsQ4uqsr4xYTE6OamhqX/cePH1dtbS1j+y1tIWjXrl3asGGD82qQxDh+G0GohxmGoTvvvFNr167V22+/rfj4eJf9Y8eOVd++fVVYWOhs2759u3bv3q309HRvl+uXrrzySn3yyScqLS11fsaNG6cbb7zR+c+M4eldcskl7ZZu+OKLL3TuuedKkuLj4xUTE+MyjvX19dq8eTPjeJLDhw8rKMj1P53BwcFyOBySGEd3dWXc0tPTdejQIW3dutXZ5+2335bD4VBaWprXa/ZXbSFox44deuuttxQREeGyn3H8Fl8/rd3bzZ0717DZbMa7775rVFVVOT+HDx929vnZz35mDB061Hj77beNLVu2GOnp6UZ6eroPq/Z/J88aMwzGsCuKi4uNPn36GI888oixY8cO48UXXzTOOussY/Xq1c4+jz76qDFo0CDj9ddfN/7f//t/xjXXXGPEx8cbR44c8WHl/iU7O9s455xzjDfeeMOoqKgwXnvtNSMyMtL4xS9+4ezDOHasoaHB2LZtm7Ft2zZDkvHkk08a27Ztc85m6sq4ZWZmGqNHjzY2b95sbNq0yTj//PONmTNn+uor+cSpxvHo0aPGtGnTjCFDhhilpaUuvzstLS3OYzCO/4cg1MMkdfj585//7Oxz5MgR4/bbbzcGDx5snHXWWcZ1111nVFVV+a7oAPDtIMQYdk1+fr6RmJhohISEGCNGjDBWrlzpst/hcBgPPvigER0dbYSEhBhXXnmlsX37dh9V65/q6+uNe+65xxg6dKhhtVqN73znO8YDDzzg8iPDOHbsnXfe6fC/h9nZ2YZhdG3cDhw4YMycOdMYOHCgERYWZsyZM8doaGjwwbfxnVONY0VFRae/O++8847zGIzj/7EYxknLoQIAAJgIzwgBAADTIggBAADTIggBAADTIggBAADTIggBAADTIggBAADTIggBAADTIggBAADTIggBAADTIggBAADTIggBaGfChAmaN29erz/3t8/ljXMfOHBAUVFR+vrrr3v0PJL0wx/+UEuWLOnx8wCBrI+vCwAAf/Haa6+pb9++PXqORx55RNdcc42GDRvWo+eRpF/96lf63ve+px//+Mey2Ww9fj4gEHFFCEBAO3r0qMeOFR4ertDQUI8d79sOHz6s559/XrfeemuPneNkiYmJGj58uFavXu2V8wGBiCAEoEPHjx/XnXfeKZvNpsjISD344IMyDEOS5HA4tHjxYsXHx6t///5KTk7Wq6++6vL3EyZM0N13361f/OIXCg8PV0xMjB566CGXPk1NTZo9e7YGDhwou93epds4EyZM0J133ql58+YpMjJSGRkZkqSCggJdeumlGjRokCIiInT11Vfryy+/7Na5vn1rbNiwYVq6dKlLn5SUFJfv8eqrryopKUn9+/dXRESEJk2apKampg5r/9e//qWQkBBddNFFLu2bNm1S37591dzc7Gz7+uuvZbFYtGvXLk2YMEF33XWX5s2bp8GDBys6OlrPPvusmpqaNGfOHIWGhuq8887Tm2++2e6cWVlZeumllzodT8DsCEIAOvSXv/xFffr0UXFxsf7whz/oySef1HPPPSdJWrx4sV544QWtWLFCn376qe69917NmjVL7733XrtjDBgwQJs3b9bjjz+uX//619qwYYNz//3336/33ntPr7/+utavX693331XJSUlXaqtX79++uCDD7RixQpJJ4JOTk6OtmzZosLCQgUFBem6666Tw+E4o3OdSlVVlWbOnKlbbrlFn332md59911Nnz7dGRi/7f3339fYsWPbtZeWlmrkyJGyWq3Otm3btmnw4ME699xznd85MjJSxcXFuuuuuzR37lzNmDFDF198sUpKSnTVVVfppptu0uHDh12OnZqaquLiYrW0tJzRdwV6LQMAvuXyyy83Ro4caTgcDmfb/PnzjZEjRxrNzc3GWWedZXz44Ycuf3PrrbcaM2fOdDnGpZde6tJn/Pjxxvz58w3DMIyGhgajX79+xssvv+zcf+DAAaN///7GPffcc8raRo8efdrvsH//fkOS8cknn3T5XJdffrnL9rnnnmv8/ve/dzlucnKykZubaxiGYWzdutWQZHz99denrccwDOOaa64xbrnllnbtP/7xj43Zs2e7tC1atMiYMGGCs66Tx/L48ePGgAEDjJtuusnZVlVVZUgyioqKXI7z8ccfd6tGwGy4IgSgQxdddJEsFotzOz09XTt27NDOnTt1+PBhTZ48WQMHDnR+XnjhBZdbUZI0atQol2273a6amhpJ0pdffqmjR48qLS3NuT88PFwXXnjhaWvr6KrKjh07NHPmTH3nO99RWFiY82Hk3bt3n9G5TiU5OVlXXnmlkpKSNGPGDD377LM6ePBgp/2PHDnictWnTWlpqVJSUlzatm3b5tJ28lgGBwcrIiJCSUlJzrbo6GhJco5vm/79+0tSuytFAE5g1hiAbmlsbJQk/fOf/9Q555zjsi8kJMRl+9szsCwWi/NW1ZkYMGBAu7asrCyde+65evbZZxUbGyuHw6HExMQzepg6KCio3W2uY8eOOf85ODhYGzZs0Icffqj169fr6aef1gMPPKDNmzcrPj6+3fEiIyPbBaXW1laVlZVp9OjRLu0lJSW6/vrrndsdjeXJbW2h9dvjW1tbK0k6++yzT/t9ATPiihCADm3evNll+z//+Y/OP/98JSQkKCQkRLt379Z5553n8omLi+vy8YcPH66+ffu6nOfgwYP64osvul3rgQMHtH37dv3qV7/SlVdeqZEjR7oEDnfPdfbZZ6uqqsq5XV9fr4qKCpc+FotFl1xyifLy8rRt2zb169dPa9eu7fB4o0ePVnl5uUvb9u3b1dzcrNjYWGdbUVGR9uzZ0+4qkTvKyso0ZMgQRUZGnvGxgN6IK0IAOrR7927l5OTopz/9qUpKSvT0009ryZIlCg0N1c9//nPde++9cjgcuvTSS1VXV6cPPvhAYWFhys7O7tLxBw4cqFtvvVX333+/IiIiFBUVpQceeEBBQd3//7PBgwcrIiJCK1eulN1u1+7du7VgwYIzPtcVV1yhVatWKSsrS4MGDdKiRYsUHBzs3L9582YVFhbqqquuUlRUlDZv3qz9+/dr5MiRHR4vIyNDCxcu1MGDBzV48GBJJ26LSdLTTz+tu+++Wzt37tTdd98tyTNLA7z//vu66qqrzvg4QG9FEALQodmzZ+vIkSNKTU1VcHCw7rnnHv3kJz+RJP3mN7/R2WefrcWLF+urr77SoEGDNGbMGP3yl7/s1jmeeOIJNTY2KisrS6GhobrvvvtUV1fX7VqDgoL00ksv6e6771ZiYqIuvPBCPfXUU5owYcIZnWvhwoWqqKjQ1VdfLZvNpt/85jcuV4TCwsK0ceNGLV26VPX19Tr33HO1ZMkSTZkypcPjJSUlacyYMXr55Zf105/+VNKJIJSRkaGvvvpKSUlJSkhIUF5enubOnaunnnpKf/3rX7s9Hm2am5u1bt06FRQUuH0MoLezGN++AQ4A6DH//Oc/df/996usrExBQUHKyMjQ+PHj9fDDD3v8XMuXL9fatWu1fv16jx8b6C14RggAvGjq1Kn6yU9+oj179kiSPv74Y5fZX57Ut29fPf300z1ybKC34IoQAPhIdXW17Ha7Pv30UyUkJPi6HMCUCEIAAMC0uDUGAABMiyAEAABMiyAEAABMiyAEAABMiyAEAABMiyAEAABMiyAEAABMiyAEAABMiyAEAABMiyAEAABM6/8DEA1/NdcBIMAAAAAASUVORK5CYII=", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "Loss_10 = []\n", + "\n", + "for i, mode_data in enumerate(batch_data):\n", + " idx = findMode(mode_data, 0.4)\n", + " Loss_10.append(mode_data.to_dataframe().iloc[idx][\"loss (dB/cm)\"])\n", + "\n", + "fig, ax = plt.subplots()\n", + "ax.plot(radius, Loss_10, \"o\")\n", + "ax.set_yscale(\"log\")\n", + "ax.set_xlabel(\"bend radius ($\\mu$m)\")\n", + "ax.set_ylabel(\"Loss (dB/cm)\")\n", + "plt.show()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "As we can note, the losses decrease exponentially as a function of the bend radius.\n", + "\n", + "Next, we will perform the same analysis using a finer resolution." + ] + }, + { + "cell_type": "code", + "execution_count": 20, + "metadata": {}, + "outputs": [], + "source": [ + "radius = np.linspace(20, 130, 10)\n", + "\n", + "Loss_50 = []\n", + "\n", + "for r in radius:\n", + " mode_solver = mode_solver_SiN_wvg(\n", + " resolution=50,\n", + " npml=12,\n", + " nun_modes=5,\n", + " bend_radius=r,\n", + " bend_axis=1,\n", + " size=(20,15),\n", + " )\n", + "\n", + " mode_data = run_mode_solver(mode_solver, verbose=False)\n", + " idx = findMode(mode_data, 0.4)\n", + " Loss_50.append(mode_data.to_dataframe().iloc[idx][\"loss (dB/cm)\"])" + ] + }, + { + "cell_type": "code", + "execution_count": 21, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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RmxsrBEWFmZcddVVxo4dO/xUbWCqq6sz7rnnHmPIkCGG1Wo1vvOd7xgPPvig248M49i+9957r93/Hubm5hqG0blxO3DggDFt2jRjwIABRkREhDFz5kyjvr7eD9/Gf043jhUVFR3+7rz33nuuYzCO/2ExjJOWQwUAADAR7hECAACmRRACAACmRRACAACmRRACAACmRRACAACmRRACAACmRRACAACmRRACAACmRRACAACmRRACAACmRRAC0Ma4ceM0Z86cHn/uU8/li3MfOHBAMTEx+vrrr7v1PJL0ox/9SIsWLer28wDBrJe/CwCAQPHmm2+qd+/e3XqORx99VNddd52GDh3areeRpF//+tf63ve+p5/85Cey2Wzdfj4gGHFFCEBQO3r0qNeOFRkZqfDwcK8d71SHDx/WSy+9pNtuu63bznGy5ORkDRs2TCtWrPDJ+YBgRBAC0K7jx4/rzjvvlM1mU3R0tB566CEZhiFJcjqdWrhwoRITE9W3b1+lpqbqjTfecPv7cePG6e6779YDDzygyMhIxcXF6eGHH3br09jYqBkzZmjAgAGy2+2dmsYZN26c7rzzTs2ZM0fR0dHKysqSJBUWFuryyy/XwIEDFRUVpWuvvVZffvlll8516tTY0KFDtXjxYrc+aWlpbt/jjTfeUEpKivr27auoqChNmDBBjY2N7db+t7/9TWFhYbrkkkvc2jdu3KjevXurqanJ1fb111/LYrFo9+7dGjdunO666y7NmTNHgwYNUmxsrF544QU1NjZq5syZCg8P1/nnn6933nmnzTlzcnL06quvdjiegNkRhAC063/+53/Uq1cvFRcX6/e//72efvppvfjii5KkhQsX6uWXX9ayZcv02Wef6d5779X06dP1/vvvtzlG//79tXnzZj355JP6zW9+o/Xr17v233///Xr//fe1Zs0arVu3Tv/85z9VUlLSqdr69OmjDz/8UMuWLZN0Iujk5eVpy5YtKioqUkhIiG644QY5nc6zOtfpOBwOTZs2TbNmzdLnn3+uf/7zn5oyZYorMJ7qgw8+0OjRo9u0l5aWavjw4bJara62bdu2adCgQTrvvPNc3zk6OlrFxcW66667NHv2bE2dOlWXXnqpSkpKdPXVV+uWW27R4cOH3Y6dnp6u4uJiNTc3n9V3BXosAwBOceWVVxrDhw83nE6nq23u3LnG8OHDjaamJqNfv37GRx995PY3t912mzFt2jS3Y1x++eVufcaOHWvMnTvXMAzDqK+vN/r06WO89tprrv0HDhww+vbta9xzzz2nrW3kyJFn/A779+83JBmffvppp8915ZVXum2fd955xn/913+5HTc1NdXIz883DMMwtm7dakgyvv766zPWYxiGcd111xmzZs1q0/6Tn/zEmDFjhlvbggULjHHjxrnqOnksjx8/bvTv39+45ZZbXG0Oh8OQZGzatMntOJ988kmXagTMhitCANp1ySWXyGKxuLYzMzO1c+dO7dq1S4cPH9bEiRM1YMAA1+fll192m4qSpBEjRrht2+12VVdXS5K+/PJLHT16VBkZGa79kZGRuuiii85YW3tXVXbu3Klp06bpO9/5jiIiIlw3I3/zzTdnda7TSU1N1VVXXaWUlBRNnTpVL7zwgg4ePNhh/yNHjrhd9WlVWlqqtLQ0t7Zt27a5tZ08lqGhoYqKilJKSoqrLTY2VpJc49uqb9++ktTmShGAE3hqDECXNDQ0SJLefvttnXvuuW77wsLC3LZPfQLLYrG4pqrORv/+/du05eTk6LzzztMLL7yg+Ph4OZ1OJScnn9XN1CEhIW2muY4dO+b659DQUK1fv14fffSR1q1bp2effVYPPvigNm/erMTExDbHi46ObhOUWlpaVFZWppEjR7q1l5SU6MYbb3RttzeWJ7e1htZTx7empkaSdM4555zx+wJmxBUhAO3avHmz2/a//vUvXXDBBUpKSlJYWJi++eYbnX/++W6fhISETh9/2LBh6t27t9t5Dh48qC+++KLLtR44cEA7duzQr3/9a1111VUaPny4W+Dw9FznnHOOHA6Ha7uurk4VFRVufSwWiy677DIVFBRo27Zt6tOnj1atWtXu8UaOHKny8nK3th07dqipqUnx8fGutk2bNmnv3r1trhJ5oqysTIMHD1Z0dPRZHwvoibgiBKBd33zzjfLy8vSzn/1MJSUlevbZZ7Vo0SKFh4frl7/8pe699145nU5dfvnlqq2t1YcffqiIiAjl5uZ26vgDBgzQbbfdpvvvv19RUVGKiYnRgw8+qJCQrv//2aBBgxQVFaXnn39edrtd33zzjebNm3fW5/r+97+v5cuXKycnRwMHDtSCBQsUGhrq2r9582YVFRXp6quvVkxMjDZv3qz9+/dr+PDh7R4vKytL8+fP18GDBzVo0CBJJ6bFJOnZZ5/V3XffrV27dunuu++W5J2lAT744ANdffXVZ30coKciCAFo14wZM3TkyBGlp6crNDRU99xzj376059Kkn7729/qnHPO0cKFC/XVV19p4MCBGjVqlH71q1916RxPPfWUGhoalJOTo/DwcN13332qra3tcq0hISF69dVXdffddys5OVkXXXSRnnnmGY0bN+6szjV//nxVVFTo2muvlc1m029/+1u3K0IRERHasGGDFi9erLq6Op133nlatGiRJk2a1O7xUlJSNGrUKL322mv62c9+JulEEMrKytJXX32llJQUJSUlqaCgQLNnz9Yzzzyj//3f/+3yeLRqamrS6tWrVVhY6PExgJ7OYpw6AQ4A6DZvv/227r//fpWVlSkkJERZWVkaO3asHnnkEa+fa+nSpVq1apXWrVvn9WMDPQX3CAGAD11zzTX66U9/qr1790qSPvnkE7env7ypd+/eevbZZ7vl2EBPwRUhAPCTyspK2e12ffbZZ0pKSvJ3OYApEYQAAIBpMTUGAABMiyAEAABMiyAEAABMiyAEAABMiyAEAABMiyAEAABMiyAEAABMiyAEAABMiyAEAABMiyAEAABM6/8DYaecAE4BhgIAAAAASUVORK5CYII=", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "fig, ax = plt.subplots()\n", + "ax.plot(radius, Loss_50, \"o\")\n", + "ax.set_yscale(\"log\")\n", + "ax.set_xlabel(\"bend radius ($\\mu$m)\")\n", + "ax.set_ylabel(\"Loss (dB/cm)\")\n", + "plt.show()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Next, we will analyze the deviation between the two resolutions:" + ] + }, + { + "cell_type": "code", + "execution_count": 22, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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h/fwx5yEbrg9JgjubpzrSURE1BImMhI4f7kSn6VcxNeHL6FCWw8A6ODphnsGdMHshG6IDPaVOEIiIiLHwETGRnR6EfuyivHv5Iv45fRl4/Hunbzx4PAITBsUBpWXh4QREhEROR4mMlZWVl2LLw/n4rOUi8gtbej9IgjAmMhAzL6lG27r1QkydtIlIiJqEyYybaDTizdt638iX40Nv13Et2l50Db2flF5eeCPQ8Ixa1gEugZ0kCJ0IiIip8JExkw7MwquG7QY0jhocUxUEHaeKMSG3y7g8MUrxvdjQpSYc0sE7uzXBV6e7P1CRERkKUxkzLAzowBzN6ZCvOZ4gVqDJzamQqlwR7mmoXjXXSZgUlwI5iREYFBER44OICIisgImMq2k04tYti3zuiSmqXJNPTr5eGLW8Ag8MLQrApUKm8VHRETkipjItNLB7FKTx0kteff+/ritT2cbRERERETsttZKxRU3T2IAoLS61sqREBERkQETmVYK9G3dY6LWnkdERETtx0SmlYZ290eISoGWSnYFNOxeGtrd35ZhERERuTQmMq3kJhOwNDEGAK5LZgxfL02Mua6fDBEREVkPExkzTIwNwdpZAxGsMn18FKxSYO2sgZgYGyJRZERERK7Jrnct/e1vf8OyZctMjkVGRuLUqVMSRdSQzNweE3zTzr5ERERkfXadyABA37598fPPPxu/dneXPmQ3mYCEngFSh0FEROTypM8KbsLd3R3BwcFSh0FERER2yO5rZM6cOYPQ0FD06NEDM2fORE5Ozg3P12q1KC8vN3kRERGRc7LrRGbYsGH49NNPsXPnTqxduxbZ2dm47bbbUFFR0eL3rFixAiqVyvgKDw+3YcRERERkS4IoijcaH2RXysrKEBERgXfeeQePPPJIs+dotVpotVrj1+Xl5QgPD4darYZSqbRVqERERNQO5eXlUKlUN/35bfc1Mk35+fmhT58+OHv2bIvnyOVyyOVyG0ZFREREUrHrR0vXqqysxLlz5xASwn4tREREZOeJzDPPPIOkpCRcuHABv/32G+655x64ublhxowZUodGREREdsCuHy1dunQJM2bMQElJCTp37oxbb70VKSkp6Ny5s9ShERERkR2w60Rmy5YtUodAREREdsyuExlLMGzKYj8ZIiIix2H4uX2zzdVOn8gYes6wnwwREZHjqaiogEqlavF9h+oj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b4Varcb//vc/KJVKzJkzp1XX9/HxwSOPPIJnn30WAQEBCAwMxIsvvgiZzPzfkTp27IiAgAD84x//QEhICHJycvD888+3+7PGjBmDTz/9FImJifDz88Mrr7wCNzc34/sHDhzA7t27MX78eAQGBuLAgQO4fPkyoqOjm73ehAkTsGTJEly5cgUdO3YE0PBYCQBWr16Np556CmfPnsVTTz0FwDJby3/99VeMHz++3dchckZMZIic2OzZs1FTU4OhQ4fCzc0NCxYswGOPPQYAeO2119C5c2esWLEC58+fh5+fHwYOHIgXXnjBrM946623UFlZicTERPj6+uKvf/0r1Gq12bHKZDJs2bIFTz31FGJjYxEZGYkPPvgAo0ePbtdnLVmyBNnZ2bjjjjugUqnw2muvmazIKJVK/PLLL3jvvfdQXl6OiIgIvP3225g0aVKz14uLi8PAgQPx5Zdf4vHHHwfQkMhMmDAB58+fR1xcHGJiYrBs2TLMnTsXH3zwAT777DOz74eBRqPBt99+i507d7b5GkTOTBCvfXhMREQ39P333+PZZ59FRkYGZDIZJkyYgCFDhuD111+3+GetXbsWW7duxU8//WTxaxM5A9bIEBGZacqUKXjssceQl5cHADh27JjJ7iNL8vDwwOrVq61ybSJnwBUZIqJ2KCwsREhICE6cOIGYmBipwyFyOUxkiIiIyGHx0RIRERE5LCYyRERE5LCYyBAREZHDYiJDREREDouJDBERETksJjJERETksJjIEBERkcNiIkNEREQOi4kMEREROSwmMkREROSwmMgQERGRw/p/tevIgdzyox0AAAAASUVORK5CYII=", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "fig, ax = plt.subplots()\n", + "ax.plot(\n", + " radius,\n", + " 100 * np.sqrt((np.array(Loss_50) - np.array(Loss_10)) ** 2) / np.array(Loss_50),\n", + " \"-o\",\n", + ")\n", + "\n", + "ax.set_xlabel(\"bend radius ($\\mu$m)\")\n", + "ax.set_ylabel(\"error (%)\")\n", + "\n", + "plt.show()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "It can be noted that the error for the lower resolution can reach up to 43% for low losses.\n", + "\n", + "To analyze the convergence, we will plot the loss as a function of resolution for a fixed bend radius of 120 μm." + ] + }, + { + "cell_type": "code", + "execution_count": 23, + "metadata": {}, + "outputs": [], + "source": [ + "Loss = []\n", + "\n", + "resolution = np.linspace(20, 100, 6)\n", + "mode_solvers = []\n", + "for r in resolution:\n", + " mode_solver = mode_solver_SiN_wvg(\n", + " bend_radius=120,\n", + " npml=12,\n", + " bend_axis=1,\n", + " resolution=r,\n", + " nun_modes=10,\n", + " size=(20,15),\n", + " )\n", + "\n", + " mode_data = run_mode_solver(mode_solver, verbose=False)\n", + "\n", + " idx = findMode(mode_data, 0.4)\n", + "\n", + " Loss.append(mode_data.to_dataframe().iloc[idx][\"loss (dB/cm)\"])" + ] + }, + { + "cell_type": "code", + "execution_count": 24, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "fig, ax = plt.subplots()\n", + "ax.plot(resolution, Loss, \"o\")\n", + "ax.set_xlabel(\"resolution\")\n", + "ax.set_ylabel(\"loss (dB/cm)\")\n", + "plt.show()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "As we can see, the loss values converge for high resolutions.\n", + "\n", + "In conclusion, the general behavior of the losses can be captured with a reasonable resolution. However, if a very precise result is desired, a very high resolution is required." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Losses in a bent optical fiber\n", + "\n", + "Finally, we will estimate the bend losses in an optical fiber." + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAdcAAAHWCAYAAAAl2MNkAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy88F64QAAAACXBIWXMAAA9hAAAPYQGoP6dpAABItklEQVR4nO3de5gT5d0+8HsmyWQ3p92Q3WV35SCggCDCqrDF6qsi5SC1Ug+vWA9orValWkVt5VVBaBEPFXm1CK1VabVa2/7eYlusJwRPIK0HWusREOQgCyRkd5Lskkkyz+8PmkDYZDe7O7uzSe7PdeXSnUxmvpMJuTMzzzyPJIQQICIiIsPIZhdARERUaBiuREREBmO4EhERGYzhSkREZDCGKxERkcEYrkRERAZjuBIRERmM4UpERGQwhisREZHBGK5EBWrt2rWQJAlr1641uxSiosNwJcpzjz76KFasWGF2GZ3yzDPPYMmSJWaXkebxxx/Hcccdh5KSEhx77LF45JFHcn5tNBrFj3/8Y9TW1qK0tBT19fV45ZVXMs67bt06nHrqqXA4HKiursaNN96IcDhs1GaQ2QQR5bWRI0eK008/vdX0RCIhWlpaRCKR6PmicjRt2jQxcOBAs8tIWb58uQAgzj//fPHLX/5SXHbZZQKAuPfee3N6/YwZM4TVahW33nqr+MUvfiHGjx8vrFarePPNN9Pm++CDD0RJSYmoq6sTy5YtE3fccYew2+1iypQp3bFZZAKGKxWEcDhsdgmmyRau+aA3hWtzc7Pw+Xxi2rRpadMvueQS4XQ6xf79+9t8/YYNGwQA8cADD6SmtbS0iCFDhojx48enzTt16lRRU1MjmpqaUtMee+wxAUC89NJLBmwNmY3hSr3Ozp07xXe/+11RU1MjFEURRx99tLj22mtFNBoVQgjx5JNPCgBi7dq14rrrrhOVlZWivLw89fqlS5eKESNGCEVRRE1Njbj++utFMBhMW8fnn38uzjvvPNG3b19ht9vFUUcdJS666CLR2NiYmufll18WX//610VZWZlwOp1i6NChYs6cOe3Wn8vrDhw4IObOnSuGDBkiFEUR/fr1E7fddps4cOBAq+U99dRTYuzYsaK0tFSUl5eL0047LfUFPHDgQAEg7ZEM2jVr1ggAYs2aNWnL+/3vfy9OPPFEUVJSInw+n7jkkkvEzp070+aZOXOmcDqdYufOneLcc88VTqdTVFRUiFtuuUXE4/F234OVK1eKs88+O7UPBw8eLBYsWJD22tNPP71V7W0F7RNPPCEAiMcffzxt+sKFCwUAsWrVqnbrasuqVasyLmfdunUCgHjqqafafP1tt90mLBZLWmAKIcQ999wjAIjt27cLIYRoamoSVqtV3HbbbWnzRaNR4XK5xFVXXdWl7aDewdrDZ6GJ2vTVV19h3LhxaGxsxDXXXIPhw4dj165d+OMf/4jm5mYoipKa9/rrr0dlZSXmzp2LSCQCALj77rsxf/58TJw4Eddddx0+++wzLFu2DP/4xz/w9ttvw2azQdM0TJ48GdFoFDfccAOqq6uxa9cu/PWvf0VjYyPKysrw0Ucf4Zvf/CZOOOEELFiwAHa7HZs3b8bbb7/dZv25vE7XdXzrW9/CW2+9hWuuuQbHHXccPvzwQzz00EP4/PPPsXLlytS88+fPx913341TTjkFCxYsgKIo2LBhA1577TVMmjQJS5YswQ033ACXy4U77rgDANC3b9+s9a1YsQJXXnklxo4di0WLFmHPnj343//9X7z99tv44IMPUF5enpo3kUhg8uTJqK+vx89+9jO8+uqrePDBBzFkyBBcd911bb4PK1asgMvlwuzZs+FyufDaa69h7ty5UFUVDzzwAADgjjvuQFNTE3bu3ImHHnoIAOByubIu88orr8T//d//Yfbs2fjGN76B/v3748MPP8T8+fNx1VVX4eyzz07NGwwGkUgk2qwRABwOBxwOBwDggw8+AACcfPLJafOcdNJJkGUZH3zwAS699NKsy/rggw8wdOhQeDyetOnjxo0DAGzcuDFVczweb7UeRVEwZsyYVB2U58xOd6LDXX755UKWZfGPf/yj1XO6rgshDh25nnrqqWlHQnv37hWKoohJkyalXWf8+c9/LgCIJ554Qghx8HoXAPGHP/whax0PPfSQACD27dvXofpzed1TTz0lZFludR0ueb3v7bffFkIIsWnTJiHLsvj2t7/d6rpp8r0QIvtp4SOPXDVNE1VVVeL4448XLS0tqfn++te/CgBi7ty5qWkzZ84UAMSCBQvSlllXVydOOumktt8EcfAU65G+//3vC4fDkXZ03tHTwrt37xZ9+vQR3/jGN0Q0GhV1dXViwIABrY4WMx3RZ3rMmzcv9ZpZs2YJi8WScb2VlZVixowZbdY2cuRIMWHChFbTP/roIwFALF++XAghxB/+8AcBQLzxxhut5r3wwgtFdXV1e28D5QG2FqZeQ9d1rFy5Euecc06rX/UAIElS2t9XX301LBZL6u9XX30VmqbhpptugizLafN5PB6sWrUKAFBWVgYAeOmll9Dc3JyxluQR3PPPPw9d13Pehlxe94c//AHHHXcchg8fDr/fn3pMmDABALBmzRoAwMqVK6HrOubOnZu2PUDr9yIX7777Lvbu3Yvrr78eJSUlqenTpk3D8OHDU+/P4a699tq0v0877TR88cUX7a6rtLQ09f+hUAh+vx+nnXYampub8emnn3a49qTq6mosXboUr7zyCk477TRs3LgRTzzxRKujxd/+9rd45ZVX2n1cfvnlqde0tLSknRk5XElJCVpaWtqsraWlBXa7PeNrk88f/t9s87a3HsoPPC1Mvca+ffugqiqOP/74nOYfNGhQ2t9ffvklAGDYsGFp0xVFweDBg1PPDxo0CLNnz8bixYvx29/+Fqeddhq+9a1v4dJLL00F70UXXYRf/epX+N73vofbb78dZ511Fs477zxccMEFrYLucLm8btOmTfjkk09QWVmZcRl79+4FAGzZsgWyLGPEiBE5vR/tyfb+AMDw4cPx1ltvpU0rKSlpVaPX60UwGGx3XR999BHuvPNOvPbaa1BVNe25pqamjpaeZsaMGXj66aexatUqXHPNNTjrrLNazfP1r3+9w8stLS2FpmkZnztw4EDaD4Zsr49Goxlfm3z+8P9mm7e99VB+YLhS3urKl9CDDz6IK664As8//zxefvll3HjjjVi0aBHeeecd9OvXD6WlpXjjjTewZs0arFq1Ci+++CKee+45TJgwAS+//HLaEfORNbX3Ol3XMWrUKCxevDjjMvr379/p7TJStm1sT2NjI04//XR4PB4sWLAAQ4YMQUlJCd5//338+Mc/7tCZgEwCgQDeffddAMDHH38MXddb/eDZt29fTtdcXS5X6jpvTU0NEokE9u7di6qqqtQ8mqYhEAigtra2zWXV1NRg165drabv3r0bAFKvr6mpSZt+5LztrYfyA08LU69RWVkJj8eDf//73516/cCBAwEAn332Wdp0TdOwdevW1PNJo0aNwp133ok33ngDb775Jnbt2oXly5ennpdlGWeddRYWL16Mjz/+GAsXLsRrr72WOm2bTXuvGzJk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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "def mode_solver_fiber(\n", + " resolution,\n", + " npml,\n", + " delta_override=None,\n", + " size=(30, 30),\n", + " num_modes=10,\n", + " bend_radius=None,\n", + " symmetry=(0, 0, 0),\n", + " target_neff=1.41,\n", + " fiber_radius=4.1,\n", + " coreIndex=1.45213,\n", + " cladIndex=1.44692,\n", + "):\n", + " fiberDiameter = 2 * fiber_radius\n", + "\n", + " fiber = td.Cylinder(\n", + " axis=0, radius=fiberDiameter / 2, center=(0, 0, 0), length=td.inf\n", + " )\n", + "\n", + " structures = [\n", + " td.Structure(geometry=fiber, medium=td.Medium(permittivity=coreIndex**2))\n", + " ]\n", + "\n", + " mode_spec = td.ModeSpec(\n", + " num_modes=num_modes,\n", + " target_neff=target_neff,\n", + " precision=\"double\",\n", + " bend_radius=bend_radius,\n", + " bend_axis=1,\n", + " num_pml=(npml, npml),\n", + " )\n", + "\n", + " if delta_override:\n", + " mesh_override = [\n", + " td.MeshOverrideStructure(\n", + " geometry=td.Box(\n", + " center=(0, 0, 0), size=(1, 3 * fiber_radius, 3 * fiber_radius)\n", + " ),\n", + " dl=(delta_override,) * 3,\n", + " )\n", + " ]\n", + " else:\n", + " mesh_override = []\n", + "\n", + " grid_spec = td.GridSpec.auto(\n", + " min_steps_per_wvl=resolution, wavelength=1.55, override_structures=mesh_override\n", + " )\n", + "\n", + " sim = td.Simulation(\n", + " size=(10, size[0], size[1]),\n", + " center=(0, 0, 0),\n", + " grid_spec=grid_spec,\n", + " structures=structures,\n", + " sources=[],\n", + " monitors=[],\n", + " run_time=1e-12,\n", + " boundary_spec=td.BoundarySpec.all_sides(boundary=td.Absorber(num_layers=20)),\n", + " symmetry=symmetry,\n", + " medium=td.Medium(permittivity=cladIndex**2),\n", + " )\n", + "\n", + " plane = td.Box(center=(0, 0, 0), size=(0, size[0], size[1]))\n", + "\n", + " mode_solver = ModeSolver(\n", + " simulation=sim, plane=plane, mode_spec=mode_spec, freqs=[td.C_0 / 1.55]\n", + " )\n", + "\n", + " return mode_solver\n", + "\n", + "\n", + "ms = mode_solver_fiber(20, 10, delta_override=0.01)\n", + "ms.plot()\n", + "plt.show()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Due to the low index contrast, a fiber is more sensitive to losses; hence, larger bend radii can be analyzed.\n", + "\n", + "Additionally, because of the longer evanescent fields, it is necessary to carefully define the simulation size. Evanescent fields in the [PML can lead to artificial gain](https://docs.flexcompute.com/projects/tidy3d/en/latest/api/_autosummary/tidy3d.PML.html) and yield inaccurate results.\n", + "\n", + "We will benchmark the losses for a 30 mm bend radius as a function of the plane size. As observed, physical values are obtained only for sizes up to 100 μm." + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": {}, + "outputs": [], + "source": [ + "Loss = []\n", + "sizes = [40, 60, 80, 100, 120]\n", + "for size in sizes:\n", + " mode_solver = mode_solver_fiber(\n", + " bend_radius=30000,\n", + " npml=12,\n", + " resolution=10,\n", + " size=(size, size),\n", + " target_neff=1.449,\n", + " symmetry=(0, 0, 1),\n", + " delta_override=0.05,\n", + " num_modes=10,\n", + " )\n", + "\n", + " mode_data = run_mode_solver(mode_solver, verbose=False)\n", + " idx = findMode(mode_data, 3)\n", + " Loss.append(mode_data.to_dataframe().iloc[idx][\"loss (dB/cm)\"])" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Size: \t loss (dB/cm)\n", + "40 \t -0.0019541640400151487\n", + "60 \t -2.9236682322432187e-05\n", + "80 \t -7.110892900303177e-07\n", + "100 \t 1.9607458191609075e-07\n", + "120 \t 1.7595460603248643e-07\n" + ] + } + ], + "source": [ + "# print the results\n", + "print(\"Size: \\t loss (dB/cm)\")\n", + "for i, s in enumerate(sizes):\n", + " print(\"%s \\t %s\" % (s, Loss[i]))" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Finally, we will analyze the imaginary part of the effective index as a function of the bend radius and compare the results with the analytical model developed by Dietrich Marcuse published in the work \"Curvature loss formula for optical fibers\" [DOI: https://doi.org/10.1364/JOSA.66.000216](https://doi.org/10.1364/JOSA.66.000216).\n", + "\n", + "In this model, the loss coefficient $\\alpha$ is given by:\n", + "\n", + "$2\\alpha = \\frac{\\sqrt(\\pi)k^2e^{-(2/3)(\\frac{\\gamma^3}{\\beta_g^2})R}}{e_\\nu \\gamma^{3/2}V^2\\sqrt{R}K_{\\nu-1}(\\gamma a)K_{\\nu+1}(\\gamma a)}$\n", + "\n", + "where: \n", + "\n", + "$k = \\sqrt{(n_1 2\\pi/\\lambda)^2 -\\beta_g^2}$\n", + "\n", + "$\\gamma = \\sqrt{(\\beta_g^2-(n_2 2\\pi/\\lambda)^2)}$\n", + "\n", + "$e_\\nu = 1$ for $\\nu = 0$ else 2\n", + "\n", + "$V^2 = (a 2\\pi/\\lambda)^2(n_1^2-n_2^2)$\n", + "\n", + "and $n_1$ is the core index, $n_2$ is the clad index, $a$ is the core radius, $R$ is the bend radius, $\\beta_g$ is the constant of a straight waveguide, and $K_\\nu$ is the modified Hankel function." + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": {}, + "outputs": [], + "source": [ + "Loss = []\n", + "Keff = []\n", + "\n", + "radius = [5000, 10000, 15000, 20000, 25000, 30000]\n", + "for r in radius:\n", + " mode_solver = mode_solver_fiber(\n", + " bend_radius=r,\n", + " npml=12,\n", + " resolution=10,\n", + " size=(100, 100),\n", + " target_neff=1.449,\n", + " symmetry=(0, 0, 1),\n", + " delta_override=0.05,\n", + " num_modes=5,\n", + " )\n", + "\n", + " mode_data = run_mode_solver(mode_solver, verbose=False)\n", + " idx = findMode(mode_data, 4)\n", + "\n", + " Loss.append(mode_data.to_dataframe().iloc[idx][\"loss (dB/cm)\"])\n", + " Keff.append(mode_data.to_dataframe().iloc[idx][\"k eff\"])" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "As we can see, the simulated results, with proper simulation size, match very well the analytical results up to $k_{eff}$ at the order of $10^{-12}$" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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uffTz9795S9/MWvWrDH/+Mc/TE1NjbnvvvtM//79zY4dO4wxofm7TGDys0WLFpmMjIwT7vv0009N//79zcqVK91l77//vpFkKioqjDFHP6ysVqupr69313n88cdNVFSUaW9vN8YYc++995px48Z5HHvmzJkmPz/fx1cTvL74Qe5yuUxiYqJ5+OGH3WWffvqpCQ8PN3/+85+NMcZUV1cbSWbTpk3uOq+88oqxWCxmz549xhhj/vu//9vExMS4+9oYY3784x+bsWPHure//vWvm2uuucajPTk5Oeb222/36TUGg5MFpuuvv/6k76Gfz0xjY6ORZN58801jTO/+vcjOzjbFxcXubafTaZKTk82SJUt8f6EB9sV+NuZoYJo3b95J30M/n5mYmBjz+9//PmR/lxmS6wUffvihkpOTde655+pb3/qWdu3aJUmqqqrSkSNHlJeX5657wQUXaMSIEaqoqJAkVVRUKD09XQkJCe46+fn5am5u1nvvveeuc/wxjtU5doy+qLa2VvX19R79Eh0drZycHI++HTx4sCZNmuSuk5eXJ6vVqo0bN7rrXH755QoLC3PXyc/PV01NjQ4dOuSu09f7f926dYqPj9fYsWM1d+5cHThwwL2Pfj4zTU1NkqTY2FhJvff3oqOjQ1VVVR51rFar8vLyzsq+/mI/H/PHP/5RcXFxSktL04IFC/TZZ5+599HPp8fpdGr58uVqbW1Vbm5uyP4u8+W7fpaTk6Nly5Zp7Nixqqur0+LFi3XZZZdpx44dqq+vV1hYmAYPHuzxnoSEBNXX10uS6uvrPX5hju0/tu9UdZqbm/X5559rwIABfrq64HWsb07UL8f3W3x8vMf+fv36KTY21qPO6NGjuxzj2L6YmJiT9v+xY5ztpk2bphkzZmj06NH66KOPdN9996mgoEAVFRWy2Wz08xlwuVy6++679eUvf1lpaWmS1Gt/Lw4dOiSn03nCOh988IHPrjEYnKifJemb3/ymRo4cqeTkZL377rv68Y9/rJqaGr3wwguS6Ofu2r59u3Jzc9XW1qZBgwZp1apVSk1NlcPhCMnfZQKTnxUUFLj/PX78eOXk5GjkyJF67rnn+mSQwdnnG9/4hvvf6enpGj9+vM477zytW7dOU6dODWDLQldxcbF27Niht956K9BNOaudrJ+/+93vuv+dnp6upKQkTZ06VR999JHOO++83m5myBo7dqwcDoeampr0/PPPq6ioSG+++Wagm3XGGJLrZYMHD9aXvvQl7dy5U4mJiero6NCnn37qUaehoUGJiYmSpMTExC5PDhzb9lYnKiqqz4ayY31zon45vt8aGxs99nd2durgwYM+6f9j+/uac889V3Fxcdq5c6ck+vl03XHHHfrrX/+qN954Q8OHD3eX99bfi7i4ONlstrO+r0/WzyeSk5MjSR6/0/Szd2FhYRozZowmTpyoJUuWKCMjQ//1X/8Vsr/LBKZe1tLSoo8++khJSUmaOHGi+vfvr/Lycvf+mpoa7dq1S7m5uZKk3Nxcbd++3eMD59VXX1VUVJRSU1PddY4/xrE6x47RF40ePVqJiYke/dLc3KyNGzd69O2nn36qqqoqd53XX39dLpfL/QcyNzdX69ev15EjR9x1Xn31VY0dO1YxMTHuOvT/f/zrX//SgQMHlJSUJIl+7i5jjO644w6tWrVKr7/+epchyt76exEWFqaJEyd61HG5XCovLz8r+tpbP5+Iw+GQJI/fafr59LlcLrW3t4fu7/JpTxPHafnhD39o1q1bZ2pra83bb79t8vLyTFxcnGlsbDTGHH20csSIEeb11183mzdvNrm5uSY3N9f9/mOPVl511VXG4XCYsrIyM3To0BM+WnnPPfeY999/39jt9j6xrMDhw4fN1q1bzdatW40k88gjj5itW7eaf/7zn8aYo8sKDB482Lz44ovm3XffNddff/0JlxW46KKLzMaNG81bb71lzj//fI/H3T/99FOTkJBgbr75ZrNjxw6zfPlyc84553R53L1fv37mV7/6lXn//ffNokWLzqrH3U/Vz4cPHzY/+tGPTEVFhamtrTWvvfaamTBhgjn//PNNW1ub+xj0s3dz58410dHRZt26dR6Ps3/22WfuOr3192L58uUmPDzcLFu2zFRXV5vvfve7ZvDgwR5PLIUqb/28c+dO8+CDD5rNmzeb2tpa8+KLL5pzzz3XXH755e5j0M/ezZ8/37z55pumtrbWvPvuu2b+/PnGYrGYtWvXGmNC83eZwORnM2fONElJSSYsLMwMGzbMzJw50+zcudO9//PPPzff//73TUxMjDnnnHPM9OnTTV1dnccxPvnkE1NQUGAGDBhg4uLizA9/+ENz5MgRjzpvvPGGyczMNGFhYebcc881Tz31VG9cXkC98cYbRlKXV1FRkTHm6NIC/+///T+TkJBgwsPDzdSpU01NTY3HMQ4cOGBuuukmM2jQIBMVFWVmzZplDh8+7FFn27Zt5tJLLzXh4eFm2LBh5he/+EWXtjz33HPmS1/6kgkLCzPjxo0za9as8dt197ZT9fNnn31mrrrqKjN06FDTv39/M3LkSDNnzpwuf4zoZ+9O1MeSPP5b7s2/F48++qgZMWKECQsLM9nZ2ebvf/+7Py6713nr5127dpnLL7/cxMbGmvDwcDNmzBhzzz33eKzDZAz97M3s2bPNyJEjTVhYmBk6dKiZOnWqOywZE5q/yxZjjDn9+1IAAAB9B3OYAAAAvCAwAQAAeEFgAgAA8ILABAAA4AWBCQAAwAsCEwAAgBcEJgAAAC8ITAAAAF4QmAAAALwgMAEAAHhBYAIQkiZPnqy77747YOfrjfMfOHBA8fHx+uSTT/x6Hkn6xje+oV//+td+Pw8QqghMAM7YrbfeKovF4n4NGTJE06ZN07vvvhvopvndCy+8oJ/+9Kd+PcdDDz2k66+/XqNGjfLreSTpJz/5iR566CE1NTX5/VxAKCIwAeiRadOmqa6uTnV1dSovL1e/fv107bXXBrpZJ9TR0eGzY8XGxioyMtJnx/uizz77TP/7v/+r2267zW/nOF5aWprOO+88Pfvss71yPiDUEJgA9Eh4eLgSExOVmJiozMxMzZ8/X7t379a+ffskSS6XS0uWLNHo0aM1YMAAZWRk6Pnnn/c4xuTJk3XXXXfp3nvvVWxsrBITE/XAAw+497e2tuqWW27RoEGDlJSU1O2ho8mTJ+uOO+7Q3Xffrbi4OOXn56usrEyXXnqpBg8erCFDhujaa6/VRx995PG+7pzv+CG5UaNGqbS01GN/ZmamxzU8//zzSk9P14ABAzRkyBDl5eWptbX1pG1/+eWXFR4erosvvthd9tZbb6l///5qa2tzl33yySeyWCz65z//6W7XnXfeqbvvvlsxMTFKSEjQE088odbWVs2aNUuRkZEaM2aMXnnllS7nLCws1PLly0/aJqAvIzAB8JmWlhY9++yzGjNmjIYMGSJJWrJkiZ5++mktXbpU7733nn7wgx/o29/+tt58802P9/7hD3/QwIEDtXHjRv3yl7/Ugw8+qFdffVWSdM899+jNN9/Uiy++qLVr12rdunXasmVLt9r0hz/8QWFhYXr77be1dOlStba2qqSkRJs3b1Z5ebmsVqumT58ul8vlfk9PzncidXV1uummmzR79my9//77WrdunWbMmCFjzEnfs2HDBk2cONGjzOFw6MILL1RERIS7bOvWrYqJidHIkSM9rjkuLk6VlZW68847NXfuXH3ta1/TJZdcoi1btuiqq67SzTffrM8++8zj+NnZ2aqsrFR7e/sZXytw1jIAcIaKioqMzWYzAwcONAMHDjSSTFJSkqmqqjLGGNPW1mbOOecc884773i877bbbjM33XSTe/uKK64wl156qUedrKws8+Mf/9gcPnzYhIWFmeeee86978CBA2bAgAFm3rx5p2zfFVdcYS666KJT1tm3b5+RZLZv326MMd0+3xVXXOHeHjlypPnNb37jcdyMjAyzaNEiY4wxVVVVRpL55JNPTtmW411//fVm9uzZHmXf+c53zC233OJRtnDhQjN58mSPdh3fl52dnWbgwIHm5ptvdpfV1dUZSaaiosLjWNu2bTvtdgJ9BXeYAPTIlClT5HA45HA4VFlZqfz8fBUUFOif//yndu7cqc8++0xXXnmlBg0a5H49/fTTXYbBxo8f77GdlJSkxsZGffTRR+ro6FBOTo57X2xsrMaOHdut9n3xLs2HH36om266Seeee66ioqLcE6p37dolST0+34lkZGRo6tSpSk9P19e+9jU98cQTOnTo0Cnf8/nnn3vcSZKO3mHKzMz0KNu6dWuXsuP70mazaciQIUpPT3eXJSQkSJIaGxs93jdgwABJ6nLnCYDUL9ANABDaBg4cqDFjxri3f//73ys6OlpPPPGECgsLJUlr1qzRsGHDPN4XHh7usd2/f3+PbYvF4jFM1pP2Ha+wsFAjR47UE088oeTkZLlcLqWlpfVoQrjVau0yvHbkyBH3v202m1599VW98847Wrt2rR599FHdf//92rhxo0aPHn3CY8bFxXmEKqfTqR07duiiiy7yqLdlyxZ99atf9Sg7UV8eX2axWCSpS/8ePHhQkjR06NBTXi/QF3GHCYBPWSwWWa1Wff7550pNTVV4eLh27dqlMWPGeLxSUlK6dbzzzjtP/fv318aNG91lhw4d0j/+8Y/TbtuBAwdUU1Ojn/zkJ5o6daouvPDCLnd6zuR8Q4cOVV1dnXu7ublZtbW1HnUsFou+/OUva/Hixdq6davCwsK0atWqkx7zoosuUnV1tXu7pqZGbW1tSk5OdpdVVFRoz549Xe4wnakdO3Zo+PDhiouL88nxgLMJd5gA9Eh7e7vq6+slHQ0Wjz32mFpaWlRYWKjIyEj96Ec/0g9+8AO5XC5deumlampq0ttvv62oqCgVFRV5Pf6gQYN022236Z577tGQIUMUHx+v+++/X1br6f//XkxMjIYMGaLf/e53SkpK0q5duzR//vwen+8rX/mKli1bpsLCQg0ePFgLFy6UzWZz79+4caPKy8t11VVXKT4+Xhs3btS+fft04YUXnvSY+fn5WrBggQ4dOqSYmBg5HA5J0qOPPqq77rpLO3fu1F133SXJd8slbNiwQVdddZVPjgWcbQhMAHqkrKxMSUlJkqTIyEhdcMEFWrlypSZPnixJ+ulPf6qhQ4dqyZIl+vjjjzV48GBNmDBB9913X7fP8fDDD3uEsB/+8IdntMCi1WrV8uXLdddddyktLU1jx47Vb3/7W3dbz/R8CxYsUG1tra699lpFR0frpz/9qccdpqioKK1fv16lpaVqbm7WyJEj9etf/1oFBQUnPWZ6eromTJig5557TrfffrscDofy8/P18ccfKz09XampqVq8eLHmzp2r3/72t3rmmWdOuz+O19bWptWrV6usrKxHxwHOVhbzxYF3AEBQWLNmje655x7t2LFDBQUFysrK0s9+9jO/nOvxxx/XqlWrtHbtWr8cHwh13GECgCB1zTXX6MMPP9SePXu0bds2zZ4922/n6t+/vx599FG/HR8IddxhAoAgV19fr6SkJL333ntKTU0NdHOAPonABAAA4AXLCgAAAHhBYAIAAPCCwAQAAOAFgQkAAMALAhMAAIAXBCYAAAAvCEwAAABeEJgAAAC8IDABAAB4QWACAADw4v8DBAsaDPBIOn4AAAAASUVORK5CYII=", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "# function for calculation alpha\n", + "def alpha(R, a=4.1, nmode=1.449156, n1=1.45213, n2=1.44692, lda0=1.55, mode=0):\n", + " beta = 2 * np.pi * nmode / lda0\n", + " ev = 2 if mode == 0 else 1\n", + " k0 = np.pi * 2 / lda0\n", + " gamma = np.sqrt(beta**2 - (n2**2) * (k0**2))\n", + " k = np.sqrt((n1**2) * k0**2 - beta**2)\n", + " Vsquare = (k0**2) * (a**2) * (n1**2 - n2**2)\n", + "\n", + " from scipy.special import kv\n", + "\n", + " up = np.sqrt(np.pi) * (k**2) * np.exp(-(2 / 3) * ((gamma**3) / (beta**2)) * R)\n", + " down = (\n", + " ev\n", + " * (gamma ** (3 / 2))\n", + " * Vsquare\n", + " * np.sqrt(R)\n", + " * kv(mode - 1, gamma * a)\n", + " * kv(mode + 1, gamma * a)\n", + " )\n", + "\n", + " return np.real((1 / 2) * (up / down))\n", + "\n", + "\n", + "fig, ax = plt.subplots()\n", + "\n", + "ax.plot(radius, Keff, \"o\", label=\"Simulated\")\n", + "ax.plot(\n", + " radius,\n", + " [alpha(r) * 1.55 / (4 * np.pi) for r in radius],\n", + " \"*\",\n", + " label=\"Analytical model\",\n", + ")\n", + "ax.set_yscale(\"log\")\n", + "ax.set_xlabel(\"Bend radius ($\\mu$m)\")\n", + "ax.set_ylabel(\"$k_{eff}$\")\n", + "\n", + "plt.show()" + ] + } + ], + "metadata": { + "description": "This notebook demonstrates how to use the mode solver in Tidy3D to analyze losses in waveguides.", + "feature_image": "./img/RadiativeLossesModeSolver.png", + "kernelspec": { + "display_name": "Python 3 (ipykernel)", + "language": "python", + "name": "python3" + }, + "keywords": "mode solver, modes, Tidy3D, FDTD", + "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.11.7" + }, + "title": "Using the Mode Solver in Tidy3D to Analyze Radiative Losses | Flexcompute" + }, + "nbformat": 4, + "nbformat_minor": 4 +} diff --git a/docs/features/mode.rst b/docs/features/mode.rst index 6a3c9bc..3c920ea 100644 --- a/docs/features/mode.rst +++ b/docs/features/mode.rst @@ -9,4 +9,5 @@ Tidy3D offers convenient plugins for optical and waveguide mode analysis. With m ../../ModeSolver ../../WaveguidePluginDemonstration - ../../BatchModeSolver \ No newline at end of file + ../../BatchModeSolver + ../../RadiativeLossesModeSolver diff --git a/img/RadiativeLossesModeSolver.png b/img/RadiativeLossesModeSolver.png new file mode 100644 index 0000000..38c0797 Binary files /dev/null and b/img/RadiativeLossesModeSolver.png differ