{
 "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",
    "<img src=\"img/waveguide_crossing.png\" width=600 alt=\"Schematic of the waveguide crossing\">\n",
    "\n",
    "If you are new to the finite-difference time-domain (FDTD) method, we highly recommend going through our [FDTD101](https://www.flexcompute.com/fdtd101/) tutorials. For more simulation examples, please visit our [examples page](https://www.flexcompute.com/tidy3d/examples/). FDTD simulations can diverge due to various reasons. If you run into any simulation divergence issues, please follow the steps outlined in our [troubleshooting guide](https://www.flexcompute.com/tidy3d/examples/notebooks/DivergedFDTDSimulation/) to resolve it."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "id": "2eaed87d",
   "metadata": {},
   "outputs": [],
   "source": [
    "import matplotlib.pyplot as plt\n",
    "import numpy as np\n",
    "import tidy3d as td\n",
    "import tidy3d.web as web\n",
    "from scipy.optimize import fsolve"
   ]
  },
  {
   "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": {},
   "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 = 1000  # effective infinity used to make sure the waveguides extend into the pml"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "id": "4b92b8e9",
   "metadata": {},
   "outputs": [],
   "source": [
    "si = td.Medium(permittivity=3.67**2)\n",
    "sio2 = td.Medium(permittivity=1.45**2)"
   ]
  },
  {
   "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": {},
   "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 = np.array(vertices)\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 = np.array(vertices)\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 = np.array(vertices)\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",
    ")"
   ]
  },
  {
   "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": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"color: #7fbfbf; text-decoration-color: #7fbfbf\">14:01:32 UTC </span><span style=\"color: #800000; text-decoration-color: #800000\">WARNING: </span><span style=\"color: #008000; text-decoration-color: #008000\">'filter_pol'</span><span style=\"color: #800000; text-decoration-color: #800000\"> is deprecated and will be removed in future  </span>\n",
       "<span style=\"color: #7fbfbf; text-decoration-color: #7fbfbf\">             </span><span style=\"color: #800000; text-decoration-color: #800000\">versions. Please use </span><span style=\"color: #008000; text-decoration-color: #008000\">'sort_spec'</span><span style=\"color: #800000; text-decoration-color: #800000\"> instead.                          </span>\n",
       "</pre>\n"
      ],
      "text/plain": [
       "\u001b[2;36m14:01:32 UTC\u001b[0m\u001b[2;36m \u001b[0m\u001b[31mWARNING: \u001b[0m\u001b[32m'filter_pol'\u001b[0m\u001b[31m is deprecated and will be removed in future  \u001b[0m\n",
       "\u001b[2;36m             \u001b[0m\u001b[31mversions. Please use \u001b[0m\u001b[32m'sort_spec'\u001b[0m\u001b[31m instead.                          \u001b[0m\n"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "image/png": "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tn87K3u052kjhEipXFcGDRqU9LfH44HNZkOfPn3aLW8L847qkMkPPOocQ5XyJtUvoI48+OCDuPzyy/HCCy/gtddeww033ICFCxfinXfewYABA2C32/H3v/8d69atw8svv4zVq1fj2Wefxdlnn43XXnstqWV0ZJ2Otp5hGBg1ahQeeuihDh9j4MCBGW9XNnW2jUfT3NyMSZMmwe12Y8GCBTjuuONgs9mwdetW3HrrrWm1/DvyyCOP4I9//CP+93//F6NHj253f11dXUqP4/F4EvtQ//79sW7dOgghkkJi7969AOLnPLvSv3//RNnDHbl+//79E8uPfJ/37t2bOIfbmbYfEE1NTRgwYECXZYGuw7ej97ez97yjx2n7cXVkCFP38PAvZU3fvn3hdrszHqll8ODBAIDt27cnLY9EIti5c2fi/jajRo3C7bffjr///e9444038NVXX2Hp0qWJ+2VZxjnnnIOHHnoIH330EX71q1/h9ddfTxye7czR1jvuuONw4MABnHPOOaipqWl3a2tJHnfccTAMAx999FGXz5dqS6Gz16dt2ZGvT6bWr1+P/fv346mnnsKNN96I7373u6ipqenwkGW6rZw33ngDP/vZzzB79mxcfPHFHZbp379/Srdnn302sc7o0aMRCASwbdu2pMfatGlT4v6ujB49Glu3bm33g2HTpk1wOBwYNmxY0uNs3rw5qdyePXvw5ZdfHvV5hg8fDgDYuXNnh/e3tLQk/V1fX9/l43XHzp07IctyYtsoOxiqlDWyLGPq1Kn4y1/+0u5LBzj6Ia+amhpomoZHH300qezvf/97eL1eTJ48GQDg8/najV4zatQoyLKcOCx34MCBdo/f9oXX0aG7Nqms94Mf/ABfffUVfvvb37YrGwwGEz2Zp06dClmWsWDBgnZf1odvn9PpRHNzc6d1ajNu3Dj069cPS5cuTdqGv/71r9i2bVvi9emuttbO4XWMRCJYsmRJu7JOpzPlw8F79+7FD37wA5x55pmJHsQdyeSc6nnnnQeLxZJURyEEli5dimOOOQann356Uj0+/vhjRKPRxLLvf//7qK+vx3PPPZdY1tjYiJUrV+J73/te4hzqCSecgOHDh2PZsmXQdT1R9vHHH4ckSfj+97/f5WswduxYaJrW4ecDQLsffM8//3xiW7Jty5YtOOGEExKnTCg7ePiXsuqee+7Ba6+9hkmTJiUuN9m7dy9WrlyJN998M+mSjyP17dsXc+fOxZ133olzzz0XU6ZMwfbt27FkyRKMHz8el1xyCQDg9ddfx3XXXYdp06Zh2LBhiMViePrpp6EoCi688EIAwIIFC/D3v/8dkydPxuDBg9HQ0IAlS5ZgwIABXV5akcp6l156Kf70pz/hmmuuwbp163DGGWdA13V8/PHH+NOf/oRXX30V48aNw/HHH49f/OIXuOuuu3DWWWfhggsugNVqxXvvvYfq6mosXLgQQPyL9vHHH8fdd9+N448/Hv369Ut0ejqcxWLBfffdhyuuuAKTJk3CRRddlLik5thjj8VNN92U6duW5PTTT0dZWRlmzJiBG264AZIk4emnn+7wi33s2LF49tlnMWfOHIwfPx4ulwvf+973OnzcG264Afv27cMtt9yCFStWJN130kkn4aSTTgKQ2TnVAQMGYPbs2XjggQcQjUYxfvx4rFq1Cm+88QaWL1+edFh07ty5+MMf/oCdO3fi2GOPBRAP1dNOOw1XXHEFPvroI/Tp0wdLliyBruu48847k57rgQcewJQpU/Dtb38bP/zhD/Hhhx/isccew49+9KN2l/QcyWaz4dvf/jb+9re/YcGCBe3uX716NS6++GJ84xvfwCeffIJly5bB4XDgtddew/jx4/Hd73437demI9FoFBs2bMBPfvKTrDweHSYvfY6pqH3xxRfisssuE3379hVWq1V87WtfE7NmzWo3+ENHl90IEb+EZvjw4cJisYjKykpx7bXXJg3+8Nlnn4krr7xSHHfcccJms4ny8nLxrW99S/ztb39LlFm7dq0477zzRHV1tdA0TVRXV4uLLrqo3ZBzR0p1vUgkIu677z5xwgknCKvVKsrKysTYsWPFnXfeKbxeb1LZJ554QpxyyimJcpMmTRJr1qxJ3F9XVycmT54sSkpKUhr84dlnn008Xnl5eZeDPxyp7XKMo3nrrbfEaaedJux2u6iurha33HKLePXVV9vVp7W1VfzXf/2XKC0tPergDx0NFtF26+7gD0LEhxq85557xODBg4WmaeKEE04Q//u//9uuXNvlRjt37kxafuDAAXHVVVeJiooK4XA4xKRJkzrdR59//nkxevRoYbVaxYABA8Ttt98uIpFISvV87rnnhCRJSZfltF1Sc88994iamhphtVrFkCFDxP/93/+Jn//8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JSUlOP744xM3j8eD8ePHt+vm/8knn2Dw4MGdPs7EiROxdu3apGVr1qzBxIkTAQBDhgxBVVVVUhmfz4dNmzYlymTTkds1c+ZM/POf/0wKo+rqatx888149dVXO3wMTdMwduzYpDobhoG1a9cm6jx27FhYLJakMtu3b8euXbtysl0dbZvdbk8E6o4dO/C3v/0NFRUVXT6GWbctnfodyWz7YEeEELjuuuvw/PPP4/XXX8eQIUOOuk4hbNc555yDf/3rX+1+7F188cX44IMPoChKu3UKYbsA4Iwzzsj692Em+3dW5bwrFCV57rnnhMViEcuWLRM7duxIdAd/4403EmUuvfRScdtttyX+fuutt4SqquLXv/612LZtm5g/f36H3eNLS0vFCy+8IP75z3+K8847L2/d/oUQHfb+Pfvss8VvfvObxN8rVqwQVqtVPPXUU+Kjjz4SM2fOFKWlpaKuri5R5pprrhGDBg0Sr7/+uti8ebOYOHGimDhxYk9thohEImLKlCliwIAB4oMPPhB79+5N3MLhcMFu29HqV4j74LXXXis8Ho9Yv3590vsUCAQSZQpxuzpyZO/fQt2ud999V6iqKn71q1+JHTt2iOXLlwuHwyH+93//N1HmtttuE5deemni77ZLam6++Waxbds2sXjx4g4vqTna5y9XGKp58Pvf/14cf/zxwmaziZNPPlmsWrUq6f5JkyaJGTNmJC3705/+JIYNGyY0TRMnnHCCePnll5PuNwxD3HHHHaKyslJYrVZxzjnniO3bt+d6UzrVUagOHjxYzJ8/P2nZb37zGzFo0CChaZo49dRTxTvvvJN0fzAYFD/5yU9EWVmZcDgc4vzzzxd79+7Nce0P2blzpwDQ4W3dunWJcoW4bV3VrxD3wc7epyeffDJRphC3qyNHhmohb9df/vIXceKJJwqr1SqGDx8uli1blnT/jBkzxKRJk5KWrVu3TowePVpomia+9rWvJb3HbY72+csVzlJDRESUJTynSkRElCUMVSIioixhqBIREWUJQ5WIiChLGKpERERZwlAlIiLKEoYqERFRljBUiYiIsoShSkQAgN///vf49re/nfPnWb16NUaPHg3DMHL+XEQ9jaFKRAiFQrjjjjswf/78nD/XueeeC4vFguXLl+f8uYh6GkOViPB///d/cLvdOOOMM3rk+S6//HI8+uijPfJcRD2JoUpURPbt24eqqircc889iWVvv/02NE1rN13W4VasWIHvfe97Scu++c1vYvbs2UnLpk6dissvvzzx97HHHou7774bl112GVwuFwYPHowXX3wR+/btw3nnnQeXy4WTTjoJmzdvTnqc733ve9i8eTM+/fTTzDeWyIQYqkRFpG/fvnjiiSfwy1/+Eps3b0ZLSwsuvfRSXHfddTjnnHM6Xe/NN99MTMierocffhhnnHEG3n//fUyePBmXXnopLrvsMlxyySXYunUrjjvuOFx22WU4fO6OQYMGobKyEm+88UZGz0lkVgxVoiLzne98B1dffTUuvvhiXHPNNXA6nVi4cGGn5Zubm+H1elFdXZ3x8/34xz/G0KFDMW/ePPh8PowfPx7Tpk3DsGHDcOutt2Lbtm2or69PWq+6uhpffPFFRs9JZFYMVaIi9Otf/xqxWAwrV67E8uXLYbVaOy0bDAYBADabLaPnOumkkxL/r6ysBACMGjWq3bKGhoak9ex2OwKBQEbPSWRWDFWiIvTpp59iz549MAwDn3/+eZdlKyoqIEkSmpqajvq4uq63W2axWBL/lySp02VHXkJz4MAB9O3b96jPSVRIGKpERSYSieCSSy7B9OnTcdddd+FHP/pRu1bi4TRNw8iRI/HRRx+1u+/IQ7afffZZVuoYCoXw6aef4pRTTsnK4xGZBUOVqMj84he/gNfrxaOPPopbb70Vw4YNw5VXXtnlOrW1tXjzzTfbLX/hhRfw3HPP4dNPP8WvfvUrfPTRR/jiiy/w1VdfdauO77zzDqxWKyZOnNitxyEyG4YqURFZv349Fi1ahKeffhputxuyLOPpp5/GG2+8gccff7zT9a666iq88sor8Hq9ScsnT56M+++/HyNHjsTf//53LFmyBO+++y6efvrpbtXzj3/8Iy6++GI4HI5uPQ6R2Uji8H7uRNRrTZs2DWPGjMHcuXMBxK9THT16NBYtWpTV52lsbMTXv/51bN68GUOGDMnqYxPlG1uqRAQAeOCBB+ByuXL+PJ9//jmWLFnCQKWixJYqEXUoVy1VomLGUCUiIsoSHv4lIiLKEoYqERFRljBUiYiIsoShSkRElCUMVSIioixhqBIREWUJQ5WIiChLGKpERERZwlAlIiLKkv8PQPkhlTeY1eQAAAAASUVORK5CYII=",
      "text/plain": [
       "<Figure size 640x480 with 1 Axes>"
      ]
     },
     "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()"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "d8b74106",
   "metadata": {},
   "source": [
    "To have a better visualization, we can also plot the simulation in 3D."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "id": "40dbbef1",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "\n",
       "    <div class=\"simulation-viewer\" data-width=\"800\" data-height=\"800\" data-simulation=\"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\" ></div>\n",
       "    <script>\n",
       "        \n",
       "        /**\n",
       "        * Simulation Viewer Injector\n",
       "        *\n",
       "        * Monitors the document for elements being added in the form:\n",
       "        *\n",
       "        *    <div class=\"simulation-viewer\" data-width=\"800\" data-height=\"800\" data-simulation=\"{...}\" />\n",
       "        *\n",
       "        * This script will then inject an iframe to the viewer application, and pass it the simulation data\n",
       "        * via the postMessage API on request. The script may be safely included multiple times, with only the\n",
       "        * configuration of the first started script (e.g. viewer URL) applying.\n",
       "        *\n",
       "        */\n",
       "        (function() {\n",
       "            const TARGET_CLASS = \"simulation-viewer\";\n",
       "            const ACTIVE_CLASS = \"simulation-viewer-active\";\n",
       "            const VIEWER_URL = \"https://tidy3d.simulation.cloud/simulation-viewer\";\n",
       "\n",
       "            class SimulationViewerInjector {\n",
       "                constructor() {\n",
       "                    for (var node of document.getElementsByClassName(TARGET_CLASS)) {\n",
       "                        this.injectViewer(node);\n",
       "                    }\n",
       "\n",
       "                    // Monitor for newly added nodes to the DOM\n",
       "                    this.observer = new MutationObserver(this.onMutations.bind(this));\n",
       "                    this.observer.observe(document.body, {childList: true, subtree: true});\n",
       "                }\n",
       "\n",
       "                onMutations(mutations) {\n",
       "                    for (var mutation of mutations) {\n",
       "                        if (mutation.type === 'childList') {\n",
       "                            /**\n",
       "                            * Have found that adding the element does not reliably trigger the mutation observer.\n",
       "                            * It may be the case that setting content with innerHTML does not trigger.\n",
       "                            *\n",
       "                            * It seems to be sufficient to re-scan the document for un-activated viewers\n",
       "                            * whenever an event occurs, as Jupyter triggers multiple events on cell evaluation.\n",
       "                            */\n",
       "                            var viewers = document.getElementsByClassName(TARGET_CLASS);\n",
       "                            for (var node of viewers) {\n",
       "                                this.injectViewer(node);\n",
       "                            }\n",
       "                        }\n",
       "                    }\n",
       "                }\n",
       "\n",
       "                injectViewer(node) {\n",
       "                    // (re-)check that this is a valid simulation container and has not already been injected\n",
       "                    if (node.classList.contains(TARGET_CLASS) && !node.classList.contains(ACTIVE_CLASS)) {\n",
       "                        // Mark node as injected, to prevent re-runs\n",
       "                        node.classList.add(ACTIVE_CLASS);\n",
       "\n",
       "                        var uuid;\n",
       "                        if (window.crypto && window.crypto.randomUUID) {\n",
       "                            uuid = window.crypto.randomUUID();\n",
       "                        } else {\n",
       "                            uuid = \"\" + Math.random();\n",
       "                        }\n",
       "\n",
       "                        var frame = document.createElement(\"iframe\");\n",
       "                        frame.width = node.dataset.width || 800;\n",
       "                        frame.height = node.dataset.height || 800;\n",
       "                        frame.style.cssText = `width:${frame.width}px;height:${frame.height}px;max-width:none;border:0;display:block`\n",
       "                        frame.src = VIEWER_URL + \"?uuid=\" + uuid;\n",
       "\n",
       "                        var postMessageToViewer;\n",
       "                        postMessageToViewer = event => {\n",
       "                            if(event.data.type === 'viewer' && event.data.uuid===uuid){\n",
       "                                frame.contentWindow.postMessage({ type: 'jupyter', uuid, value: node.dataset.simulation, fileType: 'hdf5'}, '*');\n",
       "\n",
       "                                // Run once only\n",
       "                                window.removeEventListener('message', postMessageToViewer);\n",
       "                            }\n",
       "                        };\n",
       "                        window.addEventListener(\n",
       "                            'message',\n",
       "                            postMessageToViewer,\n",
       "                            false\n",
       "                        );\n",
       "\n",
       "                        node.appendChild(frame);\n",
       "                    }\n",
       "                }\n",
       "            }\n",
       "\n",
       "            if (!window.simulationViewerInjector) {\n",
       "                window.simulationViewerInjector = new SimulationViewerInjector();\n",
       "            }\n",
       "        })();\n",
       "    \n",
       "    </script>\n",
       "    "
      ],
      "text/plain": [
       "<IPython.core.display.HTML object>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "sim.plot_3d()"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "13e0cca4",
   "metadata": {},
   "source": [
    "Once the simulation set up is verified, submit job to the server. Before running the simulation, we can get a cost estimation using `estimate_cost`. This prevents us from accidentally running large jobs that we set up by mistake. The estimated cost is the maximum cost corresponding to running all the time steps."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "id": "d0d7dff4",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"color: #7fbfbf; text-decoration-color: #7fbfbf\">14:01:33 UTC </span>Created task <span style=\"color: #008000; text-decoration-color: #008000\">'waveguide_crossing'</span> with resource_id                 \n",
       "<span style=\"color: #7fbfbf; text-decoration-color: #7fbfbf\">             </span><span style=\"color: #008000; text-decoration-color: #008000\">'fdve-e3b21982-f5f4-424c-910d-f722c263fec5'</span> and task_type <span style=\"color: #008000; text-decoration-color: #008000\">'FDTD'</span>.  \n",
       "</pre>\n"
      ],
      "text/plain": [
       "\u001b[2;36m14:01:33 UTC\u001b[0m\u001b[2;36m \u001b[0mCreated task \u001b[32m'waveguide_crossing'\u001b[0m with resource_id                 \n",
       "\u001b[2;36m             \u001b[0m\u001b[32m'fdve-e3b21982-f5f4-424c-910d-f722c263fec5'\u001b[0m and task_type \u001b[32m'FDTD'\u001b[0m.  \n"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"color: #7fbfbf; text-decoration-color: #7fbfbf\">             </span>View task using web UI at                                          \n",
       "<span style=\"color: #7fbfbf; text-decoration-color: #7fbfbf\">             </span><a href=\"https://tidy3d.simulation.cloud/workbench?taskId=fdve-e3b21982-f5f4-424c-910d-f722c263fec5\" target=\"_blank\"><span style=\"color: #008000; text-decoration-color: #008000\">'https://tidy3d.simulation.cloud/workbench?taskId=fdve-e3b21982-f5f</span></a>\n",
       "<span style=\"color: #7fbfbf; text-decoration-color: #7fbfbf\">             </span><a href=\"https://tidy3d.simulation.cloud/workbench?taskId=fdve-e3b21982-f5f4-424c-910d-f722c263fec5\" target=\"_blank\"><span style=\"color: #008000; text-decoration-color: #008000\">4-424c-910d-f722c263fec5'</span></a>.                                         \n",
       "</pre>\n"
      ],
      "text/plain": [
       "\u001b[2;36m            \u001b[0m\u001b[2;36m \u001b[0mView task using web UI at                                          \n",
       "\u001b[2;36m             \u001b[0m\u001b]8;id=384017;https://tidy3d.simulation.cloud/workbench?taskId=fdve-e3b21982-f5f4-424c-910d-f722c263fec5\u001b\\\u001b[32m'https://tidy3d.simulation.cloud/workbench?\u001b[0m\u001b]8;;\u001b\\\u001b]8;id=358105;https://tidy3d.simulation.cloud/workbench?taskId=fdve-e3b21982-f5f4-424c-910d-f722c263fec5\u001b\\\u001b[32mtaskId\u001b[0m\u001b]8;;\u001b\\\u001b]8;id=384017;https://tidy3d.simulation.cloud/workbench?taskId=fdve-e3b21982-f5f4-424c-910d-f722c263fec5\u001b\\\u001b[32m=\u001b[0m\u001b]8;;\u001b\\\u001b]8;id=898385;https://tidy3d.simulation.cloud/workbench?taskId=fdve-e3b21982-f5f4-424c-910d-f722c263fec5\u001b\\\u001b[32mfdve\u001b[0m\u001b]8;;\u001b\\\u001b]8;id=384017;https://tidy3d.simulation.cloud/workbench?taskId=fdve-e3b21982-f5f4-424c-910d-f722c263fec5\u001b\\\u001b[32m-e3b21982-f5f\u001b[0m\u001b]8;;\u001b\\\n",
       "\u001b[2;36m             \u001b[0m\u001b]8;id=384017;https://tidy3d.simulation.cloud/workbench?taskId=fdve-e3b21982-f5f4-424c-910d-f722c263fec5\u001b\\\u001b[32m4-424c-910d-f722c263fec5'\u001b[0m\u001b]8;;\u001b\\.                                         \n"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"color: #7fbfbf; text-decoration-color: #7fbfbf\">             </span>Task folder: <a href=\"https://tidy3d.simulation.cloud/folders/9b36e144-ddb6-41f8-8dd8-30b62b26a870\" target=\"_blank\"><span style=\"color: #008000; text-decoration-color: #008000\">'default'</span></a>.                                            \n",
       "</pre>\n"
      ],
      "text/plain": [
       "\u001b[2;36m            \u001b[0m\u001b[2;36m \u001b[0mTask folder: \u001b]8;id=791614;https://tidy3d.simulation.cloud/folders/9b36e144-ddb6-41f8-8dd8-30b62b26a870\u001b\\\u001b[32m'default'\u001b[0m\u001b]8;;\u001b\\.                                            \n"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "ba0214ef1db64f388f3326926d840409",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Output()"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"></pre>\n"
      ],
      "text/plain": []
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"color: #7fbfbf; text-decoration-color: #7fbfbf\">14:01:56 UTC </span>Estimated FlexCredit cost: <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.492</span>. Minimum cost depends on task     \n",
       "<span style=\"color: #7fbfbf; text-decoration-color: #7fbfbf\">             </span>execution details. Use <span style=\"color: #008000; text-decoration-color: #008000\">'web.real_cost(task_id)'</span> to get the billed  \n",
       "<span style=\"color: #7fbfbf; text-decoration-color: #7fbfbf\">             </span>FlexCredit cost after a simulation run.                            \n",
       "</pre>\n"
      ],
      "text/plain": [
       "\u001b[2;36m14:01:56 UTC\u001b[0m\u001b[2;36m \u001b[0mEstimated FlexCredit cost: \u001b[1;36m0.492\u001b[0m. Minimum cost depends on task     \n",
       "\u001b[2;36m             \u001b[0mexecution details. 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  \n",
       "\u001b[2;36m             \u001b[0mFlexCredit cost after a simulation run.                            \n"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "job = web.Job(simulation=sim, task_name=\"waveguide_crossing\", verbose=True)\n",
    "estimated_cost = web.estimate_cost(job.task_id)"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "efab5310",
   "metadata": {},
   "source": [
    "The cost is reasonably so we can run the simulation."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "id": "58f705d4",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"color: #7fbfbf; text-decoration-color: #7fbfbf\">14:02:05 UTC </span>Estimated FlexCredit cost: <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.492</span>. Minimum cost depends on task     \n",
       "<span style=\"color: #7fbfbf; text-decoration-color: #7fbfbf\">             </span>execution details. Use <span style=\"color: #008000; text-decoration-color: #008000\">'web.real_cost(task_id)'</span> to get the billed  \n",
       "<span style=\"color: #7fbfbf; text-decoration-color: #7fbfbf\">             </span>FlexCredit cost after a simulation run.                            \n",
       "</pre>\n"
      ],
      "text/plain": [
       "\u001b[2;36m14:02:05 UTC\u001b[0m\u001b[2;36m \u001b[0mEstimated FlexCredit cost: \u001b[1;36m0.492\u001b[0m. Minimum cost depends on task     \n",
       "\u001b[2;36m             \u001b[0mexecution details. 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  \n",
       "\u001b[2;36m             \u001b[0mFlexCredit cost after a simulation run.                            \n"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"color: #7fbfbf; text-decoration-color: #7fbfbf\">14:02:06 UTC </span>status = queued                                                    \n",
       "</pre>\n"
      ],
      "text/plain": [
       "\u001b[2;36m14:02:06 UTC\u001b[0m\u001b[2;36m \u001b[0mstatus = queued                                                    \n"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"color: #7fbfbf; text-decoration-color: #7fbfbf\">             </span>To cancel the simulation, use <span style=\"color: #008000; text-decoration-color: #008000\">'web.abort(task_id)'</span> or              \n",
       "<span style=\"color: #7fbfbf; text-decoration-color: #7fbfbf\">             </span><span style=\"color: #008000; text-decoration-color: #008000\">'web.delete(task_id)'</span> or abort/delete the task in the web UI.      \n",
       "<span style=\"color: #7fbfbf; text-decoration-color: #7fbfbf\">             </span>Terminating the Python script will not stop the job running on the \n",
       "<span style=\"color: #7fbfbf; text-decoration-color: #7fbfbf\">             </span>cloud.                                                             \n",
       "</pre>\n"
      ],
      "text/plain": [
       "\u001b[2;36m            \u001b[0m\u001b[2;36m \u001b[0mTo cancel the simulation, use \u001b[32m'web.abort\u001b[0m\u001b[32m(\u001b[0m\u001b[32mtask_id\u001b[0m\u001b[32m)\u001b[0m\u001b[32m'\u001b[0m or              \n",
       "\u001b[2;36m             \u001b[0m\u001b[32m'web.delete\u001b[0m\u001b[32m(\u001b[0m\u001b[32mtask_id\u001b[0m\u001b[32m)\u001b[0m\u001b[32m'\u001b[0m or abort/delete the task in the web UI.      \n",
       "\u001b[2;36m             \u001b[0mTerminating the Python script will not stop the job running on the \n",
       "\u001b[2;36m             \u001b[0mcloud.                                                             \n"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "a222ef84b3d74d53bca1528b82586c5c",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Output()"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"color: #7fbfbf; text-decoration-color: #7fbfbf\">14:02:18 UTC </span>status = preprocess                                                \n",
       "</pre>\n"
      ],
      "text/plain": [
       "\u001b[2;36m14:02:18 UTC\u001b[0m\u001b[2;36m \u001b[0mstatus = preprocess                                                \n"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"></pre>\n"
      ],
      "text/plain": []
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"color: #7fbfbf; text-decoration-color: #7fbfbf\">14:02:23 UTC </span>starting up solver                                                 \n",
       "</pre>\n"
      ],
      "text/plain": [
       "\u001b[2;36m14:02:23 UTC\u001b[0m\u001b[2;36m \u001b[0mstarting up solver                                                 \n"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"color: #7fbfbf; text-decoration-color: #7fbfbf\">14:02:24 UTC </span>running solver                                                     \n",
       "</pre>\n"
      ],
      "text/plain": [
       "\u001b[2;36m14:02:24 UTC\u001b[0m\u001b[2;36m \u001b[0mrunning solver                                                     \n"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "c5d4152f1523465b8786c95b788c7e37",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Output()"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"color: #7fbfbf; text-decoration-color: #7fbfbf\">14:02:48 UTC </span>early shutoff detected at <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">56</span>%, exiting.                            \n",
       "</pre>\n"
      ],
      "text/plain": [
       "\u001b[2;36m14:02:48 UTC\u001b[0m\u001b[2;36m \u001b[0mearly shutoff detected at \u001b[1;36m56\u001b[0m%, exiting.                            \n"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"></pre>\n"
      ],
      "text/plain": []
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"color: #7fbfbf; text-decoration-color: #7fbfbf\">             </span>status = postprocess                                               \n",
       "</pre>\n"
      ],
      "text/plain": [
       "\u001b[2;36m            \u001b[0m\u001b[2;36m \u001b[0mstatus = postprocess                                               \n"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"color: #7fbfbf; text-decoration-color: #7fbfbf\">14:02:52 UTC </span>status = success                                                   \n",
       "</pre>\n"
      ],
      "text/plain": [
       "\u001b[2;36m14:02:52 UTC\u001b[0m\u001b[2;36m \u001b[0mstatus = success                                                   \n"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"></pre>\n"
      ],
      "text/plain": []
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"color: #7fbfbf; text-decoration-color: #7fbfbf\">14:02:54 UTC </span>View simulation result at                                          \n",
       "<span style=\"color: #7fbfbf; text-decoration-color: #7fbfbf\">             </span><a href=\"https://tidy3d.simulation.cloud/workbench?taskId=fdve-e3b21982-f5f4-424c-910d-f722c263fec5\" target=\"_blank\"><span style=\"color: #000080; text-decoration-color: #000080; text-decoration: underline\">'https://tidy3d.simulation.cloud/workbench?taskId=fdve-e3b21982-f5f</span></a>\n",
       "<span style=\"color: #7fbfbf; text-decoration-color: #7fbfbf\">             </span><a href=\"https://tidy3d.simulation.cloud/workbench?taskId=fdve-e3b21982-f5f4-424c-910d-f722c263fec5\" target=\"_blank\"><span style=\"color: #000080; text-decoration-color: #000080; text-decoration: underline\">4-424c-910d-f722c263fec5'</span></a><span style=\"color: #000080; text-decoration-color: #000080; text-decoration: underline\">.</span>                                         \n",
       "</pre>\n"
      ],
      "text/plain": [
       "\u001b[2;36m14:02:54 UTC\u001b[0m\u001b[2;36m \u001b[0mView simulation result at                                          \n",
       "\u001b[2;36m             \u001b[0m\u001b]8;id=488533;https://tidy3d.simulation.cloud/workbench?taskId=fdve-e3b21982-f5f4-424c-910d-f722c263fec5\u001b\\\u001b[4;34m'https://tidy3d.simulation.cloud/workbench?\u001b[0m\u001b]8;;\u001b\\\u001b]8;id=949272;https://tidy3d.simulation.cloud/workbench?taskId=fdve-e3b21982-f5f4-424c-910d-f722c263fec5\u001b\\\u001b[4;34mtaskId\u001b[0m\u001b]8;;\u001b\\\u001b]8;id=488533;https://tidy3d.simulation.cloud/workbench?taskId=fdve-e3b21982-f5f4-424c-910d-f722c263fec5\u001b\\\u001b[4;34m=\u001b[0m\u001b]8;;\u001b\\\u001b]8;id=529106;https://tidy3d.simulation.cloud/workbench?taskId=fdve-e3b21982-f5f4-424c-910d-f722c263fec5\u001b\\\u001b[4;34mfdve\u001b[0m\u001b]8;;\u001b\\\u001b]8;id=488533;https://tidy3d.simulation.cloud/workbench?taskId=fdve-e3b21982-f5f4-424c-910d-f722c263fec5\u001b\\\u001b[4;34m-e3b21982-f5f\u001b[0m\u001b]8;;\u001b\\\n",
       "\u001b[2;36m             \u001b[0m\u001b]8;id=488533;https://tidy3d.simulation.cloud/workbench?taskId=fdve-e3b21982-f5f4-424c-910d-f722c263fec5\u001b\\\u001b[4;34m4-424c-910d-f722c263fec5'\u001b[0m\u001b]8;;\u001b\\\u001b[4;34m.\u001b[0m                                         \n"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "62695356a5084b76825925d7b4869522",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Output()"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"></pre>\n"
      ],
      "text/plain": []
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"color: #7fbfbf; text-decoration-color: #7fbfbf\">14:03:04 UTC </span>Loading results from data/simulation_data.hdf5                     \n",
       "</pre>\n"
      ],
      "text/plain": [
       "\u001b[2;36m14:03:04 UTC\u001b[0m\u001b[2;36m \u001b[0mLoading results from data/simulation_data.hdf5                     \n"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"color: #7fbfbf; text-decoration-color: #7fbfbf\">             </span><span style=\"color: #800000; text-decoration-color: #800000\">WARNING: </span><span style=\"color: #008000; text-decoration-color: #008000\">'filter_pol'</span><span style=\"color: #800000; text-decoration-color: #800000\"> is deprecated and will be removed in future  </span>\n",
       "<span style=\"color: #7fbfbf; text-decoration-color: #7fbfbf\">             </span><span style=\"color: #800000; text-decoration-color: #800000\">versions. Please use </span><span style=\"color: #008000; text-decoration-color: #008000\">'sort_spec'</span><span style=\"color: #800000; text-decoration-color: #800000\"> instead.                          </span>\n",
       "</pre>\n"
      ],
      "text/plain": [
       "\u001b[2;36m            \u001b[0m\u001b[2;36m \u001b[0m\u001b[31mWARNING: \u001b[0m\u001b[32m'filter_pol'\u001b[0m\u001b[31m is deprecated and will be removed in future  \u001b[0m\n",
       "\u001b[2;36m             \u001b[0m\u001b[31mversions. Please use \u001b[0m\u001b[32m'sort_spec'\u001b[0m\u001b[31m instead.                          \u001b[0m\n"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/html": [
       "<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"color: #7fbfbf; text-decoration-color: #7fbfbf\">             </span><span style=\"color: #800000; text-decoration-color: #800000\">WARNING: Warning messages were found in the solver log. For more   </span>\n",
       "<span style=\"color: #7fbfbf; text-decoration-color: #7fbfbf\">             </span><span style=\"color: #800000; text-decoration-color: #800000\">information, check </span><span style=\"color: #008000; text-decoration-color: #008000\">'SimulationData.log'</span><span style=\"color: #800000; text-decoration-color: #800000\"> or use                     </span>\n",
       "<span style=\"color: #7fbfbf; text-decoration-color: #7fbfbf\">             </span><span style=\"color: #008000; text-decoration-color: #008000\">'web.download_log(task_id)'</span><span style=\"color: #800000; text-decoration-color: #800000\">.                                       </span>\n",
       "</pre>\n"
      ],
      "text/plain": [
       "\u001b[2;36m            \u001b[0m\u001b[2;36m \u001b[0m\u001b[31mWARNING: Warning messages were found in the solver log. For more   \u001b[0m\n",
       "\u001b[2;36m             \u001b[0m\u001b[31minformation, check \u001b[0m\u001b[32m'SimulationData.log'\u001b[0m\u001b[31m or use                     \u001b[0m\n",
       "\u001b[2;36m             \u001b[0m\u001b[32m'web.download_log\u001b[0m\u001b[32m(\u001b[0m\u001b[32mtask_id\u001b[0m\u001b[32m)\u001b[0m\u001b[32m'\u001b[0m\u001b[31m.                                       \u001b[0m\n"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "sim_data = job.run(path=\"data/simulation_data.hdf5\")"
   ]
  },
  {
   "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": 9,
   "id": "2514be3b",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAkUAAAHWCAYAAAB5ZP2xAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjgsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvwVt1zgAAAAlwSFlzAAAPYQAAD2EBqD+naQAAvWNJREFUeJzsvXmcHHWd///8fD5V1d1zhiuECGIElFvkEAPKIVmiGw8EXWU5BWHFgAK/FY0i94rCIuAiILoKKgiiC3wF5ZBLwcgCwi4IggcrCgmgkJnMTHdX1efz+f3xqaruniszyWRmMvk8H49Opuv81NH1edX7+ghrrcXj8Xg8Ho9nPUdOdQM8Ho/H4/F4pgNeFHk8Ho/H4/HgRZHH4/F4PB4P4EWRx+PxeDweD+BFkcfj8Xg8Hg/gRZHH4/F4PB4P4EWRx+PxeDweD+BFkcfj8Xg8Hg/gRZHH4/F4PB4P4EWRxzNtue+++xBCcN999011UzwTzA9/+EM23HBD+vr6Jn3fTz31FEEQ8OSTT076vj2e6Y4XRR7PFHP55Zdz9dVXT3UzVovrrruOSy65ZKqbAYAxhgsuuIB58+ZRLpfZeeed+cEPfjDm9VesWMHxxx/PJptsQnt7O/vvvz+/+c1vhl32//2//8euu+5KuVzm9a9/PWeeeSZpmo5pP1przjzzTE466SQ6OjrG3L6JYvvtt2fRokWcccYZk75vj2faYz0ez5Syww472H333XfIdK21rVarVms9+Y0aI4sWLbJbbrnlVDfDWmvt5z73OQvY4447zl511VV20aJFFrA/+MEPVrmu1trutddetr293Z511ln2sssus9tvv73t7Oy0zz77bMuyP/3pT60Qwu6///72qquusieddJKVUtpPfOITY2rnTTfdZIUQ9q9//etqHedE8NOf/tQC9g9/+MOUtcHjmY54UeSZFvT19U11E6aMkUTRusB0EUV//etfbRiGdvHixcU0Y4x95zvfaTfffHObpumo699www0WsDfeeGMx7eWXX7azZs2yhx56aMuy22+/vX3LW95ikyQppn3hC1+wQgj79NNPr7Kt73//++073vGOsR7aWiGOY7vBBhvYL37xi1PaDo9nuuHdZ54J54UXXuDYY49l7ty5lEol5s2bxwknnEAcxwBcffXVCCG4//77+eQnP8ns2bPZfPPNi/Uvv/xydthhB0qlEnPnzmXx4sWsWLGiZR+///3vOeSQQ5gzZw7lcpnNN9+cj370o/T09BTL3HXXXbzjHe9g1qxZdHR08OY3v5nPf/7zq2z/WNar1+uceeaZbL311pRKJbbYYgtOO+006vX6kO19//vf521vexttbW1ssMEG7LPPPtx5550AvOENb+C3v/0t999/P0IIhBDst99+wMgxRTfeeCO77bYblUqFjTfemMMPP5wXXnihZZmjjz6ajo4OXnjhBQ466CA6OjrYZJNN+Nd//Ve01qs8B7fccguLFi0qruFWW23Fueee27Lufvvtx2233caf//znou1veMMbRtzm0UcfXSw3+HPWWWetsk2ram+SJHzyk58spgkhOOGEE/jrX//K0qVLR13/Rz/6EZtuuikHH3xwMW2TTTbhn/7pn7jllluK6/rUU0/x1FNPcfzxxxMEQbHsJz/5Say1/OhHPxp1P7Vajdtvv50FCxa0TP+///s/hBDDulEHn5+zzjoLIQTPPvsshx9+ON3d3WyyySZ88YtfxFrLX/7yFz7wgQ/Q1dXFnDlzuOiii4ZsMwxD9ttvP2655ZZR2+vxrG8Eq17E4xk7L774Im9729uK+Ixtt92WF154gR/96EcMDAwQRVGx7Cc/+Uk22WQTzjjjDPr7+wH3wD/77LNZsGABJ5xwAs888wxXXHEFDz/8MA8++CBhGBLHMQsXLqRer3PSSScxZ84cXnjhBW699VZWrFhBd3c3v/3tb3nve9/LzjvvzDnnnEOpVOIPf/gDDz744KjtH8t6xhje//7388ADD3D88cez3Xbb8cQTT3DxxRfz7LPPcvPNNxfLnn322Zx11lnstddenHPOOURRxEMPPcQ999zDgQceyCWXXFLElnzhC18AYNNNNx2xfVdffTUf+9jH2GOPPTj//PN56aWXuPTSS3nwwQd57LHHmDVrVrGs1pqFCxey55578u///u/8/Oc/56KLLmKrrbbihBNOGPU8XH311XR0dHDqqafS0dHBPffcwxlnnEFvby8XXnghAF/4whfo6enhr3/9KxdffDHAqDEy//Iv/zJEDNx+++1ce+21zJ49u5j2t7/9bdS25XR2dlIqlQB47LHHaG9vZ7vttmtZ5m1ve1sx/x3veMeI23rsscfYddddkbL1PfFtb3sbV111Fc8++yw77bQTjz32GAC77757y3Jz585l8803L+aPxKOPPkocx+y6665jOsbR+MhHPsJ2223Hl7/8ZW677TbOO+88NtxwQ77xjW/wrne9i6985Stce+21/Ou//it77LEH++yzT8v6u+22G7fccgu9vb10dXWtcXs8nhnBVJuqPDOLI4880kop7cMPPzxknjHGWmvtd77zHQvYd7zjHS1ujZdfftlGUWQPPPDAljiayy67zAL229/+trXW2scee2yIq2MwF198sQXsK6+8Mq72j2W9733ve1ZKaX/5y1+2TL/yyistYB988EFrrbW///3vrZTSfvCDHxwSF5SfC2tHdp/de++9FrD33nuvtda5PGbPnm133HFHW61Wi+VuvfVWC9gzzjijmHbUUUdZwJ5zzjkt23zrW99qd9ttt9FPgrV2YGBgyLR/+Zd/sW1tbbZWqxXT1sR99vvf/952d3fbf/iHf2i5D4Axfb7zne+0tOONb3zjkH309/dbwH7uc58btS3t7e32mGOOGTL9tttus4C9/fbbrbXWXnjhhRawzz///JBl99hjD/v2t7991P1861vfsoB94oknWqY/99xzQ44pB7Bnnnlm8f3MM8+0gD3++OOLaWma2s0339wKIeyXv/zlYvprr71mK5WKPeqoo4Zs97rrrrOAfeihh0Zts8ezPuHdZ54JwxjDzTffzPve974hb9Lg3ADNHHfccSiliu8///nPieOYk08+ueWN/bjjjqOrq4vbbrsNgO7ubgDuuOMOBgYGhm1LbjG55ZZbMMaM+RjGst6NN97Idtttx7bbbsvf/va34vOud70LgHvvvReAm2++GWMMZ5xxxhALxOBzMRYeeeQRXn75ZT75yU9SLpeL6YsWLWLbbbctzk8zn/jEJ1q+v/Od7+RPf/rTKvdVqVSKv1euXMnf/vY33vnOdzIwMMDvfve7cbd9MP39/Xzwgx9kgw024Ac/+EHLfXDXXXeN6bNw4cJinWq1WliNmsnPU7VaHbU9Y10//3+kZVe1n7///e8AbLDBBqMuNxY+/vGPF38rpdh9992x1nLssccW02fNmsWb3/zmYa953oaxWuY8nvUB7z7zTBivvPIKvb297LjjjmNaft68eS3f//znPwPw5je/uWV6FEW88Y1vLObPmzePU089la9+9atce+21vPOd7+T9739/EV8BzrXwrW99i49//ON87nOf44ADDuDggw/mQx/60BCB0sxY1vv973/P008/zSabbDLsNl5++WUA/vjHPyKlZPvttx/T+VgVI50fgG233ZYHHnigZVq5XB7Sxg022IDXXnttlfv67W9/y+mnn84999xDb29vy7zmuK3V5bjjjuOPf/wjv/rVr9hoo41a5g12sY2FSqUybDxXrVYr5k/E+vn/Iy27qv3kWGvHtNxovP71r2/53t3dTblcZuONNx4yPRdjw7VhdQS6xzNT8aLIM2WMtQMZjosuuoijjz6aW265hTvvvJNPfepTnH/++fz6179m8803p1Kp8Itf/IJ7772X2267jdtvv50bbriBd73rXdx5550tlonBbVrVesYYdtppJ7761a8Ou40ttthitY9rIhnpGFfFihUr2Hfffenq6uKcc85hq622olwu85vf/IbPfvaz47K8Dcell17KD37wA77//e+zyy67DJm/fPnyMW2nu7u7uIc222wz7r33Xqy1LZ38smXLABfzMxqbbbZZsWwzg9ffbLPNiumDr/OyZcuKGKaRyAXga6+91pJcMBKjiafhru9I13y47eTieLCI8njWZ7z7zDNhbLLJJnR1da12pdwtt9wSgGeeeaZlehzHPPfcc8X8nJ122onTTz+dX/ziF/zyl7/khRde4MorryzmSyk54IAD+OpXv8pTTz3Fv/3bv3HPPfcU7q2RWNV6W221Fa+++ioHHHAACxYsGPLJLTlbbbUVxhieeuqpUfc31jf1kc5PPm3w+Vld7rvvPv7+979z9dVX8+lPf5r3vve9LFiwYFiXz3itDL/85S/513/9V04++WQOO+ywYZfZbLPNxvS54YYbinV22WUXBgYGePrpp1u29dBDDxXzR2OXXXbhN7/5zRDB99BDD9HW1sab3vSmlu088sgjLcu9+OKL/PWvf13lfrbddlsAnnvuuWHnr1y5suX7Sy+9NOr21oTnnnsOKWVxbB6Px4sizwQipeSggw7iJz/5yZBOA1btMliwYAFRFPG1r32tZdn//M//pKenh0WLFgHQ29s7pHrwTjvthJSycGu8+uqrQ7afd1jDuT5yxrLeP/3TP/HCCy/wzW9+c8iy1Wq1yKQ76KCDkFJyzjnnDOlsm4+vvb19SMmB4dh9992ZPXs2V155Zcsx/OxnP+Ppp58uzs+aklsbmtsYxzGXX375kGXb29vH7E5btmwZ//RP/8Q73vGOIoNtOFYnpugDH/gAYRi2tNFay5VXXsnrXvc69tprr5Z2/O53vyNJkmLahz70IV566SX+67/+q5j2t7/9jRtvvJH3ve99RQzRDjvswLbbbstVV13VUp7giiuuQAjBhz70oVHPwW677UYURcP+PoAhgv2mm24qjmWiefTRR9lhhx0Kl7PH4/HuM88E86UvfYk777yTfffdt0hXX7ZsGTfeeCMPPPBAS8r4YDbZZBOWLFnC2Wefzbvf/W7e//7388wzz3D55Zezxx57cPjhhwNwzz33cOKJJ/LhD3+YN73pTaRpyve+9z2UUhxyyCEAnHPOOfziF79g0aJFbLnllrz88stcfvnlbL755qOmZo9lvSOOOIIf/vCHfOITn+Dee+9l7733RmvN7373O374wx9yxx13sPvuu7P11lvzhS98gXPPPZd3vvOdHHzwwZRKJR5++GHmzp3L+eefD7iO8oorruC8885j6623Zvbs2UXQdjNhGPKVr3yFj33sY+y7774ceuihRUr+G97wBk455ZTVvWwt7LXXXmywwQYcddRRfOpTn0IIwfe+971hO+bddtuNG264gVNPPZU99tiDjo4O3ve+9w273U996lO88sornHbaaVx//fUt83beeWd23nlnYPViijbffHNOPvlkLrzwQpIkYY899uDmm2/ml7/8Jddee22LW2nJkiVcc801PPfcc0VdpQ996EO8/e1v52Mf+xhPPfUUG2+8MZdffjlaa84+++yWfV144YW8//3v58ADD+SjH/0oTz75JJdddhkf//jHh5QEGEy5XObAAw/k5z//Oeecc86Q+bfffjuHHXYY++yzD88++yxXXXUVbW1t3Hnnneyxxx68973vHfe5GY4kSYo6YR6Pp4kpyXnzzGj+/Oc/2yOPPNJusskmtlQq2Te+8Y128eLFtl6vW2sbKfnDpe1b61Lwt912WxuGod10003tCSecYF977bVi/p/+9Cd7zDHH2K222sqWy2W74YYb2v3339/+/Oc/L5a5++677Qc+8AE7d+5cG0WRnTt3rj300EOHDNkwmLGuF8ex/cpXvmJ32GEHWyqV7AYbbGB32203e/bZZ9uenp6WZb/97W/bt771rcVy++67r73rrruK+cuXL7eLFi2ynZ2dFijS8wen5OfccMMNxfY23HBDe9hhhw0ZMuKoo46y7e3tQ44vT+deFQ8++KB9+9vfbiuVip07d6497bTT7B133DGkPX19ffaf//mf7axZsywwanr+vvvuO2J6fXPK+eqitbZf+tKX7JZbbmmjKLI77LCD/f73vz9kubxcwXPPPdcy/dVXX7XHHnus3WijjWxbW5vdd999R7xHb7rpJrvLLrvYUqlkN998c3v66afbOI7H1M7/+q//skKIlrT+PCX/S1/6kl2wYIEtlUp23rx59kc/+pH9/Oc/b9va2uzZZ59trW1cw8FlI0a65vvuu6/dYYcdWqb97Gc/s4D9/e9/P6Y2ezzrC8LatWCX9Xg8Hs+waK3Zfvvt+ad/+ifOPfdcwFW0njdvHt/5znc4+uij13obDjroIIQQhXvO4/E4fEyRx+PxTCJKKc455xy+/vWv09fXN+n7f/rpp7n11lsLQebxeBp4UeTxeDyTzEc+8hFeffXVUYdFWVtst912pGk65npiHs/6hBdFHo/H4/F4PICPKfJ4PB6Px+PBW4o8Ho/H4/F4AC+KPB6Px+PxeABfvHHMGGN48cUX6ezs9AMoejwez3qEtZaVK1cyd+7cUQeU9qz7eFE0Rl588cVpM9Cnx+PxeCafv/zlL2MayHeyOPro9/Dn51/inrsf9S/rE4QXRWOks7Mz+0sC/ubzzGy23HJLZs0aOgBsM/V6nd/97ulRl/F4ZgYWME39wNTzP//zP9xwwz10dFT4yU9+wvvf//6pbtKMwGefjZHe3t5s4ESFF0Wemc68efPYYINVi6Lf/va3k9Qij2cqsYCmp6eHrq6uqW4MAIsWzWebN23OvHmb8a1v3srjj/++ZYw/z+rhnaMej8fj8axDPPjgg/ziF//D5z53GMcd915WrhwYMsiyZ/Xwosjj8Xg8nnUEay1LPv9JTj7lw2yyySxKpYgzzjiaM844jSRJprp56zxeFHk8Ho/Hs45w55138tsn/49TTvlwMe2ww/+BKAr45jc/O4Utmxl4UeTxeDwezzqAtZbPf/4kPvu5f6a7uzFuXhAozjnnGM4777tUq9UpbOG6jxdFHo/H4/GsA/z4xz9m+fLX+OQnDxoy74MH78PcuRvxtf84ZfIbNoPwosjj8Xg8nmlOmqZ88Yv/H1/4whFUKqUh84UQnHPusVzwlR/Q09MzBS2cGXhR5PF4PB7PNOe73z2dOE455th/HHGZAw/cgx13mse/X/SpSWzZzMKLIo/H4/F4pjH1ep2zz76as846mjAcueayEILzzvs4l1x8I6+88soktnDm4EWRx+PxeDzTmCu/8Rm6u9v56KEHrHLZvfbakX333YV/+9InJ6FlMw8vijwej8fjmab09/fzpX/7Puecc8yYB6M959xjuOobP+Evf/nLWm7dzMOLIo/H4/F4pikXX/Jp5r1xM977vr3GvM5b3rI1H/jA3px99glrsWUzEy+KPB6Px+OZhrz22mv8+4XXc955H0eI8Y25eeZZH+P737+TZ599dlzrXXHFFey88850dXXR1dXF/Pnz+dnPflbMr9VqLF68mI022oiOjg4OOeQQXnrppZZtPP/88yxatIi2tjZmz57NZz7zGdI0bVnmvvvuY9ddd6VUKrH11ltz9dVXj6udawsvijwej8fjmYZ8+Ssnsvvu27L//m8d97rbbLM5RxxxIF/84ifGtd7mm2/Ol7/8ZR599FEeeeQR3vWud/GBD3ygGPz5lFNO4Sc/+Qk33ngj999/Py+++CIHH3xwsb7WmkWLFhHHMb/61a+45ppruPrqqznjjDOKZZ577jkWLVrE/vvvz+OPP87JJ5/Mxz/+ce64445xH+dEI6y1dqobsS7Q29tLd3c3oIDxKXaPZ11j3rx5bLDBBqMuU6/XiwelxzOzsYCmp6eHrq6uSdnj8uXL2Wqredx9z8Xssce2q7WNv/71Fbbb9gh+9atfs8suu6x2WzbccEMuvPBCPvShD7HJJptw3XXX8aEPfQiA3/3ud2y33XYsXbqUt7/97fzsZz/jve99Ly+++CKbbropAFdeeSWf/exneeWVV4iiiM9+9rPcdtttPPnkk8U+PvrRj7JixQpuv/321W7nROAtRR6Px+PxTDPOO++THHjgHqstiAA233wT/uUT7+cLX1i92CKtNddffz39/f3Mnz+fRx99lCRJWLBgQbHMtttuy+tf/3qWLl0KwNKlS9lpp50KQQSwcOFCent7i5eopUuXtmwjXybfxlQycsEDj8fj8Xg8k05PTw9XXfUTHnn0qjXe1uc+dxjz3vARHnvsMbbaaquWeaVSiVJpaHXsJ554gvnz51Or1ejo6OCmm25i++235/HHHyeKImbNmtWy/Kabbsry5csBZ+FqFkT5/HzeaMv09vZSrVapVCprdMxrgrcUeTwej8czjRgYGCBJUrbd9vVrvK2NN+5mk01m8R//8R90d3e3fM4///xh13nzm9/M448/zkMPPcQJJ5zAUUcdxVNPPbXGbVkX8JYij8fj8XimI8bAOLPOhsdyxBFHcMkll7RMHc5KBBBFEVtvvTUAu+22Gw8//DCXXnopH/nIR4jjmBUrVrRYi1566SXmzJkDwJw5c/jv//7vlu3l2WnNywzOWHvppZfo6uqaUisReEuRx+PxeDzTE2Mm5oMTOnmaff4ZSRQNbYahXq+z2267EYYhd999dzHvmWee4fnnn2f+/PkAzJ8/nyeeeIKXX365WOauu+6iq6uL7bffvlimeRv5Mvk2phJvKfJ4PB6PxwPAkiVLeM973sPrX/96Vq5cyXXXXcd9993HHXfcQXd3N8ceeyynnnoqG264IV1dXZx00knMnz+ft7/97QAceOCBbL/99hxxxBFccMEFLF++nNNPP53FixcXIuwTn/gEl112GaeddhrHHHMM99xzDz/84Q+57bbbpvLQAS+KPB6Px+OZnkyU+2wchXdefvlljjzySJYtW0Z3dzc777wzd9xxB//wD/8AwMUXX4yUkkMOOYR6vc7ChQu5/PLLi/WVUtx6662ccMIJzJ8/n/b2do466ijOOeecYpl58+Zx2223ccopp3DppZey+eab861vfYuFCxeu+bGuIb5O0RjxdYo86xO+TpHH08zk1ilatmwZc+fOpb7yNpRSa7y9N775SK77wX+x9957T0DrZjbTLqbohRde4PDDD2ejjTaiUqmw00478cgjj4y6zljKhX/961/nDW94A+VymT333HNIIJjH4/F4PJ71m2klil577TX23ntvwjDkZz/7GU899RQXXXTRqG+sYykXfsMNN3Dqqady5pln8pvf/Ia3vOUtLFy4sCUQzOPxeDyeacWEBVp7h9BYmVYxRV/5ylfYYost+M53vlNMmzdv3qjrXHnllcybN4+LLroIgO22244HHniAiy++uPBPfvWrX+W4447jYx/7WLHObbfdxre//W0+97nPraWj8Xg8Ho9nDZiwlHzPWJlWlqL/9//+H7vvvjsf/vCHmT17Nm9961v55je/Oeo6qyoXHscxjz76aMsyUkoWLFgwaknxer1Ob29vy8fj8Xg8Hs/MZVqJoj/96U9cccUVbLPNNtxxxx2ccMIJfOpTn+Kaa64ZcZ1VlQv/29/+htZ62GXy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xx13HMuWLSs+F1xwQTFPa82iRYuI45hf/epXXHPNNVx99dWcccYZxTLPPfccixYtYv/99+fxxx/n5JNP5uMf/zh33HHHmp2zNcS7zzye9YTxBDyPZyiPseBFkcezGkxBTNHtt9/e8v3qq69m9uzZPProo+yzzz7F9La2NubMmTPsNu68806eeuopfv7zn7Ppppuyyy67cO655/LZz36Ws846iyiKuPLKK5k3bx4XXXQRANtttx0PPPAAF198MQsXLlx7B7gKvKXI41lPGG880XAWo9W1InlR5PGsm/T09ACw4YYbtky/9tpr2Xjjjdlxxx1ZsmQJAwMDxbylS5ey0047semmmxbTFi5cSG9vL7/97W+LZRYsWNCyzYULF7J06dK1dShjYlqLoi9/+csIITj55JNHXe7GG29k2223pVwus9NOO/HTn/60Zb61ljPOOIPNNtuMSqXCggUL+P3vf78WW+7xTD+mIsg6RylFGIZTtn+PZ53EmIn5AHEc09vb2/JZVfKDMYaTTz6Zvffemx133LGY/s///M98//vf595772XJkiV873vf4/DDDy/mL1++vEUQAcX35cuXj7pMb28v1Wp19c/ZGjJtRdHDDz/MN77xDXbeeedRl/vVr37FoYceyrHHHstjjz3GQQcdxEEHHcSTTz5ZLHPBBRfwta99jSuvvJKHHnqI9vZ2Fi5cSK1WW9uH4fFMC4IgQAVqStswlaLM41knmaiYIgvf+9736O7ubvmcf/75o+5+8eLFPPnkk1x//fUt048//ngWLlzITjvtxGGHHcZ3v/tdbrrpJv74xz+uzbMxKUxLUdTX18dhhx3GN7/5TTbYYINRl7300kt597vfzWc+8xm22247zj33XHbddVcuu+wywFmJLrnkEk4//XQ+8IEPsPPOO/Pd736XF198kZtvvnkSjsbjmXqGFSRCTFqtohHb4PF4JoUjjjiCnp6els+SJUtGXP7EE0/k1ltv5d5772XzzTcfddt77rknAH/4wx8AmDNnDi+99FLLMvn3PA5ppGW6urqm9FkxLUXR4sWLWbRo0RB/43Csyi/53HPPsXz58pZluru72XPPPafcd+nxTBbDxvQMk3k2FlZXRnlR5PGMkwnMPouiiK6urpZPqVQasktrLSeeeCI33XQT99xzD/PmzVtlMx9//HEANttsMwDmz5/PE088wcsvv1wsc9ddd9HV1cX2229fLHP33Xe3bOeuu+5i/vz5q3WqJoppl312/fXX85vf/IaHH354TMuP5Jds9lvm00ZaZjjq9XqLv7W3t3dM7fF4piPlcnmVy1jW7ogCXhR5POPEGjATsqExL7l48WKuu+46brnlFjo7O4t+sru7m0qlwh//+Eeuu+46/vEf/5GNNtqI//3f/+WUU05hn332KcJdDjzwQLbffnuOOOIILrjgApYvX87pp5/O4sWLCyH2iU98gssuu4zTTjuNY445hnvuuYcf/vCH3HbbbRNxwKvNtLIU/eUvf+HTn/4011577Zge4muT888/v8X3usUWW0xpezyeNWE0QWKZ2PT7kZjq37THs87RXEtsTT7j4IorrqCnp4f99tuPzTbbrPjccMMNgLM4/fznP+fAAw9k22235f/7//4/DjnkEH7yk58U21BKceutt6KUYv78+Rx++OEceeSRnHPOOcUy8+bN47bbbuOuu+7iLW95CxdddBHf+ta3pjQdH6aZpejRRx/l5ZdfZtdddy2maa35xS9+wWWXXUa9Xkep1mDRkfySzX7LfFpu2su/77LLLiO2ZcmSJZx66qnF997eXi+MPOssYxEkazu6SAhBFEXEcbyW9+TxeFYXuwoRtcUWW3D//fevcjtbbrnlkEzwwey333489thj42rf2mZaWYoOOOAAnnjiCR5//PHis/vuu3PYYYfx+OOPDxFEsGq/5Lx585gzZ07LMr29vTz00EOj+i5LpdIQ/6vHsy4ShiFSjvxTF0zeQNzehebxjIMpqGi9vjOtLEWdnZ0ttRDAVeHdaKONiulHHnkkr3vd64pUwk9/+tPsu+++XHTRRSxatIjrr7+eRx55hKuuugqgqHN03nnnsc022zBv3jy++MUvMnfuXA466KBJPT6PZyqYTm6rcrlcFIPzeDyrwEyQc9vrojEzrUTRWHj++edb3nr32msvrrvuOk4//XQ+//nPs80223DzzTe3iKvTTjuN/v5+jj/+eFasWME73vEObr/99mnVWXg8a4uxBlk3s7YsR/435/F4pjPCrsqB6AGcy627uxtQTJ6zweNZc7bYYgs22WQTYOQ7d7yiaHUfGn19fTz77LOrubbHM1VYQNPT0zMpoRTLli1j7ty5JNechBrF9T1W3nDyt7nulp+x9957T0DrZjbrnKXI4/GMj+FqkTQzXoGzJm9R3lLk8YyDiXKfecbMtAq09ng8E89oomi4x+3q2EHHuk4QBKMGfXs8Hs9U4i1FHs8MZyRRNJHvn+PZVqlUmtIBHz2edQZvKZp0vCjyeGYwURQVfw+25ggm13WW40WRxzNGfPbZpONFkcczg1lVPNFwrOr5uTpiqplmoebxeEbGGoudEEXjVdFY8c59j2cGsyoBsjrxQ2v6eF0doebxeDyTgbcUeTwzmDW1yuSiaSLfM72lyOMZI6sxdplnzfCiyOOZwUx0Ov5wNFubxrI9bynyeMaID7SedLz7zOOZoQhEi1VmdR+tE/1I9pYij8czXfGWIo9nBhOG4YjzxiJ21sY7qpQSKSXGmLWwdY9nBuEtRZOOF0UezwymWRStzcFpxvvYDsOQer2+Vtri8cwYfEr+pOPdZx7PDEUpNSnVo1fneTuaBcvj8XimCm8p8nhmKEE4fX/ePq7I4xkD3n026Uzfp6bH41kjptIas6pUfm8p8nhWzcQVb/SMFS+KPJ4ZShCM/POe6sfsaG3zeDwZ3lI06fgnk8czQxlsjZnMR+uq9uVFkcfjmY74J5PHM0OZzsLDu888njEwYdln3to0VqbvU9Pj8awR01kUTee2eTzTBu8+m3T8k8njmaFMB+Ex0hAg06FtHo/HMxj/ZPJ4ZihKqZbva2Nw1/EgmvY9uG0ej2cY/ICwk44XRR7PDGU6W2O8KPJ4Vo013nk22fiK1h7PDGWw8Jjq6ITB+/bCyOPxTDem76ukx+NZI6aD6BhNhCml0FpPWls8nnUOH2g96XhR5PHMUKaDKBqN6d4+j2fK8QPCTjpeFHk8MxAhxKoXmgRGyj4DJmWwWo9nXcbHFE0+/qnk8cxApqPgGCzTpmMbPR7P+o23FHk8M5Dp4JoazlbVnJbvRZHHswp8TNGk40WRxzMDWRcEx3QQbh7PtMZMdQPWP6b/k9Pj8Yyb6RJTNJjmd97p2kaPx7P+4i1FHs8MZDoKjsFOgOnYRo9nOmGNxfrss0nFiyKPZwayLrjPvCjyeFaBd59NOtP/yenxeMbN2hQcY9nySEHWzawLws3j8axfeEuRxzMDWRuiSAz6e00t8t5S5PGsAp98Nul4UeTxzECmUnCMtueJEFMez/rCRMUU+d/c2PGiyOPxjBv/kPV4JoGJiinyP9gx40WRx+MZExPxXPUp+R6PZzrjRZHH45kwvMzxeCYOP/bZ5ONFkcfjGTOjxQR5QeTxTDA+JX/S8TmxHs8MxNqJf78Ug/5fU9ZGGz0ej2dN8JYij2cGsrYFx0RkkXlR5PGMjnefTT5eFHk8M5CJFhxjsQ7Z4ZbLg6mz9jSLKS+KPJ5V4N1nk453n3k8M5CJFhyDtzYhmWheFHk8nmmGtxR5PDOQtSE4JnqLXhR5PKNjbWFkXcMNTcA21hO8KPJ4ZiDTRnCM0g5jvG/A4xkNH1M0+Uw799n555/PHnvsQWdnJ7Nnz+aggw7imWeeWeV6N954I9tuuy3lcpmddtqJn/70py3zrbWcccYZbLbZZlQqFRYsWMDvf//7tXUYHs+Usi4IjnWhjR7PlGIm6OMZM9NOFN1///0sXryYX//619x1110kScKBBx5If3//iOv86le/4tBDD+XYY4/lscce46CDDuKggw7iySefLJa54IIL+NrXvsaVV17JQw89RHt7OwsXLqRWq03GYXk8k8raEhzjTscfpWq1F0Uej2e6Me1E0e23387RRx/NDjvswFve8hauvvpqnn/+eR599NER17n00kt597vfzWc+8xm22247zj33XHbddVcuu+wywFmJLrnkEk4//XQ+8IEPsPPOO/Pd736XF198kZtvvnmSjszjmTzWhuAYd52iXBCNIIy8KPJ4RseaifmMh7F4a2q1GosXL2ajjTaio6ODQw45hJdeeqllmeeff55FixbR1tbG7Nmz+cxnPkOapi3L3Hfffey6666USiW23nprrr766tU5TRPKtBNFg+np6QFgww03HHGZpUuXsmDBgpZpCxcuZOnSpQA899xzLF++vGWZ7u5u9txzz2KZwdTrdXp7e1s+Hs+6gtZ6qpvQyjDCyIsij2d08kDrNf2Mh7F4a0455RR+8pOfcOONN3L//ffz4osvcvDBBxfztdYsWrSIOI751a9+xTXXXMPVV1/NGWecUSzz3HPPsWjRIvbff38ef/xxTj75ZD7+8Y9zxx13rPF5WxOmdaC1MYaTTz6Zvffemx133HHE5ZYvX86mm27aMm3TTTdl+fLlxfx82kjLDOb888/n7LPPXpPmezxTirV2QgddHcuzddhaRSMw7YSbx+Ph9ttvb/l+9dVXM3v2bB599FH22Wcfenp6+M///E+uu+463vWudwHwne98h+22245f//rXvP3t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",
      "text/plain": [
       "<Figure size 640x480 with 2 Axes>"
      ]
     },
     "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()"
   ]
  },
  {
   "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": 10,
   "id": "6959a333",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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3QAAAAAAWAihGwAAAAAACyF0AwAAAABgIYRuAAAAAAAshNANAAAAAICFELoBAAAAALAQQjcAAAAAABZC6AYAAAAAwEII3QAAAAAAWAihGwAAAAAACyF0AwAAAABgIYRuAAAAAAAshNANAAAAAICFELoBAAAAALAQQjcAAAAAABZC6AYAAAAAwEII3QAAAAAAWAihGwAAAAAACyF0AwAAAABgIYRuAAAAAAAshNANAAAAAICFELoBAAAAALAQQjcAAAAAABZC6AYAAAAAwEII3QAAAAAAWAihGwAAAAAACyF0AwAAAABgIYRuAAAAAAAshNANAAAAAICFELoBAAAAALAQQjcAAAAAABZC6AYAAAAAwEII3QAAAAAAWAihGwAAAAAACyF0AwAAAABgIYRuAAAAAAAshNANAAAAAICFELoBAAAAALAQQjcAAAAAABZC6AYAAAAAwEII3QAAAAAAWAihGwAAAAAACyF0AwAAAABgIekmdIeFhal169ZydXWVu7u7OnbsqPv37z91nwcPHuizzz5T9uzZlTlzZjVv3lw3btxIto3BYHjks3z5ckueCgAAAADgJZFuQnfr1q118uRJbd68WevWrdPOnTvVuXPnp+7Ts2dPrV27VitWrNCOHTsUHBysZs2aPbLdggULdP369aRPkyZNLHQWAAAAAICXiZ21CzDF6dOntXHjRu3fv18VK1aUJE2fPl2NGjXSxIkT5ePj88g+4eHhmjdvnpYtW6batWtLehiuixUrpr1796pKlSpJ27q7u8vb2zt1TgYAAAAA8NJIF3e69+zZI3d396TALUl169aVjY2N9u3b99h9Dh48qLi4ONWtWzdpWdGiRZUnTx7t2bMn2bafffaZcuTIoUqVKmn+/PkyGo1PrScmJkYRERHJPgAAAAAA/H/p4k53SEiIPD09ky2zs7NTtmzZFBIS8sR9HBwc5O7unmy5l5dXsn1Gjhyp2rVry8XFRZs2bdKnn36q+/fvq3v37k+sZ8yYMRoxYsTznxAAAAAA4KVg1TvdAwYMeOxAZv/9BAQEWLSGIUOG6NVXX1W5cuXUv39/9evXTxMmTHjqPgMHDlR4eHjS5+rVqxatEQAAAACQPln1Tnfv3r3Vvn37p26TP39+eXt76+bNm8mWx8fHKyws7InvYnt7eys2NlZ3795Ndrf7xo0bT31/u3Llyho1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REZGYv78+XB0dISzszOWLVsGc3NzmJmZAQC6deuG3NxclJWVoV27dnB0dIS5+avdGRMSEoLFixejoqICDg4OAJ6+Wg4AW7ZsQWxsLEpKShAbGwsAePz4MbRaLSwsLODj4yPNU1hYCEdHR3h4eMjGevTogXbt2smOmZWVhbFjx75SvUREZBqYy8xlotfBe7qJTFBwcDAePXqEnj17olOnTtK4RqNBdXW19BUmAGBubo4DBw7g/Pnz8PHxQVxcHL755ptm5x05ciQcHR1RXFyMTz/9VLZt1apV+PLLL5GYmIg+ffpg3LhxSElJaXIv1Kvu35INGzZg+PDhGD9+PEaPHg1/f3/ZJ5bOmzcPFhYW8Pb2RseOHWX3w7VWv379MGjQIBw8eFAaKywsREhICEpLS9GvXz8sWbIEK1asgL29PTZv3gytVgsvLy/ZPWdarbbJ2960Wm2Tt7DV1dXhl19+waxZs165ZiIiMj7mMnOZ6HWYCSGEsYsgInqmtrYWXbp0wfr16xEdHa33+VNSUjB//nwUFRXB3NwcISEhGDp0KL7++mu9H2vHjh04fPgwfv/9d73PTUREZAjMZaLXx7eXE5FRFRQU4PLly/Dz80NlZSVWrlwJAAgLC1PleKGhobh69Spu3LiBrl27QqvVIioqSpVjWVpaYsuWLarMTUREpAbmMpH+8S/dRGRUBQUFmDlzJoqLi2FlZYXBgwdjw4YNTT74RA23bt2Ci4sLLl68CG9vb9WPR0REZOqYy0T6x0U3ERERERERkUr4QWpEREREREREKuGim4iIiIiIiEglXHQTERERERERqYSLbiIiIiIiIiKVcNFNREREREREpBIuuomIiIiIiIhUwkU3ERERERERkUq46CYiIiIiIiJSCRfdRERERERERCrhopuIiIiIiIhIJVx0ExEREREREank/0SPWjFsePaiAAAAAElFTkSuQmCC",
      "text/plain": [
       "<Figure size 1000x500 with 2 Axes>"
      ]
     },
     "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(r\"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 / T_through))\n",
    "ax2.set_xlabel(r\"Wavelength ($\\mu m$)\")\n",
    "ax2.set_ylabel(\"Crosstalk (dB)\")\n",
    "ax2.set_ylim((-30, -25))\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "d60f5fdb",
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "applications": [
   "Passive photonic integrated circuit components"
  ],
  "description": "This notebook demonstrates how to model a waveguide crossing in Tidy3D FDTD.",
  "feature_image": "./img/waveguide_crossing.png",
  "features": [],
  "kernelspec": {
   "display_name": "Python 3 (ipykernel)",
   "language": "python",
   "name": "python3"
  },
  "keywords": "waveguide crossing, 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.2"
  },
  "nbdime-conflicts": {
   "local_diff": [
    {
     "diff": [
      {
       "diff": [
        {
         "diff": [
          {
           "key": 5,
           "op": "addrange",
           "valuelist": "2"
          },
          {
           "key": 5,
           "length": 1,
           "op": "removerange"
          }
         ],
         "key": 0,
         "op": "patch"
        }
       ],
       "key": "version",
       "op": "patch"
      }
     ],
     "key": "language_info",
     "op": "patch"
    }
   ],
   "remote_diff": [
    {
     "diff": [
      {
       "diff": [
        {
         "key": 0,
         "length": 1,
         "op": "removerange"
        }
       ],
       "key": "version",
       "op": "patch"
      }
     ],
     "key": "language_info",
     "op": "patch"
    }
   ]
  },
  "title": "Waveguide Crossing Modeling in Tidy3D | Flexcompute",
  "widgets": {
   "application/vnd.jupyter.widget-state+json": {
    "state": {
     "20abe4531aff441389bfd781cb1d90af": {
      "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_22b201562b7d448a8ae6240f8ee291c8",
       "msg_id": "",
       "outputs": [
        {
         "data": {
          "text/html": "<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"color: #800000; text-decoration-color: #800000; font-weight: bold\">↑</span> <span style=\"color: #000080; text-decoration-color: #000080; font-weight: bold\">simulation.hdf5.gz</span> <span style=\"color: #729c1f; text-decoration-color: #729c1f\">━━━━━━━━━━━━━━━━━━━━━━━━━</span> <span style=\"color: #800080; text-decoration-color: #800080\">100.0%</span> • <span style=\"color: #008000; text-decoration-color: #008000\">4.1/4.1 kB</span> • <span style=\"color: #800000; text-decoration-color: #800000\">?</span> • <span style=\"color: #008080; text-decoration-color: #008080\">0:00:00</span>\n</pre>\n",
          "text/plain": "\u001b[1;31m↑\u001b[0m \u001b[1;34msimulation.hdf5.gz\u001b[0m \u001b[38;2;114;156;31m━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[35m100.0%\u001b[0m • \u001b[32m4.1/4.1 kB\u001b[0m • \u001b[31m?\u001b[0m • \u001b[36m0:00:00\u001b[0m\n"
         },
         "metadata": {},
         "output_type": "display_data"
        }
       ],
       "tabbable": null,
       "tooltip": null
      }
     },
     "22b201562b7d448a8ae6240f8ee291c8": {
      "model_module": "@jupyter-widgets/base",
      "model_module_version": "2.0.0",
      "model_name": "LayoutModel",
      "state": {
       "_model_module": "@jupyter-widgets/base",
       "_model_module_version": "2.0.0",
       "_model_name": "LayoutModel",
       "_view_count": null,
       "_view_module": "@jupyter-widgets/base",
       "_view_module_version": "2.0.0",
       "_view_name": "LayoutView",
       "align_content": null,
       "align_items": null,
       "align_self": null,
       "border_bottom": null,
       "border_left": null,
       "border_right": null,
       "border_top": 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,
       "padding": null,
       "right": null,
       "top": null,
       "visibility": null,
       "width": null
      }
     },
     "a401128ec1b3462b98090e0c31c5b936": {
      "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_e80350cdc4e04fd0941eb94f72754519",
       "msg_id": "",
       "outputs": [
        {
         "data": {
          "text/html": "<pre style=\"white-space:pre;overflow-x:auto;line-height:normal;font-family:Menlo,'DejaVu Sans Mono',consolas,'Courier New',monospace\"><span style=\"color: #008000; text-decoration-color: #008000; font-weight: bold\">↓</span> <span style=\"color: #000080; text-decoration-color: #000080; font-weight: bold\">simulation_data.hdf5.gz</span> <span style=\"color: #729c1f; text-decoration-color: #729c1f\">━━━━━━━━━━━</span> <span style=\"color: #800080; text-decoration-color: #800080\">100.0%</span> • <span style=\"color: #008000; text-decoration-color: #008000\">28.4/28.4  </span> • <span style=\"color: #800000; text-decoration-color: #800000\">15.9 MB/s</span> • <span style=\"color: #008080; text-decoration-color: #008080\">0:00:00</span>\n                                               <span style=\"color: #008000; text-decoration-color: #008000\">MB         </span>                      \n</pre>\n",
          "text/plain": "\u001b[1;32m↓\u001b[0m \u001b[1;34msimulation_data.hdf5.gz\u001b[0m \u001b[38;2;114;156;31m━━━━━━━━━━━\u001b[0m \u001b[35m100.0%\u001b[0m • \u001b[32m28.4/28.4  \u001b[0m • \u001b[31m15.9 MB/s\u001b[0m • \u001b[36m0:00:00\u001b[0m\n                                               \u001b[32mMB         \u001b[0m                      \n"
         },
         "metadata": {},
         "output_type": "display_data"
        }
       ],
       "tabbable": null,
       "tooltip": null
      }
     },
     "e80350cdc4e04fd0941eb94f72754519": {
      "model_module": "@jupyter-widgets/base",
      "model_module_version": "2.0.0",
      "model_name": "LayoutModel",
      "state": {
       "_model_module": "@jupyter-widgets/base",
       "_model_module_version": "2.0.0",
       "_model_name": "LayoutModel",
       "_view_count": null,
       "_view_module": "@jupyter-widgets/base",
       "_view_module_version": "2.0.0",
       "_view_name": "LayoutView",
       "align_content": null,
       "align_items": null,
       "align_self": null,
       "border_bottom": null,
       "border_left": null,
       "border_right": null,
       "border_top": 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,
       "padding": null,
       "right": null,
       "top": null,
       "visibility": null,
       "width": null
      }
     }
    },
    "version_major": 2,
    "version_minor": 0
   }
  }
 },
 "nbformat": 4,
 "nbformat_minor": 5
}
