{ "cells": [ { "cell_type": "markdown", "id": "d4962fd2", "metadata": {}, "source": [ "# Waveguide crossing based on cosine tapers" ] }, { "cell_type": "markdown", "id": "5e5b9158", "metadata": {}, "source": [ "To achieve a high integration density on a photonic chip, efficient routing of light with low loss using compact junctions is necessary. Therefore, waveguide crossings are crucial building blocks in high performance integrated circuits. \n", "\n", "This example model demonstrates the simulation of a waveguide crossing based on cosine tapers. The convex cosine taper focuses the guided mode at the center of the crossing junction. This ensures the light is efficiently transmitted into the through port instead of scattered into the cross ports. The device achieves an insertion loss of ~0.2 dB and crosstalk ~-30 dB in the O-band (1260 nm -1360 nm). The design is adapted from [Sujith Chandran, et al. \"Beam shaping for ultra-compact waveguide crossings on monolithic silicon photonics platform,\" Opt. Lett. 45, 6230-6233 (2020)](https://opg.optica.org/ol/abstract.cfm?uri=ol-45-22-6230).\n", "\n", "" ] }, { "cell_type": "code", "execution_count": 1, "id": "2eaed87d", "metadata": { "execution": { "iopub.execute_input": "2023-03-28T01:32:53.848848Z", "iopub.status.busy": "2023-03-28T01:32:53.848581Z", "iopub.status.idle": "2023-03-28T01:32:55.051605Z", "shell.execute_reply": "2023-03-28T01:32:55.050997Z" } }, "outputs": [], "source": [ "import numpy as np\n", "import matplotlib.pyplot as plt\n", "\n", "import tidy3d as td\n", "import tidy3d.web as web\n", "from scipy.optimize import fsolve\n" ] }, { "cell_type": "markdown", "id": "290a838f", "metadata": {}, "source": [ "## Simulation Setup" ] }, { "cell_type": "markdown", "id": "85200028", "metadata": {}, "source": [ "Define geometric parameters and materials. In this device, the Si waveguide has a thickness of 161 nm and a width of 350 nm. " ] }, { "cell_type": "code", "execution_count": 2, "id": "2f5c50ea", "metadata": { "execution": { "iopub.execute_input": "2023-03-28T01:32:55.054178Z", "iopub.status.busy": "2023-03-28T01:32:55.053896Z", "iopub.status.idle": "2023-03-28T01:32:55.071995Z", "shell.execute_reply": "2023-03-28T01:32:55.071524Z" } }, "outputs": [], "source": [ "h = 0.161 # waveguide thickness\n", "w_in = 0.35 # input taper width\n", "w_out = 1.1 # output taper width\n", "w_m = 0.75 # amplitude of the cos function\n", "l_t = 5.3 # taper length\n", "inf_eff = (\n", " 1000 # effective infinity used to make sure the waveguides extend into the pml\n", ")\n" ] }, { "cell_type": "code", "execution_count": 3, "id": "4b92b8e9", "metadata": { "execution": { "iopub.execute_input": "2023-03-28T01:32:55.074009Z", "iopub.status.busy": "2023-03-28T01:32:55.073842Z", "iopub.status.idle": "2023-03-28T01:32:55.091203Z", "shell.execute_reply": "2023-03-28T01:32:55.090747Z" } }, "outputs": [], "source": [ "si = td.Medium(permittivity=3.67**2)\n", "sio2 = td.Medium(permittivity=1.45**2)\n" ] }, { "cell_type": "markdown", "id": "718becc3", "metadata": {}, "source": [ "The taper width is described by a cosine function $w(x)=w_m cos(ax+b)$. To determine the parameters $a$ and $b$, we solve a system of equations to ensure $w(x)=w_{in}/2$ at the beginning of the taper and $w(x)=w_{out}/2$ at the end of the taper. This can be easily done using fsolve from Scipy.\n", "\n", "After we obtain $w(x)$, vertices can be generated and the taper can be made using PolySlab. Once the first taper is made, the rest three tapers can be made by manipulating the vertices with the symmetry relation." ] }, { "cell_type": "code", "execution_count": 4, "id": "0e2ef818", "metadata": { "execution": { "iopub.execute_input": "2023-03-28T01:32:55.093256Z", "iopub.status.busy": "2023-03-28T01:32:55.093090Z", "iopub.status.idle": "2023-03-28T01:32:55.117139Z", "shell.execute_reply": "2023-03-28T01:32:55.116585Z" } }, "outputs": [], "source": [ "# numerically solve for the cos function that describes the taper shape\n", "def equations(x0):\n", " a, b = x0\n", " return (\n", " w_m * np.cos(a * (-w_out / 2) + b) - w_out / 2,\n", " w_m * np.cos(a * (-w_out / 2 - l_t) + b) - w_in / 2,\n", " )\n", "\n", "\n", "a, b = fsolve(equations, (0.5, 2))\n", "\n", "x = np.linspace(-w_out / 2 - l_t, -w_out / 2, 30)\n", "w = w_m * np.cos(a * x + b)\n", "\n", "# using the calculated taper shape to construct the taper as a PolySlab\n", "vertices = np.zeros((2 * len(x), 2))\n", "vertices[:, 0] = np.concatenate((x, np.flipud(x)))\n", "vertices[:, 1] = np.concatenate((w, -np.flipud(w)))\n", "taper_1 = td.Structure(\n", " geometry=td.PolySlab(vertices=vertices, axis=2, slab_bounds=(-h / 2, h / 2)),\n", " medium=si,\n", ")\n", "\n", "# creating the other four tapers by manipulating the vertices of the first taper\n", "vertices[:, 0] = -vertices[:, 0]\n", "taper_2 = td.Structure(\n", " geometry=td.PolySlab(vertices=vertices, axis=2, slab_bounds=(-h / 2, h / 2)),\n", " medium=si,\n", ")\n", "\n", "vertices[:, [1, 0]] = vertices[:, [0, 1]]\n", "taper_3 = td.Structure(\n", " geometry=td.PolySlab(vertices=vertices, axis=2, slab_bounds=(-h / 2, h / 2)),\n", " medium=si,\n", ")\n", "\n", "vertices[:, 1] = -vertices[:, 1]\n", "taper_4 = td.Structure(\n", " geometry=td.PolySlab(vertices=vertices, axis=2, slab_bounds=(-h / 2, h / 2)),\n", " medium=si,\n", ")\n", "\n", "# creating the center crossing junction using a Box\n", "corner = 0\n", "center = td.Structure(\n", " geometry=td.Box.from_bounds(\n", " rmin=(-w_out / 2 - corner, -w_out / 2 - corner, -h / 2),\n", " rmax=(w_out / 2 + corner, w_out / 2 + corner, h / 2),\n", " ),\n", " medium=si,\n", ")\n", "\n", "# creating the input port and through port\n", "horizontal_wg = td.Structure(\n", " geometry=td.Box.from_bounds(\n", " rmin=(-inf_eff, -w_in / 2, -h / 2), rmax=(inf_eff, w_in / 2, h / 2)\n", " ),\n", " medium=si,\n", ")\n", "\n", "# creating the cross ports\n", "vertical_wg = td.Structure(\n", " geometry=td.Box.from_bounds(\n", " rmin=(-w_in / 2, -inf_eff, -h / 2), rmax=(w_in / 2, inf_eff, h / 2)\n", " ),\n", " medium=si,\n", ")\n" ] }, { "cell_type": "markdown", "id": "074d7cde", "metadata": {}, "source": [ "Set up simulation domain, source, and monitors. A mode source is used to excite the input waveguide. A field monitor at $z=0$ plane is added to monitor the field propagation. Two flux monitors are added at the through port and cross port to monitor the transmission and crosstalk levels.\n", "\n", "Before running the simulation, we can use the plot method to ensure the geometry, source, and monitors are set up correctly." ] }, { "cell_type": "code", "execution_count": 5, "id": "54a54758", "metadata": { "execution": { "iopub.execute_input": "2023-03-28T01:32:55.119164Z", "iopub.status.busy": "2023-03-28T01:32:55.118996Z", "iopub.status.idle": "2023-03-28T01:32:55.443420Z", "shell.execute_reply": "2023-03-28T01:32:55.442908Z" } }, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAcYAAAHWCAYAAADttCmyAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy88F64QAAAACXBIWXMAAA9hAAAPYQGoP6dpAABR7klEQVR4nO3deXgb5YE/8O9cumVZie3EISEkoTSkgYacfTg2pGSBlpaybWmXUhZSNhQayhF2KVl4uNol20KBLVdKdxv4UQop7UIplCMlXKWFUkL7ECDhbnMnTmxJ1jWjmff3hyJZjh1bkiVrRvP9PI8e2/LM6JVmpK/eY96RhBACREREBACQG10AIiIiO2EwEhERlWAwEhERlWAwEhERlWAwEhERlWAwEhERlWAwEhERlWAwEhERlWAwEhERlWAwEjnUc889B0mS8NxzzzW6KERNhcFIZHN33nkn7rnnnkYXoyo///nPceuttza6GAAAy7Lwgx/8AFOmTIHP58ORRx6JBx54oOz1e3p6cN5556G9vR3BYBCLFi3C+vXrB1320UcfxezZs+Hz+XDwwQfjmmuuQS6Xq9VToXoTRGRrn/jEJ8TChQsH3G+apkin08I0zdEvVJlOOeUUMXny5EYXQwghxBVXXCEAiKVLl4q7775bnHLKKQKAeOCBB4Zd1zRNcfTRR4tgMCiuvfZacfvtt4sZM2aIcDgs3nnnnX7L/va3vxWSJIlFixaJu+++W3z7298WsiyL888/v15PjWqMwUiO0Nvb2+giNMyBgtEJ7BKMW7ZsEZqmiWXLlhXvsyxLHHfccWLixIkil8sNuf6aNWsEAPHQQw8V79u1a5dobW0VZ5xxRr9lZ8yYIT75yU8KwzCK91155ZVCkiTx9ttv1+gZUT0xGGnUbdmyRXzjG98QnZ2dwuPxiEMOOUScf/75IpvNCiGEWL16tQAgnnvuOXHBBReI9vZ20draWlz/jjvuEDNmzBAej0d0dnaKb33rW6K7u7vfY7zzzjvii1/8ohg3bpzwer3ioIMOEl/96ldFT09PcZmnn35aHHPMMSISiYhgMCgOO+wwsWLFimHLX856mUxGXH311WLatGnC4/GIiRMnin//938XmUxmwPbuu+8+MW/ePOH3+0Vra6s47rjjxFNPPSWEEGLy5MkCQL9bISSfffZZAUA8++yz/bb3i1/8QsyePVv4fD4xduxYceaZZ4otW7b0W+bss88WwWBQbNmyRXzhC18QwWBQtLW1icsuu2zYkBBCiEceeUR89rOfLe7DqVOniuuvv77fugsXLhxQ9qFC8uyzzx6wfOF2zTXXDFumodxxxx0CgHjzzTf73f/zn/9cABAvvvjikOuffvrpYty4cQNq5+edd54IBALF/frmm28KAOKOO+7ot9zWrVsFAPHd7353RM+DRoc6iq22RNi2bRvmz59f7K+ZPn06tm7dil/+8pdIpVLweDzFZb/1rW+hvb0dV199NZLJJADg2muvxXXXXYfFixfjggsuwKZNm3DXXXfh1VdfxUsvvQRN06DrOk466SRks1l8+9vfxvjx47F161Y89thj6OnpQSQSwZtvvonPfe5zOPLII3H99dfD6/Xivffew0svvTRk+ctZz7IsnHrqqfj973+P8847D4cffjjeeOMN3HLLLXjnnXfwyCOPFJe97rrrcO211+Loo4/G9ddfD4/Hg1deeQXr1q3DiSeeiFtvvRXf/va3EQqFcOWVVwIAxo0bd8Dy3XPPPViyZAnmzZuHlStXYufOnfjv//5vvPTSS3j99dfR2tpaXNY0TZx00klYsGABbrrpJvzud7/DD3/4Q0ybNg0XXHDBkK/DPffcg1AohOXLlyMUCmHdunW4+uqrEY/HceONNwIArrzySsRiMWzZsgW33HILACAUCh1wm9/85jexePHifvc9+eSTuP/++9HR0VG8r6ura8iyFYTDYXi9XgDA66+/jmAwiMMPP7zfMvPnzy/+/9hjjz3gtl5//XXMnj0bstx/WMb8+fNx991345133sERRxyB119/HQAwd+7cfstNmDABEydOLP6fbK7RyUzu8i//8i9ClmXx6quvDvifZVlCiL4a47HHHtuvBrJr1y7h8XjEiSee2O+b++233y4AiJ/+9KdCCCFef/31Ac1e+7vlllsEALF79+6Kyl/Oevfdd5+QZXlALWTVqlUCgHjppZeEEEK8++67QpZl8U//9E8DaiKF10KIAzel7l9j1HVddHR0iJkzZ4p0Ol1c7rHHHhMAxNVXX128r1A7u/766/tt86ijjhJz5swZ+kUQQqRSqQH3ffOb3+xXexJiZE2p7777rohEIuIf//Ef+x0HOECtcv/b6tWr+5Vj6tSpAx4jmUwKAOKKK64YsizBYFB84xvfGHD/448/LgCIJ598UgghxI033igAiL///e8Dlp03b5741Kc+Ve7TpwbiqFQaNZZl4ZFHHsHnP//5Ad+oAUCSpH5/L126FIqiFP/+3e9+B13Xcckll/T75r506VK0tLTg8ccfBwBEIhEAwFNPPYVUKjVoWQo1p1//+tewLKvs51DOeg899BAOP/xwTJ8+HV1dXcXbpz/9aQDAs88+CwB45JFHYFkWrr766gE1kf1fi3L8+c9/xq5du/Ctb30LPp+veP8pp5yC6dOnF1+fUueff36/v4877jh88MEHwz6W3+8v/p5IJNDV1YXjjjsOqVQKGzdurLjs+0smk/inf/onRKNRPPDAA/2Og7Vr15Z1O+mkk4rrpNPpYu2xVOF1SqfTQ5an3PULPw+07HCPQ/bAplQaNbt370Y8HsfMmTPLWn7KlCn9/v7b3/4GAPj4xz/e736Px4OpU6cW/z9lyhQsX74cN998M+6//34cd9xxOPXUU/H1r3+9GJpf/epX8T//8z/413/9V1xxxRU44YQT8MUvfhFf/vKXB4RUqXLWe/fdd/H222+jvb190G3s2rULAPD+++9DlmXMmDGjrNdjOAd6fQBg+vTp+P3vf9/vPp/PN6CM0WgU3d3dwz7Wm2++iauuugrr1q1DPB7v979YLFZp0QdYunQp3n//ffzhD3/A2LFj+/1v/+bWcvj9fmSz2QH3ZzKZ4v9rsX7h54GWHe5xyB4YjGRbI/kQ+eEPf4hzzjkHv/71r/H000/joosuwsqVK/Hyyy9j4sSJ8Pv9eOGFF/Dss8/i8ccfx5NPPok1a9bg05/+NJ5++ul+NZT9yzTcepZl4YgjjsDNN9886DYmTZpU9fOqpQM9x+H09PRg4cKFaGlpwfXXX49p06bB5/Nh/fr1+M53vlNRDXww//3f/40HHngAP/vZzzBr1qwB/9+xY0dZ24lEIsVjqLOzE88++yyEEP1q49u3bweQ7wMcSmdnZ3HZUvuv39nZWbx///28ffv2Yp8m2RubUmnUtLe3o6WlBRs2bKhq/cmTJwMANm3a1O9+Xdfx4YcfFv9fcMQRR+Cqq67CCy+8gBdffBFbt27FqlWriv+XZRknnHACbr75Zrz11lv4z//8T6xbt67Y1Hkgw603bdo07N27FyeccAIWL1484Fao0U2bNg2WZeGtt94a8vHKbVY90OtTuG//16dazz33HPbs2YN77rkHF198MT73uc9h8eLFiEajA5attEn4xRdfxL/927/hkksuwZlnnjnoMp2dnWXd1qxZU1xn1qxZSKVSePvtt/tt65VXXin+fyizZs3C+vXrB4T+K6+8gkAggMMOO6zfdv785z/3W27btm3YsmXLsI9D9sBgpFEjyzJOO+00/OY3vxnwwQEAQogh11+8eDE8Hg9+9KMf9Vv2f//3fxGLxXDKKacAAOLx+IBZRo444gjIslxs4tq7d++A7Rc+tAZrBisoZ72vfOUr2Lp1K37yk58MWDadThdH2J522mmQZRnXX3/9gA/c0ucXDAbR09NzwDIVzJ07Fx0dHVi1alW/5/DEE0/g7bffLr4+I1WoaZaWUdd13HnnnQOWDQaDZTetbt++HV/5yldw7LHHFke2DqaaPsYvfOEL0DStXxmFEFi1ahUOOuggHH300f3KsXHjRhiGUbzvy1/+Mnbu3In/+7//K97X1dWFhx56CJ///OeLfYqf+MQnMH36dNx9990wTbO47F133QVJkvDlL3+5rNeCGotNqTSqbrjhBjz99NNYuHBh8VSG7du346GHHsLvf//7fqcT7K+9vR0rVqzAddddh5NPPhmnnnoqNm3ahDvvvBPz5s3D17/+dQDAunXrcOGFF+L000/HYYcdhlwuh/vuuw+KouBLX/oSAOD666/HCy+8gFNOOQWTJ0/Grl27cOedd2LixIlDDtsvZ72zzjoLv/jFL3D++efj2WefxTHHHAPTNLFx40b84he/wFNPPYW5c+fi0EMPxZVXXonvfve7OO644/DFL34RXq8Xr776KiZMmICVK1cCAObMmYO77roL3/ve93DooYeio6OjOJCnlKZp+P73v48lS5Zg4cKFOOOMM4qnaxxyyCG49NJLq91t/Rx99NGIRqM4++yzcdFFF0GSJNx3332DfrGZM2cO1qxZg+XLl2PevHkIhUL4/Oc/P+h2L7roIuzevRuXX345HnzwwX7/O/LII3HkkUcCqK6PceLEibjkkktw4403wjAMzJs3D4888ghefPFF3H///f2alVesWIF7770XH374IQ455BAA+WD81Kc+hSVLluCtt95CW1sb7rzzTpimieuuu67fY91444049dRTceKJJ+Kf//mfsWHDBtx+++3413/91wGni5BNNXBELLnU3/72N/Ev//Iv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wTRNjBs3rt/948aNw44dOxpUqtqzLAuXXHIJjjnmGMycObPRxRmxBx98EOvXr8fKlSsbXZSa+uCDD3DXXXfhYx/7GJ566ilccMEFuOiii3Dvvfc2umj9MBhH6IorroAkSUPeCn1VAHDllVfiS1/6EubMmYPVq1dDkiQ89NBDDX4WA5X7vG677TYkEgmsWLGi0UUuW7nPrdTWrVtx8skn4/TTT8fSpUsbVHI6kGXLlmHDhg148MEHG12UEdu8eTMuvvhi3H///fD5fI0uTk1ZloXZs2fjhhtuwFFHHYXzzjsPS5cuxapVqxpdtH5cdXWNerjssstwzjnnDLnM1KlTsX37dgDAjBkzivd7vV5MnToVf//73+tZxKqU+7zWrVuHP/7xjwOmdpo7dy7OPPNM230TBMp/bgXbtm3DokWLcPTRR+Puu++uc+lqq62tDYqiYOfOnf3u37lzJ8aPH9+gUtXWhRdeiMceewwvvPBCw66eU0uvvfYadu3ahdmzZxfvM00TL7zwAm6//XZks1koSn0vLl0vnZ2d/T4DAeDwww/Hr371qwaVaHAMxhFqb29He3v7sMvNmTMHXq8XmzZtwrHHHgsAMAwDH330ESZPnlzvYlas3Of1ox/9CN/73veKf2/btg0nnXQS1qxZgwULFtSziFUr97kB+ZriokWLijX84a7jZjcejwdz5szBM888Uzw1yLIsPPPMM7jwwgsbW7gREkLg29/+Nh5++GE899xzmDJlSqOLVBMnnHAC3njjjX73LVmyBNOnT8d3vvMdx4YiABxzzDEDTql555137PcZ2OjRP25y8cUXi4MOOkg89dRTYuPGjeLcc88VHR0dYu/evY0uWs18+OGHTTMqdcuWLeLQQw8VJ5xwgtiyZYvYvn178eYkDz74oPB6veKee+4Rb731ljjvvPNEa2ur2LFjR6OLNiIXXHCBiEQi4rnnnuu3b1KpVKOLVnPNMir1T3/6k1BVVfznf/6nePfdd8X9998vAoGA+NnPftboovXDYBxFuq6Lyy67THR0dIhwOCwWL14sNmzY0Ohi1VQzBePq1asFgEFvTnPbbbeJgw8+WHg8HjF//nzx8ssvN7pII3agfbN69epGF63mmiUYhRDiN7/5jZg5c6bwer1i+vTp4u677250kQbg1TWIiIhKOKvDhIiIqM4YjERERCUYjERERCUYjERERCUYjERERCUYjERERCUYjERERCUYjERERCUYjERERCUYjERERCUYjERERCUYjERNbPfu3Rg/fjxuuOGG4n1/+MMf4PF48MwzzzSwZET2xUnEiZrcb3/7W5x22mn4wx/+gI9//OOYNWsWvvCFL+Dmm29udNGIbInBSOQCy5Ytw+9+9zvMnTsXb7zxBl599VV4vd5GF4vIlhiMRC6QTqcxc+ZMbN68Ga+99hqOOOKIRheJyLbYx0jkAu+//z62bdsGy7Lw0UcfNbo4RLbGGiNRk9N1HfPnz8esWbPw8Y9/HLfeeiveeOMNdHR0NLpoRLbEYCRqcv/+7/+OX/7yl/jrX/+KUCiEhQsXIhKJ4LHHHmt00YhsiU2pRE3sueeew6233or77rsPLS0tkGUZ9913H1588UXcddddjS4ekS2xxkhERFSCNUYiIqISDEYiIqISDEYiIqISDEYiIqISDEYiIqISDEYiIqISDEYiIqISDEYiIqISDEYiIqISDEYiIqISDEYiIqISDEYiIqIS/x/fJKUzx61H7AAAAABJRU5ErkJggg==\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "lda0 = 1.31 # central wavelength\n", "freq0 = td.C_0 / lda0 # operation frequency\n", "ldas = np.linspace(1.26, 1.36, 101) # wavelength range of interest\n", "freqs = td.C_0 / ldas # frequency range of interest\n", "\n", "l_wg = 1 # input/output waveguide length\n", "Lx = 2 * l_t + w_out + 2 * l_wg\n", "Ly = 2 * l_t + w_out + 2 * l_wg\n", "Lz = 1.5 * lda0\n", "sim_size = (Lx, Ly, Lz)\n", "\n", "# define a mode source for excitation using the lowest order mode\n", "mode_source = td.ModeSource(\n", " center=(-Lx / 2 + l_wg / 2, 0, 0),\n", " size=(0, 4 * w_in, 4 * h),\n", " source_time=td.GaussianPulse(freq0=freq0, fwidth=freq0 / 10),\n", " direction=\"+\",\n", " mode_spec=td.ModeSpec(num_modes=1, target_neff=3.455, filter_pol=\"te\"),\n", " mode_index=0,\n", ")\n", "\n", "# add a field monitor at z=0 for field visualization\n", "field_monitor = td.FieldMonitor(\n", " center=(0, 0, 0), size=(td.inf, td.inf, 0), freqs=[freq0], name=\"field\"\n", ")\n", "\n", "# define a flux monitor to detect transmission to the through port\n", "flux_monitor_through = td.FluxMonitor(\n", " center=(Lx / 2 - l_wg / 2, 0, 0),\n", " size=(0, 4 * w_in, 4 * h),\n", " freqs=freqs,\n", " name=\"flux_through\",\n", ")\n", "\n", "# define a flux monitor to detect transmission to the cross port\n", "flux_monitor_cross = td.FluxMonitor(\n", " center=(0, Ly / 2 - l_wg / 2, 0),\n", " size=(4 * w_in, 0, 4 * h),\n", " freqs=freqs,\n", " name=\"flux_cross\",\n", ")\n", "\n", "sim = td.Simulation(\n", " center=(0, 0, 0),\n", " size=sim_size,\n", " grid_spec=td.GridSpec.auto(min_steps_per_wvl=20, wavelength=lda0),\n", " structures=[taper_1, taper_2, taper_3, taper_4, center, horizontal_wg, vertical_wg],\n", " sources=[mode_source],\n", " monitors=[field_monitor, flux_monitor_through, flux_monitor_cross],\n", " run_time=1e-12,\n", " boundary_spec=td.BoundarySpec.all_sides(boundary=td.PML()),\n", " medium=sio2,\n", ")\n", "\n", "sim.plot(z=0)\n", "plt.show()\n" ] }, { "cell_type": "markdown", "id": "13e0cca4", "metadata": {}, "source": [ "Once the simulation set up is verified, submit job to the server." ] }, { "cell_type": "code", "execution_count": 6, "id": "d0d7dff4", "metadata": { "execution": { "iopub.execute_input": "2023-03-28T01:32:55.445455Z", "iopub.status.busy": "2023-03-28T01:32:55.445308Z", "iopub.status.idle": "2023-03-28T01:36:38.753504Z", "shell.execute_reply": "2023-03-28T01:36:38.752937Z" } }, "outputs": [ { "data": { "text/html": [ "
[14:09:04] Created task 'waveguide_crossing' with task_id                                             webapi.py:139\n",
       "           'fdve-8ae191a4-08b4-4ac6-8d41-60b3e720710bv1'.                                                          \n",
       "
\n" ], "text/plain": [ "\u001b[2;36m[14:09:04]\u001b[0m\u001b[2;36m \u001b[0mCreated task \u001b[32m'waveguide_crossing'\u001b[0m with task_id \u001b]8;id=663051;file://C:\\Users\\xinzhong\\Desktop\\tidy3d\\tidy3d\\web\\webapi.py\u001b\\\u001b[2mwebapi.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=482636;file://C:\\Users\\xinzhong\\Desktop\\tidy3d\\tidy3d\\web\\webapi.py#139\u001b\\\u001b[2m139\u001b[0m\u001b]8;;\u001b\\\n", "\u001b[2;36m \u001b[0m\u001b[32m'fdve-8ae191a4-08b4-4ac6-8d41-60b3e720710bv1'\u001b[0m. \u001b[2m \u001b[0m\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "52bfb62a66ad4379b1167699b59b1b92", "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": [ "
[14:09:09] status = queued                                                                            webapi.py:269\n",
       "
\n" ], "text/plain": [ "\u001b[2;36m[14:09:09]\u001b[0m\u001b[2;36m \u001b[0mstatus = queued \u001b]8;id=313317;file://C:\\Users\\xinzhong\\Desktop\\tidy3d\\tidy3d\\web\\webapi.py\u001b\\\u001b[2mwebapi.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=127230;file://C:\\Users\\xinzhong\\Desktop\\tidy3d\\tidy3d\\web\\webapi.py#269\u001b\\\u001b[2m269\u001b[0m\u001b]8;;\u001b\\\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "", "version_major": 2, "version_minor": 0 }, "text/plain": [ "Output()" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
[14:09:14] status = preprocess                                                                        webapi.py:263\n",
       "
\n" ], "text/plain": [ "\u001b[2;36m[14:09:14]\u001b[0m\u001b[2;36m \u001b[0mstatus = preprocess \u001b]8;id=430983;file://C:\\Users\\xinzhong\\Desktop\\tidy3d\\tidy3d\\web\\webapi.py\u001b\\\u001b[2mwebapi.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=570899;file://C:\\Users\\xinzhong\\Desktop\\tidy3d\\tidy3d\\web\\webapi.py#263\u001b\\\u001b[2m263\u001b[0m\u001b]8;;\u001b\\\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
\n"
      ],
      "text/plain": []
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "
[14:09:19] Maximum FlexCredit cost: 0.488. Use 'web.real_cost(task_id)' to get the billed FlexCredit cost webapi.py:286\n",
       "           after a simulation run.                                                                                 \n",
       "
\n" ], "text/plain": [ "\u001b[2;36m[14:09:19]\u001b[0m\u001b[2;36m \u001b[0mMaximum FlexCredit cost: \u001b[1;36m0.488\u001b[0m. Use \u001b[32m'web.real_cost\u001b[0m\u001b[32m(\u001b[0m\u001b[32mtask_id\u001b[0m\u001b[32m)\u001b[0m\u001b[32m'\u001b[0m to get the billed FlexCredit cost \u001b]8;id=33215;file://C:\\Users\\xinzhong\\Desktop\\tidy3d\\tidy3d\\web\\webapi.py\u001b\\\u001b[2mwebapi.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=164824;file://C:\\Users\\xinzhong\\Desktop\\tidy3d\\tidy3d\\web\\webapi.py#286\u001b\\\u001b[2m286\u001b[0m\u001b]8;;\u001b\\\n", "\u001b[2;36m \u001b[0mafter a simulation run. \u001b[2m \u001b[0m\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
           starting up solver                                                                         webapi.py:290\n",
       "
\n" ], "text/plain": [ "\u001b[2;36m \u001b[0m\u001b[2;36m \u001b[0mstarting up solver \u001b]8;id=349468;file://C:\\Users\\xinzhong\\Desktop\\tidy3d\\tidy3d\\web\\webapi.py\u001b\\\u001b[2mwebapi.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=306035;file://C:\\Users\\xinzhong\\Desktop\\tidy3d\\tidy3d\\web\\webapi.py#290\u001b\\\u001b[2m290\u001b[0m\u001b]8;;\u001b\\\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
[14:09:20] running solver                                                                             webapi.py:300\n",
       "
\n" ], "text/plain": [ "\u001b[2;36m[14:09:20]\u001b[0m\u001b[2;36m \u001b[0mrunning solver \u001b]8;id=66188;file://C:\\Users\\xinzhong\\Desktop\\tidy3d\\tidy3d\\web\\webapi.py\u001b\\\u001b[2mwebapi.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=41592;file://C:\\Users\\xinzhong\\Desktop\\tidy3d\\tidy3d\\web\\webapi.py#300\u001b\\\u001b[2m300\u001b[0m\u001b]8;;\u001b\\\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "ee3cac4c11b14a749aada75cba44faef", "version_major": 2, "version_minor": 0 }, "text/plain": [ "Output()" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
[14:12:29] early shutoff detected, exiting.                                                           webapi.py:313\n",
       "
\n" ], "text/plain": [ "\u001b[2;36m[14:12:29]\u001b[0m\u001b[2;36m \u001b[0mearly shutoff detected, exiting. \u001b]8;id=296358;file://C:\\Users\\xinzhong\\Desktop\\tidy3d\\tidy3d\\web\\webapi.py\u001b\\\u001b[2mwebapi.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=829842;file://C:\\Users\\xinzhong\\Desktop\\tidy3d\\tidy3d\\web\\webapi.py#313\u001b\\\u001b[2m313\u001b[0m\u001b]8;;\u001b\\\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" }, { "data": { "text/html": [ "
           status = postprocess                                                                       webapi.py:330\n",
       "
\n" ], "text/plain": [ "\u001b[2;36m \u001b[0m\u001b[2;36m \u001b[0mstatus = postprocess \u001b]8;id=106121;file://C:\\Users\\xinzhong\\Desktop\\tidy3d\\tidy3d\\web\\webapi.py\u001b\\\u001b[2mwebapi.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=2938;file://C:\\Users\\xinzhong\\Desktop\\tidy3d\\tidy3d\\web\\webapi.py#330\u001b\\\u001b[2m330\u001b[0m\u001b]8;;\u001b\\\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "", "version_major": 2, "version_minor": 0 }, "text/plain": [ "Output()" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
[14:12:44] status = success                                                                           webapi.py:337\n",
       "
\n" ], "text/plain": [ "\u001b[2;36m[14:12:44]\u001b[0m\u001b[2;36m \u001b[0mstatus = success \u001b]8;id=150331;file://C:\\Users\\xinzhong\\Desktop\\tidy3d\\tidy3d\\web\\webapi.py\u001b\\\u001b[2mwebapi.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=167528;file://C:\\Users\\xinzhong\\Desktop\\tidy3d\\tidy3d\\web\\webapi.py#337\u001b\\\u001b[2m337\u001b[0m\u001b]8;;\u001b\\\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
\n"
      ],
      "text/plain": []
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "03c1171d0f0a4345a1f725c511e5b421",
       "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": [ "
[14:12:47] loading SimulationData from data/simulation_data.hdf5                                      webapi.py:512\n",
       "
\n" ], "text/plain": [ "\u001b[2;36m[14:12:47]\u001b[0m\u001b[2;36m \u001b[0mloading SimulationData from data/simulation_data.hdf5 \u001b]8;id=353764;file://C:\\Users\\xinzhong\\Desktop\\tidy3d\\tidy3d\\web\\webapi.py\u001b\\\u001b[2mwebapi.py\u001b[0m\u001b]8;;\u001b\\\u001b[2m:\u001b[0m\u001b]8;id=924339;file://C:\\Users\\xinzhong\\Desktop\\tidy3d\\tidy3d\\web\\webapi.py#512\u001b\\\u001b[2m512\u001b[0m\u001b]8;;\u001b\\\n" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "job = web.Job(simulation=sim, task_name=\"waveguide_crossing\", verbose=True)\n", "sim_data = job.run(path=\"data/simulation_data.hdf5\")\n" ] }, { "cell_type": "markdown", "id": "998f20e2", "metadata": {}, "source": [ "## Result Visualization " ] }, { "cell_type": "markdown", "id": "2772b63f", "metadata": {}, "source": [ "After the simulation is complete, first plot the field intensity distribution. \n", "\n", "From the figure below, a good transmission to the through port is observed. In the crossing junction, a strong field focus is formed due to the focusing property of the cosine taper. " ] }, { "cell_type": "code", "execution_count": 7, "id": "2514be3b", "metadata": { "execution": { "iopub.execute_input": "2023-03-28T01:36:42.341611Z", "iopub.status.busy": "2023-03-28T01:36:42.341210Z", "iopub.status.idle": "2023-03-28T01:36:44.249898Z", "shell.execute_reply": "2023-03-28T01:36:44.249293Z" } }, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAjcAAAHWCAYAAACL2KgUAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy88F64QAAAACXBIWXMAAA9hAAAPYQGoP6dpAACnYklEQVR4nOz9eZwcVb3/jz/PqaquniWTEEgIEcUIKosgCqhxA4RLwLigqBdXFATFoBe4V7goPwT0IyruG1yvV/GjoIjfCy58BFFAXLiIKFcQRUAUBBLWTDIz3V3LOb8/zqnq7tkyk+nJ9CTv5+NRj5mu9XRVdZ1XvbejrLUWQRAEQRCErQQ91w0QBEEQBEHoJCJuBEEQBEHYqhBxIwiCIAjCVoWIG0EQBEEQtipE3AiCIAiCsFUh4kYQBEEQhK0KETeCIAiCIGxViLgRBEEQBGGrQsSNIAiCIAhbFSJuBGGecv3116OU4vrrr5/rpgiCIHQVIm4Eocv58pe/zEUXXTTXzdgsLrnkEj772c/OdTMAMMbwiU98ghUrVlCtVtlnn3349re/PeXt169fzwknnMCSJUvo6+vj4IMP5ne/+9246/7gBz/guc99LtVqlac85Sl86EMfIsuyTn0VQRA2gZKxpQShu3nWs57FDjvsMMZCY4whSRIqlQpad+d7yite8Qpuv/12/va3v811UzjjjDP42Mc+xvHHH88BBxzA97//fa688kq+/e1vc/TRR0+6rTGGl7zkJfzv//4v73//+9lhhx348pe/zP33388tt9zC05/+9HLdH//4x6xevZqDDjqIN77xjdx222186Utf4oQTTuCCCy6Y7a8pCAIiboR5wvDwMH19fXPdjDlhInEzH+gWcfPAAw+wYsUKTjjhBL74xS8CYK3lwAMP5N577+Vvf/sbQRBMuP13v/td/vmf/5nLLruM173udQA88sgjPOMZz+CII47gkksuKdfda6+9iKKI3/72t4RhCMCZZ57JRz/6Ue644w523333WfymgiCAuKWEOeCBBx7guOOOY/ny5cRxzIoVKzjxxBNJkgSAiy66CKUUP//5z3nPe97D0qVL2Xnnncvtv/zlL7PXXnsRxzHLly9nzZo1rF+/vu0Yd911F0cddRTLli2jWq2y8847c/TRRzM4OFiuc8011/DiF7+YRYsW0d/fzzOf+Uw+8IEPbLL9U9mu0WjwoQ99iN122404jnnyk5/MaaedRqPRGLO/b33rWzzvec+jt7eX7bbbjpe+9KX85Cc/AeCpT30qf/zjH/n5z3+OUgqlFAcddBAwcczNZZddxn777UdPTw877LADb3nLW3jggQfa1nn7299Of38/DzzwAEceeST9/f0sWbKEf/u3fyPP802eg+9///usXr26vIa77rorH/7wh9u2Peigg7jyyiv5+9//Xrb9qU996oT7fPvb316uN3o6++yzN9mmTbU3TVPe8573lPOUUpx44on84x//4MYbb5x0++9973vsuOOOvPa1ry3nLVmyhDe84Q18//vfL6/rHXfcwR133MEJJ5xQChuA97znPVhr+d73vjej7yEIwtQIN72KIHSOBx98kOc973ll/MLuu+/OAw88wPe+9z1GRkaoVCrluu95z3tYsmQJZ511FsPDwwCcffbZnHPOORx66KGceOKJ3HnnnVxwwQXcfPPN/OpXvyKKIpIkYdWqVTQaDd773veybNkyHnjgAX70ox+xfv16Fi5cyB//+Ede8YpXsM8++3DuuecSxzF33303v/rVryZt/1S2M8bwqle9il/+8peccMIJ7LHHHtx222185jOf4S9/+QtXXHFFue4555zD2WefzQtf+ELOPfdcKpUKN910E9deey2HHXYYn/3sZ3nve99Lf38/H/zgBwHYcccdJ2zfRRddxDve8Q4OOOAAzjvvPNatW8fnPvc5fvWrX/H73/+eRYsWlevmec6qVat4/vOfzyc/+Ul++tOf8qlPfYpdd92VE088cdLzcNFFF9Hf38+pp55Kf38/1157LWeddRYbNmzg/PPPB+CDH/wgg4OD/OMf/+Azn/kMAP39/RPu813veheHHnpo27yrrrqKiy++mKVLl5bzHn300UnbVrBgwQLiOAbg97//PX19feyxxx5t6zzvec8rl7/4xS+ecF+///3vee5znzvG/fe85z2Pr3zlK/zlL39h77335ve//z0A+++/f9t6y5cvZ+eddy6XC4Iwy1hB2IK87W1vs1pre/PNN49ZZoyx1lr79a9/3QL2xS9+sc2yrFz+8MMP20qlYg877DCb53k5/4tf/KIF7Ne+9jVrrbW///3vLWAvu+yyCdvxmc98xgL2kUcemVb7p7LdN7/5Tau1tr/4xS/a5l944YUWsL/61a+stdbeddddVmttX/Oa17R9H2ub58Jaa/faay974IEHjjnOddddZwF73XXXWWutTZLELl261D7rWc+ytVqtXO9HP/qRBexZZ51VzjvmmGMsYM8999y2fT7nOc+x++233+QnwVo7MjIyZt673vUu29vba+v1ejlv9erVdpdddtnk/sbjrrvusgsXLrT/9E//1HYfAFOavv71r7e142lPe9qYYwwPD1vA/vu///ukbenr67PHHnvsmPlXXnmlBexVV11lrbX2/PPPt4C97777xqx7wAEH2Be84AVT/fqCIMwAcUsJWwxjDFdccQWvfOUrx7zZgnMTtHL88ce3xUH89Kc/JUkSTj755LY36OOPP56BgQGuvPJKABYuXAjA1VdfzcjIyLhtKSwY3//+9zHGTPk7TGW7yy67jD322IPdd9+dRx99tJxe9rKXAXDdddcBcMUVV2CM4ayzzhpjERh9LqbCb3/7Wx5++GHe8573UK1Wy/mrV69m9913L89PK+9+97vbPr/kJS/hr3/96yaP1dPTU/6/ceNGHn30UV7ykpcwMjLCn//852m3fTTDw8O85jWvYbvttuPb3/52231wzTXXTGlatWpVuU2tViutOK0U56lWq03anqluX/ydaN1NHUcQhM4gbilhi/HII4+wYcMGnvWsZ01p/RUrVrR9/vvf/w7AM5/5zLb5lUqFpz3taeXyFStWcOqpp/LpT3+aiy++mJe85CW86lWv4i1veUspfP75n/+Zr371q7zzne/k3//93znkkEN47Wtfy+te97pJM4+mst1dd93Fn/70J5YsWTLuPh5++GEA7rnnHrTW7LnnnlM6H5tiovMDsPvuu/PLX/6ybV61Wh3Txu22244nnnhik8f64x//yJlnnsm1117Lhg0b2pa1xjVtLscffzz33HMPv/71r9l+++3blo12XU2Fnp6eceOd6vV6ubwT2xd/J1p3U8cRBKEziLgRupaZdASf+tSnePvb3873v/99fvKTn/C+972P8847j//5n/9h5513pqenhxtuuIHrrruOK6+8kquuuopLL72Ul73sZfzkJz+ZMHNmKtsZY9h777359Kc/Pe4+nvzkJ2/29+okk2UHTcb69es58MADGRgY4Nxzz2XXXXelWq3yu9/9jtNPP31alrDx+NznPse3v/1tvvWtb7HvvvuOWb527dop7WfhwoXlPbTTTjtx3XXXYa1ts4o99NBDgIuJmYyddtqpXLeV0dvvtNNO5fzR1/mhhx4qY3wEQZhdxC0lbDGWLFnCwMAAt99++2Ztv8suuwBw5513ts1PkoR77723XF6w9957c+aZZ3LDDTfwi1/8ggceeIALL7ywXK615pBDDuHTn/40d9xxB//n//wfrr322tJtNBGb2m7XXXfl8ccf55BDDuHQQw8dMxWWlV133RVjDHfcccekx5uqi2qi81PMG31+Npfrr7+exx57jIsuuoh/+Zd/4RWveAWHHnoo22233Zh1p+te+8UvfsG//du/cfLJJ/PmN7953HV22mmnKU2XXnppuc2+++7LyMgIf/rTn9r2ddNNN5XLJ2Pffffld7/73RjhdtNNN9Hb28sznvGMtv389re/bVvvwQcf5B//+McmjyMIQmcQcSNsMbTWHHnkkfzwhz8c8/AHV3dkMg499FAqlQqf//zn29b9r//6LwYHB1m9ejUAGzZsGFMNdu+990ZrXboLHn/88TH7Lzqe8VwKBVPZ7g1veAMPPPAA//mf/zlm3VqtVmZ+HXnkkWitOffcc8d0mq3fr6+vb0yq+3jsv//+LF26lAsvvLDtO/z4xz/mT3/6U3l+Zkph8WltY5IkfPnLXx6zbl9f35TdVA899BBveMMbePGLX1xmXI3H5sTcvPrVryaKorY2Wmu58MILedKTnsQLX/jCtnb8+c9/Jk3Tct7rXvc61q1bx3//93+X8x599FEuu+wyXvnKV5YxNnvttRe77747X/nKV9rS4i+44AKUUmWNHEEQZhdxSwlblI9+9KP85Cc/4cADDyzTpB966CEuu+wyfvnLX7alKo9myZIlnHHGGZxzzjkcfvjhvOpVr+LOO+/ky1/+MgcccABvectbALj22ms56aSTeP3rX88znvEMsizjm9/8JkEQcNRRRwFw7rnncsMNN7B69Wp22WUXHn74Yb785S+z8847T5oSPJXt3vrWt/Ld736Xd7/73Vx33XW86EUvIs9z/vznP/Pd736Xq6++mv3335/ddtuND37wg3z4wx/mJS95Ca997WuJ45ibb76Z5cuXc9555wGw3377ccEFF/CRj3yE3XbbjaVLl5bBya1EUcTHP/5x3vGOd3DggQfyxje+sUwFf+pTn8opp5yyuZetjRe+8IVst912HHPMMbzvfe9DKcU3v/nNccXpfvvtx6WXXsqpp57KAQccQH9/P6985SvH3e/73vc+HnnkEU477TS+853vtC3bZ5992GeffYDNi7nZeeedOfnkkzn//PNJ05QDDjiAK664gl/84hdcfPHFbS66M844g2984xvce++9ZV2e173udbzgBS/gHe94B3fccUdZoTjPc84555y2Y51//vm86lWv4rDDDuPoo4/m9ttv54tf/CLvfOc7x6SiC4IwS8xhppawjfL3v//dvu1tb7NLliyxcRzbpz3taXbNmjW20WhYa5up4OOli1vrUr933313G0WR3XHHHe2JJ55on3jiiXL5X//6V3vsscfaXXfd1VarVbt48WJ78MEH25/+9KflOj/72c/sq1/9art8+XJbqVTs8uXL7Rvf+Eb7l7/8ZdK2T3W7JEnsxz/+cbvXXnvZOI7tdtttZ/fbbz97zjnn2MHBwbZ1v/a1r9nnPOc55XoHHnigveaaa8rla9eutatXr7YLFiywQJkWPjoVvODSSy8t97d48WL75je/2f7jH/9oW+eYY46xfX19Y77fhz70ITuVx8KvfvUr+4IXvMD29PTY5cuX29NOO81effXVY9ozNDRk3/SmN9lFixZZYNK08AMPPHDCtO4PfehDm2zTpsjz3H70ox+1u+yyi61UKnavvfay3/rWt8asV6TJ33vvvW3zH3/8cXvcccfZ7bff3vb29toDDzxwwnv08ssvt/vuu6+N49juvPPO9swzz7RJksz4OwiCMDVk+AVBEARBELYqJOZGEARBEIStChE3giAIgiBsVYi4EQRBEARhq0LEjSAIgiAIWxUibgRBEARB2KoQcSMIgiAIwlbFNlXEzxjDgw8+yIIFCzZr1GVBEARhfmKtZePGjSxfvnzSwXGFrYNtStw8+OCDXTNooSAIgrDluf/++9l5553nuhkljz76KM95zp584ANv4cQTxx9sV5g+21QRv8HBQV/eXwNiuRG2bp7+9GfQ29s76TobN27kr3+9Zwu1SBDmEgsY1q9fz8KFC+e6MSX/+m9Hc9l3ryNNM+655/5N/maFqbFN2eaariglk0xb/RQEwZSmuW6nTDJtuYmuCkl44IEHuODLV/D//feH2XnnJXzu86fMdZO2GrYpcSMIgiAI3cK5557I6tUv4LnPfQYf/sg7Of8T32b9+vVz3aytAhE3giAIgrCFufvuu/nGN67inHOPBeDQQ/fj2fvuxvmffN8ct2zrQMSNIAiCIGxhzjrr3bzpTYfyzGc+BXDuso985J187rOXsW7dujlu3fxHxI0gCIIgbEH+8Ic/cPnlv+D/d9YxbfNf8II9ednLnstHP7pmjlq29SDiRhAEQRC2IB/84ImccMIrecpTdhyz7Jxzj+UrX/khf//73+egZVsPIm4EQRAEYQtx4403ct11v+Pfz3jzuMv32WdXXvOal3DOOSdu4ZZtXYi4EQRBEIQtgLWWMz7wHv7l5NezdOl2E673obPfwSWX/JQ777xzC7Zu60LEjSAIgiBsAX7605/yh/+9h1NPfcOk6+2225M45pjDOfPMd22hlm19iLgRBEEQhFnGWssHPvBeTjv9jSxa1L/J9T945lu58sr/4Xe/+90WaN3Wh4gbQRAEQZhlLr/8ch544FHWrHnNlNZ/0pOWcOJ7juSDH3zPLLds60TEjSAIgiDMInmec+aZp/LBD76V3t7qlLc7/fQ38utf384vfvGLWWzd1omIG0EQBEGYRf7v//0g9XrCsce9fFrbbb/9Qk459fWc8YE1THeM6wsuuIB99tmHgYEBBgYGWLlyJT/+8Y/L5fV6nTVr1rD99tvT39/PUUcdNaZ44H333cfq1avp7e1l6dKlvP/97yfLsrZ1rr/+ep773OcSxzG77bYbF1100bTaOVuIuBEEQRCEWaLRaHDOORfxoQ+9nUolmvb2J5/8eu78831twmQq7LzzznzsYx/jlltu4be//S0ve9nLePWrX80f//hHAE455RR++MMfctlll/Hzn/+cBx98kNe+9rXl9nmes3r1apIk4de//jXf+MY3uOiiizjrrLPKde69915Wr17NwQcfzK233srJJ5/MO9/5Tq6++uppf89Oo+x05eA8ZsOGDX6o+2IkZEHYetl9993p7e2ddJ2NGzdy1113baEWCcJcYoGcwcFBBgYGtthRP/+Ff+Er//EDfvf7rxIEwWbt47OfvYxvffMn3HLLnWi9+TaJxYsXc/755/O6172OJUuWcMkll/C6170OgD//+c/sscce3HjjjbzgBS/gxz/+Ma94xSt48MEH2XFHV2zwwgsv5PTTT+eRRx6hUqlw+umnc+WVV3L77beXxzj66KNZv349V1111Wa3sxOI5UYQBEEQZoHh4WE++n++ybnnHrfZwgbg3e9+NY8+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Ohurst61a9cMScY777xjdymW8Pv9xt13320cPHjQeOihh4xly5bZXVLEVqxYYUydOtXuMtAN0LmJkRMnTujy5ctKSEjQxIkTNXjwYM2cOVOnTp2yu7SIVVZWqrCwUNu3b1efPn3sLieqbty4oQEDBthdRtjq6up0/PhxTZ8+vXlfQkKCpk+frvLychsrs96NGzckyVH/fjpSVFSkWbNmtfh353R///vflZeXp7lz52rQoEGaOHGifvvb39pdFlyIcBMj58+flySVlpZq9erV2rt3r9LS0jRt2jR9/vnnNlfXdYZhaOHChVqyZIny8vLsLieqzp07p02bNunHP/6x3aWE7bPPPlMwGGyzImlGRoYqKipsqsp6oVBITz75pKZMmaJ77rnH7nIitnPnTp04cULr1q2zuxRLnT9/Xlu2bNHdd9+tf/zjH3r88cf105/+VK+//rrdpcFlCDcRWrlypTweT4db09wNSXr22Wc1Z84c5ebmatu2bfJ4PNq9e7fNV9FWuNe1adMm+f1+rVq1yu6Swxbutd3u8uXL+ta3vqW5c+eqsLDQpspxJ0VFRTp16pR27txpdykRu3TpkpYtW6Y//elP6t27t93lWCoUCum+++7T2rVrNXHiRP3oRz9SYWGhtm7dandpcBkevxCh5cuXa+HChR0ek52dratXr0qSxo0b17zf6/UqOztbFy9ejGaJXRLudR0+fFjl5eVtllDPy8vTvHnz4vI3snCvrcmVK1f08MMP68EHH9Rrr70W5eqsddddd6lHjx6qrKxssb+yslKZmZk2VWWtpUuXau/evXr33Xc1dOhQu8uJ2PHjx3Xt2jXdd999zfuCwaDeffdd/frXv1YgEFCPHj1srLDrBg8e3OIzUJLGjh2rPXv22FQR3IpwE6H09HSlp6d3elxubq68Xq/Onj2rqVOnSpLq6+t14cIFZWVlRbtM08K9rldeeUXPP/9889dXrlxRQUGBdu3apfz8/GiW2GXhXpvU2LF5+OGHmzttCQnOanb26tVLubm5Kisra152IBQKqayszPHPmzEMQ0888YTeeOMNvf322xo5cqTdJVniG9/4hk6ePNli36JFizRmzBitWLHCscFGkqZMmdLmdv1///vfcfkZCGcj3MRISkqKlixZopKSEg0bNkxZWVlav369JGnu3Lk2V9d1w4cPb/F1v379JEmjRo1y/G/Rly9f1rRp05SVlaUNGzbo+vXrza85qetRXFysBQsWKC8vT5MmTdLGjRtVXV2tRYsW2V1aRIqKirRjxw797W9/U3JycvMcotTUVCUlJdlcXdclJye3mTfUt29fDRw40PHziZ566ik9+OCDWrt2rb73ve/p2LFjeu211xzXEUX8I9zE0Pr169WzZ0/Nnz9ftbW1ys/P1+HDh1njIU4dPHhQ586d07lz59oENcNBz5t99NFHdf36dT333HOqqKhQTk6O3nzzzTaTjJ1my5YtkqRp06a12L9t27ZOhx1hj/vvv19vvPGGVq1apTVr1mjkyJHauHGj5s2bZ3dpcBmeCg4AAFzFWRMIAAAAOkG4AQAArkK4AQAArkK4AQAArkK4AQAArkK4AQAArkK4AQAArkK4AQAArkK4AQAArkK4AQAArkK4AQAArkK4AVzs+vXryszM1Nq1a5v3HTlyRL169VJZWZmNlQFA9PDgTMDl9u/fr9mzZ+vIkSMaPXq0cnJy9J3vfEcvvfSS3aUBQFQQboBuoKioSIcOHVJeXp5OnjypDz74QF6v1+6yACAqCDdAN1BbW6t77rlHly5d0vHjxzV+/Hi7SwKAqGHODdANfPrpp7py5YpCoZAuXLhgdzkAEFV0bgCXq6ur06RJk5STk6PRo0dr48aNOnnypAYNGmR3aQAQFYQbwOWefvpp/eUvf9FHH32kfv366aGHHlJqaqr27t1rd2kAEBUMSwEu9vbbb2vjxo3avn27UlJSlJCQoO3bt+u9997Tli1b7C4PAKKCzg0AAHAVOjcAAMBVCDcAAMBVCDcAAMBVCDcAAMBVCDcAAMBVCDcAAMBVCDcAAMBVCDcAAMBVCDcAAMBVCDcAAMBVCDcAAMBVCDcAAMBV/h8BdX/jxpI4QAAAAABJRU5ErkJggg==\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "sim_data.plot_field(\n", " field_monitor_name=\"field\", field_name=\"E\", val=\"abs^2\", f=freq0, vmin=0, vmax=3000\n", ")\n", "plt.show()\n" ] }, { "cell_type": "markdown", "id": "1b0ec431", "metadata": {}, "source": [ "Finally, to quantify the designed waveguide crossing's performance, plot insertion loss and crosstalk level." ] }, { "cell_type": "code", "execution_count": 8, "id": "6959a333", "metadata": { "execution": { "iopub.execute_input": "2023-03-28T01:36:44.252298Z", "iopub.status.busy": "2023-03-28T01:36:44.251980Z", "iopub.status.idle": "2023-03-28T01:36:44.704824Z", "shell.execute_reply": "2023-03-28T01:36:44.704310Z" } }, "outputs": [ { "data": { "image/png": "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AAAAGyF0AwAAAABgI4RuAAAAAABshNANAAAAAICNELoBAAAAALARQjcAAAAAADZC6AYAAAAAwEYI3QAAAAAA2AihGwAAAAAAGyF0AwAAAABgI4RuAAAAAABshNANAAAAAICNELoBAAAAALARQjcAAAAAADZC6AYAAAAAwEYI3QAAAAAA2AihGwAAAAAAGyF0AwAAAABgI4RuAAAAAABshNANAAAAAICNELoBAAAAALARQjcAAAAAADZC6AYAAAAAwEYI3QAAAAAA2AihGwAAAAAAGyF0AwAAAABgI4RuAAAAAABshNANAAAAAICNELoBAAAAALARQjcAAAAAADZC6AYAAAAAwEYI3QAAAAAA2AihGwAAAAAAGyF0AwAAAABgI4RuAAAAAABshNANAAAAAICNELoBAAAAALARQjcAAAAAADZC6AYAAAAAwEYI3QAAAAAA2AihGwAAAAAAGyF0AwAAAABgI4RuAAAAAABshNANAAAAAICNVJrQnZaWpiFDhsjb21u+vr4aPny4srKyLvuevLw8jR49Wv7+/vL09NSdd96p5OTkEvsYDIYLHosWLbLlRwEAAAAAXCcqTegeMmSI9u3bp+joaC1fvlxr167VqFGjLvuecePG6ccff9R3332nNWvW6NSpUxo4cOAF+82dO1eJiYnFj9tvv91GnwIAAAAAcD1xtHcB1jhw4IBWrFihrVu3qm3btpKk6dOnq1+/fpo2bZpCQkIueE96ero+//xzLVy4UDfffLOk8+G6UaNG2rRpkzp06FC8r6+vr4KDg8vnwwAAAAAArhuV4k73xo0b5evrWxy4JalHjx4yGo3avHnzRd+zbds2FRYWqkePHsXbIiMjVbt2bW3cuLHEvqNHj1b16tXVrl07zZkzRxaL5bL15OfnKyMjo8QDAAAAAID/VSnudCclJSkwMLDENkdHR/n5+SkpKemS73F2dpavr2+J7UFBQSXe8+qrr+rmm2+Wu7u7fvvtNz322GPKysrS2LFjL1nPlClT9Morr1z9BwIAAAAAXBfseqd70qRJF53I7J+PmJgYm9bwwgsvqFOnTmrVqpWeeeYZPf3005o6depl3zN58mSlp6cXP+Lj421aIwAAAACgcrLrne4JEyZo6NChl92nbt26Cg4OVkpKSontRUVFSktLu+RY7ODgYBUUFOjcuXMl7nYnJydfdvx2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xDZHR0f5+fkpKSnJqmOcPn1ar732mkaNGlVi+6uvvqqbb75Z7u7u+u233/TYY48pKytLY8eOveSxpkyZoldeeaX0HwQAAAAAcF2x653uSZMmXXQis38+YmJirvk8GRkZ6t+/vxo3bqyXX365xGsvvPCCOnXqpFatWumZZ57R008/ralTp172eJMnT1Z6enrxIz4+/pprBAAAAABUPXa90z1hwgQNHTr0svvUrVtXwcHBSklJKbG9qKhIaWlpVxyLnZmZqT59+sjLy0tLly6Vk5PTZfdv3769XnvtNeXn58vFxeWi+7i4uFzyNQAAAAAA/mbX0B0QEKCAgIAr7hcVFaVz585p27ZtatOmjSRp1apVMpvNat++/SXfl5GRod69e8vFxUXLli2Tq6vrFc+1c+dOVatWjVANAAAAALhmlWJMd6NGjdSnTx+NHDlSs2fPVmFhocaMGaN77rmneObyhIQEde/eXV988YXatWunjIwM9erVSzk5Ofrqq69KTHgWEBAgBwcH/fjjj0pOTlaHDh3k6uqq6OhovfHGG3rqqafs+XEBAAAAAFVEpQjdkrRgwQKNGTNG3bt3l9Fo1J133qkPP/yw+PXCwkIdPHhQOTk5kqTt27cXz2xer169Esc6duyY6tSpIycnJ82cOVPjxo2TxWJRvXr19O6772rkyJHl98EAAAAAAFWWwXKl9bFwRRkZGfLx8SlekgwAAFugvbEO1wkAUB6sbW8qxTrdAAAAAABURoRuAAAAAABshNANAAAAAICNELoBAAAAALARQjcAAAAAADZC6AYAAAAAwEYI3QAAAAAA2AihGwAAAAAAGyF0AwAAAABgI4RuAAAAAABshNANAAAAAICNELoBAAAAALARQjcAAAAAADZC6AYAAAAAwEYI3QAAAAAA2AihGwAAAAAAGyF0AwAAAABgI4RuAAAAAABshNANAAAAAICNELoBAAAAALARQjcAAAAAADZC6AYAAAAAwEYI3QAAAAAA2AihGwAAAAAAGyF0AwAAAABgI4RuAAAAAABshNANAAAAAICNELoBAAAAALARQjcAAAAAADZC6AYAAAAAwEYI3QAAAAAA2AihGwAAAAAAGyF0AwAAAABgI4RuAAAAAABshNANAAAAAICNELoBAAAAALARQjcAAAAAADZC6AYAAAAAwEYI3QAAAAAA2AihGwAAAAAAGyF0AwAAAABgI4RuAAAAAABshNANAAAAAICNELoBAAAAALARQjcAAAAAADZC6AYAAAAAwEYI3QAAAAAA2AihGwAAAAAAGyF0AwAAAABgI4RuAAAAAABshNANAAAAAICNELoBAAAAALARQjcAAAAAADZC6AYAAAAAwEYI3QAAAAAA2AihGwAAAAAAGyF0AwAAAABgI4RuAAAAAABspNKE7rS0NA0ZMkTe3t7y9fXV8OHDlZWVddn3PPzww4qIiJCbm5sCAgJ02223KSYmpsQ+cXFx6t+/v9zd3RUYGKiJEyeqqKjIlh8FAIDr0q233qratWvL1dVVNWrU0AMPPKBTp06V2Gf37t3q0qWLXF1dFRoaqrfffttO1QIAUDYqTegeMmSI9u3bp+joaC1fvlxr167VqFGjLvueNm3aaO7cuTpw4IB+/fVXWSwW9erVSyaTSZJkMpnUv39/FRQUaMOGDZo/f77mzZunF198sTw+EgAA15Vu3brp22+/1cGDB/X999/ryJEjuuuuu4pfz8jIUK9evRQWFqZt27Zp6tSpevnll/XJJ5/YsWoAAK6NwWKxWOxdxJUcOHBAjRs31tatW9W2bVtJ0ooVK9SvXz+dPHlSISEhVh1n9+7datGihWJjYxUREaFffvlFAwYM0KlTpxQUFCRJmj17tp555hmlpqbK2dnZquNmZGTIx8dH6enp8vb2vroPCQDAFVS19mbZsmW6/fbblZ+fLycnJ82aNUvPPfeckpKSitvgSZMm6Ycffrigp9rlVLXrBAComKxtbyrFne6NGzfK19e3OHBLUo8ePWQ0GrV582arjpGdna25c+cqPDxcoaGhxcdt1qxZceCWpN69eysjI0P79u0r2w8BAACKpaWlacGCBerYsaOcnJwknW+Xb7zxxhJfevfu3VsHDx7U2bNn7VUqAADXxNHeBVgjKSlJgYGBJbY5OjrKz89PSUlJl33vRx99pKefflrZ2dlq2LChoqOjixvzpKSkEoFbUvHzyx03Pz9f+fn5xc/T09Mlnf+mAwAAW/m7nakEndQu6ZlnntGMGTOUk5OjDh06aPny5cWvJSUlKTw8vMT+/2yXq1WrdtFj0i4DAOzB2nbZrqF70qRJeuutty67z4EDB67pHEOGDFHPnj2VmJioadOmafDgwVq/fr1cXV2v+phTpkzRK6+8csH2v++gAwBgS5mZmfLx8bF3GZKsb8sjIyMlSRMnTtTw4cN14sQJvfLKK3rwwQe1fPlyGQyGq66BdhkAYE9XapftOqY7NTVVZ86cuew+devW1VdffaUJEyaU6FpWVFQkV1dXfffdd7rjjjusOl9BQYGqVaumzz77TPfee69efPFFLVu2TDt37ize59ixY6pbt662b9+uVq1aXfQ4//uNutlsVlpamvz9/a/pl4aMjAyFhoYqPj6eMWhXwLWyHtfKelwr63GtrFeW18pisSgzM1MhISEyGivGCDFr2/KLzZNy8uRJhYaGasOGDYqKitKDDz6ojIwM/fDDD8X7rF69WjfffLPS0tKsvtNNu1z+uFbW41pZj2tlPa6V9ezRLtv1TndAQIACAgKuuF9UVJTOnTunbdu2qU2bNpKkVatWyWw2q3379lafz2KxyGKxFDfMUVFRev3115WSklLcfT06Olre3t5q3LjxJY/j4uIiFxeXEtt8fX2truNKvL29+cdiJa6V9bhW1uNaWY9rZb2yulYV5Q7336xtyy/GbDZLUol2+bnnnlNhYWHxOO/o6Gg1bNjwkoFbol2uSLhW1uNaWY9rZT2ulfXKs12uGF+TX0GjRo3Up08fjRw5Ulu2bNH69es1ZswY3XPPPcUzlyckJCgyMlJbtmyRJB09elRTpkzRtm3bFBcXpw0bNmjQoEFyc3NTv379JEm9evVS48aN9cADD2jXrl369ddf9fzzz2v06NEXNN4AAODqbd68WTNmzNDOnTt14sQJrVq1Svfee68iIiIUFRUlSbrvvvvk7Oys4cOHa9++ffrmm2/0wQcfaPz48XauHgCAq1cpQrckLViwQJGRkerevbv69eunzp07l1i3s7CwUAcPHlROTo4kydXVVX/++af69eunevXq6e6775aXl5c2bNhQfFfbwcFBy5cvl4ODg6KionT//ffrwQcf1KuvvmqXzwgAQFXl7u6uJUuWqHv37mrYsKGGDx+u5s2ba82aNcVfdPv4+Oi3337TsWPH1KZNG02YMEEvvviiRo0aZefqAQC4epVi9nJJ8vPz08KFCy/5ep06dUrMGhcSEqKff/75iscNCwuzar/y4OLiopdeeom77FbgWlmPa2U9rpX1uFbW41qd16xZM61ateqK+zVv3lx//vlnOVR0Zfy/sx7XynpcK+txrazHtbKePa6VXSdSAwAA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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "f, (ax1, ax2) = plt.subplots(1, 2, tight_layout=True, figsize=(10, 5))\n", "\n", "T_through = sim_data[\"flux_through\"].flux\n", "T_cross = sim_data[\"flux_cross\"].flux\n", "\n", "ax1.plot(ldas, 10 * np.log10(T_through))\n", "ax1.set_xlabel(\"Wavelength ($\\mu m$)\")\n", "ax1.set_ylabel(\"Insertion loss (dB)\")\n", "ax1.set_ylim((-0.3, 0))\n", "\n", "ax2.plot(ldas, 10 * np.log10(T_cross))\n", "ax2.set_xlabel(\"Wavelength ($\\mu m$)\")\n", "ax2.set_ylabel(\"Crosstalk (dB)\")\n", "ax2.set_ylim((-30, -25))\n", "plt.show()\n" ] }, { "cell_type": "code", "execution_count": null, "id": "d60f5fdb", "metadata": {}, "outputs": [], "source": [] } ], "metadata": { "kernelspec": { "display_name": "Python 3 (ipykernel)", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.10.9" }, "widgets": { "application/vnd.jupyter.widget-state+json": { "state": { "3339335b895e4daca6b38366c87baa57": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border": null, "bottom": null, "display": null, "flex": null, "flex_flow": null, "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "overflow_x": null, "overflow_y": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null } }, "5685332c7be649d79f3b8a7b28f63b7f": { "model_module": "@jupyter-widgets/output", "model_module_version": "1.0.0", "model_name": "OutputModel", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/output", "_model_module_version": "1.0.0", "_model_name": "OutputModel", "_view_count": null, "_view_module": "@jupyter-widgets/output", "_view_module_version": "1.0.0", "_view_name": "OutputView", "layout": "IPY_MODEL_3339335b895e4daca6b38366c87baa57", "msg_id": "", "outputs": [ { "data": { "text/html": "
\ud83c\udfc3  Starting 'waveguide_crossing'...\n
\n", "text/plain": "\u001b[32m\ud83c\udfc3 \u001b[0m \u001b[1;32mStarting 'waveguide_crossing'...\u001b[0m\n" }, "metadata": {}, "output_type": "display_data" } ] } }, "876d8821bb7045bfb21323b43b89c82c": { "model_module": "@jupyter-widgets/output", "model_module_version": "1.0.0", "model_name": "OutputModel", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/output", "_model_module_version": "1.0.0", "_model_name": "OutputModel", "_view_count": null, "_view_module": "@jupyter-widgets/output", "_view_module_version": "1.0.0", "_view_name": "OutputView", "layout": "IPY_MODEL_c937a8bb2ed646c39c6e4e765006fec4", "msg_id": "", "outputs": [ { "data": { "text/html": "
% done (field decay = 2.06e-06) \u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501 100% 0:00:00\n
\n", "text/plain": "% done (field decay = 2.06e-06) \u001b[38;2;114;156;31m\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u001b[0m \u001b[35m100%\u001b[0m \u001b[36m0:00:00\u001b[0m\n" }, "metadata": {}, "output_type": "display_data" } ] } }, "a345f750e7fd422b9ffe29e4b2f03123": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border": null, "bottom": null, "display": null, "flex": null, "flex_flow": null, "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "overflow_x": null, "overflow_y": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null } }, "ace44d62607c4360aca0f3c468e006b7": { "model_module": "@jupyter-widgets/output", "model_module_version": "1.0.0", "model_name": "OutputModel", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/output", "_model_module_version": "1.0.0", "_model_name": "OutputModel", "_view_count": null, "_view_module": "@jupyter-widgets/output", "_view_module_version": "1.0.0", "_view_name": "OutputView", "layout": "IPY_MODEL_b1b843b8f25944e293b40248e148709e", "msg_id": "", "outputs": [ { "data": { "text/html": "
\ud83d\udeb6  Finishing 'waveguide_crossing'...\n
\n", "text/plain": "\u001b[32m\ud83d\udeb6 \u001b[0m \u001b[1;32mFinishing 'waveguide_crossing'...\u001b[0m\n" }, "metadata": {}, "output_type": "display_data" } ] } }, "b1b843b8f25944e293b40248e148709e": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border": null, "bottom": null, "display": null, "flex": null, "flex_flow": null, "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "overflow_x": null, "overflow_y": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null } }, "c937a8bb2ed646c39c6e4e765006fec4": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border": null, "bottom": null, "display": null, "flex": null, "flex_flow": null, "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "overflow_x": null, "overflow_y": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null } }, "d1804110a3e5485a9315a05d3bb2cd23": { "model_module": "@jupyter-widgets/output", "model_module_version": "1.0.0", "model_name": "OutputModel", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/output", "_model_module_version": "1.0.0", "_model_name": "OutputModel", "_view_count": null, "_view_module": "@jupyter-widgets/output", "_view_module_version": "1.0.0", "_view_name": "OutputView", "layout": "IPY_MODEL_a345f750e7fd422b9ffe29e4b2f03123", "msg_id": "", "outputs": [ { "data": { "text/html": "
\u2191 simulation.json \u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501 100.0% \u2022 19.7/19.7 kB \u2022 ? \u2022 0:00:00\n
\n", "text/plain": "\u001b[1;31m\u2191\u001b[0m \u001b[1;34msimulation.json\u001b[0m \u001b[38;2;114;156;31m\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u001b[0m \u001b[35m100.0%\u001b[0m \u2022 \u001b[32m19.7/19.7 kB\u001b[0m \u2022 \u001b[31m?\u001b[0m \u2022 \u001b[36m0:00:00\u001b[0m\n" }, "metadata": {}, "output_type": "display_data" } ] } }, "df1fbdd3952d4575ae0f3b230d4fb2e8": { "model_module": "@jupyter-widgets/base", "model_module_version": "1.2.0", "model_name": "LayoutModel", "state": { "_model_module": "@jupyter-widgets/base", "_model_module_version": "1.2.0", "_model_name": "LayoutModel", "_view_count": null, "_view_module": "@jupyter-widgets/base", "_view_module_version": "1.2.0", "_view_name": "LayoutView", "align_content": null, "align_items": null, "align_self": null, "border": null, "bottom": null, "display": null, "flex": null, "flex_flow": null, "grid_area": null, "grid_auto_columns": null, "grid_auto_flow": null, "grid_auto_rows": null, "grid_column": null, "grid_gap": null, "grid_row": null, "grid_template_areas": null, "grid_template_columns": null, "grid_template_rows": null, "height": null, "justify_content": null, "justify_items": null, "left": null, "margin": null, "max_height": null, "max_width": null, "min_height": null, "min_width": null, "object_fit": null, "object_position": null, "order": null, "overflow": null, "overflow_x": null, "overflow_y": null, "padding": null, "right": null, "top": null, "visibility": null, "width": null } }, "f39b9d043ec746f5bfda4577f4ba4dc5": { "model_module": "@jupyter-widgets/output", "model_module_version": "1.0.0", "model_name": "OutputModel", "state": { "_dom_classes": [], "_model_module": "@jupyter-widgets/output", "_model_module_version": "1.0.0", "_model_name": "OutputModel", "_view_count": null, "_view_module": "@jupyter-widgets/output", "_view_module_version": "1.0.0", "_view_name": "OutputView", "layout": "IPY_MODEL_df1fbdd3952d4575ae0f3b230d4fb2e8", "msg_id": "", "outputs": [ { "data": { "text/html": "
\u2193 monitor_data.hdf5 \u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501 100.0% \u2022 31.0/31.0 MB \u2022 28.4 MB/s \u2022 0:00:00\n
\n", "text/plain": "\u001b[1;32m\u2193\u001b[0m \u001b[1;34mmonitor_data.hdf5\u001b[0m \u001b[38;2;114;156;31m\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u001b[0m \u001b[35m100.0%\u001b[0m \u2022 \u001b[32m31.0/31.0 MB\u001b[0m \u2022 \u001b[31m28.4 MB/s\u001b[0m \u2022 \u001b[36m0:00:00\u001b[0m\n" }, "metadata": {}, "output_type": "display_data" } ] } } }, "version_major": 2, "version_minor": 0 } } }, "nbformat": 4, "nbformat_minor": 5 }