{
 "cells": [
  {
   "cell_type": "markdown",
   "id": "1d266682",
   "metadata": {},
   "source": [
    "# Introduction on Tidy3D working principles\n",
    "\n",
    "This notebook will walk through the basic working principles of the Tidy3D front end, including setting up and post processing simulation results.\n",
    "\n",
    "Note that this content serves as a reference for the details of operating the front end, but a lot of content is covered indirectly in the other [example notebooks](https://www.flexcompute.com/tidy3d/examples/)."
   ]
  },
  {
   "cell_type": "code",
   "id": "1382cd8c",
   "metadata": {
    "tags": [],
    "ExecuteTime": {
     "end_time": "2025-10-29T14:07:19.820546Z",
     "start_time": "2025-10-29T14:07:18.557940Z"
    }
   },
   "source": [
    "# First, let's import the main packages we'll need\n",
    "import matplotlib.pylab as plt\n",
    "import numpy as np\n",
    "import tidy3d as td"
   ],
   "outputs": [
    {
     "data": {
      "text/plain": [
       "\u001B[2;36m15:07:18 CET\u001B[0m\u001B[2;36m \u001B[0m\u001B[31mWARNING: Using canonical configuration directory at                \u001B[0m\n",
       "\u001B[2;36m             \u001B[0m\u001B[32m'/home/marco/.config/tidy3d'\u001B[0m\u001B[31m. Found legacy directory at            \u001B[0m\n",
       "\u001B[2;36m             \u001B[0m\u001B[32m'~/.tidy3d'\u001B[0m\u001B[31m, which will be ignored. Remove it manually or run      \u001B[0m\n",
       "\u001B[2;36m             \u001B[0m\u001B[32m'tidy3d config migrate --delete-legacy'\u001B[0m\u001B[31m to clean up.               \u001B[0m\n"
      ],
      "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\">15:07:18 CET </span><span style=\"color: #800000; text-decoration-color: #800000\">WARNING: Using canonical configuration directory at                </span>\n",
       "<span style=\"color: #7fbfbf; text-decoration-color: #7fbfbf\">             </span><span style=\"color: #008000; text-decoration-color: #008000\">'/home/marco/.config/tidy3d'</span><span style=\"color: #800000; text-decoration-color: #800000\">. Found legacy directory at            </span>\n",
       "<span style=\"color: #7fbfbf; text-decoration-color: #7fbfbf\">             </span><span style=\"color: #008000; text-decoration-color: #008000\">'~/.tidy3d'</span><span style=\"color: #800000; text-decoration-color: #800000\">, which will be ignored. Remove it manually or run      </span>\n",
       "<span style=\"color: #7fbfbf; text-decoration-color: #7fbfbf\">             </span><span style=\"color: #008000; text-decoration-color: #008000\">'tidy3d config migrate --delete-legacy'</span><span style=\"color: #800000; text-decoration-color: #800000\"> to clean up.               </span>\n",
       "</pre>\n"
      ]
     },
     "metadata": {},
     "output_type": "display_data",
     "jetTransient": {
      "display_id": null
     }
    }
   ],
   "execution_count": 1
  },
  {
   "cell_type": "markdown",
   "id": "acd56cab",
   "metadata": {},
   "source": [
    "## Basics\n",
    "\n",
    "A Tidy3D simulation is essentially a python class that combines many Tidy3D \"components\", which store the specification for how we will run the simulation on our servers.\n",
    "\n",
    "Here we will discuss some of the basics that apply to all of these components.\n",
    "\n",
    "Topics covered will include:\n",
    "\n",
    "- Defining Tidy3D components.\n",
    "\n",
    "- Saving and loading from file.\n",
    "\n",
    "- Getting help / debugging.\n",
    "\n",
    "- logging.\n",
    "\n",
    "### Background\n",
    "\n",
    "All Tidy3d components are defined using the [pydantic](https://pydantic-docs.helpmanual.io) package.  This means that each tidy3d object corresponds to a data structure that has rigidly defined allowable types and values, which get validated automatically whenever you initialize an object.\n",
    "\n",
    "This has several advantages, including.\n",
    "\n",
    "- Catching bugs in the tidy3d components as early as possible.\n",
    "\n",
    "- Automatically generated schema for tidy3d simulation specifications.\n",
    "\n",
    "- Simple and reliable IO, including exporting to various formats such as dictionaries or json.\n",
    "\n",
    "### Defining Tidy3d Components\n",
    "\n",
    "It also requires a bit more work on the user side to define these components, for example\n",
    "\n",
    "- All tidy3d components must use keyword arguments in their definitions, eg. `Medium(2.0)` becomes `Medium(permittivity=2.0)` to be explicit.\n",
    "\n",
    "- Components are immutable to avoid complications from not validating changes on components. This means modifying a component requires calling `new_obj = old_obj.updated_copy(val=new_val, ...)`.\n",
    "\n",
    "However, these decisions were made to make the overall use of Tidy3D more explicit and ensure that components are safely validated at all times, which pays off in the long run.\n",
    "\n",
    "Here's one example of what would happen if a user tried to pass fields (in this case, the relative permittivity of a medium) without using keyword arguments), followed by the correct way. We see that the positional argument construction fails. This is good practice in general to avoid bugs, but pydantic and Tidy3D require it."
   ]
  },
  {
   "cell_type": "code",
   "id": "19eab659",
   "metadata": {
    "ExecuteTime": {
     "end_time": "2025-10-29T14:07:19.828544Z",
     "start_time": "2025-10-29T14:07:19.826785Z"
    }
   },
   "source": [
    "# wrong way\n",
    "try:\n",
    "    td.Medium(2.0)\n",
    "except Exception as e:\n",
    "    td.log.info(e)\n",
    "\n",
    "# correct way\n",
    "m = td.Medium(permittivity=2.0)"
   ],
   "outputs": [],
   "execution_count": 2
  },
  {
   "cell_type": "markdown",
   "id": "8ee136f4",
   "metadata": {},
   "source": [
    "### Saving and Loading Tidy3d Components\n",
    "\n",
    "All tidy3d components can be saved to file as json or yaml format using the `instance.to_file(path)` and `class.from_file(path)` methods.\n",
    "\n",
    "For example, let's save and load a [td.Box](https://docs.flexcompute.com/projects/tidy3d/en/latest/api/_autosummary/tidy3d.Box.html) instance."
   ]
  },
  {
   "cell_type": "code",
   "id": "20e27567",
   "metadata": {
    "tags": [],
    "ExecuteTime": {
     "end_time": "2025-10-29T14:07:19.875881Z",
     "start_time": "2025-10-29T14:07:19.873575Z"
    }
   },
   "source": [
    "my_box = td.Box(center=(1, 2, 3), size=(2, 2, 3))\n",
    "\n",
    "my_box.to_file(\"data/box.json\")\n",
    "\n",
    "# note, `from_file` is a @classmethod so it can be called from `td.Box` or `my_box`.\n",
    "your_box = td.Box.from_file(\"data/box.json\")\n",
    "\n",
    "print(my_box)\n",
    "print(your_box)\n",
    "print(my_box == your_box)"
   ],
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "attrs={} type='Box' center=(1.0, 2.0, 3.0) size=(2.0, 2.0, 3.0)\n",
      "attrs={} type='Box' center=(1.0, 2.0, 3.0) size=(2.0, 2.0, 3.0)\n",
      "True\n"
     ]
    }
   ],
   "execution_count": 3
  },
  {
   "cell_type": "markdown",
   "id": "bcb67b0f-970d-44d9-82d3-2060ae4e9ec3",
   "metadata": {},
   "source": [
    "Similarly, the component can be converted to a `dict` or `str` in json format. Many other options exist and the [pydantic documentation](https://docs.pydantic.dev/usage/exporting_models/) is a good place to see what else is supported."
   ]
  },
  {
   "cell_type": "code",
   "id": "5c05d911-dfd0-4d5f-ba60-54eb59d2a041",
   "metadata": {
    "ExecuteTime": {
     "end_time": "2025-10-29T14:07:19.923343Z",
     "start_time": "2025-10-29T14:07:19.921866Z"
    }
   },
   "source": [
    "print(my_box.json())\n",
    "print(my_box.dict())"
   ],
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "{\"attrs\": {}, \"type\": \"Box\", \"center\": [1.0, 2.0, 3.0], \"size\": [2.0, 2.0, 3.0]}\n",
      "{'attrs': {}, 'type': 'Box', 'center': (1.0, 2.0, 3.0), 'size': (2.0, 2.0, 3.0)}\n"
     ]
    }
   ],
   "execution_count": 4
  },
  {
   "cell_type": "markdown",
   "id": "1f1b74db",
   "metadata": {},
   "source": [
    "### Getting Help\n",
    "\n",
    "Sometimes you might want to get some information about a component without needing to look at the documentation.  For this, each tidy3d component has a `.help()` method that will print out information about the stored data inside of the component.\n",
    "\n",
    "Here's an example."
   ]
  },
  {
   "cell_type": "code",
   "id": "b34de32a",
   "metadata": {
    "tags": [],
    "ExecuteTime": {
     "end_time": "2025-10-29T14:07:19.984331Z",
     "start_time": "2025-10-29T14:07:19.969485Z"
    }
   },
   "source": [
    "monitor = td.FieldMonitor(size=(2, 2, 0), freqs=[200e12], name=\"monitor\")\n",
    "\n",
    "monitor.help()"
   ],
   "outputs": [
    {
     "data": {
      "text/plain": [
       "\u001B[34m╭─\u001B[0m\u001B[34m───────────────────────────\u001B[0m\u001B[34m \u001B[0m\u001B[1;34m<\u001B[0m\u001B[1;95mclass\u001B[0m\u001B[39m \u001B[0m\u001B[32m'tidy3d.components.monitor.FieldMonitor'\u001B[0m\u001B[1;34m>\u001B[0m\u001B[34m \u001B[0m\u001B[34m───────────────────────────\u001B[0m\u001B[34m─╮\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[36m:class:`Monitor` that records electromagnetic fields in the frequency domain.\u001B[0m                            \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                                                                                          \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m╭──────────────────────────────────────────────────────────────────────────────────────────────────────╮\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[1;35mFieldMonitor\u001B[0m\u001B[1m(\u001B[0m                                                                                        \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   \u001B[0m\u001B[33mattrs\u001B[0m=\u001B[1m{\u001B[0m\u001B[1m}\u001B[0m,                                                                                        \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   \u001B[0m\u001B[33mtype\u001B[0m=\u001B[32m'FieldMonitor'\u001B[0m,                                                                             \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   \u001B[0m\u001B[33mcenter\u001B[0m=\u001B[1m(\u001B[0m\u001B[1;36m0.0\u001B[0m, \u001B[1;36m0.0\u001B[0m, \u001B[1;36m0.0\u001B[0m\u001B[1m)\u001B[0m,                                                                          \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   \u001B[0m\u001B[33msize\u001B[0m=\u001B[1m(\u001B[0m\u001B[1;36m2.0\u001B[0m, \u001B[1;36m2.0\u001B[0m, \u001B[1;36m0.0\u001B[0m\u001B[1m)\u001B[0m,                                                                            \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   \u001B[0m\u001B[33mname\u001B[0m=\u001B[32m'monitor'\u001B[0m,                                                                                  \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   \u001B[0m\u001B[33minterval_space\u001B[0m=\u001B[1m(\u001B[0m\u001B[1;36m1\u001B[0m, \u001B[1;36m1\u001B[0m, \u001B[1;36m1\u001B[0m\u001B[1m)\u001B[0m,                                                                        \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   \u001B[0m\u001B[33mcolocate\u001B[0m=\u001B[3;92mTrue\u001B[0m,                                                                                   \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   \u001B[0m\u001B[33mfreqs\u001B[0m=\u001B[1m(\u001B[0m\u001B[1;36m200000000000000.0\u001B[0m,\u001B[1m)\u001B[0m,                                                                      \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   \u001B[0m\u001B[33mapodization\u001B[0m=\u001B[1;35mApodizationSpec\u001B[0m\u001B[1m(\u001B[0m                                                                     \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   \u001B[0m\u001B[33mattrs\u001B[0m=\u001B[1m{\u001B[0m\u001B[1m}\u001B[0m,                                                                                    \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   \u001B[0m\u001B[33mstart\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                                                  \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   \u001B[0m\u001B[33mend\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                                                    \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   \u001B[0m\u001B[33mwidth\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                                                  \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   \u001B[0m\u001B[33mtype\u001B[0m=\u001B[32m'ApodizationSpec'\u001B[0m                                                                       \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   \u001B[0m\u001B[1m)\u001B[0m,                                                                                               \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   \u001B[0m\u001B[33mfields\u001B[0m=\u001B[1m(\u001B[0m\u001B[32m'Ex'\u001B[0m, \u001B[32m'Ey'\u001B[0m, \u001B[32m'Ez'\u001B[0m, \u001B[32m'Hx'\u001B[0m, \u001B[32m'Hy'\u001B[0m, \u001B[32m'Hz'\u001B[0m\u001B[1m)\u001B[0m                                                      \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[1m)\u001B[0m                                                                                                    \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m╰──────────────────────────────────────────────────────────────────────────────────────────────────────╯\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                                                                                          \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m     \u001B[3;33mapodization\u001B[0m = \u001B[1;35mApodizationSpec\u001B[0m\u001B[1m(\u001B[0m\u001B[33mattrs\u001B[0m=\u001B[1m{\u001B[0m\u001B[1m}\u001B[0m, \u001B[33mstart\u001B[0m=\u001B[3;35mNone\u001B[0m, \u001B[33mend\u001B[0m=\u001B[3;35mNone\u001B[0m, \u001B[33mwidth\u001B[0m=\u001B[3;35mNone\u001B[0m, \u001B[33mtype\u001B[0m=\u001B[32m'ApodizationSpec'\u001B[0m\u001B[1m)\u001B[0m    \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m           \u001B[3;33mattrs\u001B[0m = \u001B[1m{\u001B[0m\u001B[1m}\u001B[0m                                                                                     \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m    \u001B[3;33mbounding_box\u001B[0m = \u001B[1;35mBox\u001B[0m\u001B[1m(\u001B[0m\u001B[33mattrs\u001B[0m=\u001B[1m{\u001B[0m\u001B[1m}\u001B[0m, \u001B[33mtype\u001B[0m=\u001B[32m'Box'\u001B[0m, \u001B[33mcenter\u001B[0m=\u001B[1m(\u001B[0m\u001B[1;36m0.0\u001B[0m, \u001B[1;36m0.0\u001B[0m, \u001B[1;36m0.0\u001B[0m\u001B[1m)\u001B[0m, \u001B[33msize\u001B[0m=\u001B[1m(\u001B[0m\u001B[1;36m2.0\u001B[0m, \u001B[1;36m2.0\u001B[0m, \u001B[1;36m0.0\u001B[0m\u001B[1m)\u001B[0m\u001B[1m)\u001B[0m                \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m          \u001B[3;33mbounds\u001B[0m = \u001B[1m(\u001B[0m\u001B[1m(\u001B[0m\u001B[1;36m-1.0\u001B[0m, \u001B[1;36m-1.0\u001B[0m, \u001B[1;36m0.0\u001B[0m\u001B[1m)\u001B[0m, \u001B[1m(\u001B[0m\u001B[1;36m1.0\u001B[0m, \u001B[1;36m1.0\u001B[0m, \u001B[1;36m0.0\u001B[0m\u001B[1m)\u001B[0m\u001B[1m)\u001B[0m                                                   \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m          \u001B[3;33mcenter\u001B[0m = \u001B[1m(\u001B[0m\u001B[1;36m0.0\u001B[0m, \u001B[1;36m0.0\u001B[0m, \u001B[1;36m0.0\u001B[0m\u001B[1m)\u001B[0m                                                                        \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m        \u001B[3;33mcolocate\u001B[0m = \u001B[3;92mTrue\u001B[0m                                                                                   \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m          \u001B[3;33mfields\u001B[0m = \u001B[1m(\u001B[0m\u001B[32m'Ex'\u001B[0m, \u001B[32m'Ey'\u001B[0m, \u001B[32m'Ez'\u001B[0m, \u001B[32m'Hx'\u001B[0m, \u001B[32m'Hy'\u001B[0m, \u001B[32m'Hz'\u001B[0m\u001B[1m)\u001B[0m                                                   \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m           \u001B[3;33mfreqs\u001B[0m = \u001B[1m(\u001B[0m\u001B[1;36m200000000000000.0\u001B[0m,\u001B[1m)\u001B[0m                                                                   \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[3;33mfrequency_range\u001B[0m = \u001B[1m(\u001B[0m\u001B[1;36m200000000000000.0\u001B[0m, \u001B[1;36m200000000000000.0\u001B[0m\u001B[1m)\u001B[0m                                                 \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m        \u001B[3;33mgeometry\u001B[0m = \u001B[1;35mBox\u001B[0m\u001B[1m(\u001B[0m\u001B[33mattrs\u001B[0m=\u001B[1m{\u001B[0m\u001B[1m}\u001B[0m, \u001B[33mtype\u001B[0m=\u001B[32m'Box'\u001B[0m, \u001B[33mcenter\u001B[0m=\u001B[1m(\u001B[0m\u001B[1;36m0.0\u001B[0m, \u001B[1;36m0.0\u001B[0m, \u001B[1;36m0.0\u001B[0m\u001B[1m)\u001B[0m, \u001B[33msize\u001B[0m=\u001B[1m(\u001B[0m\u001B[1;36m2.0\u001B[0m, \u001B[1;36m2.0\u001B[0m, \u001B[1;36m0.0\u001B[0m\u001B[1m)\u001B[0m\u001B[1m)\u001B[0m                \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m  \u001B[3;33minterval_space\u001B[0m = \u001B[1m(\u001B[0m\u001B[1;36m1\u001B[0m, \u001B[1;36m1\u001B[0m, \u001B[1;36m1\u001B[0m\u001B[1m)\u001B[0m                                                                              \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m            \u001B[3;33mname\u001B[0m = \u001B[32m'monitor'\u001B[0m                                                                              \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m     \u001B[3;33mplot_params\u001B[0m = \u001B[1;35mPlotParams\u001B[0m\u001B[1m(\u001B[0m                                                                            \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                       \u001B[33mattrs\u001B[0m=\u001B[1m{\u001B[0m\u001B[1m}\u001B[0m,                                                                          \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                       \u001B[33malpha\u001B[0m=\u001B[1;36m0\u001B[0m\u001B[1;36m.4\u001B[0m,                                                                         \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                       \u001B[33mzorder\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                                       \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                       \u001B[33mtype\u001B[0m=\u001B[32m'PlotParams'\u001B[0m,                                                                 \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                       \u001B[33medgecolor\u001B[0m=\u001B[32m'orange'\u001B[0m,                                                                \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                       \u001B[33mfacecolor\u001B[0m=\u001B[32m'orange'\u001B[0m,                                                                \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                       \u001B[33mfill\u001B[0m=\u001B[3;92mTrue\u001B[0m,                                                                         \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                       \u001B[33mhatch\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                                        \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                       \u001B[33mlinewidth\u001B[0m=\u001B[1;36m3\u001B[0m\u001B[1;36m.0\u001B[0m                                                                      \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                   \u001B[1m)\u001B[0m                                                                                      \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m            \u001B[3;33msize\u001B[0m = \u001B[1m(\u001B[0m\u001B[1;36m2.0\u001B[0m, \u001B[1;36m2.0\u001B[0m, \u001B[1;36m0.0\u001B[0m\u001B[1m)\u001B[0m                                                                        \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m            \u001B[3;33mtype\u001B[0m = \u001B[32m'FieldMonitor'\u001B[0m                                                                         \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m       \u001B[3;33mzero_dims\u001B[0m = \u001B[1m[\u001B[0m\u001B[1;36m2\u001B[0m\u001B[1m]\u001B[0m                                                                                    \u001B[34m│\u001B[0m\n",
       "\u001B[34m╰──────────────────────────────────────────────────────────────────────────────────────────────────────────╯\u001B[0m\n"
      ],
      "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: #000080; text-decoration-color: #000080\">╭──────────────────────────── </span><span style=\"color: #000080; text-decoration-color: #000080; font-weight: bold\">&lt;</span><span style=\"color: #ff00ff; text-decoration-color: #ff00ff; font-weight: bold\">class</span><span style=\"color: #000000; text-decoration-color: #000000\"> </span><span style=\"color: #008000; text-decoration-color: #008000\">'tidy3d.components.monitor.FieldMonitor'</span><span style=\"color: #000080; text-decoration-color: #000080; font-weight: bold\">&gt;</span><span style=\"color: #000080; text-decoration-color: #000080\"> ────────────────────────────╮</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008080; text-decoration-color: #008080\">:class:`Monitor` that records electromagnetic fields in the frequency domain.</span>                            <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                                                                                          <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">╭──────────────────────────────────────────────────────────────────────────────────────────────────────╮</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">FieldMonitor</span><span style=\"font-weight: bold\">(</span>                                                                                        <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   </span><span style=\"color: #808000; text-decoration-color: #808000\">attrs</span>=<span style=\"font-weight: bold\">{}</span>,                                                                                        <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   </span><span style=\"color: #808000; text-decoration-color: #808000\">type</span>=<span style=\"color: #008000; text-decoration-color: #008000\">'FieldMonitor'</span>,                                                                             <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   </span><span style=\"color: #808000; text-decoration-color: #808000\">center</span>=<span style=\"font-weight: bold\">(</span><span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span><span style=\"font-weight: bold\">)</span>,                                                                          <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   </span><span style=\"color: #808000; text-decoration-color: #808000\">size</span>=<span style=\"font-weight: bold\">(</span><span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">2.0</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">2.0</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span><span style=\"font-weight: bold\">)</span>,                                                                            <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   </span><span style=\"color: #808000; text-decoration-color: #808000\">name</span>=<span style=\"color: #008000; text-decoration-color: #008000\">'monitor'</span>,                                                                                  <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   </span><span style=\"color: #808000; text-decoration-color: #808000\">interval_space</span>=<span style=\"font-weight: bold\">(</span><span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">1</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">1</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">1</span><span style=\"font-weight: bold\">)</span>,                                                                        <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   </span><span style=\"color: #808000; text-decoration-color: #808000\">colocate</span>=<span style=\"color: #00ff00; text-decoration-color: #00ff00; font-style: italic\">True</span>,                                                                                   <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   </span><span style=\"color: #808000; text-decoration-color: #808000\">freqs</span>=<span style=\"font-weight: bold\">(</span><span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">200000000000000.0</span>,<span style=\"font-weight: bold\">)</span>,                                                                      <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   </span><span style=\"color: #808000; text-decoration-color: #808000\">apodization</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">ApodizationSpec</span><span style=\"font-weight: bold\">(</span>                                                                     <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">attrs</span>=<span style=\"font-weight: bold\">{}</span>,                                                                                    <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">start</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                                                  <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">end</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                                                    <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">width</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                                                  <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">type</span>=<span style=\"color: #008000; text-decoration-color: #008000\">'ApodizationSpec'</span>                                                                       <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   </span><span style=\"font-weight: bold\">)</span>,                                                                                               <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   </span><span style=\"color: #808000; text-decoration-color: #808000\">fields</span>=<span style=\"font-weight: bold\">(</span><span style=\"color: #008000; text-decoration-color: #008000\">'Ex'</span>, <span style=\"color: #008000; text-decoration-color: #008000\">'Ey'</span>, <span style=\"color: #008000; text-decoration-color: #008000\">'Ez'</span>, <span style=\"color: #008000; text-decoration-color: #008000\">'Hx'</span>, <span style=\"color: #008000; text-decoration-color: #008000\">'Hy'</span>, <span style=\"color: #008000; text-decoration-color: #008000\">'Hz'</span><span style=\"font-weight: bold\">)</span>                                                      <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"font-weight: bold\">)</span>                                                                                                    <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">╰──────────────────────────────────────────────────────────────────────────────────────────────────────╯</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                                                                                          <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>     <span style=\"color: #808000; text-decoration-color: #808000; font-style: italic\">apodization</span> = <span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">ApodizationSpec</span><span style=\"font-weight: bold\">(</span><span style=\"color: #808000; text-decoration-color: #808000\">attrs</span>=<span style=\"font-weight: bold\">{}</span>, <span style=\"color: #808000; text-decoration-color: #808000\">start</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>, <span style=\"color: #808000; text-decoration-color: #808000\">end</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>, <span style=\"color: #808000; text-decoration-color: #808000\">width</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>, <span style=\"color: #808000; text-decoration-color: #808000\">type</span>=<span style=\"color: #008000; text-decoration-color: #008000\">'ApodizationSpec'</span><span style=\"font-weight: bold\">)</span>    <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>           <span style=\"color: #808000; text-decoration-color: #808000; font-style: italic\">attrs</span> = <span style=\"font-weight: bold\">{}</span>                                                                                     <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>    <span style=\"color: #808000; text-decoration-color: #808000; font-style: italic\">bounding_box</span> = <span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">Box</span><span style=\"font-weight: bold\">(</span><span style=\"color: #808000; text-decoration-color: #808000\">attrs</span>=<span style=\"font-weight: bold\">{}</span>, <span style=\"color: #808000; text-decoration-color: #808000\">type</span>=<span style=\"color: #008000; text-decoration-color: #008000\">'Box'</span>, <span style=\"color: #808000; text-decoration-color: #808000\">center</span>=<span style=\"font-weight: bold\">(</span><span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span><span style=\"font-weight: bold\">)</span>, <span style=\"color: #808000; text-decoration-color: #808000\">size</span>=<span style=\"font-weight: bold\">(</span><span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">2.0</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">2.0</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span><span style=\"font-weight: bold\">))</span>                <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>          <span style=\"color: #808000; text-decoration-color: #808000; font-style: italic\">bounds</span> = <span style=\"font-weight: bold\">((</span><span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">-1.0</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">-1.0</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span><span style=\"font-weight: bold\">)</span>, <span style=\"font-weight: bold\">(</span><span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">1.0</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">1.0</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span><span style=\"font-weight: bold\">))</span>                                                   <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>          <span style=\"color: #808000; text-decoration-color: #808000; font-style: italic\">center</span> = <span style=\"font-weight: bold\">(</span><span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span><span style=\"font-weight: bold\">)</span>                                                                        <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>        <span style=\"color: #808000; text-decoration-color: #808000; font-style: italic\">colocate</span> = <span style=\"color: #00ff00; text-decoration-color: #00ff00; font-style: italic\">True</span>                                                                                   <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>          <span style=\"color: #808000; text-decoration-color: #808000; font-style: italic\">fields</span> = <span style=\"font-weight: bold\">(</span><span style=\"color: #008000; text-decoration-color: #008000\">'Ex'</span>, <span style=\"color: #008000; text-decoration-color: #008000\">'Ey'</span>, <span style=\"color: #008000; text-decoration-color: #008000\">'Ez'</span>, <span style=\"color: #008000; text-decoration-color: #008000\">'Hx'</span>, <span style=\"color: #008000; text-decoration-color: #008000\">'Hy'</span>, <span style=\"color: #008000; text-decoration-color: #008000\">'Hz'</span><span style=\"font-weight: bold\">)</span>                                                   <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>           <span style=\"color: #808000; text-decoration-color: #808000; font-style: italic\">freqs</span> = <span style=\"font-weight: bold\">(</span><span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">200000000000000.0</span>,<span style=\"font-weight: bold\">)</span>                                                                   <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #808000; text-decoration-color: #808000; font-style: italic\">frequency_range</span> = <span style=\"font-weight: bold\">(</span><span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">200000000000000.0</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">200000000000000.0</span><span style=\"font-weight: bold\">)</span>                                                 <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>        <span style=\"color: #808000; text-decoration-color: #808000; font-style: italic\">geometry</span> = <span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">Box</span><span style=\"font-weight: bold\">(</span><span style=\"color: #808000; text-decoration-color: #808000\">attrs</span>=<span style=\"font-weight: bold\">{}</span>, <span style=\"color: #808000; text-decoration-color: #808000\">type</span>=<span style=\"color: #008000; text-decoration-color: #008000\">'Box'</span>, <span style=\"color: #808000; text-decoration-color: #808000\">center</span>=<span style=\"font-weight: bold\">(</span><span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span><span style=\"font-weight: bold\">)</span>, <span style=\"color: #808000; text-decoration-color: #808000\">size</span>=<span style=\"font-weight: bold\">(</span><span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">2.0</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">2.0</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span><span style=\"font-weight: bold\">))</span>                <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>  <span style=\"color: #808000; text-decoration-color: #808000; font-style: italic\">interval_space</span> = <span style=\"font-weight: bold\">(</span><span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">1</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">1</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">1</span><span style=\"font-weight: bold\">)</span>                                                                              <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>            <span style=\"color: #808000; text-decoration-color: #808000; font-style: italic\">name</span> = <span style=\"color: #008000; text-decoration-color: #008000\">'monitor'</span>                                                                              <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>     <span style=\"color: #808000; text-decoration-color: #808000; font-style: italic\">plot_params</span> = <span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">PlotParams</span><span style=\"font-weight: bold\">(</span>                                                                            <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                       <span style=\"color: #808000; text-decoration-color: #808000\">attrs</span>=<span style=\"font-weight: bold\">{}</span>,                                                                          <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                       <span style=\"color: #808000; text-decoration-color: #808000\">alpha</span>=<span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.4</span>,                                                                         <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                       <span style=\"color: #808000; text-decoration-color: #808000\">zorder</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                                       <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                       <span style=\"color: #808000; text-decoration-color: #808000\">type</span>=<span style=\"color: #008000; text-decoration-color: #008000\">'PlotParams'</span>,                                                                 <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                       <span style=\"color: #808000; text-decoration-color: #808000\">edgecolor</span>=<span style=\"color: #008000; text-decoration-color: #008000\">'orange'</span>,                                                                <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                       <span style=\"color: #808000; text-decoration-color: #808000\">facecolor</span>=<span style=\"color: #008000; text-decoration-color: #008000\">'orange'</span>,                                                                <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                       <span style=\"color: #808000; text-decoration-color: #808000\">fill</span>=<span style=\"color: #00ff00; text-decoration-color: #00ff00; font-style: italic\">True</span>,                                                                         <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                       <span style=\"color: #808000; text-decoration-color: #808000\">hatch</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                                        <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                       <span style=\"color: #808000; text-decoration-color: #808000\">linewidth</span>=<span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">3.0</span>                                                                      <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                   <span style=\"font-weight: bold\">)</span>                                                                                      <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>            <span style=\"color: #808000; text-decoration-color: #808000; font-style: italic\">size</span> = <span style=\"font-weight: bold\">(</span><span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">2.0</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">2.0</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span><span style=\"font-weight: bold\">)</span>                                                                        <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>            <span style=\"color: #808000; text-decoration-color: #808000; font-style: italic\">type</span> = <span style=\"color: #008000; text-decoration-color: #008000\">'FieldMonitor'</span>                                                                         <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>       <span style=\"color: #808000; text-decoration-color: #808000; font-style: italic\">zero_dims</span> = <span style=\"font-weight: bold\">[</span><span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">2</span><span style=\"font-weight: bold\">]</span>                                                                                    <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span>\n",
       "</pre>\n"
      ]
     },
     "metadata": {},
     "output_type": "display_data",
     "jetTransient": {
      "display_id": null
     }
    }
   ],
   "execution_count": 5
  },
  {
   "cell_type": "markdown",
   "id": "096ee0ec-5a39-4143-9c29-a5bb086efbe8",
   "metadata": {},
   "source": [
    "Alternatively, one can use the standard `help(cls)` syntax to get a look at the docstring of a component."
   ]
  },
  {
   "cell_type": "code",
   "id": "c21b0749-9ab2-489e-b4a4-d977f3ff9dd1",
   "metadata": {
    "ExecuteTime": {
     "end_time": "2025-10-29T14:07:20.029009Z",
     "start_time": "2025-10-29T14:07:20.027682Z"
    }
   },
   "source": [
    "# help(td.FieldMonitor) # commented out for brevity\n"
   ],
   "outputs": [],
   "execution_count": 6
  },
  {
   "cell_type": "markdown",
   "id": "fb0ac2bf-984a-472f-8a01-b886ffe9a18e",
   "metadata": {},
   "source": [
    "### Logging\n",
    "\n",
    "Tidy3D logs information based on the following levels ranked from least to most critical.\n",
    "```\n",
    "\"DEBUG\"\n",
    "\"INFO\"\n",
    "\"WARNING\"\n",
    "\"ERROR\"\n",
    "\"CRITICAL\"\n",
    "```\n",
    "The \"logging level\" controls what types of messages get shown. The default logging level is `\"WARNING\"`, which means logging messages of \"warning\" or more critical (\"error\", \"critical\") will be shown, whereas \"info\" and \"debug\" messages will not. The \"info\" and \"debug\" messages are sometimes useful for the user, but are mainly for debugging purposes.\n",
    "\n",
    "The user can change this logging level through modifying the `tidy3d.config.logging.level` value, for example\n",
    "```\n",
    "tidy3d.config.logging.level = \"INFO\"\n",
    "```\n",
    "will make it so that \"info\" messages are shown in addition to the \"warning\", \"error\", and \"critical\" messages."
   ]
  },
  {
   "cell_type": "markdown",
   "id": "d91a3920",
   "metadata": {},
   "source": [
    "## Core Components\n",
    "\n",
    "Here we will discuss the core components of the package (sources, monitors, etc) and how they are defined.\n",
    "\n",
    "Topics covered will include:\n",
    "\n",
    "- Mediums.\n",
    "\n",
    "- Geometries.\n",
    "\n",
    "- Structures.\n",
    "\n",
    "- Sources.\n",
    "\n",
    "- Monitors.\n",
    "\n",
    "- Modes.\n",
    "\n",
    "- PML / Absorbing boundaries.\n",
    "\n",
    "- Simulations."
   ]
  },
  {
   "cell_type": "markdown",
   "id": "c09c862b",
   "metadata": {},
   "source": [
    "### Mediums\n",
    "\n",
    "Mediums define the optical properties of the materials within the simulation.\n",
    "\n",
    "#### PEC\n",
    "The simplest medium is `td.PEC`, which just signifies a perfect electrical conductor (no E field allowed within)."
   ]
  },
  {
   "cell_type": "code",
   "id": "a197e0c0",
   "metadata": {
    "tags": [],
    "ExecuteTime": {
     "end_time": "2025-10-29T14:07:20.073403Z",
     "start_time": "2025-10-29T14:07:20.072013Z"
    }
   },
   "source": [
    "pec_medium = td.PEC"
   ],
   "outputs": [],
   "execution_count": 7
  },
  {
   "cell_type": "markdown",
   "id": "345d55ad",
   "metadata": {},
   "source": [
    "#### Non-dispersive mediums\n",
    "Non-dispersive mediums are defined using the [Medium](https://docs.flexcompute.com/projects/tidy3d/en/latest/api/_autosummary/tidy3d.Medium.html) object and can be specified by either `permittivity` and `conductivity` (optional) values, or from `n`, `k` refractive index values."
   ]
  },
  {
   "cell_type": "code",
   "id": "6bde0e4e",
   "metadata": {
    "tags": [],
    "ExecuteTime": {
     "end_time": "2025-10-29T14:07:20.118107Z",
     "start_time": "2025-10-29T14:07:20.116464Z"
    }
   },
   "source": [
    "lossless_dielectric = td.Medium(permittivity=4.0)\n",
    "lossy_dielectric = td.Medium(permittivity=4.0, conductivity=1.0)\n",
    "lossy_dielectric_from_nk = td.Medium.from_nk(n=2.0, k=0.1, freq=150e12)"
   ],
   "outputs": [],
   "execution_count": 8
  },
  {
   "cell_type": "markdown",
   "id": "598daf38",
   "metadata": {},
   "source": [
    "#### Anisotropic mediums\n",
    "\n",
    "Tidy3d supports fully anisotropic mediums, but in this example, we will show how to model diagonally anisotropic mediums. See [this tutorial](../notebooks/FullyAnisotropic.html) for the complete guide.\n",
    "\n",
    "Diagonally anisotropic mediums can be simply defined by specifying three [Medium](https://docs.flexcompute.com/projects/tidy3d/en/latest/api/_autosummary/tidy3d.Medium.html) objects for the xx, yy, zz components of the permittivity / conductivity tensor.\n"
   ]
  },
  {
   "cell_type": "code",
   "id": "e7a92005",
   "metadata": {
    "tags": [],
    "ExecuteTime": {
     "end_time": "2025-10-29T14:07:20.162943Z",
     "start_time": "2025-10-29T14:07:20.161365Z"
    }
   },
   "source": [
    "anisotropic_medium = td.AnisotropicMedium(\n",
    "    xx=lossless_dielectric, yy=lossy_dielectric, zz=lossy_dielectric_from_nk\n",
    ")"
   ],
   "outputs": [],
   "execution_count": 9
  },
  {
   "cell_type": "markdown",
   "id": "84b4fca5",
   "metadata": {},
   "source": [
    "#### Dispersive mediums\n",
    "\n",
    "Dispersive mediums can be defined in three ways:\n",
    "\n",
    "- Imported from our [material_library](https://docs.flexcompute.com/projects/tidy3d/en/latest/api/material_library.html).\n",
    "\n",
    "- Defined directly by specifying the parameters in the various supplied dispersive models.\n",
    "\n",
    "- Fitted to optical n-k data using the dispersion fitting tool plugin (more info later)."
   ]
  },
  {
   "cell_type": "code",
   "id": "43618ec5",
   "metadata": {
    "tags": [],
    "ExecuteTime": {
     "end_time": "2025-10-29T14:07:20.207333Z",
     "start_time": "2025-10-29T14:07:20.205458Z"
    }
   },
   "source": [
    "# material library\n",
    "silver = td.material_library[\"Ag\"]\n",
    "silver_variants = silver.variants\n",
    "print(\"variants for silver include: \", list(silver_variants.keys()))\n",
    "silver = silver_variants[\"JohnsonChristy1972\"]\n",
    "\n",
    "# models\n",
    "lorentz_model = td.Lorentz(eps_inf=2.0, coeffs=[(1, 2, 3), (4, 5, 6)])\n",
    "sellmeier_model = td.Sellmeier(coeffs=[(1, 2), (3, 4)])"
   ],
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "variants for silver include:  ['Rakic1998BB', 'JohnsonChristy1972', 'RakicLorentzDrude1998', 'Yang2015Drude']\n"
     ]
    }
   ],
   "execution_count": 10
  },
  {
   "cell_type": "markdown",
   "id": "1c95eada",
   "metadata": {},
   "source": [
    "### Medium Methods\n",
    "\n",
    "The complex-valued permittivity of a medium at a given frequency can be sampled using the `.eps_model(freq)` method.\n",
    "\n",
    "And the n, k values can be plotted over a frequency range using the `.plot(freqs)` method."
   ]
  },
  {
   "cell_type": "code",
   "id": "789f0ac9",
   "metadata": {
    "tags": [],
    "ExecuteTime": {
     "end_time": "2025-10-29T14:07:20.354676Z",
     "start_time": "2025-10-29T14:07:20.253324Z"
    }
   },
   "source": [
    "freqs_hz = 1e12 * np.linspace(50, 200, 1001)\n",
    "print(f\"complex relative permittivity at freqs_hz = \\n\\t {lossy_dielectric.eps_model(freqs_hz)}\\n\")\n",
    "\n",
    "ax = lossy_dielectric_from_nk.plot(freqs_hz)"
   ],
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "complex relative permittivity at freqs_hz = \n",
      "\t [4.+359.50207169j 4.+358.42679132j 4.+357.35792415j ... 4. +90.01053372j\n",
      " 4. +89.94297515j 4. +89.87551792j]\n",
      "\n"
     ]
    },
    {
     "data": {
      "text/plain": [
       "<Figure size 640x480 with 1 Axes>"
      ],
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAnYAAAHWCAYAAAD6oMSKAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjYsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvq6yFwwAAAAlwSFlzAAAPYQAAD2EBqD+naQAAULVJREFUeJzt3Xd4VFXCx/HfzCSZJEASSkiRAKEL0hYkBguokYAsghVZlSLg6y6oGCuuFJV3I64gKixZFATX7qtiB5EqgrA0FQvN0EkAJRkSSJ37/jHJJJMCGUjj5vt5nvvM3HPPPfecE4y/3DJjMQzDEAAAAC541pruAAAAACoHwQ4AAMAkCHYAAAAmQbADAAAwCYIdAACASRDsAAAATIJgBwAAYBIEOwAAAJMg2AEAAJgEwQ5AjbNYLJo6dap7feHChbJYLNq7d2+N9amiWrZsqZEjR7rXV61aJYvFolWrVtVYnyrD1KlTZbFYarobALxEsAMAADAJgh2AWueuu+7S6dOn1aJFi5ruiteuuuoqnT59WldddVVNd+W8PPnkkzp9+nRNdwOAl3xqugMAUJLNZpPNZqvpbpwTq9Uqf3//mu5GmbKysuTn5yer9ex/0/v4+MjHh/9FABcaztgBdVzhvVQ7d+7UnXfeqeDgYIWGhmrSpEkyDEMHDhzQ4MGDFRQUpPDwcM2YMaNUG9nZ2ZoyZYratGkju92uqKgoPfroo8rOzi5V78EHH1RoaKgaNGigG264QQcPHizVXln32JW8D69QyXvcCvddu3at7r//foWGhiokJET/8z//o5ycHKWlpWn48OFq2LChGjZsqEcffVSGYZx1ngzD0LRp09SsWTMFBgbq6quv1k8//VSqXln32O3atUs333yzwsPD5e/vr2bNmun2229Xenq6x/jGjx+vN998U+3bt5e/v7969OihNWvWlDrGoUOHdPfddyssLEx2u12dOnXSggULyuzHO++8oyeffFIXXXSRAgMD5XA4lJubq6eeekpt27aVv7+/GjdurCuuuELLli1z71/WPXZ5eXl65pln1Lp1a9ntdrVs2VJPPPFEqZ9zy5Yt9ec//1lr165Vr1695O/vr1atWun1118/6zwDOD/8OQZAkjR06FBdfPHFevbZZ/X5559r2rRpatSokf7973/rmmuu0fTp0/Xmm2/q4Ycf1qWXXuq+1Oh0OnXDDTdo7dq1uueee3TxxRfrxx9/1AsvvKCdO3dq8eLF7mOMGTNGb7zxhv7yl7+od+/eWrFihQYOHFgl47nvvvsUHh6up556St99953mzZunkJAQrVu3Ts2bN9c//vEPffHFF/rnP/+pSy65RMOHDz9je5MnT9a0adN0/fXX6/rrr9eWLVvUr18/5eTknHG/nJwcxcfHKzs7292nQ4cO6bPPPlNaWpqCg4PddVevXq13331X999/v+x2u/71r3+pf//+2rhxoy655BJJUmpqqi677DJ3EAwNDdWXX36p0aNHy+FwaMKECR7Hf+aZZ+Tn56eHH35Y2dnZ8vPz09SpU5WYmKgxY8aoV69ecjgc2rRpk7Zs2aLrrruu3LGMGTNGixYt0i233KKHHnpIGzZsUGJion755Rd99NFHHnV3796tW265RaNHj9aIESO0YMECjRw5Uj169FCnTp3OOGcAzoMBoE6bMmWKIcm455573GV5eXlGs2bNDIvFYjz77LPu8hMnThgBAQHGiBEj3GX/+c9/DKvVanzzzTce7SYlJRmSjG+//dYwDMPYtm2bIcn429/+5lHvL3/5iyHJmDJlirvstddeMyQZycnJ7rKSdQq1aNHCoz+F+8bHxxtOp9NdHhsba1gsFuPee+8tNc4+ffqcaYqMo0ePGn5+fsbAgQM92nziiScMSR7HX7lypSHJWLlypWEYhrF161ZDkvH++++f8RiSDEnGpk2b3GX79u0z/P39jRtvvNFdNnr0aCMiIsI4fvy4x/633367ERwcbJw6dcqjH61atXKXFeratasxcODAM/an8N9FocKf35gxYzzqPfzww4YkY8WKFe6yFi1aGJKMNWvWuMuOHj1q2O1246GHHjrjcQGcHy7FApDkOhtTyGazqWfPnjIMQ6NHj3aXh4SEqH379vrtt9/cZe+//74uvvhidejQQcePH3cv11xzjSRp5cqVkqQvvvhCknT//fd7HLfkGabKMnr0aI9LiTExMaXGUzjO4uMpy9dff62cnBzdd999Hm1WpO+FZ+SWLl2qU6dOnbFubGysevTo4V5v3ry5Bg8erKVLlyo/P1+GYeiDDz7QoEGDZBiGx3zHx8crPT1dW7Zs8WhzxIgRCggI8CgLCQnRTz/9pF27dp21/4UKf34JCQke5Q899JAk6fPPP/co79ixo6688kr3emhoaKl/OwAqH8EOgCRXiCguODhY/v7+atKkSanyEydOuNd37dqln376SaGhoR5Lu3btJElHjx6VJO3bt09Wq1WtW7f2aK99+/ZVMZwyxyNJUVFRpcqLj6cs+/btkyS1bdvWozw0NFQNGzY8477R0dFKSEjQq6++qiZNmig+Pl5z5szxuL+uUMn2Jaldu3Y6deqUjh07pmPHjiktLU3z5s0rNd+jRo2SVDTfxY9f0tNPP620tDS1a9dOnTt31iOPPKIffvjhrHNgtVrVpk0bj/Lw8HCFhIS456hQyfmXpIYNG551rgGcH+6xAyBJZT6FWt6TqUaxhw2cTqc6d+6smTNnllm3ZJCqbPn5+WWWl9f3ssqNCjw8cT5mzJihkSNH6uOPP9ZXX32l+++/X4mJifruu+/UrFmzCrfjdDolSXfeeadGjBhRZp0uXbp4rJc8Wye5PpJlz5497v68+uqreuGFF5SUlORx5rYsFf3Q4or82wFQ+Qh2AM5L69at9f333+vaa6894//0W7RoIafTqT179nicpduxY0eFjtOwYUOlpaV5lOXk5OjIkSPn1G9vFH6e3q5du9SqVSt3+bFjxyp8Bqpz587q3LmznnzySa1bt06XX365kpKSNG3aNHedsi6N7ty5U4GBgQoNDZUkNWjQQPn5+YqLizufIalRo0YaNWqURo0apYyMDF111VWaOnVqucGu8Oe3a9cuXXzxxe7y1NRUpaWlXZCfOQiYEZdiAZyX2267TYcOHdIrr7xSatvp06eVmZkpSRowYIAk6aWXXvKoM2vWrAodp3Xr1qU++mPevHnlnrGrTHFxcfL19dXLL7/sccapIn13OBzKy8vzKOvcubOsVmupjwlZv369xz1yBw4c0Mcff6x+/fq5P9vv5ptv1gcffKDt27eXOtaxY8cqNJ7ff//dY71+/fpq06ZNqf4Ud/3110sqPebCM7VV9XQzAO9wxg7Aebnrrrv03nvv6d5779XKlSt1+eWXKz8/X7/++qvee+89LV26VD179lS3bt00bNgw/etf/1J6erp69+6t5cuXa/fu3RU6zpgxY3Tvvffq5ptv1nXXXafvv/9eS5cuLXUPYFUIDQ3Vww8/rMTERP35z3/W9ddfr61bt+rLL7886/FXrFih8ePH69Zbb1W7du2Ul5en//znP+6QVtwll1yi+Ph4j487kaSnnnrKXefZZ5/VypUrFRMTo7Fjx6pjx476448/tGXLFn399df6448/zjqejh07qm/fvurRo4caNWqkTZs26f/+7/80fvz4cvfp2rWrRowYoXnz5iktLU19+vTRxo0btWjRIg0ZMkRXX331WY8LoOoR7ACcF6vVqsWLF+uFF17Q66+/ro8++kiBgYFq1aqVHnjgAfdDFJK0YMEChYaG6s0339TixYt1zTXX6PPPP6/QfXhjx45VcnKy5s+fryVLlujKK6/UsmXLdO2111bl8NymTZsmf39/JSUluYPVV199ddYzVV27dlV8fLw+/fRTHTp0SIGBgeratau+/PJLXXbZZR51+/Tpo9jYWD311FPav3+/OnbsqIULF3rcNxcWFqaNGzfq6aef1ocffqh//etfaty4sTp16qTp06dXaCz333+/PvnkE3311VfKzs5WixYtNG3aND3yyCNn3O/VV19Vq1attHDhQn300UcKDw/XxIkTNWXKlAodF0DVsxjcyQoANc5isWjcuHGaPXt2TXcFwAWMe+wAAABMgmAHAABgEgQ7AAAAk+DhCQCoBbjdGUBl4IwdAACASRDsAAAATMIUl2KdTqcOHz6sBg0aVPh7DAEAAC4EhmHo5MmTioyMlNV65nNypgh2hw8frvIvGgcAAKhJBw4cULNmzc5YxxTBrkGDBpJcAw4KCqrh3gAAAFQeh8OhqKgod945E1MEu8LLr0FBQQQ7AABgShW53YyHJwAAAEyCYAcAAGASBDsAAACTINgBAACYBMEOAADAJAh2AAAAJkGwAwAAMAmCHQAAgEkQ7AAAAEyCYAcAAGASBDsAAACTINgBAACYBMEOAADAJHxqugMXkl8O7dHJ0xny97MrwM/fY/H38ZPVSk4GAAA1x6tgl5iYqA8//FC//vqrAgIC1Lt3b02fPl3t27c/437vv/++Jk2apL1796pt27aaPn26rr/+evd2wzA0ZcoUvfLKK0pLS9Pll1+uuXPnqm3btuc2qiry/Gev6vOtK8vd7u9rV0CJ0Fd+mb/8ff1k9/GTn4+f/Hx9C977yu4uL15mL1j3lZ+vn+weZX6yWCzVOBMAAKA28irYrV69WuPGjdOll16qvLw8PfHEE+rXr59+/vln1atXr8x91q1bp2HDhikxMVF//vOf9dZbb2nIkCHasmWLLrnkEknSc889p5deekmLFi1S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ZikzM1OjRo2qhCECAADUjHbt2mnlypXq27evfHx8NGvWrCo9ntfBbtOmTbr66qvd64X3uo0YMUILFy7UkSNHtH//fvf26Ohoff7553rwwQf14osvqlmzZnr11VcVHx/vrjN06FAdO3ZMkydPVkpKirp166YlS5aUeqACAADgQtO+fXutWLFCffv2lc1m04wZM6rsWBbDMIwqa72aOBwOBQcHKz09XUFBQTXdHQAAUAmysrKUnJys6Oho+fv713R3qtSZxupNzuG7YgEAAEyCYAcAAGASBDsAAACTINgBAACYBMEOAADAJAh2AACgVjPBB3icVWWNkWAHAABqJV9fX0nSqVOnargnVa9wjIVjPldV/l2xAAAA58JmsykkJERHjx6VJAUGBlbL961WJ8MwdOrUKR09elQhISGy2Wzn1R7BDgAA1Frh4eGS5A53ZhUSEuIe6/kg2AEAgFrLYrEoIiJCTZs2VW5ubk13p0r4+vqe95m6QgQ7AABQ69lstkoLP2bGwxMAAAAmQbADAAAwCYIdAACASRDsAAAATIJgBwAAYBIEOwAAAJMg2AEAAJgEwQ4AAMAkCHYAAAAmQbADAAAwCYIdAACASRDsAAAATIJgBwAAYBIEOwAAAJMg2AEAAJgEwQ4AAMAkCHYAAAAmQbADAAAwCYIdAACASRDsAAAATIJgBwAAYBIEOwAAAJM4p2A3Z84ctWzZUv7+/oqJidHGjRvLrdu3b19ZLJZSy8CBA911Ro4cWWp7//79z6VrAAAAdZaPtzu8++67SkhIUFJSkmJiYjRr1izFx8drx44datq0aan6H374oXJyctzrv//+u7p27apbb73Vo17//v312muvudftdru3XQMAAKjTvD5jN3PmTI0dO1ajRo1Sx44dlZSUpMDAQC1YsKDM+o0aNVJ4eLh7WbZsmQIDA0sFO7vd7lGvYcOG5zYiAACAOsqrYJeTk6PNmzcrLi6uqAGrVXFxcVq/fn2F2pg/f75uv/121atXz6N81apVatq0qdq3b6+//vWv+v33373pGgAAQJ3n1aXY48ePKz8/X2FhYR7lYWFh+vXXX8+6/8aNG7V9+3bNnz/fo7x///666aabFB0drT179uiJJ57QgAEDtH79etlstlLtZGdnKzs7273ucDi8GQYAAIApeX2P3fmYP3++OnfurF69enmU33777e73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P368mjVrpoCAAHXs2FFJSUkedcw2J4mJibr00kvVoEEDNW3aVEOGDNGOHTs86lRkzPv379fAgQMVGBiopk2b6pFHHlFeXl6V959gV4udOHFCl19+uXx9ffXll1/q559/1owZM9SwYUN3neeee04vvfSSkpKStGHDBtWrV0/x8fHKysqqwZ5XnenTp2vu3LmaPXu2fvnlF02fPl3PPfecXn75ZXcds89JZmamunbtqjlz5pS5vSLjv+OOO/TTTz9p2bJl+uyzz7RmzRrdc8891TWESnemOTl16pS2bNmiSZMmacuWLfrwww+1Y8cO3XDDDR716tKcFPfRRx/pu+++U2RkZKltdW1O9uzZoyuuuEIdOnTQqlWr9MMPP2jSpEny9/d313nwwQf16aef6v3339fq1at1+PBh3XTTTdU1hEp3tjlJSEjQkiVL9MYbb+iXX37RhAkTNH78eH3yySfuOmabk9WrV2vcuHH67rvvtGzZMuXm5qpfv37KzMx01znbmPPz8zVw4EDl5ORo3bp1WrRokRYuXKjJkydX/QAq/IWsqHaPPfaYccUVV5S73el0GuHh4cY///lPd1laWppht9uNt99+uzq6WO0GDhxo3H333R5lN910k3HHHXcYhlH35kSS8dFHH7nXKzL+n3/+2ZBk/Pe//3XX+fLLLw2LxWIcOnSo2vpeVUrOSVk2btxoSDL27dtnGEbdnZODBw8aF110kbF9+3ajRYsWxgsvvODeVhfnZOjQocadd95Z7j5paWmGr6+v8f7777vLfvnlF0OSsX79+qrqarUpa046depkPP300x5lf/rTn4y///3vhmGYf04MwzCOHj1qSDJWr15tGEbFxvzFF18YVqvVSElJcdeZO3euERQUZGRnZ1dpfzljV4t98skn6tmzp2699VY1bdpU3bt31yuvvOLenpycrJSUFMXFxbnLgoODFRMTo/Xr19dEl6tc7969tXz5cu3cuVOS9P3332vt2rUaMGCApLo5J8VVZPzr169XSEiIevbs6a4TFxcnq9WqDRs2VHufa0J6erosFotCQkIk1c05cTqduuuuu/TII4+oU6dOpbbXtTlxOp36/PPP1a5dO8XHx6tp06aKiYnxuDS5efNm5ebmevz31aFDBzVv3ty0v1969+6tTz75RIcOHZJhGFq5cqV27typfv36Saobc5Keni5J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TQDVj2AHoMqMHDlS9913n/bv3y+LxaKWLVtKkvr27avx48drwoQJatKkieLj4yVJ27dv14ABA1S/fn2FhYXprrvu0vHjx93tZWZmavjw4apfv74iIiI0Y8YM9e3bVxMmTHDXsVgsWrx4sUc/QkJCtHDhQvf6gQMHdNtttykkJESNGjXS4MGDtXfvXo9+DxkyRM8//7wiIiLUuHFjjRs3Trm5ue462dnZeuyxxxQVFSW73a42bdpo/vz5MgxDbdq00fPPP+/Rh23btslisWj37t1lztXmzZu1Z88eDRw4UJIUEBCg8PBw9+Ln56fAwECPMpvNVtEfhUaOHFnmWb9Vq1ZJkmw2m66//nq98847FW4TQO1DsANQZV588UU9/fTTatasmY4cOaL//ve/7m2LFi2Sn5+fvv32WyUlJSktLU3XXHONunfvrk2bNmnJkiVKTU3Vbbfd5t7nkUce0erVq/Xxxx/rq6++0qpVq7Rlyxav+pSbm6v4+Hg1aNBA33zzjb799lvVr19f/fv39zhzuHLlSu3Zs0crV67UokWLtHDhQo9wOHz4cL399tt66aWX9Msvv+jf//636tevL4vForvvvluvvfaax3Ffe+01XXXVVWrTpk2Z/frmm2/Url07NWjQwKvxVNSLL77ocbbvgQceUNOmTdWhQwd3nV69eumbb76pkuMDqB6lr4kAQCUJDg5WgwYNZLPZFB4e7rGtbdu2eu6559zr06ZNU/fu3fWPf/zDXbZgwQJFRUVp586dioyM1Pz58/XGG2/o2muvleQKh82aNfOqT++++66cTqdeffVVWSwWSa7QFRISolWrVqlfv36SpIYNG2r27Nmy2Wzq0KGDBg4cqOXLl2vs2LHauXOn3nvvPS1btkxxcXGSpFatWrmPMXLkSE2ePFkbN25Ur169lJubq7feeqvUWbzi9u3bp8jISK/GUujHH39U/fr1PcoMw/BYDw4OVnBwsCTpww8/1L///W99/fXXHj+XyMhIHThwQE6nU1Yrf/cDFyKCHYAa0aNHD4/177//XitXriwVUCTXfXqnT59WTk6OYmJi3OWNGjVS+/btvTru999/r927d5c6M5aVlaU9e/a41zt16uRxqTMiIkI//vijJNdlVZvNpj59+pR5jMjISA0cOFALFixQr1699Omnnyo7O1u33npruf06ffq0/P39vRpLofbt2+uTTz7xKDt06JD69u1bqu7WrVt11113afbs2br88ss9tgUEBMjpdCo7O1sBAQHn1BcANYtgB6BG1KtXz2M9IyNDgwYN0vTp00vVjYiIKPfetJIsFkups1XF743LyMhQjx499Oabb5baNzQ01P3e19e3VLuFT4xWJPSMGTNGd911l1544QW99tprGjp0qAIDA8ut36RJE3dw9Jafn1+pS7xlPaSSkpKiG264QWPGjHE/pFHcH3/8oXr16hHqgAsYwQ5ArfCnP/1JH3zwgVq2bFlmKGndurV8fX21YcMGNW/eXJJ04sQJ7dy50+PMWWhoqI4cOeJe37Vrl06dOuVxnHfffVdNmzZVUFDQOfW1c+fOcjqdWr16tftSbEnXX3+96tWrp7lz52rJkiVas2bNGdvs3r275s6dK8Mw3JeIK1NWVpYGDx6sDh06aObMmWXW2b59u7p3717pxwZQfbiJAkCtMG7cOP3xxx8aNmyY/vvf/2rPnj1aunSpRo0apfz8fNWvX1+jR4/WI488ohUrVmj79u0aOXJkqXvBrrnmGs2ePVtbt27Vpk2bdO+993qcfbvjjjvUpEkTDR48WN98842Sk5O1atUq3X///Tp48GCF+tqyZUuNGDFCd999txYvXuxu47333nPXsdlsGjlypCZOnKi2bdsqNjb2jG1effXVysjI0E8//eTFrFXc//zP/+jAgQN66aWXdOzYMaWkpCglJcXjgZFvvvnGfY8hgAsTwQ5ArRAZGalvv/1W+fn56tevnzp37qwJEyYoJCTEHd7++c9/6sorr9SgQYMUFxenK664otS9ejNmzFBUVJSuvPJK/eUvf9HDDz/scQk0MDBQa9asUfPmzXXTTTfp4osv1ujRo5WVleXVGby5c+fqlltu0d/+9jd16NBBY8eOVWZmpked0aNHKycnR6NGjTpre40bN9aNN95Y5iXiyrB69WodOXJEHTt2VEREhHsp/JaLQ4cOad26dRXqK4Day2KUvBkFAC4gffv2Vbdu3TRr1qya7kop33zzja699lodOHBAYWFhZ63/ww8/6LrrrtOePXvKfIikKj322GM6ceKE5s2bV63HBVC5OGMHAJUsOztbBw8e1NSpU3XrrbdWKNRJUpcuXTR9+nQlJydXcQ9La9q0qZ555plqPy6AykWwA4BK9vbbb6tFixZKS0vz+Ky+ihg5cqQ6d+5cRT0r30MPPVThAAqg9uJSLAAAgElwxg4AAMAkCHYAAAAmQbADAAAwCYIdAACASRDsAAAATIJgBwAAYBIEOwAAAJMg2AEAAJgEwQ4AAMAk/h+cpKiiEAN3nAAAAABJRU5ErkJggg=="
     },
     "metadata": {},
     "output_type": "display_data",
     "jetTransient": {
      "display_id": null
     }
    }
   ],
   "execution_count": 11
  },
  {
   "cell_type": "markdown",
   "id": "a99bcacc",
   "metadata": {},
   "source": [
    "### Geometries\n",
    "\n",
    "The new version of Tidy3D introduces [Geometry](https://docs.flexcompute.com/projects/tidy3d/en/latest/api/index.html#geometry) objects, which do the heavy lifting for any components with some spatial extent.\n",
    "\n",
    "There are 5 primitive and 2 compound geometry classes:\n",
    "\n",
    "- [Box](https://docs.flexcompute.com/projects/tidy3d/en/latest/api/_autosummary/tidy3d.Box.html)\n",
    "\n",
    "- [Sphere](https://docs.flexcompute.com/projects/tidy3d/en/latest/api/_autosummary/tidy3d.Sphere.html)\n",
    "\n",
    "- [Cylinder](https://docs.flexcompute.com/projects/tidy3d/en/latest/api/_autosummary/tidy3d.Cylinder.html)\n",
    "\n",
    "- [Polyslab](https://docs.flexcompute.com/projects/tidy3d/en/latest/api/_autosummary/tidy3d.PolySlab.html)\n",
    "\n",
    "- [TriangleMesh](https://docs.flexcompute.com/projects/tidy3d/en/latest/api/_autosummary/tidy3d.TriangleMesh.html)\n",
    "\n",
    "- [GeometryGroup](https://docs.flexcompute.com/projects/tidy3d/en/latest/api/_autosummary/tidy3d.GeometryGroup.html)\n",
    "\n",
    "- [ClipOperation](https://docs.flexcompute.com/projects/tidy3d/en/latest/api/_autosummary/tidy3d.ClipOperation.html)\n",
    "\n",
    "If your device is defined in GDS format, they may be loaded using the `Geometry.from_gds()` static method. Please refer to the [tutorial notebook on GDS importing](../notebooks/GDSImport.html) for more details.\n",
    "\n",
    "All [Geometry](https://docs.flexcompute.com/projects/tidy3d/en/latest/api/_autosummary/tidy3d.Geometry.html) objects have many useful methods for checking intersections, bounds, and other properties."
   ]
  },
  {
   "cell_type": "code",
   "id": "15b8d749",
   "metadata": {
    "tags": [],
    "ExecuteTime": {
     "end_time": "2025-10-29T14:07:20.434169Z",
     "start_time": "2025-10-29T14:07:20.360363Z"
    }
   },
   "source": [
    "s1 = td.Sphere(radius=1, center=(0, 0, 0))\n",
    "s2 = td.Box(center=(1, 1, 1), size=(1, 1, 1))\n",
    "\n",
    "# do two geometric objects intersect?\n",
    "print(s1.intersects(s2))\n",
    "\n",
    "# does the object intersect a plane?\n",
    "print(s1.intersects_plane(z=10))\n",
    "\n",
    "# get polygons that intersect sphere at plane x=0\n",
    "print(s1.intersects_plane(x=0))\n",
    "\n",
    "# get bounds (rmin, rmax) of geometry\n",
    "print(s1.bounds)\n",
    "\n",
    "# get td.Box() for bounding box of geometry\n",
    "print(s1.bounding_box.help())\n",
    "\n",
    "# evaluate whether point(s) are inside of geometry\n",
    "print(s1.inside(x=0, y=1, z=1))\n",
    "print(s1.inside(x=np.linspace(-1, 1, 5), y=np.zeros(5), z=np.ones(5)))\n",
    "\n",
    "# plot the geometry at a cross sectional plane\n",
    "ax = s1.plot(y=0)"
   ],
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "True\n",
      "False\n",
      "True\n",
      "((-1.0, -1.0, -1.0), (1.0, 1.0, 1.0))\n"
     ]
    },
    {
     "data": {
      "text/plain": [
       "\u001B[34m╭─\u001B[0m\u001B[34m───────────────────\u001B[0m\u001B[34m \u001B[0m\u001B[1;34m<\u001B[0m\u001B[1;95mclass\u001B[0m\u001B[39m \u001B[0m\u001B[32m'tidy3d.components.geometry.base.Box'\u001B[0m\u001B[1;34m>\u001B[0m\u001B[34m \u001B[0m\u001B[34m────────────────────\u001B[0m\u001B[34m─╮\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[36mRectangular prism.\u001B[0m                                                                     \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[36m   Also base class for :class:`.Simulation`, :class:`Monitor`, and :class:`Source`.\u001B[0m    \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                                                                        \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m╭────────────────────────────────────────────────────────────────────────────────────╮\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[1;35mBox\u001B[0m\u001B[1m(\u001B[0m\u001B[33mattrs\u001B[0m=\u001B[1m{\u001B[0m\u001B[1m}\u001B[0m, \u001B[33mtype\u001B[0m=\u001B[32m'Box'\u001B[0m, \u001B[33mcenter\u001B[0m=\u001B[1m(\u001B[0m\u001B[1;36m0.0\u001B[0m, \u001B[1;36m0.0\u001B[0m, \u001B[1;36m0.0\u001B[0m\u001B[1m)\u001B[0m, \u001B[33msize\u001B[0m=\u001B[1m(\u001B[0m\u001B[1;36m2.0\u001B[0m, \u001B[1;36m2.0\u001B[0m, \u001B[1;36m2.0\u001B[0m\u001B[1m)\u001B[0m\u001B[1m)\u001B[0m            \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m╰────────────────────────────────────────────────────────────────────────────────────╯\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                                                                        \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m        \u001B[3;33mattrs\u001B[0m = \u001B[1m{\u001B[0m\u001B[1m}\u001B[0m                                                                      \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[3;33mbounding_box\u001B[0m = \u001B[1;35mBox\u001B[0m\u001B[1m(\u001B[0m\u001B[33mattrs\u001B[0m=\u001B[1m{\u001B[0m\u001B[1m}\u001B[0m, \u001B[33mtype\u001B[0m=\u001B[32m'Box'\u001B[0m, \u001B[33mcenter\u001B[0m=\u001B[1m(\u001B[0m\u001B[1;36m0.0\u001B[0m, \u001B[1;36m0.0\u001B[0m, \u001B[1;36m0.0\u001B[0m\u001B[1m)\u001B[0m, \u001B[33msize\u001B[0m=\u001B[1m(\u001B[0m\u001B[1;36m2.0\u001B[0m, \u001B[1;36m2.0\u001B[0m, \u001B[1;36m2.0\u001B[0m\u001B[1m)\u001B[0m\u001B[1m)\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m       \u001B[3;33mbounds\u001B[0m = \u001B[1m(\u001B[0m\u001B[1m(\u001B[0m\u001B[1;36m-1.0\u001B[0m, \u001B[1;36m-1.0\u001B[0m, \u001B[1;36m-1.0\u001B[0m\u001B[1m)\u001B[0m, \u001B[1m(\u001B[0m\u001B[1;36m1.0\u001B[0m, \u001B[1;36m1.0\u001B[0m, \u001B[1;36m1.0\u001B[0m\u001B[1m)\u001B[0m\u001B[1m)\u001B[0m                                   \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m       \u001B[3;33mcenter\u001B[0m = \u001B[1m(\u001B[0m\u001B[1;36m0.0\u001B[0m, \u001B[1;36m0.0\u001B[0m, \u001B[1;36m0.0\u001B[0m\u001B[1m)\u001B[0m                                                         \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m     \u001B[3;33mgeometry\u001B[0m = \u001B[1;35mBox\u001B[0m\u001B[1m(\u001B[0m\u001B[33mattrs\u001B[0m=\u001B[1m{\u001B[0m\u001B[1m}\u001B[0m, \u001B[33mtype\u001B[0m=\u001B[32m'Box'\u001B[0m, \u001B[33mcenter\u001B[0m=\u001B[1m(\u001B[0m\u001B[1;36m0.0\u001B[0m, \u001B[1;36m0.0\u001B[0m, \u001B[1;36m0.0\u001B[0m\u001B[1m)\u001B[0m, \u001B[33msize\u001B[0m=\u001B[1m(\u001B[0m\u001B[1;36m2.0\u001B[0m, \u001B[1;36m2.0\u001B[0m, \u001B[1;36m2.0\u001B[0m\u001B[1m)\u001B[0m\u001B[1m)\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m  \u001B[3;33mplot_params\u001B[0m = \u001B[1;35mPlotParams\u001B[0m\u001B[1m(\u001B[0m                                                             \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                    \u001B[33mattrs\u001B[0m=\u001B[1m{\u001B[0m\u001B[1m}\u001B[0m,                                                           \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                    \u001B[33malpha\u001B[0m=\u001B[1;36m1\u001B[0m\u001B[1;36m.0\u001B[0m,                                                          \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                    \u001B[33mzorder\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                        \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                    \u001B[33mtype\u001B[0m=\u001B[32m'PlotParams'\u001B[0m,                                                  \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                    \u001B[33medgecolor\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                     \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                    \u001B[33mfacecolor\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                     \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                    \u001B[33mfill\u001B[0m=\u001B[3;92mTrue\u001B[0m,                                                          \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                    \u001B[33mhatch\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                         \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                    \u001B[33mlinewidth\u001B[0m=\u001B[1;36m1\u001B[0m\u001B[1;36m.0\u001B[0m                                                       \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                \u001B[1m)\u001B[0m                                                                       \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m         \u001B[3;33msize\u001B[0m = \u001B[1m(\u001B[0m\u001B[1;36m2.0\u001B[0m, \u001B[1;36m2.0\u001B[0m, \u001B[1;36m2.0\u001B[0m\u001B[1m)\u001B[0m                                                         \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m         \u001B[3;33mtype\u001B[0m = \u001B[32m'Box'\u001B[0m                                                                   \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m    \u001B[3;33mzero_dims\u001B[0m = \u001B[1m[\u001B[0m\u001B[1m]\u001B[0m                                                                      \u001B[34m│\u001B[0m\n",
       "\u001B[34m╰────────────────────────────────────────────────────────────────────────────────────────╯\u001B[0m\n"
      ],
      "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: #000080; text-decoration-color: #000080\">╭──────────────────── </span><span style=\"color: #000080; text-decoration-color: #000080; font-weight: bold\">&lt;</span><span style=\"color: #ff00ff; text-decoration-color: #ff00ff; font-weight: bold\">class</span><span style=\"color: #000000; text-decoration-color: #000000\"> </span><span style=\"color: #008000; text-decoration-color: #008000\">'tidy3d.components.geometry.base.Box'</span><span style=\"color: #000080; text-decoration-color: #000080; font-weight: bold\">&gt;</span><span style=\"color: #000080; text-decoration-color: #000080\"> ─────────────────────╮</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008080; text-decoration-color: #008080\">Rectangular prism.</span>                                                                     <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008080; text-decoration-color: #008080\">   Also base class for :class:`.Simulation`, :class:`Monitor`, and :class:`Source`.</span>    <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                                                                        <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">╭────────────────────────────────────────────────────────────────────────────────────╮</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">Box</span><span style=\"font-weight: bold\">(</span><span style=\"color: #808000; text-decoration-color: #808000\">attrs</span>=<span style=\"font-weight: bold\">{}</span>, <span style=\"color: #808000; text-decoration-color: #808000\">type</span>=<span style=\"color: #008000; text-decoration-color: #008000\">'Box'</span>, <span style=\"color: #808000; text-decoration-color: #808000\">center</span>=<span style=\"font-weight: bold\">(</span><span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span><span style=\"font-weight: bold\">)</span>, <span style=\"color: #808000; text-decoration-color: #808000\">size</span>=<span style=\"font-weight: bold\">(</span><span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">2.0</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">2.0</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">2.0</span><span style=\"font-weight: bold\">))</span>            <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">╰────────────────────────────────────────────────────────────────────────────────────╯</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                                                                        <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>        <span style=\"color: #808000; text-decoration-color: #808000; font-style: italic\">attrs</span> = <span style=\"font-weight: bold\">{}</span>                                                                      <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #808000; text-decoration-color: #808000; font-style: italic\">bounding_box</span> = <span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">Box</span><span style=\"font-weight: bold\">(</span><span style=\"color: #808000; text-decoration-color: #808000\">attrs</span>=<span style=\"font-weight: bold\">{}</span>, <span style=\"color: #808000; text-decoration-color: #808000\">type</span>=<span style=\"color: #008000; text-decoration-color: #008000\">'Box'</span>, <span style=\"color: #808000; text-decoration-color: #808000\">center</span>=<span style=\"font-weight: bold\">(</span><span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span><span style=\"font-weight: bold\">)</span>, <span style=\"color: #808000; text-decoration-color: #808000\">size</span>=<span style=\"font-weight: bold\">(</span><span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">2.0</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">2.0</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">2.0</span><span style=\"font-weight: bold\">))</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>       <span style=\"color: #808000; text-decoration-color: #808000; font-style: italic\">bounds</span> = <span style=\"font-weight: bold\">((</span><span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">-1.0</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">-1.0</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">-1.0</span><span style=\"font-weight: bold\">)</span>, <span style=\"font-weight: bold\">(</span><span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">1.0</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">1.0</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">1.0</span><span style=\"font-weight: bold\">))</span>                                   <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>       <span style=\"color: #808000; text-decoration-color: #808000; font-style: italic\">center</span> = <span style=\"font-weight: bold\">(</span><span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span><span style=\"font-weight: bold\">)</span>                                                         <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>     <span style=\"color: #808000; text-decoration-color: #808000; font-style: italic\">geometry</span> = <span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">Box</span><span style=\"font-weight: bold\">(</span><span style=\"color: #808000; text-decoration-color: #808000\">attrs</span>=<span style=\"font-weight: bold\">{}</span>, <span style=\"color: #808000; text-decoration-color: #808000\">type</span>=<span style=\"color: #008000; text-decoration-color: #008000\">'Box'</span>, <span style=\"color: #808000; text-decoration-color: #808000\">center</span>=<span style=\"font-weight: bold\">(</span><span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span><span style=\"font-weight: bold\">)</span>, <span style=\"color: #808000; text-decoration-color: #808000\">size</span>=<span style=\"font-weight: bold\">(</span><span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">2.0</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">2.0</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">2.0</span><span style=\"font-weight: bold\">))</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>  <span style=\"color: #808000; text-decoration-color: #808000; font-style: italic\">plot_params</span> = <span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">PlotParams</span><span style=\"font-weight: bold\">(</span>                                                             <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                    <span style=\"color: #808000; text-decoration-color: #808000\">attrs</span>=<span style=\"font-weight: bold\">{}</span>,                                                           <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                    <span style=\"color: #808000; text-decoration-color: #808000\">alpha</span>=<span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">1.0</span>,                                                          <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                    <span style=\"color: #808000; text-decoration-color: #808000\">zorder</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                        <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                    <span style=\"color: #808000; text-decoration-color: #808000\">type</span>=<span style=\"color: #008000; text-decoration-color: #008000\">'PlotParams'</span>,                                                  <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                    <span style=\"color: #808000; text-decoration-color: #808000\">edgecolor</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                     <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                    <span style=\"color: #808000; text-decoration-color: #808000\">facecolor</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                     <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                    <span style=\"color: #808000; text-decoration-color: #808000\">fill</span>=<span style=\"color: #00ff00; text-decoration-color: #00ff00; font-style: italic\">True</span>,                                                          <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                    <span style=\"color: #808000; text-decoration-color: #808000\">hatch</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                         <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                    <span style=\"color: #808000; text-decoration-color: #808000\">linewidth</span>=<span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">1.0</span>                                                       <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                <span style=\"font-weight: bold\">)</span>                                                                       <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>         <span style=\"color: #808000; text-decoration-color: #808000; font-style: italic\">size</span> = <span style=\"font-weight: bold\">(</span><span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">2.0</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">2.0</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">2.0</span><span style=\"font-weight: bold\">)</span>                                                         <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>         <span style=\"color: #808000; text-decoration-color: #808000; font-style: italic\">type</span> = <span style=\"color: #008000; text-decoration-color: #008000\">'Box'</span>                                                                   <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>    <span style=\"color: #808000; text-decoration-color: #808000; font-style: italic\">zero_dims</span> = <span style=\"font-weight: bold\">[]</span>                                                                      <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">╰────────────────────────────────────────────────────────────────────────────────────────╯</span>\n",
       "</pre>\n"
      ]
     },
     "metadata": {},
     "output_type": "display_data",
     "jetTransient": {
      "display_id": null
     }
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "None\n",
      "False\n",
      "[False False  True False False]\n"
     ]
    },
    {
     "data": {
      "text/plain": [
       "<Figure size 640x480 with 1 Axes>"
      ],
      "image/png": "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2MfZuHGjGDRokIiMjBRqtVpERkaKhx56SJw8efKm2as6ncViEe+++65o3ry50Gg0IigoSLRt21ZMnTr1mpP+586dK1q3bm0fr3v37mL9+vX257OyssSAAQOEv79/lS7asHDhQvvrBQcH3/SiDX9XlTIVQoht27aJu+66S+h0OhEZGSleeeUVsXbt2mvyFBcXi4cfflgEBgbe8qINf3W1hP/zn/9Uafzb8eWXX4omTZoItVotYmNjxUcffVTpVCQhblymJpNJvPzyyyI8PFxoNBrRvn17sWbNmuu+z9atW0WnTp2EVqsVoaGh4tlnnxVGo7HaPw85h0yIW2wrIyJycR9//DFefPFFnD17FnXr1pU6DnkhlikRuTUhBFq1aoVatWrd8mAwImfhqTFE5JZKSkrw66+/YvPmzTh8+DCWL18udSTyYlwzJSK3dPbsWdSvXx+BgYF45pln8Pbbb0sdibwYy5SIiMhBPM+UiIjIQSxTIiIiB/EApFuw2Wy4ePEi/P397+jOHERE5J6EECgqKkJkZORNb2gBsExv6eLFiy5zoXEiIqp558+fR1RU1E3HYZnegr+/P4ArM1Ov10uchoiIaorRaER0dLS9B26GZXoLVzft6vV6likRkReqyi4+HoBERETkIJYpERGRg1imREREDmKZEhEROYhlSkRE5CCWKRERkYNYpkRERA5imRIRETmIZUpEROQglikREZGDWKZEREQOYpkSERE5iGVKRETkIJYpERGRg1imREREDmKZEhEROYhlSkRE5CCWKRERkYNYpkRERA5imRIRETmIZUpEROQglikREZGDWKZEREQOYpkSERE5iGVKRETkIJYpERGRg1imREREDmKZEhEROYhlSkRE5CCWKRERkYNYpkRERA5imRIRETmIZUpEROQglikREZGDWKZEREQOYpkSERE5iGVKRETkILcq0y1btuDee+9FZGQkZDIZli1bdstpUlJS0KZNG2g0GjRs2BDz5893ek4iIvIublWmJSUlaNWqFWbPnl2l8dPT0zFgwAD07NkTBw8exLhx4/DEE09g7dq1Tk5KRETeRCl1gNvRr18/9OvXr8rjz5kzB/Xr18eHH34IAGjatCn++OMPfPTRR+jbt6+zYhIRkZdxqzXT27Vjxw4kJSVVGta3b1/s2LFDokRE7kMIAZvNBpvNBiGE1HGIXJpb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S0RE5KpYpkRERA5imRIRETmIZUpEROQglikREZGDWKZEREQOYpkSERE5iGVKRETkIJYpERGRg1imREREDmKZEhEROYhlSkRE5CCWKRERkYNYpkRERA5imRIRETmIZUpEROQglikREZGDWKZEREQOYpkSERE5iGVKRETkIJYpERGRg1imREREDmKZEhEROYhlSkRE5CCWKRERkYNYpkRERA5imRIRETmIZUpEROQglikREZGDWKZEREQOYpkSERE5iGVKRETkIJYpERGRg1imREREDmKZEhEROYhlSkRE5CCWKRERkYOUUgdwdUIIAIDRaJQ4CRER1aSry/2rPXAzLNNbKCoqAgBER0dLnISIiKRQVFSEgICAm44jE1WpXC9ms9lw8eJF+Pv7QyaTSR3nloxGI6Kjo3H+/Hno9Xqp47gszqeq4XyqGs6nqnG3+SSEQFFRESIjIyGX33yvKNdMb0EulyMqKkrqGLdNr9e7xR+r1DifqobzqWo4n6rGnebTrdZIr+IBSERERA5imRIRETmIZephNBoNpkyZAo1GI3UUl8b5VDWcT1XD+VQ1njyfeAASERGRg7hmSkRE5CCWKRERkYNYpkRERA5imXqAt99+G506dYKPjw8CAwOrNI0QApMnT0ZERAR0Oh2SkpJw6tQp5waVWH5+PoYPHw69Xo/AwECMHj0axcXFN52mR48ekMlklR5PPfVUDSWuGbNnz0a9evWg1WrRsWNH7N69+6bjL168GHFxcdBqtYiPj8fq1atrKKm0bmc+zZ8//5q/G61WW4NppbFlyxbce++9iIyMhEwmw7Jly245TUpKCtq0aQONRoOGDRti/vz5Ts/pDCxTD2CxWDB06FA8/fTTVZ7mvffewyeffII5c+Zg165d8PX1Rd++fVFWVubEpNIaPnw4jh49ivXr12PlypXYsmULxo4de8vpxowZg0uXLtkf7733Xg2krRkLFy7E+PHjMWXKFOzfvx+tWrVC3759kZOTc93xt2/fjoceegijR4/GgQMHkJycjOTkZBw5cqSGk9es251PwJULE/z17yYjI6MGE0ujpKQErVq1wuzZs6s0fnp6OgYMGICePXvi4MGDGDduHJ544gmsXbvWyUmdQJDHmDdvnggICLjleDabTYSHh4v333/fPqywsFBoNBrx448/OjGhdI4dOyYAiD179tiH/fbbb0Imk4kLFy7ccLru3buLF154oQYSSqNDhw7i2Weftf9stVpFZGSkmD59+nXH/8c//iEGDBhQaVjHjh3Fk08+6dScUrvd+VTV/xc9GQCxdOnSm47zyiuviObNm1ca9uCDD4q+ffs6MZlzcM3UC6WnpyMrKwtJSUn2YQEBAejYsSN27NghYTLn2bFjBwIDA9GuXTv7sKSkJMjlcuzateum037//fcICQlBixYtMHHiRJSWljo7bo2wWCzYt29fpb8DuVyOpKSkG/4d7Nixo9L4ANC3b1+P/bsB7mw+AUBxcTFiYmIQHR2NQYMG4ejRozUR16140t8Tr83rhbKysgAAYWFhlYaHhYXZn/M0WVlZqF27dqVhSqUSwcHBN/3MDz/8MGJiYhAZGYlDhw7h1VdfxYkTJ7BkyRJnR3a6vLw8WK3W6/4dpKamXnearKwsr/q7Ae5sPjVp0gRz585Fy5YtYTAY8MEHH6BTp044evSoW17r21lu9PdkNBphMpmg0+kkSnb7uGbqol577bVrDmD4++NG/yN7E2fPp7Fjx6Jv376Ij4/H8OHD8c0332Dp0qU4ffp0NX4K8jSJiYkYMWIEEhIS0L17dyxZsgShoaH44osvpI5GTsI1Uxf10ksv4bHHHrvpOA0aNLij1w4PDwcAZGdnIyIiwj48OzsbCQkJd/SaUqnqfAoPD7/mYJGKigrk5+fb50dVdOzYEQCQlpaG2NjY287rSkJCQqBQKJCdnV1peHZ29g3nSXh4+G2N7wnuZD79nUqlQuvWrZGWluaMiG7rRn9Per3erdZKAZapywoNDUVoaKhTXrt+/foIDw/Hxo0b7eVpNBqxa9eu2zoi2BVUdT4lJiaisLAQ+/btQ9u2bQEAmzZtgs1msxdkVRw8eBAAKn0JcVdqtRpt27bFxo0bkZycDODK/Xs3btyI55577rrTJCYmYuPGjRg3bpx92Pr165GYmFgDiaVxJ/Pp76xWKw4fPoz+/fs7Man7SUxMvObUKrf9e5L6CChyXEZGhjhw4ICYOnWq8PPzEwcOHBAHDhwQRUVF9nGaNGkilixZYv/5nXfeEYGBgWL58uXi0KFDYtCgQaJ+/frCZDJJ8RFqxD333CNat24tdu3aJf744w/RqFEj8dBDD9mfz8zMFE2aNBG7du0SQgiRlpYmpk2bJvbu3SvS09PF8uXLRYMGDUS3bt2k+gjV7qeffhIajUbMnz9fHDt2TIwdO1YEBgaKrKwsIYQQjz76qHjttdfs42/btk0olUrxwQcfiOPHj4spU6YIlUolDh8+LNVHqBG3O5+mTp0q1q5dK06fPi327dsnhg0bJrRarTh69KhUH6FGFBUV2Zc/AMSMGTPEgQMHREZGhhBCiNdee008+uij9vHPnDkjfHx8xIQJE8Tx48fF7NmzhUKhEGvWrJHqI9wxlqkHGDlypABwzWPz5s32cQCIefPm2X+22WzijTfeEGFhYUKj0YjevXuLEydO1Hz4GnT58mXx0EMPCT8/P6HX68WoUaMqfeFIT0+vNN/OnTsnunXrJoKDg4VGoxENGzYUEyZMEAaDQaJP4ByffvqpqFu3rlCr1aJDhw5i586d9ue6d+8uRo4cWWn8RYsWicaNGwu1Wi2aN28uVq1aVcOJpXE782ncuHH2ccPCwkT//v3F/v37JUhdszZv3nzdZdHVeTNy5EjRvXv3a6ZJSEgQarVaNGjQoNJyyp3wrjFEREQO4tG8REREDmKZEhEROYhlSkRE5CCWKRERkYNYpkRERA5imRIRETmIZUpEROQglikREZGDWKZEREQOYpkSERE5iGVKRETkIJYpEVWSm5uL8PBw/Oc//7EP2759O9RqNTZu3ChhMiLXxQvdE9E1Vq9ejeTkZGzfvh1NmjRBQkICBg0ahBkzZkgdjcglsUyJ6LqeffZZbNiwAe3atcPhw4exZ88eaDQaqWMRuSSWKRFdl8lkQosWLXD+/Hns27cP8fHxUkciclncZ0pE13X69GlcvHgRNpsNZ8+elToOkUvjmikRXcNisaBDhw5ISEhAkyZNMHPmTBw+fBi1a9eWOhqRS2KZEtE1JkyYgJ9//hl//vkn/Pz80L17dwQEBGDlypVSRyNySdzMS0SVpKSkYObMmfj222+h1+shl8vx7bffYuvWrfj888+ljkfkkrhmSkRE5CCumRIRETmIZUpEROQglikREZGDWKZEREQOYpkSERE5iGVKRETkIJYpERGRg1imREREDmKZEhEROYhlSkRE5CCWKRERkYNYpkRERA76P3UVXqYi01hDAAAAAElFTkSuQmCC"
     },
     "metadata": {},
     "output_type": "display_data",
     "jetTransient": {
      "display_id": null
     }
    }
   ],
   "execution_count": 12
  },
  {
   "cell_type": "markdown",
   "id": "581841bb",
   "metadata": {},
   "source": [
    "Note, because simulations, monitors, and sources all are defined spatially, they inherit from [Box](https://docs.flexcompute.com/projects/tidy3d/en/latest/api/_autosummary/tidy3d.Box.html) and contain these methods as well, which can come in handy when doing validation.\n",
    "\n",
    "### Structures\n",
    "\n",
    "A [Structure](https://docs.flexcompute.com/projects/tidy3d/en/latest/api/_autosummary/tidy3d.Structure.html) is a component that simply contains a [Geometry](https://docs.flexcompute.com/projects/tidy3d/en/latest/api/index.html#geometry) and a [Medium](https://docs.flexcompute.com/projects/tidy3d/en/latest/api/index.html#mediums).  It therefore defines an object in the simulation with some geometry and optical properties, such as a waveguide or slab."
   ]
  },
  {
   "cell_type": "code",
   "id": "07727a55",
   "metadata": {
    "tags": [],
    "ExecuteTime": {
     "end_time": "2025-10-29T14:07:20.439352Z",
     "start_time": "2025-10-29T14:07:20.437611Z"
    }
   },
   "source": [
    "dielectric_box = td.Structure(\n",
    "    geometry=td.Box(center=(0, 0, 0), size=(1, 1, 1)),\n",
    "    medium=td.Medium(permittivity=2.0),\n",
    ")"
   ],
   "outputs": [],
   "execution_count": 13
  },
  {
   "cell_type": "markdown",
   "id": "e735f638",
   "metadata": {},
   "source": [
    "### Sources\n",
    "\n",
    "Sources define how the electromagnetic current is injected into the simulation to give rise to fields. There are several types of sources, each generally defines some spatial or polarization properties of the source and also contain a `source_time` field, which defines the time dependence. As an example"
   ]
  },
  {
   "cell_type": "code",
   "id": "b06caa0b",
   "metadata": {
    "tags": [],
    "ExecuteTime": {
     "end_time": "2025-10-29T14:07:20.486381Z",
     "start_time": "2025-10-29T14:07:20.483730Z"
    }
   },
   "source": [
    "# define time dependence\n",
    "gaussian = td.GaussianPulse(freq0=150e12, fwidth=10e12)\n",
    "\n",
    "# z polarized dipole at origin\n",
    "dipole = td.UniformCurrentSource(\n",
    "    center=(0, 0, 0), size=(0, 0, 0), source_time=gaussian, polarization=\"Ez\"\n",
    ")\n",
    "\n",
    "# z polarized plane wave propagating in -x\n",
    "plane_wave = td.PlaneWave(\n",
    "    center=(0, 0, 0),\n",
    "    size=(0, td.inf, td.inf),\n",
    "    source_time=gaussian,\n",
    "    pol_angle=np.pi / 2,\n",
    "    direction=\"-\",\n",
    ")"
   ],
   "outputs": [],
   "execution_count": 14
  },
  {
   "cell_type": "markdown",
   "id": "062ef614",
   "metadata": {},
   "source": [
    "### Monitors\n",
    "\n",
    "Since it would be impractical to return the entire time series of all of the field data solved for by FDTD, \"monitors\" are specifications that tell Tidy3D what data should be returned by the solver.\n",
    "\n",
    "The following monitors measure their corresponding values in the frequency-domain\n",
    "\n",
    "- [FieldMonitor](https://docs.flexcompute.com/projects/tidy3d/en/latest/api/_autosummary/tidy3d.FieldMonitor.html)\n",
    "\n",
    "- [FluxMonitor](https://docs.flexcompute.com/projects/tidy3d/en/latest/api/_autosummary/tidy3d.FluxMonitor.html)\n",
    "\n",
    "- [ModeMonitor](https://docs.flexcompute.com/projects/tidy3d/en/latest/api/_autosummary/tidy3d.ModeMonitor.html)\n",
    "\n",
    "And the following measure their values in the time-domain\n",
    "\n",
    "- [FieldTimeMonitor](https://docs.flexcompute.com/projects/tidy3d/en/latest/api/_autosummary/tidy3d.FieldTimeMonitor.html)\n",
    "\n",
    "- [FluxTimeMonitor](https://docs.flexcompute.com/projects/tidy3d/en/latest/api/_autosummary/tidy3d.FluxTimeMonitor.html)\n",
    "\n",
    "There are also various monitors for field projections, diffraction efficiency, and other values. The [API reference](https://docs.flexcompute.com/projects/tidy3d/en/latest/api/index.html#monitors) lists each of the monitor types, for reference.\n",
    "\n",
    "Note: all monitors must be *named* (have a `name: str` field supplied).  The data returned by the server will be indexed by the monitor name and accessed by the user using that name."
   ]
  },
  {
   "cell_type": "code",
   "id": "f37ac987",
   "metadata": {
    "ExecuteTime": {
     "end_time": "2025-10-29T14:07:20.530672Z",
     "start_time": "2025-10-29T14:07:20.528797Z"
    }
   },
   "source": [
    "# measures Ex, Ey, Hz fields on the plane at frequency 150THz\n",
    "mon1 = td.FieldMonitor(\n",
    "    center=(1, 0, 0),\n",
    "    size=(td.inf, td.inf, 0),\n",
    "    fields=[\"Ex\", \"Ey\", \"Hz\"],\n",
    "    freqs=[150e12],\n",
    "    name=\"fields_at_150THz\",\n",
    ")\n",
    "\n",
    "# measures time dependence of flux through a plane every 5 time steps between a window of (start, stop)\n",
    "mon2 = td.FluxTimeMonitor(\n",
    "    center=(1, 0, 0),\n",
    "    size=(td.inf, td.inf, 0),\n",
    "    start=1e-13,\n",
    "    stop=3e-13,\n",
    "    interval=5,\n",
    "    name=\"flux_over_time\",\n",
    ")"
   ],
   "outputs": [],
   "execution_count": 15
  },
  {
   "cell_type": "markdown",
   "id": "86df481d",
   "metadata": {},
   "source": [
    "### Modes\n",
    "\n",
    "Modes (for sources and monitors) are specified using a [ModeSpec](https://docs.flexcompute.com/projects/tidy3d/en/latest/api/_autosummary/tidy3d.ModeSpec.html) object. This component contains all of the specifications needed for the mode solver to know which modes to inject or measure in the [ModeSource](https://docs.flexcompute.com/projects/tidy3d/en/latest/api/_autosummary/tidy3d.ModeSource.html) and [ModeMonitor](https://docs.flexcompute.com/projects/tidy3d/en/latest/api/_autosummary/tidy3d.ModeMonitor.html) objects, such as the number of modes, mode index, or a target mode effective index.\n",
    "\n",
    "For example:"
   ]
  },
  {
   "cell_type": "code",
   "id": "86f4f9e1",
   "metadata": {
    "ExecuteTime": {
     "end_time": "2025-10-29T14:07:20.574715Z",
     "start_time": "2025-10-29T14:07:20.572953Z"
    }
   },
   "source": [
    "# default mode solver spec (returns first mode)\n",
    "fundamental = td.ModeSpec()\n",
    "\n",
    "# tell the mode solver to return 4 modes\n",
    "first_4_modes = td.ModeSpec(num_modes=4)\n",
    "\n",
    "# have mode solver return 4 modes around the target effective index\n",
    "complicated = td.ModeSpec(num_modes=4, target_neff=2.0)"
   ],
   "outputs": [],
   "execution_count": 16
  },
  {
   "cell_type": "markdown",
   "id": "82dd8bf2",
   "metadata": {},
   "source": [
    "Using the mode specifications, we can make modal sources or monitors similar to before."
   ]
  },
  {
   "cell_type": "code",
   "id": "5b42e241",
   "metadata": {
    "ExecuteTime": {
     "end_time": "2025-10-29T14:07:20.620050Z",
     "start_time": "2025-10-29T14:07:20.618034Z"
    }
   },
   "source": [
    "# inject the fundamental mode\n",
    "mode_source = td.ModeSource(\n",
    "    center=(0, 0, -1),\n",
    "    size=(td.inf, td.inf, 0),\n",
    "    source_time=gaussian,\n",
    "    mode_spec=fundamental,\n",
    "    mode_index=0,\n",
    "    direction=\"+\",\n",
    ")\n",
    "\n",
    "# do modal decomposition and return amplitude data for the first 4 modes\n",
    "mode_mon = td.ModeMonitor(\n",
    "    center=(0, 0, +1),\n",
    "    size=(td.inf, td.inf, 0),\n",
    "    freqs=freqs_hz,\n",
    "    mode_spec=first_4_modes,\n",
    "    name=\"modes\",\n",
    ")"
   ],
   "outputs": [],
   "execution_count": 17
  },
  {
   "cell_type": "markdown",
   "id": "82b91979",
   "metadata": {},
   "source": [
    "The [ModeSolver](https://docs.flexcompute.com/projects/tidy3d/en/latest/api/_autosummary/tidy3d.plugins.mode.ModeSolver.html) is designed to help users come up with the correct [ModeSpec](https://docs.flexcompute.com/projects/tidy3d/en/latest/api/_autosummary/tidy3d.ModeSpec.html) for their problem, at which point it can be used directly in [ModeSource](https://docs.flexcompute.com/projects/tidy3d/en/latest/api/_autosummary/tidy3d.ModeSource.html) and [ModeMonitor](https://docs.flexcompute.com/projects/tidy3d/en/latest/api/_autosummary/tidy3d.ModeMonitor.html) objects without setting it explicitly using a [Simulation](https://docs.flexcompute.com/projects/tidy3d/en/latest/api/_autosummary/tidy3d.Simulation.html) method.  For more details, refer to the [mode solver tutorial notebook](../notebooks/ModeSolver.html)."
   ]
  },
  {
   "cell_type": "markdown",
   "id": "9de5a1b1",
   "metadata": {},
   "source": [
    "### Absorbing Boundaries\n",
    "\n",
    "Absorbing boundaries are defined as one of three types of boundaries\n",
    "\n",
    "- [td.PML()](https://docs.flexcompute.com/projects/tidy3d/en/latest/api/_autosummary/tidy3d.PML.html) defines a standard PML, with an adjustable number of layers.\n",
    "\n",
    "- [td.StablePML()](https://docs.flexcompute.com/projects/tidy3d/en/latest/api/_autosummary/tidy3d.StablePML.html) defines a PML with a 'stable' profile, which can reduce divergence at the expense of more layers.\n",
    "\n",
    "- [td.Absorber()](https://docs.flexcompute.com/projects/tidy3d/en/latest/api/_autosummary/tidy3d.Absorber.html) defines adiabatically increasing conductivity values at the edges of the simulation, which can dramatically improve stability of simulations involving dispersive materials, again at the expense of more layers.\n",
    "\n",
    "As before, these layers *add* to the simulation size defined in [Simulation](https://docs.flexcompute.com/projects/tidy3d/en/latest/api/_autosummary/tidy3d.Simulation.html).\n",
    "\n",
    "Also as before, it is important to extend any structures all the way through the PML if they are meant to be touching the simulation boundary on that side.\n",
    "\n",
    "To define a sequence of PML layers on the x, y, z sides of the simulation, one may use the convenience functions provided in [td.BoundarySpec()](https://docs.flexcompute.com/projects/tidy3d/en/latest/api/_autosummary/tidy3d.BoundarySpec.html) and [td.Boundary()](https://docs.flexcompute.com/projects/tidy3d/en/latest/api/_autosummary/tidy3d.Boundary.html), as shown below.\n",
    "\n",
    "Default PML boundaries are always used on each side of the simulation, so if a boundary is not specified along a dimension, the simulation will have PML on that boundary."
   ]
  },
  {
   "cell_type": "code",
   "id": "bda9c2eb",
   "metadata": {
    "tags": [],
    "ExecuteTime": {
     "end_time": "2025-10-29T14:07:20.664906Z",
     "start_time": "2025-10-29T14:07:20.663178Z"
    }
   },
   "source": [
    "# standard absorber on x, PML with 20 layers on y, no PML on z (periodic BC)\n",
    "boundary_spec = td.BoundarySpec(\n",
    "    x=td.Boundary.absorber(), y=td.Boundary.pml(num_layers=20), z=td.Boundary.periodic()\n",
    ")"
   ],
   "outputs": [],
   "execution_count": 18
  },
  {
   "cell_type": "markdown",
   "id": "f58489c6",
   "metadata": {},
   "source": [
    "### Simulations\n",
    "\n",
    "Finally, the [Simulation](https://docs.flexcompute.com/projects/tidy3d/en/latest/api/_autosummary/tidy3d.Simulation.html) objects contain all of the specifications needed to run the Tidy3D simulation and contain all of the previous components.\n",
    "\n",
    "A few notes:\n",
    "\n",
    "- [Simulation](https://docs.flexcompute.com/projects/tidy3d/en/latest/api/_autosummary/tidy3d.Simulation.html) accepts an optional `medium` parameter, specifying the background medium (air by default).\n",
    "\n",
    "- Each simulation must define the discretization using a `grid_spec`, which specifies how the grid is to be generated along each of the three directions. These are discussed in more detail [here](../notebooks/AutoGrid.html)."
   ]
  },
  {
   "cell_type": "code",
   "id": "11cf6c24",
   "metadata": {
    "tags": [],
    "ExecuteTime": {
     "end_time": "2025-10-29T14:07:20.710941Z",
     "start_time": "2025-10-29T14:07:20.706821Z"
    }
   },
   "source": [
    "sim = td.Simulation(\n",
    "    size=(4, 4, 4),\n",
    "    grid_spec=td.GridSpec.uniform(dl=0.2),\n",
    "    run_time=1e-12,\n",
    "    boundary_spec=td.BoundarySpec(\n",
    "        x=td.Boundary.periodic(), y=td.Boundary.pml(), z=td.Boundary.periodic()\n",
    "    ),\n",
    "    structures=[dielectric_box],\n",
    "    sources=[dipole],\n",
    "    monitors=[mon1, mon2],\n",
    ")"
   ],
   "outputs": [],
   "execution_count": 19
  },
  {
   "cell_type": "markdown",
   "id": "09dba7ad",
   "metadata": {},
   "source": [
    "A defined [Simulation](https://docs.flexcompute.com/projects/tidy3d/en/latest/api/_autosummary/tidy3d.Simulation.html) also provides several useful methods in addition to the ones inherited from [Box](https://docs.flexcompute.com/projects/tidy3d/en/latest/api/_autosummary/tidy3d.Box.html)."
   ]
  },
  {
   "cell_type": "code",
   "id": "c9ccd22a",
   "metadata": {
    "tags": [],
    "ExecuteTime": {
     "end_time": "2025-10-29T14:07:20.984865Z",
     "start_time": "2025-10-29T14:07:20.753588Z"
    }
   },
   "source": [
    "# get permittivity at yee cell centers in a volume defined by a box.\n",
    "sim.epsilon(td.Box(size=(1, 0, 1)), \"centers\")\n",
    "\n",
    "# get a `td.Grid` containing all information about spatial locations in the FDTD / yee grid\n",
    "print(sim.grid.centers)\n",
    "\n",
    "# plot the simulation cross section\n",
    "f, (ax1, ax2) = plt.subplots(1, 2, tight_layout=True, figsize=(10, 4))\n",
    "\n",
    "# plot the structures, PML, sources, mediums\n",
    "ax1 = sim.plot(x=0, ax=ax1)\n",
    "\n",
    "# same thing but plot structure in grayscale using permittivity value\n",
    "ax1 = sim.plot_eps(x=0, ax=ax2)\n",
    "\n",
    "# add the FDTD grid boundaries\n",
    "ax2 = sim.plot_grid(x=0, ax=ax2)"
   ],
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "attrs={} x=array([-1.9, -1.7, -1.5, -1.3, -1.1, -0.9, -0.7, -0.5, -0.3, -0.1,  0.1,\n",
      "        0.3,  0.5,  0.7,  0.9,  1.1,  1.3,  1.5,  1.7,  1.9]) y=array([-4.3, -4.1, -3.9, -3.7, -3.5, -3.3, -3.1, -2.9, -2.7, -2.5, -2.3,\n",
      "       -2.1, -1.9, -1.7, -1.5, -1.3, -1.1, -0.9, -0.7, -0.5, -0.3, -0.1,\n",
      "        0.1,  0.3,  0.5,  0.7,  0.9,  1.1,  1.3,  1.5,  1.7,  1.9,  2.1,\n",
      "        2.3,  2.5,  2.7,  2.9,  3.1,  3.3,  3.5,  3.7,  3.9,  4.1,  4.3]) z=array([-1.9, -1.7, -1.5, -1.3, -1.1, -0.9, -0.7, -0.5, -0.3, -0.1,  0.1,\n",
      "        0.3,  0.5,  0.7,  0.9,  1.1,  1.3,  1.5,  1.7,  1.9]) type='Coords'\n"
     ]
    },
    {
     "data": {
      "text/plain": [
       "<Figure size 1000x400 with 3 Axes>"
      ],
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAA90AAAEFCAYAAAD+PITtAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjYsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvq6yFwwAAAAlwSFlzAAAPYQAAD2EBqD+naQAAoftJREFUeJztnXd8VFX6/z/TSxohBEKQpqigIGQVEcsqgqKiyK5iWVesKAoqy28trAoWdtm1oiKyVlYFC34VXQuKSBHFgpJdEUWUIiIJJITMZHo5vz+yZzIzuTNz69ybzPN+vfJS5rZz78zznOe555znY2KMMRAEQRAEQRAEQRAEoTpmvRtAEARBEARBEARBEJ0VSroJgiAIgiAIgiAIQiMo6SYIgiAIgiAIgiAIjaCkmyAIgiAIgiAIgiA0gpJugiAIgiAIgiAIgtAISroJgiAIgiAIgiAIQiMo6SYIgiAIgiAIgiAIjaCkmyAIgiAIgiAIgiA0gpJugiAIgiAIgiAIgtAISroJwsCsXr0aJpMJq1ev1rsphAZ88cUXsNvt2LlzZ96v3djYiKKiIrz77rt5vzZBEARBEEQhQUk3QRiABQsWYNGiRXo3QxZLlizBvHnz9G5GCs888wwGDRoEp9OJQw89FI899pjoY0OhEG699VZUV1fD5XJhxIgRWLFiheC+n376KU488US43W5UVVXhxhtvREtLi+hr3X777bj44ovRt29f0ceoRUVFBa6++mrceeedeb82QRAEQRBEIWFijDG9G0EQhc7gwYPRrVu3diPa8Xgc4XAYdrsdZrMx35GdffbZ2LRpE3bs2KF3UwAA//znPzFlyhScd955GDt2LD7++GO88MIL+Pvf/45bb7015/EXX3wxXnvtNUyfPh2HHnooFi1ahC+//BKrVq3CiSeemNivtrYWI0eOxKBBg3DNNdfgl19+wQMPPIBRo0bhvffey3md2tpa1NTU4NNPP8XIkSMV3bNcvvvuOxxxxBFYuXIlTj31VF3aQBAEQRAE0dmhpJswDD6fD0VFRXo3QxcyJd0dASMl3YFAAL1798Zxxx2Ht99+O/H5H//4Ryxbtgy7du1CeXl5xuO/+OILjBgxAvfffz/+/Oc/AwCCwSAGDx6M7t2749NPP03se9ZZZ6G2thbff/89SktLAQBPP/00Jk+ejPfffx+nn3561rbedNNNWLZsGXbs2AGTyaTkthUxZMgQ1NTU4Pnnn9etDQRBEARBEJ0ZYw6dER2e3bt346qrrkJ1dTUcDgf69++P6667DuFwGACwaNEimEwmrFmzBtdffz26d++Ogw46KHH8ggULcOSRR8LhcKC6uhpTp07FgQMHUq6xdetWnHfeeaiqqoLT6cRBBx2Eiy66CM3NzYl9VqxYgRNPPBFdunRBcXExDj/8cPzlL3/J2X4xx4VCIcyePRsDBgyAw+FA7969ccsttyAUCrU734svvohjjz0Wbrcb5eXl+O1vf4sPPvgAANCvXz98++23WLNmDUwmE0wmE0455RQAmdd0L126FEcffTRcLhe6deuGP/7xj9i9e3fKPpdffjmKi4uxe/duTJgwAcXFxaisrMSf//xnxGKxnM/gzTffxLhx4xLf4SGHHIJ777035dhTTjkF77zzDnbu3Jloe79+/TKe87nnnoPJZMKzzz6b8vnf/vY3mEwmxeuLV61ahcbGRlx//fUpn0+dOhU+nw/vvPNO1uNfe+01WCwWXHPNNYnPnE4nrrrqKqxfvx67du0CAHg8HqxYsQJ//OMfEwk3AEyaNAnFxcV49dVXc7Z12bJlOPXUU9sl3CaTCXfddVe7/fv164fLL7888W9uQ+vWrcONN96IyspKdOnSBddeey3C4TAOHDiASZMmoby8HOXl5bjlllsg9I71tNNOw7///W/BbQRBEARBEIRyrHo3gOh8/Prrrzj22GNx4MABXHPNNRg4cCB2796N1157DX6/H3a7PbHv9ddfj8rKSsyaNQs+nw8AcNddd+Huu+/GmDFjcN1112HLli144okn8OWXX+KTTz6BzWZDOBzG2LFjEQqFcMMNN6Cqqgq7d+/G22+/jQMHDqCsrAzffvstzj77bBx11FG455574HA48OOPP+KTTz7J2n4xx8XjcYwfPx7r1q3DNddcg0GDBuGbb77Bww8/jB9++AHLli1L7Hv33XfjrrvuwvHHH4977rkHdrsdn3/+OT766COcfvrpmDdvHm644QYUFxfj9ttvBwD06NEjY/sWLVqEK664AsOHD8fcuXNRX1+PRx55BJ988gk2btyILl26JPaNxWIYO3YsRowYgQceeAAffvghHnzwQRxyyCG47rrrsj6HRYsWobi4GDNmzEBxcTE++ugjzJo1Cx6PB/fffz+A1jXJzc3N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unWCIwTDhw9Hz549c/498MADiWOGDRsGAImEnrNhwwbE4/HE9kwMGzYMP/zwAzweT8rnn3/+ecr5Bw8eDKvV2u464XAYtbW1Oa8zcOBAAMD27dsFt3u93naf8dkTasPbMGjQIE3OTxCEeHhBUaINs9kMp9PZ7sUsIUwgEMDtt9+OcePG4bXXXsPkyZPx/PPP45JLLsG9996b82XvF198gZdffhlz587F/fffj2uuuQYfffQR+vbti1tuuSVl37/85S8oLy/H6tWrMWXKFMyZMwfz58/H8uXLEwot2XjuuefQp08fHHfccYruWQmDBg3C4MGDO+wsC6LjQB6MUBWz2YwJEybg3//+d7uEBMg9nXbMmDGw2+149NFHU/Z95pln0NzcjHHjxgFolWyKRqMpxw4ZMgRmszkx5Xf//v3tzs+TIaFpwRwxx11wwQXYvXs3nnrqqXb7BgKBROA0YcIEmM1m3HPPPe1Gh5Pvr6ioqJ0kmhDHHHMMunfvjoULF6bcw3vvvYfvvvsu8XyUwkdJk9sYDoexYMGCdvsWFRVJmm7+2muv4ZVXXsHf//533Hbbbbjoootwxx134IcffkjZT86a7lNPPRVdu3bFE088kXKuJ554Am63O+X5NDQ04Pvvv0+pCXD++ecjFovhySefTHwWCoXw3HPPYcSIEYkZDGVlZRgzZgxefPHFlAT5hRdeQEtLCyZOnJj1GfTq1Qu9e/cWtBEA7dYuvvfeewgGg5rIen311VcoKyvDkUceqfq5CaKQIenMVEg6sxWSzmyDpDOJQoKmlxOq87e//Q0ffPABTj755ISc1p49e7B06VKsW7cuRdIqncrKSsycORN33303zjjjDIwfPx5btmzBggULMHz48MSa4o8++gjTpk3DxIkTcdhhhyEajeKFF16AxWLBeeedBwC45557sHbtWowbNw59+/bF3r17sWDBAhx00EEp06PSEXPcpZdeildffRVTpkzBqlWrcMIJJyAWi+H777/Hq6++ivfffx/HHHMMBgwYgNtvvx333nsvTjrpJPz+97+Hw+HAl19+ierqasydOxdAq2zTE088gTlz5mDAgAHo3r274DQnm82Gf/zjH7jiiitw8skn4+KLL05IhvXr1w9/+tOf5H5tKRx//PEoLy/HZZddhhtvvBEmkwkvvPCCYId09NFH45VXXsGMGTMwfPhwFBcX45xzzhE87969e3Hddddh1KhRmDZtGgBg/vz5WLVqFS6//HKsW7cuMZpxwgknSG63y+XCvffei6lTp2LixIkYO3YsPv74Y7z44ov461//iq5duyb2nT9/Pu6++26sWrUqEdyNGDECEydOxMyZM7F3714MGDAA//rXv7Bjxw4888wzKdf661//iuOPPz7xO//ll1/w4IMP4vTTT8cZZ5yRs63nnnsu3njjDTDG2gUc3333Hc466yyMHz8ev/76Kx555BGUlZXh008/xUsvvYSLL75Y8rPJxIoVK3DOOefQmm6CUBGSziTpzEyQdGYrJJ1JFBx6lEwnOj87d+5kkyZNYpWVlczhcLCDDz6YTZ06lYVCIcZYm9yRkKwYY60SYQMHDmQ2m4316NGDXXfddaypqSmxfdu2bezKK69khxxyCHM6naxr165s1KhR7MMPP0zss3LlSnbuueey6upqZrfbWXV1Nbv44ovZDz/8kLXtYo8Lh8PsH//4BzvyyCOZw+Fg5eXl7Oijj2Z33313O/mrZ599ltXU1CT2O/nkk9mKFSsS2+vq6ti4ceNYSUkJA5CQdkqXDOO88sorifN17dqVXXLJJeyXX35J2eeyyy5jRUVF7e5v9uzZTIzpf/LJJ+y4445jLpeLVVdXs1tuuYW9//777drT0tLC/vCHP7AuXbowAFnlw37/+9+zkpIStmPHjpTP33zzTQaA/eMf/8jZLjE8+eST7PDDD2d2u50dcsgh7OGHH06R1WKs7TmkP9tAIMD+/Oc/s6qqKuZwONjw4cPZ8uXLBa/z8ccfs+OPP545nU5WWVnJpk6dyjwej6g2fv311wxAO9k5AGzGjBls4sSJzOVysZ49e7L58+ezhQsXMrfbza6++mrGWGYb4veVLnkn9Hv47rvvGIAUuyEIQjkknUnSmdkg6UySziQKD0q6CYIgdOLUU09lf/zjH1M+yxRsaMFNN93Eampq2r2QIAhCPrFYjJWWlrJzzz036348YfjXv/6V8vmSJUsYAPbuu++mfB4KhVhpaSk777zzGGOtL58BsKuvvpr5fL6s13j66afbJbxi2pbtuPHjx7MjjzyS7du3L+Xvhx9+YADYnDlzGGOM3X///QwA27hxY9Zrik26eYK0YMGCdvsOHDgwJZnmSffevXtT9rvxxhtZeXl51vak4/F42L59+9iLL77IALDa2trENqlJN2OMvfTSSwwAO/bYY5nJZBJ8+blu3Tq2YsWKnH8//fRT4pgrr7ySuVwuwWv27t075+/y4IMPZmeeeWa7z3/66ScGgD388MOMMcaef/55BoB9/vnn7fa99NJLWVlZWdbrvPLKKwwAW7duXbttUpPuV199NWW/6dOnC76UnjBhAuvdu3e78/IX0I8//njWNhOEEmh6OUEQhE787W9/w0knnYQ5c+bkXS6lsbERTz/9NF599VWaWk4QKpJv6cyHHnoIixcvxkknnYTx48fjj3/8Y0I68MILL8TTTz+Nq6++GrfddhtGjx6N3//+9zj//POzFiYTc9zWrVvx3XfftZOl5Oglnblu3bqUz5RKZ95xxx346KOP2hXYVEM688UXX8Q777yDa665JqN0plRIOpOkMwljQkk3QRCETowYMSJjcKQ1FRUVkrRUCYLQBpLO1BaSzmyFpDMzn4OkM4l8QNXLCYIgCIIgVIKkM0k6UwwknUnSmURhYbike+7cuRg+fDhKSkrQvXt3TJgwQdCxprN06VIMHDgQTqcTQ4YMaSe5wBjDrFmz0LNnT7hcLowZMwZbt27V6jYIgiBkwRgTlEohCKJjQNKZJJ2ZC5LOJOlMogDRaS15RsaOHcuee+45tmnTJlZbW8vOOuss1qdPH9bS0pLxmE8++YRZLBZ23333sc2bN7M77riD2Ww29s033yT2+fvf/87KysrYsmXL2H/+8x82fvx41r9//5TKlwRBEARBEEr55ZdfWFVVFXO73Wz69Onsn//8J7vrrrvYkUcemVDiyKbiwVUITj/9dDZ//nx2ww03MIvFwoYPH87C4TBjjLE33niD9erVi02fPp0tWLCAPfroo2z48OHMZrOx9evXM8baiiXecccd7KmnnmJ//etfWa9evdhBBx3EDhw4kLH9Yo6LxWLsrLPOYiaTiV100UXsscceY/PmzWNTpkxhXbt2TbmvO++8kwFgxx9/PHvggQfYY489xiZNmsRuu+22xD7XX389M5lM7N5772UvvfQSW7lyJWNMWMWDP7sRI0awefPmsZkzZzK328369euXonSiRMWjoaGBlZeXs759+7IHH3yQPfTQQ6ympoYNHTq0XXvuu+8+BoD96U9/YkuWLGFvvfVWxvPW19ezbt26sVGjRiWKWDY0NLAePXqwkSNHSip4l4nHH3+c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"
     },
     "metadata": {},
     "output_type": "display_data",
     "jetTransient": {
      "display_id": null
     }
    }
   ],
   "execution_count": 20
  },
  {
   "cell_type": "markdown",
   "id": "c67fdc68",
   "metadata": {},
   "source": [
    "## Simulation Submission\n",
    "\n",
    "Here we discuss the process for submitting, managing, monitoring, and loading simulations from our server.\n",
    "\n",
    "Topics covered will include:\n",
    "\n",
    "* [tidy3d.web](https://docs.flexcompute.com/projects/tidy3d/en/latest/api/index.html#submitting-simulations) functions.\n",
    "\n",
    "* working with [tidy3d.web.Job](https://docs.flexcompute.com/projects/tidy3d/en/latest/api/_autosummary/tidy3d.web.api.container.Job.html#tidy3d.web.Job) and [tidy3d.web.Batch](https://docs.flexcompute.com/projects/tidy3d/en/latest/api/_autosummary/tidy3d.web.api.container.Batch.html#tidy3d.web.Batch) convenience containers."
   ]
  },
  {
   "cell_type": "code",
   "id": "9f16e7e9",
   "metadata": {
    "tags": [],
    "ExecuteTime": {
     "end_time": "2025-10-29T14:07:21.103223Z",
     "start_time": "2025-10-29T14:07:20.988221Z"
    }
   },
   "source": [
    "import tidy3d.web as web"
   ],
   "outputs": [],
   "execution_count": 21
  },
  {
   "cell_type": "markdown",
   "id": "b388e315",
   "metadata": {},
   "source": [
    "### Web interface\n",
    "\n",
    "The web interface provides a number of basic functions, but usually, the most convenient way to run a single simulation in one line is with [sim_data = web.run(sim)](https://docs.flexcompute.com/projects/tidy3d/en/latest/api/_autosummary/tidy3d.web.api.webapi.run.html#tidy3d.web.run), which simply performs all of the necessary steps under the hood.\n",
    "\n",
    "The output of the simulation is a separate data object called a [SimulationData](https://docs.flexcompute.com/projects/tidy3d/en/latest/api/_autosummary/tidy3d.SimulationData.html), which provides an interface for post processing and visualizing the data."
   ]
  },
  {
   "cell_type": "code",
   "id": "1f75f482",
   "metadata": {
    "tags": [],
    "ExecuteTime": {
     "end_time": "2025-10-29T14:07:40.157833Z",
     "start_time": "2025-10-29T14:07:21.109648Z"
    }
   },
   "source": [
    "sim_data = web.run(sim, task_name=\"web_demo\", path=\"data/data.hdf5\", verbose=True)"
   ],
   "outputs": [
    {
     "data": {
      "text/plain": [
       "\u001B[2;36m15:07:22 CET\u001B[0m\u001B[2;36m \u001B[0mCreated task \u001B[32m'web_demo'\u001B[0m with resource_id                           \n",
       "\u001B[2;36m             \u001B[0m\u001B[32m'fdve-fae17aac-8105-4166-a1a7-6cf1b414a498'\u001B[0m and task_type \u001B[32m'FDTD'\u001B[0m.  \n"
      ],
      "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\">15:07:22 CET </span>Created task <span style=\"color: #008000; text-decoration-color: #008000\">'web_demo'</span> with resource_id                           \n",
       "<span style=\"color: #7fbfbf; text-decoration-color: #7fbfbf\">             </span><span style=\"color: #008000; text-decoration-color: #008000\">'fdve-fae17aac-8105-4166-a1a7-6cf1b414a498'</span> and task_type <span style=\"color: #008000; text-decoration-color: #008000\">'FDTD'</span>.  \n",
       "</pre>\n"
      ]
     },
     "metadata": {},
     "output_type": "display_data",
     "jetTransient": {
      "display_id": null
     }
    },
    {
     "data": {
      "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=931149;https://tidy3d.simulation.cloud/workbench?taskId=fdve-fae17aac-8105-4166-a1a7-6cf1b414a498\u001B\\\u001B[32m'https://tidy3d.simulation.cloud/workbench?\u001B[0m\u001B]8;;\u001B\\\u001B]8;id=902976;https://tidy3d.simulation.cloud/workbench?taskId=fdve-fae17aac-8105-4166-a1a7-6cf1b414a498\u001B\\\u001B[32mtaskId\u001B[0m\u001B]8;;\u001B\\\u001B]8;id=931149;https://tidy3d.simulation.cloud/workbench?taskId=fdve-fae17aac-8105-4166-a1a7-6cf1b414a498\u001B\\\u001B[32m=\u001B[0m\u001B]8;;\u001B\\\u001B]8;id=868005;https://tidy3d.simulation.cloud/workbench?taskId=fdve-fae17aac-8105-4166-a1a7-6cf1b414a498\u001B\\\u001B[32mfdve\u001B[0m\u001B]8;;\u001B\\\u001B]8;id=931149;https://tidy3d.simulation.cloud/workbench?taskId=fdve-fae17aac-8105-4166-a1a7-6cf1b414a498\u001B\\\u001B[32m-fae17aac-810\u001B[0m\u001B]8;;\u001B\\\n",
       "\u001B[2;36m             \u001B[0m\u001B]8;id=931149;https://tidy3d.simulation.cloud/workbench?taskId=fdve-fae17aac-8105-4166-a1a7-6cf1b414a498\u001B\\\u001B[32m5-4166-a1a7-6cf1b414a498'\u001B[0m\u001B]8;;\u001B\\.                                         \n"
      ],
      "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-fae17aac-8105-4166-a1a7-6cf1b414a498\" target=\"_blank\"><span style=\"color: #008000; text-decoration-color: #008000\">'https://tidy3d.simulation.cloud/workbench?taskId=fdve-fae17aac-810</span></a>\n",
       "<span style=\"color: #7fbfbf; text-decoration-color: #7fbfbf\">             </span><a href=\"https://tidy3d.simulation.cloud/workbench?taskId=fdve-fae17aac-8105-4166-a1a7-6cf1b414a498\" target=\"_blank\"><span style=\"color: #008000; text-decoration-color: #008000\">5-4166-a1a7-6cf1b414a498'</span></a>.                                         \n",
       "</pre>\n"
      ]
     },
     "metadata": {},
     "output_type": "display_data",
     "jetTransient": {
      "display_id": null
     }
    },
    {
     "data": {
      "text/plain": [
       "\u001B[2;36m            \u001B[0m\u001B[2;36m \u001B[0mTask folder: \u001B]8;id=289248;https://tidy3d.simulation.cloud/folders/folder-df61810d-cad6-4474-8ea9-e4f00d5dfcb0\u001B\\\u001B[32m'default'\u001B[0m\u001B]8;;\u001B\\.                                            \n"
      ],
      "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/folder-df61810d-cad6-4474-8ea9-e4f00d5dfcb0\" target=\"_blank\"><span style=\"color: #008000; text-decoration-color: #008000\">'default'</span></a>.                                            \n",
       "</pre>\n"
      ]
     },
     "metadata": {},
     "output_type": "display_data",
     "jetTransient": {
      "display_id": null
     }
    },
    {
     "data": {
      "text/plain": [
       "Output()"
      ],
      "application/vnd.jupyter.widget-view+json": {
       "version_major": 2,
       "version_minor": 0,
       "model_id": "9bffc984a9704fb087642b024516c78f"
      }
     },
     "metadata": {},
     "output_type": "display_data",
     "jetTransient": {
      "display_id": null
     }
    },
    {
     "data": {
      "text/plain": [],
      "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"
      ]
     },
     "metadata": {},
     "output_type": "display_data",
     "jetTransient": {
      "display_id": null
     }
    },
    {
     "data": {
      "text/plain": [
       "\u001B[2;36m15:07:24 CET\u001B[0m\u001B[2;36m \u001B[0mEstimated FlexCredit cost: \u001B[1;36m0.025\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"
      ],
      "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\">15:07:24 CET </span>Estimated FlexCredit cost: <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.025</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"
      ]
     },
     "metadata": {},
     "output_type": "display_data",
     "jetTransient": {
      "display_id": null
     }
    },
    {
     "data": {
      "text/plain": [
       "\u001B[2;36m15:07:28 CET\u001B[0m\u001B[2;36m \u001B[0mstatus = queued                                                    \n"
      ],
      "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\">15:07:28 CET </span>status = queued                                                    \n",
       "</pre>\n"
      ]
     },
     "metadata": {},
     "output_type": "display_data",
     "jetTransient": {
      "display_id": null
     }
    },
    {
     "data": {
      "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"
      ],
      "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"
      ]
     },
     "metadata": {},
     "output_type": "display_data",
     "jetTransient": {
      "display_id": null
     }
    },
    {
     "data": {
      "text/plain": [
       "Output()"
      ],
      "application/vnd.jupyter.widget-view+json": {
       "version_major": 2,
       "version_minor": 0,
       "model_id": "16707bb8bc7d451c880f2da99069b66d"
      }
     },
     "metadata": {},
     "output_type": "display_data",
     "jetTransient": {
      "display_id": null
     }
    },
    {
     "data": {
      "text/plain": [],
      "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"
      ]
     },
     "metadata": {},
     "output_type": "display_data",
     "jetTransient": {
      "display_id": null
     }
    },
    {
     "data": {
      "text/plain": [
       "\u001B[2;36m15:07:36 CET\u001B[0m\u001B[2;36m \u001B[0mstarting up solver                                                 \n"
      ],
      "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\">15:07:36 CET </span>starting up solver                                                 \n",
       "</pre>\n"
      ]
     },
     "metadata": {},
     "output_type": "display_data",
     "jetTransient": {
      "display_id": null
     }
    },
    {
     "data": {
      "text/plain": [
       "\u001B[2;36m            \u001B[0m\u001B[2;36m \u001B[0mrunning solver                                                     \n"
      ],
      "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>running solver                                                     \n",
       "</pre>\n"
      ]
     },
     "metadata": {},
     "output_type": "display_data",
     "jetTransient": {
      "display_id": null
     }
    },
    {
     "data": {
      "text/plain": [
       "Output()"
      ],
      "application/vnd.jupyter.widget-view+json": {
       "version_major": 2,
       "version_minor": 0,
       "model_id": "d07527d88d2544169b48447f305621ea"
      }
     },
     "metadata": {},
     "output_type": "display_data",
     "jetTransient": {
      "display_id": null
     }
    },
    {
     "data": {
      "text/plain": [],
      "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"
      ]
     },
     "metadata": {},
     "output_type": "display_data",
     "jetTransient": {
      "display_id": null
     }
    },
    {
     "data": {
      "text/plain": [
       "\u001B[2;36m15:07:37 CET\u001B[0m\u001B[2;36m \u001B[0mstatus = success                                                   \n"
      ],
      "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\">15:07:37 CET </span>status = success                                                   \n",
       "</pre>\n"
      ]
     },
     "metadata": {},
     "output_type": "display_data",
     "jetTransient": {
      "display_id": null
     }
    },
    {
     "data": {
      "text/plain": [],
      "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"
      ]
     },
     "metadata": {},
     "output_type": "display_data",
     "jetTransient": {
      "display_id": null
     }
    },
    {
     "data": {
      "text/plain": [
       "\u001B[2;36m            \u001B[0m\u001B[2;36m \u001B[0mView simulation result at                                          \n",
       "\u001B[2;36m             \u001B[0m\u001B]8;id=107730;https://tidy3d.simulation.cloud/workbench?taskId=fdve-fae17aac-8105-4166-a1a7-6cf1b414a498\u001B\\\u001B[4;34m'https://tidy3d.simulation.cloud/workbench?\u001B[0m\u001B]8;;\u001B\\\u001B]8;id=30983;https://tidy3d.simulation.cloud/workbench?taskId=fdve-fae17aac-8105-4166-a1a7-6cf1b414a498\u001B\\\u001B[4;34mtaskId\u001B[0m\u001B]8;;\u001B\\\u001B]8;id=107730;https://tidy3d.simulation.cloud/workbench?taskId=fdve-fae17aac-8105-4166-a1a7-6cf1b414a498\u001B\\\u001B[4;34m=\u001B[0m\u001B]8;;\u001B\\\u001B]8;id=150243;https://tidy3d.simulation.cloud/workbench?taskId=fdve-fae17aac-8105-4166-a1a7-6cf1b414a498\u001B\\\u001B[4;34mfdve\u001B[0m\u001B]8;;\u001B\\\u001B]8;id=107730;https://tidy3d.simulation.cloud/workbench?taskId=fdve-fae17aac-8105-4166-a1a7-6cf1b414a498\u001B\\\u001B[4;34m-fae17aac-810\u001B[0m\u001B]8;;\u001B\\\n",
       "\u001B[2;36m             \u001B[0m\u001B]8;id=107730;https://tidy3d.simulation.cloud/workbench?taskId=fdve-fae17aac-8105-4166-a1a7-6cf1b414a498\u001B\\\u001B[4;34m5-4166-a1a7-6cf1b414a498'\u001B[0m\u001B]8;;\u001B\\\u001B[4;34m.\u001B[0m                                         \n"
      ],
      "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 simulation result at                                          \n",
       "<span style=\"color: #7fbfbf; text-decoration-color: #7fbfbf\">             </span><a href=\"https://tidy3d.simulation.cloud/workbench?taskId=fdve-fae17aac-8105-4166-a1a7-6cf1b414a498\" target=\"_blank\"><span style=\"color: #000080; text-decoration-color: #000080; text-decoration: underline\">'https://tidy3d.simulation.cloud/workbench?taskId=fdve-fae17aac-810</span></a>\n",
       "<span style=\"color: #7fbfbf; text-decoration-color: #7fbfbf\">             </span><a href=\"https://tidy3d.simulation.cloud/workbench?taskId=fdve-fae17aac-8105-4166-a1a7-6cf1b414a498\" target=\"_blank\"><span style=\"color: #000080; text-decoration-color: #000080; text-decoration: underline\">5-4166-a1a7-6cf1b414a498'</span></a><span style=\"color: #000080; text-decoration-color: #000080; text-decoration: underline\">.</span>                                         \n",
       "</pre>\n"
      ]
     },
     "metadata": {},
     "output_type": "display_data",
     "jetTransient": {
      "display_id": null
     }
    },
    {
     "data": {
      "text/plain": [
       "Output()"
      ],
      "application/vnd.jupyter.widget-view+json": {
       "version_major": 2,
       "version_minor": 0,
       "model_id": "f5f26b8688c5414a8b552ea38351f003"
      }
     },
     "metadata": {},
     "output_type": "display_data",
     "jetTransient": {
      "display_id": null
     }
    },
    {
     "data": {
      "text/plain": [],
      "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"
      ]
     },
     "metadata": {},
     "output_type": "display_data",
     "jetTransient": {
      "display_id": null
     }
    },
    {
     "data": {
      "text/plain": [
       "\u001B[2;36m15:07:40 CET\u001B[0m\u001B[2;36m \u001B[0mLoading simulation from data/data.hdf5                             \n"
      ],
      "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\">15:07:40 CET </span>Loading simulation from data/data.hdf5                             \n",
       "</pre>\n"
      ]
     },
     "metadata": {},
     "output_type": "display_data",
     "jetTransient": {
      "display_id": null
     }
    },
    {
     "data": {
      "text/plain": [
       "\u001B[2;36m            \u001B[0m\u001B[2;36m \u001B[0m\u001B[31mWARNING: Simulation final field decay value of \u001B[0m\u001B[1;36m0.00665\u001B[0m\u001B[31m is greater  \u001B[0m\n",
       "\u001B[2;36m             \u001B[0m\u001B[31mthan the simulation shutoff threshold of \u001B[0m\u001B[1;36m1e-05\u001B[0m\u001B[31m. Consider running   \u001B[0m\n",
       "\u001B[2;36m             \u001B[0m\u001B[31mthe simulation again with a larger \u001B[0m\u001B[32m'run_time'\u001B[0m\u001B[31m duration for more    \u001B[0m\n",
       "\u001B[2;36m             \u001B[0m\u001B[31maccurate results.                                                  \u001B[0m\n"
      ],
      "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: Simulation final field decay value of </span><span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.00665</span><span style=\"color: #800000; text-decoration-color: #800000\"> is greater  </span>\n",
       "<span style=\"color: #7fbfbf; text-decoration-color: #7fbfbf\">             </span><span style=\"color: #800000; text-decoration-color: #800000\">than the simulation shutoff threshold of </span><span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">1e-05</span><span style=\"color: #800000; text-decoration-color: #800000\">. Consider running   </span>\n",
       "<span style=\"color: #7fbfbf; text-decoration-color: #7fbfbf\">             </span><span style=\"color: #800000; text-decoration-color: #800000\">the simulation again with a larger </span><span style=\"color: #008000; text-decoration-color: #008000\">'run_time'</span><span style=\"color: #800000; text-decoration-color: #800000\"> duration for more    </span>\n",
       "<span style=\"color: #7fbfbf; text-decoration-color: #7fbfbf\">             </span><span style=\"color: #800000; text-decoration-color: #800000\">accurate results.                                                  </span>\n",
       "</pre>\n"
      ]
     },
     "metadata": {},
     "output_type": "display_data",
     "jetTransient": {
      "display_id": null
     }
    }
   ],
   "execution_count": 22
  },
  {
   "cell_type": "markdown",
   "id": "1d57c398-4e72-43e7-840b-0fa72e286be4",
   "metadata": {},
   "source": [
    "> Note: the warning here tells us that we should probably increase the `run_time` of our `Simulation` to ensure the fields properly decay. Since this notebook is just a demonstration and we don't care about the results, we can ignore it in this case."
   ]
  },
  {
   "cell_type": "markdown",
   "id": "fc5071ee",
   "metadata": {},
   "source": [
    "### Containers and Batching\n",
    "Since `Tidy3D` version `2.10`, [web.run](https://docs.flexcompute.com/projects/tidy3d/en/latest/api/_autosummary/tidy3d.web.api.run.run.html) is also capable of running any nested combination of lists, tuples, and dictionaries of simulations and returning them in the same structure. The legacy function `web.run_async` will be deprecated.\n",
    "\n",
    "The convenience containers [Job](https://docs.flexcompute.com/projects/tidy3d/en/latest/api/_autosummary/tidy3d.web.api.container.Job.html#tidy3d.web.Job) and [Batch](https://docs.flexcompute.com/projects/tidy3d/en/latest/api/_autosummary/tidy3d.web.api.container.Batch.html#tidy3d.web.Batch) allow one to manage single and multiple tasks in a more \"object oriented\" fashion.\n",
    "\n",
    "They follow the same basic API as the `web.` functions, except [Batch](https://docs.flexcompute.com/projects/tidy3d/en/latest/api/_autosummary/tidy3d.web.api.container.Batch.html#tidy3d.web.Batch) objects accept a dictionary of simulations and return generators that can be iterated through to give [SimulationData](https://docs.flexcompute.com/projects/tidy3d/en/latest/api/_autosummary/tidy3d.SimulationData.html) for each task, rather than returning it one by one.  This cuts down on memory for several large jobs.  \n",
    "\n",
    "While we won't cover all of the details here, for more information, see the [tutorial on the Web API](../notebooks/Webapi/index.html) or look at the examples in the other notebooks.\n"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "b6045533",
   "metadata": {},
   "source": [
    "## Output Data\n",
    "\n",
    "Here we will discuss working with output data from a simulation.\n",
    "\n",
    "Topics covered will include:\n",
    "\n",
    "- [SimulationData](https://docs.flexcompute.com/projects/tidy3d/en/latest/api/_autosummary/tidy3d.SimulationData.html) objects.\n",
    "\n",
    "- Obtaining information about a completed FDTD simulation.\n",
    "\n",
    "- Selecting data by monitor or field value.\n",
    "\n",
    "- Post-processing and visualizing data.\n",
    "\n",
    "### Simulation Data\n",
    "\n",
    "As mentioned, tidy3d data for a single task is stored in a [SimulationData](https://docs.flexcompute.com/projects/tidy3d/en/latest/api/_autosummary/tidy3d.SimulationData.html) object.\n",
    "\n",
    "In addition to storing the data for each of the individual monitors in the simulation, it has its own useful functionality."
   ]
  },
  {
   "cell_type": "code",
   "id": "b4632332",
   "metadata": {
    "ExecuteTime": {
     "end_time": "2025-10-29T14:07:40.324750Z",
     "start_time": "2025-10-29T14:07:40.163427Z"
    }
   },
   "source": [
    "# print the log, which is stored as an attribute rather than as its own file\n",
    "print(sim_data.log)\n",
    "\n",
    "# get a copy of the original Simulation, so it also doesn't need to be stored separately\n",
    "sim_data.simulation.help()"
   ],
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[14:07:31] USER: Simulation domain Nx, Ny, Nz: [20, 44, 20]                     \n",
      "           USER: Applied symmetries: (0, 0, 0)                                  \n",
      "           USER: Number of computational grid points: 1.8400e+04.               \n",
      "           USER: Subpixel averaging method: SubpixelSpec(attrs={},              \n",
      "           dielectric=PolarizedAveraging(attrs={}, type='PolarizedAveraging'),  \n",
      "           metal=Staircasing(attrs={}, type='Staircasing'),                     \n",
      "           pec=PECConformal(attrs={}, type='PECConformal',                      \n",
      "           timestep_reduction=0.3, edge_singularity_correction=True),           \n",
      "           pmc=Staircasing(attrs={}, type='Staircasing'),                       \n",
      "           lossy_metal=SurfaceImpedance(attrs={}, type='SurfaceImpedance',      \n",
      "           timestep_reduction=0.0, edge_singularity_correction=True),           \n",
      "           type='SubpixelSpec')                                                 \n",
      "           USER: Number of time steps: 2.6240e+03                               \n",
      "           USER: Automatic shutoff factor: 1.00e-05                             \n",
      "           USER: Time step (s): 3.8131e-16                                      \n",
      "           USER:                                                                \n",
      "                                                                                \n",
      "           USER: Compute source modes time (s):     0.0500                      \n",
      "           USER: Rest of setup time (s):            0.2928                      \n",
      "[14:07:32] USER: Compute monitor modes time (s):    0.0001                      \n",
      "           USER: Solver time (s):                   0.3610                      \n",
      "           USER: Time-stepping speed (cells/s):     1.40e+08                    \n",
      "[14:07:33] USER: Post-processing time (s):          0.1782                      \n",
      "\n",
      " ====== SOLVER LOG ====== \n",
      "\n",
      "Processing grid and structures...\n",
      "Building FDTD update coefficients...\n",
      "Solver setup time (s):             0.0139\n",
      "\n",
      "Running solver for 2624 time steps...\n",
      "- Time step    104 / time 3.97e-14s (  4 % done), field decay: 1.00e+00\n",
      "- Time step    209 / time 7.97e-14s (  8 % done), field decay: 1.00e+00\n",
      "- Time step    314 / time 1.20e-13s ( 12 % done), field decay: 8.37e-01\n",
      "- Time step    419 / time 1.60e-13s ( 16 % done), field decay: 6.39e-01\n",
      "- Time step    524 / time 2.00e-13s ( 20 % done), field decay: 5.01e-01\n",
      "- Time step    629 / time 2.40e-13s ( 24 % done), field decay: 1.96e-01\n",
      "- Time step    734 / time 2.80e-13s ( 28 % done), field decay: 1.68e-02\n",
      "- Time step    839 / time 3.20e-13s ( 32 % done), field decay: 5.76e-02\n",
      "- Time step    944 / time 3.60e-13s ( 36 % done), field decay: 1.87e-01\n",
      "- Time step   1049 / time 4.00e-13s ( 40 % done), field decay: 2.24e-01\n",
      "- Time step   1154 / time 4.40e-13s ( 44 % done), field decay: 1.52e-01\n",
      "- Time step   1259 / time 4.80e-13s ( 48 % done), field decay: 5.30e-02\n",
      "- Time step   1364 / time 5.20e-13s ( 52 % done), field decay: 8.46e-03\n",
      "- Time step   1469 / time 5.60e-13s ( 56 % done), field decay: 3.79e-02\n",
      "- Time step   1574 / time 6.00e-13s ( 60 % done), field decay: 8.47e-02\n",
      "- Time step   1679 / time 6.40e-13s ( 64 % done), field decay: 9.63e-02\n",
      "- Time step   1784 / time 6.80e-13s ( 68 % done), field decay: 6.24e-02\n",
      "- Time step   1889 / time 7.20e-13s ( 72 % done), field decay: 2.18e-02\n",
      "- Time step   1994 / time 7.60e-13s ( 76 % done), field decay: 3.68e-03\n",
      "- Time step   2099 / time 8.00e-13s ( 80 % done), field decay: 1.79e-02\n",
      "- Time step   2204 / time 8.40e-13s ( 84 % done), field decay: 4.02e-02\n",
      "- Time step   2309 / time 8.80e-13s ( 88 % done), field decay: 4.54e-02\n",
      "- Time step   2414 / time 9.20e-13s ( 92 % done), field decay: 2.74e-02\n",
      "- Time step   2519 / time 9.61e-13s ( 96 % done), field decay: 6.95e-03\n",
      "- Time step   2623 / time 1.00e-12s (100 % done), field decay: 6.65e-03\n",
      "Time-stepping time (s):            0.3460\n",
      "Data write time (s):               0.0014\n",
      "\n"
     ]
    },
    {
     "data": {
      "text/plain": [
       "\u001B[2;36m            \u001B[0m\u001B[2;36m \u001B[0m\u001B[31mWARNING: \u001B[0m\u001B[32m'Simulation.background_structure'\u001B[0m\u001B[31m will be removed in      \u001B[0m\n",
       "\u001B[2;36m             \u001B[0m\u001B[31mTidy3D \u001B[0m\u001B[1;36m3.0\u001B[0m\u001B[31m. Use \u001B[0m\u001B[32m'Simulation.scene.background_structure'\u001B[0m\u001B[31m instead.   \u001B[0m\n"
      ],
      "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\">'Simulation.background_structure'</span><span style=\"color: #800000; text-decoration-color: #800000\"> will be removed in      </span>\n",
       "<span style=\"color: #7fbfbf; text-decoration-color: #7fbfbf\">             </span><span style=\"color: #800000; text-decoration-color: #800000\">Tidy3D </span><span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">3.0</span><span style=\"color: #800000; text-decoration-color: #800000\">. Use </span><span style=\"color: #008000; text-decoration-color: #008000\">'Simulation.scene.background_structure'</span><span style=\"color: #800000; text-decoration-color: #800000\"> instead.   </span>\n",
       "</pre>\n"
      ]
     },
     "metadata": {},
     "output_type": "display_data",
     "jetTransient": {
      "display_id": null
     }
    },
    {
     "data": {
      "text/plain": [
       "\u001B[2;36m            \u001B[0m\u001B[2;36m \u001B[0m\u001B[31mWARNING: \u001B[0m\u001B[32m'Simulation.bounds_pml'\u001B[0m\u001B[31m will be removed in Tidy3D \u001B[0m\u001B[1;36m3.0\u001B[0m\u001B[31m. Use\u001B[0m\n",
       "\u001B[2;36m             \u001B[0m\u001B[32m'Simulation.simulation_bounds'\u001B[0m\u001B[31m instead.                            \u001B[0m\n"
      ],
      "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\">'Simulation.bounds_pml'</span><span style=\"color: #800000; text-decoration-color: #800000\"> will be removed in Tidy3D </span><span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">3.0</span><span style=\"color: #800000; text-decoration-color: #800000\">. Use</span>\n",
       "<span style=\"color: #7fbfbf; text-decoration-color: #7fbfbf\">             </span><span style=\"color: #008000; text-decoration-color: #008000\">'Simulation.simulation_bounds'</span><span style=\"color: #800000; text-decoration-color: #800000\"> instead.                            </span>\n",
       "</pre>\n"
      ]
     },
     "metadata": {},
     "output_type": "display_data",
     "jetTransient": {
      "display_id": null
     }
    },
    {
     "data": {
      "text/plain": [
       "\u001B[2;36m            \u001B[0m\u001B[2;36m \u001B[0m\u001B[31mWARNING: \u001B[0m\u001B[32m'Simulation.medium_map'\u001B[0m\u001B[31m will be removed in Tidy3D \u001B[0m\u001B[1;36m3.0\u001B[0m\u001B[31m. Use\u001B[0m\n",
       "\u001B[2;36m             \u001B[0m\u001B[32m'Simulation.scene.medium_map'\u001B[0m\u001B[31m instead.                             \u001B[0m\n"
      ],
      "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\">'Simulation.medium_map'</span><span style=\"color: #800000; text-decoration-color: #800000\"> will be removed in Tidy3D </span><span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">3.0</span><span style=\"color: #800000; text-decoration-color: #800000\">. Use</span>\n",
       "<span style=\"color: #7fbfbf; text-decoration-color: #7fbfbf\">             </span><span style=\"color: #008000; text-decoration-color: #008000\">'Simulation.scene.medium_map'</span><span style=\"color: #800000; text-decoration-color: #800000\"> instead.                             </span>\n",
       "</pre>\n"
      ]
     },
     "metadata": {},
     "output_type": "display_data",
     "jetTransient": {
      "display_id": null
     }
    },
    {
     "data": {
      "text/plain": [
       "\u001B[2;36m            \u001B[0m\u001B[2;36m \u001B[0m\u001B[31mWARNING: \u001B[0m\u001B[32m'Simulation.mediums'\u001B[0m\u001B[31m will be removed in Tidy3D \u001B[0m\u001B[1;36m3.0\u001B[0m\u001B[31m. Use   \u001B[0m\n",
       "\u001B[2;36m             \u001B[0m\u001B[32m'Simulation.scene.mediums'\u001B[0m\u001B[31m instead.                                \u001B[0m\n"
      ],
      "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\">'Simulation.mediums'</span><span style=\"color: #800000; text-decoration-color: #800000\"> will be removed in Tidy3D </span><span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">3.0</span><span style=\"color: #800000; text-decoration-color: #800000\">. Use   </span>\n",
       "<span style=\"color: #7fbfbf; text-decoration-color: #7fbfbf\">             </span><span style=\"color: #008000; text-decoration-color: #008000\">'Simulation.scene.mediums'</span><span style=\"color: #800000; text-decoration-color: #800000\"> instead.                                </span>\n",
       "</pre>\n"
      ]
     },
     "metadata": {},
     "output_type": "display_data",
     "jetTransient": {
      "display_id": null
     }
    },
    {
     "data": {
      "text/plain": [
       "\u001B[34m╭─\u001B[0m\u001B[34m──────────────────────────────\u001B[0m\u001B[34m \u001B[0m\u001B[1;34m<\u001B[0m\u001B[1;95mclass\u001B[0m\u001B[39m \u001B[0m\u001B[32m'tidy3d.components.simulation.Simulation'\u001B[0m\u001B[1;34m>\u001B[0m\u001B[34m \u001B[0m\u001B[34m──────────────────────────────\u001B[0m\u001B[34m─╮\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[36mCustom implementation of Maxwell’s equations which represents the physical model to be solved using the FDTD\u001B[0m    \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[36mmethod.\u001B[0m                                                                                                         \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                                                                                                 \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m╭─────────────────────────────────────────────────────────────────────────────────────────────────────────────╮\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[1;35mSimulation\u001B[0m\u001B[1m(\u001B[0m                                                                                                 \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   \u001B[0m\u001B[33mattrs\u001B[0m=\u001B[1m{\u001B[0m\u001B[1m}\u001B[0m,                                                                                               \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   \u001B[0m\u001B[33mtype\u001B[0m=\u001B[32m'Simulation'\u001B[0m,                                                                                      \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   \u001B[0m\u001B[33mcenter\u001B[0m=\u001B[1m(\u001B[0m\u001B[1;36m0.0\u001B[0m, \u001B[1;36m0.0\u001B[0m, \u001B[1;36m0.0\u001B[0m\u001B[1m)\u001B[0m,                                                                                 \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   \u001B[0m\u001B[33msize\u001B[0m=\u001B[1m(\u001B[0m\u001B[1;36m4.0\u001B[0m, \u001B[1;36m4.0\u001B[0m, \u001B[1;36m4.0\u001B[0m\u001B[1m)\u001B[0m,                                                                                   \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   \u001B[0m\u001B[33mmedium\u001B[0m=\u001B[1;35mMedium\u001B[0m\u001B[1m(\u001B[0m                                                                                          \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   \u001B[0m\u001B[33mattrs\u001B[0m=\u001B[1m{\u001B[0m\u001B[1m}\u001B[0m,                                                                                           \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   \u001B[0m\u001B[33mname\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                                                          \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   \u001B[0m\u001B[33mfrequency_range\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                                               \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   \u001B[0m\u001B[33mallow_gain\u001B[0m=\u001B[3;91mFalse\u001B[0m,                                                                                   \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   \u001B[0m\u001B[33mnonlinear_spec\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                                                \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   \u001B[0m\u001B[33mmodulation_spec\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                                               \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   \u001B[0m\u001B[33mviz_spec\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                                                      \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   \u001B[0m\u001B[33mheat_spec\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                                                     \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   \u001B[0m\u001B[33mtype\u001B[0m=\u001B[32m'Medium'\u001B[0m,                                                                                      \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   \u001B[0m\u001B[33mpermittivity\u001B[0m=\u001B[1;36m1\u001B[0m\u001B[1;36m.0\u001B[0m,                                                                                   \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   \u001B[0m\u001B[33mconductivity\u001B[0m=\u001B[1;36m0\u001B[0m\u001B[1;36m.0\u001B[0m                                                                                    \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   \u001B[0m\u001B[1m)\u001B[0m,                                                                                                      \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   \u001B[0m\u001B[33mstructures\u001B[0m=\u001B[1m(\u001B[0m                                                                                            \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   \u001B[0m\u001B[1;35mStructure\u001B[0m\u001B[1m(\u001B[0m                                                                                          \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   │   \u001B[0m\u001B[33mattrs\u001B[0m=\u001B[1m{\u001B[0m\u001B[1m}\u001B[0m,                                                                                       \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   │   \u001B[0m\u001B[33mgeometry\u001B[0m=\u001B[1;35mBox\u001B[0m\u001B[1m(\u001B[0m\u001B[33mattrs\u001B[0m=\u001B[1m{\u001B[0m\u001B[1m}\u001B[0m, \u001B[33mtype\u001B[0m=\u001B[32m'Box'\u001B[0m, \u001B[33mcenter\u001B[0m=\u001B[1m(\u001B[0m\u001B[1;36m0.0\u001B[0m, \u001B[1;36m0.0\u001B[0m, \u001B[1;36m0.0\u001B[0m\u001B[1m)\u001B[0m, \u001B[33msize\u001B[0m=\u001B[1m(\u001B[0m\u001B[1;36m1.0\u001B[0m, \u001B[1;36m1.0\u001B[0m, \u001B[1;36m1.0\u001B[0m\u001B[1m)\u001B[0m\u001B[1m)\u001B[0m,               \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   │   \u001B[0m\u001B[33mname\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                                                      \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   │   \u001B[0m\u001B[33mbackground_permittivity\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                                   \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   │   \u001B[0m\u001B[33mbackground_medium\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                                         \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   │   \u001B[0m\u001B[33mpriority\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                                                  \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   │   \u001B[0m\u001B[33mtype\u001B[0m=\u001B[32m'Structure'\u001B[0m,                                                                               \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   │   \u001B[0m\u001B[33mmedium\u001B[0m=\u001B[1;35mMedium\u001B[0m\u001B[1m(\u001B[0m                                                                                  \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   │   │   \u001B[0m\u001B[33mattrs\u001B[0m=\u001B[1m{\u001B[0m\u001B[1m}\u001B[0m,                                                                                   \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   │   │   \u001B[0m\u001B[33mname\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                                                  \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   │   │   \u001B[0m\u001B[33mfrequency_range\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                                       \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   │   │   \u001B[0m\u001B[33mallow_gain\u001B[0m=\u001B[3;91mFalse\u001B[0m,                                                                           \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   │   │   \u001B[0m\u001B[33mnonlinear_spec\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                                        \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   │   │   \u001B[0m\u001B[33mmodulation_spec\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                                       \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   │   │   \u001B[0m\u001B[33mviz_spec\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                                              \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   │   │   \u001B[0m\u001B[33mheat_spec\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                                             \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   │   │   \u001B[0m\u001B[33mtype\u001B[0m=\u001B[32m'Medium'\u001B[0m,                                                                              \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   │   │   \u001B[0m\u001B[33mpermittivity\u001B[0m=\u001B[1;36m2\u001B[0m\u001B[1;36m.0\u001B[0m,                                                                           \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   │   │   \u001B[0m\u001B[33mconductivity\u001B[0m=\u001B[1;36m0\u001B[0m\u001B[1;36m.0\u001B[0m                                                                            \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   │   \u001B[0m\u001B[1m)\u001B[0m                                                                                               \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   \u001B[0m\u001B[1m)\u001B[0m,                                                                                                  \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   \u001B[0m\u001B[1m)\u001B[0m,                                                                                                      \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   \u001B[0m\u001B[33msymmetry\u001B[0m=\u001B[1m(\u001B[0m\u001B[1;36m0\u001B[0m, \u001B[1;36m0\u001B[0m, \u001B[1;36m0\u001B[0m\u001B[1m)\u001B[0m,                                                                                     \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   \u001B[0m\u001B[33msources\u001B[0m=\u001B[1m(\u001B[0m                                                                                               \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   \u001B[0m\u001B[1;35mUniformCurrentSource\u001B[0m\u001B[1m(\u001B[0m                                                                               \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   │   \u001B[0m\u001B[33mattrs\u001B[0m=\u001B[1m{\u001B[0m\u001B[1m}\u001B[0m,                                                                                       \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   │   \u001B[0m\u001B[33mname\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                                                      \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   │   \u001B[0m\u001B[33mtype\u001B[0m=\u001B[32m'UniformCurrentSource'\u001B[0m,                                                                    \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   │   \u001B[0m\u001B[33mcenter\u001B[0m=\u001B[1m(\u001B[0m\u001B[1;36m0.0\u001B[0m, \u001B[1;36m0.0\u001B[0m, \u001B[1;36m0.0\u001B[0m\u001B[1m)\u001B[0m,                                                                         \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   │   \u001B[0m\u001B[33msize\u001B[0m=\u001B[1m(\u001B[0m\u001B[1;36m0.0\u001B[0m, \u001B[1;36m0.0\u001B[0m, \u001B[1;36m0.0\u001B[0m\u001B[1m)\u001B[0m,                                                                           \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   │   \u001B[0m\u001B[33msource_time\u001B[0m=\u001B[1;35mGaussianPulse\u001B[0m\u001B[1m(\u001B[0m                                                                      \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   │   │   \u001B[0m\u001B[33mattrs\u001B[0m=\u001B[1m{\u001B[0m\u001B[1m}\u001B[0m,                                                                                   \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   │   │   \u001B[0m\u001B[33mamplitude\u001B[0m=\u001B[1;36m1\u001B[0m\u001B[1;36m.0\u001B[0m,                                                                              \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   │   │   \u001B[0m\u001B[33mphase\u001B[0m=\u001B[1;36m0\u001B[0m\u001B[1;36m.0\u001B[0m,                                                                                  \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   │   │   \u001B[0m\u001B[33mtype\u001B[0m=\u001B[32m'GaussianPulse'\u001B[0m,                                                                       \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   │   │   \u001B[0m\u001B[33mfreq0\u001B[0m=\u001B[1;36m150000000000000\u001B[0m\u001B[1;36m.0\u001B[0m,                                                                    \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   │   │   \u001B[0m\u001B[33mfwidth\u001B[0m=\u001B[1;36m10000000000000\u001B[0m\u001B[1;36m.0\u001B[0m,                                                                    \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   │   │   \u001B[0m\u001B[33moffset\u001B[0m=\u001B[1;36m5\u001B[0m\u001B[1;36m.0\u001B[0m,                                                                                 \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   │   │   \u001B[0m\u001B[33mremove_dc_component\u001B[0m=\u001B[3;92mTrue\u001B[0m                                                                    \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   │   \u001B[0m\u001B[1m)\u001B[0m,                                                                                              \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   │   \u001B[0m\u001B[33minterpolate\u001B[0m=\u001B[3;92mTrue\u001B[0m,                                                                               \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   │   \u001B[0m\u001B[33mconfine_to_bounds\u001B[0m=\u001B[3;91mFalse\u001B[0m,                                                                        \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   │   \u001B[0m\u001B[33mpolarization\u001B[0m=\u001B[32m'Ez'\u001B[0m                                                                               \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   \u001B[0m\u001B[1m)\u001B[0m,                                                                                                  \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   \u001B[0m\u001B[1m)\u001B[0m,                                                                                                      \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   \u001B[0m\u001B[33mboundary_spec\u001B[0m=\u001B[1;35mBoundarySpec\u001B[0m\u001B[1m(\u001B[0m                                                                             \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   \u001B[0m\u001B[33mattrs\u001B[0m=\u001B[1m{\u001B[0m\u001B[1m}\u001B[0m,                                                                                           \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   \u001B[0m\u001B[33mx\u001B[0m=\u001B[1;35mBoundary\u001B[0m\u001B[1m(\u001B[0m                                                                                         \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   │   \u001B[0m\u001B[33mattrs\u001B[0m=\u001B[1m{\u001B[0m\u001B[1m}\u001B[0m,                                                                                       \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   │   \u001B[0m\u001B[33mplus\u001B[0m=\u001B[1;35mPeriodic\u001B[0m\u001B[1m(\u001B[0m\u001B[33mattrs\u001B[0m=\u001B[1m{\u001B[0m\u001B[1m}\u001B[0m, \u001B[33mname\u001B[0m=\u001B[3;35mNone\u001B[0m, \u001B[33mtype\u001B[0m=\u001B[32m'Periodic'\u001B[0m\u001B[1m)\u001B[0m,                                            \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   │   \u001B[0m\u001B[33mminus\u001B[0m=\u001B[1;35mPeriodic\u001B[0m\u001B[1m(\u001B[0m\u001B[33mattrs\u001B[0m=\u001B[1m{\u001B[0m\u001B[1m}\u001B[0m, \u001B[33mname\u001B[0m=\u001B[3;35mNone\u001B[0m, \u001B[33mtype\u001B[0m=\u001B[32m'Periodic'\u001B[0m\u001B[1m)\u001B[0m,                                           \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   │   \u001B[0m\u001B[33mtype\u001B[0m=\u001B[32m'Boundary'\u001B[0m                                                                                 \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   \u001B[0m\u001B[1m)\u001B[0m,                                                                                                  \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   \u001B[0m\u001B[33my\u001B[0m=\u001B[1;35mBoundary\u001B[0m\u001B[1m(\u001B[0m                                                                                         \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   │   \u001B[0m\u001B[33mattrs\u001B[0m=\u001B[1m{\u001B[0m\u001B[1m}\u001B[0m,                                                                                       \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   │   \u001B[0m\u001B[33mplus\u001B[0m=\u001B[1;35mPML\u001B[0m\u001B[1m(\u001B[0m                                                                                       \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   │   │   \u001B[0m\u001B[33mattrs\u001B[0m=\u001B[1m{\u001B[0m\u001B[1m}\u001B[0m,                                                                                   \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   │   │   \u001B[0m\u001B[33mname\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                                                  \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   │   │   \u001B[0m\u001B[33mtype\u001B[0m=\u001B[32m'PML'\u001B[0m,                                                                                 \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   │   │   \u001B[0m\u001B[33mnum_layers\u001B[0m=\u001B[1;36m12\u001B[0m,                                                                              \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   │   │   \u001B[0m\u001B[33mparameters\u001B[0m=\u001B[1;35mPMLParams\u001B[0m\u001B[1m(\u001B[0m                                                                       \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   │   │   │   \u001B[0m\u001B[33mattrs\u001B[0m=\u001B[1m{\u001B[0m\u001B[1m}\u001B[0m,                                                                               \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   │   │   │   \u001B[0m\u001B[33msigma_order\u001B[0m=\u001B[1;36m3\u001B[0m,                                                                          \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   │   │   │   \u001B[0m\u001B[33msigma_min\u001B[0m=\u001B[1;36m0\u001B[0m\u001B[1;36m.0\u001B[0m,                                                                          \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   │   │   │   \u001B[0m\u001B[33msigma_max\u001B[0m=\u001B[1;36m1\u001B[0m\u001B[1;36m.5\u001B[0m,                                                                          \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   │   │   │   \u001B[0m\u001B[33mtype\u001B[0m=\u001B[32m'PMLParams'\u001B[0m,                                                                       \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   │   │   │   \u001B[0m\u001B[33mkappa_order\u001B[0m=\u001B[1;36m3\u001B[0m,                                                                          \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   │   │   │   \u001B[0m\u001B[33mkappa_min\u001B[0m=\u001B[1;36m1\u001B[0m\u001B[1;36m.0\u001B[0m,                                                                          \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   │   │   │   \u001B[0m\u001B[33mkappa_max\u001B[0m=\u001B[1;36m3\u001B[0m\u001B[1;36m.0\u001B[0m,                                                                          \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   │   │   │   \u001B[0m\u001B[33malpha_order\u001B[0m=\u001B[1;36m1\u001B[0m,                                                                          \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   │   │   │   \u001B[0m\u001B[33malpha_min\u001B[0m=\u001B[1;36m0\u001B[0m\u001B[1;36m.0\u001B[0m,                                                                          \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   │   │   │   \u001B[0m\u001B[33malpha_max\u001B[0m=\u001B[1;36m0\u001B[0m\u001B[1;36m.0\u001B[0m                                                                           \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   │   │   \u001B[0m\u001B[1m)\u001B[0m                                                                                           \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   │   \u001B[0m\u001B[1m)\u001B[0m,                                                                                              \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   │   \u001B[0m\u001B[33mminus\u001B[0m=\u001B[1;35mPML\u001B[0m\u001B[1m(\u001B[0m                                                                                      \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   │   │   \u001B[0m\u001B[33mattrs\u001B[0m=\u001B[1m{\u001B[0m\u001B[1m}\u001B[0m,                                                                                   \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   │   │   \u001B[0m\u001B[33mname\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                                                  \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   │   │   \u001B[0m\u001B[33mtype\u001B[0m=\u001B[32m'PML'\u001B[0m,                                                                                 \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   │   │   \u001B[0m\u001B[33mnum_layers\u001B[0m=\u001B[1;36m12\u001B[0m,                                                                              \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   │   │   \u001B[0m\u001B[33mparameters\u001B[0m=\u001B[1;35mPMLParams\u001B[0m\u001B[1m(\u001B[0m                                                                       \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   │   │   │   \u001B[0m\u001B[33mattrs\u001B[0m=\u001B[1m{\u001B[0m\u001B[1m}\u001B[0m,                                                                               \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   │   │   │   \u001B[0m\u001B[33msigma_order\u001B[0m=\u001B[1;36m3\u001B[0m,                                                                          \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   │   │   │   \u001B[0m\u001B[33msigma_min\u001B[0m=\u001B[1;36m0\u001B[0m\u001B[1;36m.0\u001B[0m,                                                                          \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   │   │   │   \u001B[0m\u001B[33msigma_max\u001B[0m=\u001B[1;36m1\u001B[0m\u001B[1;36m.5\u001B[0m,                                                                          \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   │   │   │   \u001B[0m\u001B[33mtype\u001B[0m=\u001B[32m'PMLParams'\u001B[0m,                                                                       \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   │   │   │   \u001B[0m\u001B[33mkappa_order\u001B[0m=\u001B[1;36m3\u001B[0m,                                                                          \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   │   │   │   \u001B[0m\u001B[33mkappa_min\u001B[0m=\u001B[1;36m1\u001B[0m\u001B[1;36m.0\u001B[0m,                                                                          \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   │   │   │   \u001B[0m\u001B[33mkappa_max\u001B[0m=\u001B[1;36m3\u001B[0m\u001B[1;36m.0\u001B[0m,                                                                          \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   │   │   │   \u001B[0m\u001B[33malpha_order\u001B[0m=\u001B[1;36m1\u001B[0m,                                                                          \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   │   │   │   \u001B[0m\u001B[33malpha_min\u001B[0m=\u001B[1;36m0\u001B[0m\u001B[1;36m.0\u001B[0m,                                                                          \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   │   │   │   \u001B[0m\u001B[33malpha_max\u001B[0m=\u001B[1;36m0\u001B[0m\u001B[1;36m.0\u001B[0m                                                                           \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   │   │   \u001B[0m\u001B[1m)\u001B[0m                                                                                           \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   │   \u001B[0m\u001B[1m)\u001B[0m,                                                                                              \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   │   \u001B[0m\u001B[33mtype\u001B[0m=\u001B[32m'Boundary'\u001B[0m                                                                                 \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   \u001B[0m\u001B[1m)\u001B[0m,                                                                                                  \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   \u001B[0m\u001B[33mz\u001B[0m=\u001B[1;35mBoundary\u001B[0m\u001B[1m(\u001B[0m                                                                                         \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   │   \u001B[0m\u001B[33mattrs\u001B[0m=\u001B[1m{\u001B[0m\u001B[1m}\u001B[0m,                                                                                       \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   │   \u001B[0m\u001B[33mplus\u001B[0m=\u001B[1;35mPeriodic\u001B[0m\u001B[1m(\u001B[0m\u001B[33mattrs\u001B[0m=\u001B[1m{\u001B[0m\u001B[1m}\u001B[0m, \u001B[33mname\u001B[0m=\u001B[3;35mNone\u001B[0m, \u001B[33mtype\u001B[0m=\u001B[32m'Periodic'\u001B[0m\u001B[1m)\u001B[0m,                                            \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   │   \u001B[0m\u001B[33mminus\u001B[0m=\u001B[1;35mPeriodic\u001B[0m\u001B[1m(\u001B[0m\u001B[33mattrs\u001B[0m=\u001B[1m{\u001B[0m\u001B[1m}\u001B[0m, \u001B[33mname\u001B[0m=\u001B[3;35mNone\u001B[0m, \u001B[33mtype\u001B[0m=\u001B[32m'Periodic'\u001B[0m\u001B[1m)\u001B[0m,                                           \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   │   \u001B[0m\u001B[33mtype\u001B[0m=\u001B[32m'Boundary'\u001B[0m                                                                                 \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   \u001B[0m\u001B[1m)\u001B[0m,                                                                                                  \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   \u001B[0m\u001B[33mtype\u001B[0m=\u001B[32m'BoundarySpec'\u001B[0m                                                                                 \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   \u001B[0m\u001B[1m)\u001B[0m,                                                                                                      \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   \u001B[0m\u001B[33mmonitors\u001B[0m=\u001B[1m(\u001B[0m                                                                                              \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   \u001B[0m\u001B[1;35mFieldMonitor\u001B[0m\u001B[1m(\u001B[0m                                                                                       \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   │   \u001B[0m\u001B[33mattrs\u001B[0m=\u001B[1m{\u001B[0m\u001B[1m}\u001B[0m,                                                                                       \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   │   \u001B[0m\u001B[33mtype\u001B[0m=\u001B[32m'FieldMonitor'\u001B[0m,                                                                            \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   │   \u001B[0m\u001B[33mcenter\u001B[0m=\u001B[1m(\u001B[0m\u001B[1;36m1.0\u001B[0m, \u001B[1;36m0.0\u001B[0m, \u001B[1;36m0.0\u001B[0m\u001B[1m)\u001B[0m,                                                                         \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   │   \u001B[0m\u001B[33msize\u001B[0m=\u001B[1m(\u001B[0minf, inf, \u001B[1;36m0.0\u001B[0m\u001B[1m)\u001B[0m,                                                                           \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   │   \u001B[0m\u001B[33mname\u001B[0m=\u001B[32m'fields_at_150THz'\u001B[0m,                                                                        \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   │   \u001B[0m\u001B[33minterval_space\u001B[0m=\u001B[1m(\u001B[0m\u001B[1;36m1\u001B[0m, \u001B[1;36m1\u001B[0m, \u001B[1;36m1\u001B[0m\u001B[1m)\u001B[0m,                                                                       \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   │   \u001B[0m\u001B[33mcolocate\u001B[0m=\u001B[3;92mTrue\u001B[0m,                                                                                  \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   │   \u001B[0m\u001B[33mfreqs\u001B[0m=\u001B[1m(\u001B[0m\u001B[1;36m150000000000000.0\u001B[0m,\u001B[1m)\u001B[0m,                                                                     \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   │   \u001B[0m\u001B[33mapodization\u001B[0m=\u001B[1;35mApodizationSpec\u001B[0m\u001B[1m(\u001B[0m                                                                    \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   │   │   \u001B[0m\u001B[33mattrs\u001B[0m=\u001B[1m{\u001B[0m\u001B[1m}\u001B[0m,                                                                                   \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   │   │   \u001B[0m\u001B[33mstart\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                                                 \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   │   │   \u001B[0m\u001B[33mend\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                                                   \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   │   │   \u001B[0m\u001B[33mwidth\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                                                 \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   │   │   \u001B[0m\u001B[33mtype\u001B[0m=\u001B[32m'ApodizationSpec'\u001B[0m                                                                      \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   │   \u001B[0m\u001B[1m)\u001B[0m,                                                                                              \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   │   \u001B[0m\u001B[33mfields\u001B[0m=\u001B[1m(\u001B[0m\u001B[32m'Ex'\u001B[0m, \u001B[32m'Ey'\u001B[0m, \u001B[32m'Hz'\u001B[0m\u001B[1m)\u001B[0m                                                                       \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   \u001B[0m\u001B[1m)\u001B[0m,                                                                                                  \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   \u001B[0m\u001B[1;35mFluxTimeMonitor\u001B[0m\u001B[1m(\u001B[0m                                                                                    \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   │   \u001B[0m\u001B[33mattrs\u001B[0m=\u001B[1m{\u001B[0m\u001B[1m}\u001B[0m,                                                                                       \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   │   \u001B[0m\u001B[33mtype\u001B[0m=\u001B[32m'FluxTimeMonitor'\u001B[0m,                                                                         \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   │   \u001B[0m\u001B[33mcenter\u001B[0m=\u001B[1m(\u001B[0m\u001B[1;36m1.0\u001B[0m, \u001B[1;36m0.0\u001B[0m, \u001B[1;36m0.0\u001B[0m\u001B[1m)\u001B[0m,                                                                         \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   │   \u001B[0m\u001B[33msize\u001B[0m=\u001B[1m(\u001B[0minf, inf, \u001B[1;36m0.0\u001B[0m\u001B[1m)\u001B[0m,                                                                           \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   │   \u001B[0m\u001B[33mname\u001B[0m=\u001B[32m'flux_over_time'\u001B[0m,                                                                          \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   │   \u001B[0m\u001B[33minterval_space\u001B[0m=\u001B[1m(\u001B[0m\u001B[1;36m1\u001B[0m, \u001B[1;36m1\u001B[0m, \u001B[1;36m1\u001B[0m\u001B[1m)\u001B[0m,                                                                       \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   │   \u001B[0m\u001B[33mcolocate\u001B[0m=\u001B[3;92mTrue\u001B[0m,                                                                                  \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   │   \u001B[0m\u001B[33mstart\u001B[0m=\u001B[1;36m1e\u001B[0m\u001B[1;36m-13\u001B[0m,                                                                                    \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   │   \u001B[0m\u001B[33mstop\u001B[0m=\u001B[1;36m3e\u001B[0m\u001B[1;36m-13\u001B[0m,                                                                                     \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   │   \u001B[0m\u001B[33minterval\u001B[0m=\u001B[1;36m5\u001B[0m,                                                                                     \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   │   \u001B[0m\u001B[33mnormal_dir\u001B[0m=\u001B[32m'+'\u001B[0m,                                                                                 \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   │   \u001B[0m\u001B[33mexclude_surfaces\u001B[0m=\u001B[3;35mNone\u001B[0m                                                                           \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   \u001B[0m\u001B[1m)\u001B[0m                                                                                                   \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   \u001B[0m\u001B[1m)\u001B[0m,                                                                                                      \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   \u001B[0m\u001B[33mgrid_spec\u001B[0m=\u001B[1;35mGridSpec\u001B[0m\u001B[1m(\u001B[0m                                                                                     \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   \u001B[0m\u001B[33mattrs\u001B[0m=\u001B[1m{\u001B[0m\u001B[1m}\u001B[0m,                                                                                           \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   \u001B[0m\u001B[33mgrid_x\u001B[0m=\u001B[1;35mUniformGrid\u001B[0m\u001B[1m(\u001B[0m\u001B[33mattrs\u001B[0m=\u001B[1m{\u001B[0m\u001B[1m}\u001B[0m, \u001B[33mtype\u001B[0m=\u001B[32m'UniformGrid'\u001B[0m, \u001B[33mdl\u001B[0m=\u001B[1;36m0\u001B[0m\u001B[1;36m.2\u001B[0m\u001B[1m)\u001B[0m,                                           \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   \u001B[0m\u001B[33mgrid_y\u001B[0m=\u001B[1;35mUniformGrid\u001B[0m\u001B[1m(\u001B[0m\u001B[33mattrs\u001B[0m=\u001B[1m{\u001B[0m\u001B[1m}\u001B[0m, \u001B[33mtype\u001B[0m=\u001B[32m'UniformGrid'\u001B[0m, \u001B[33mdl\u001B[0m=\u001B[1;36m0\u001B[0m\u001B[1;36m.2\u001B[0m\u001B[1m)\u001B[0m,                                           \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   \u001B[0m\u001B[33mgrid_z\u001B[0m=\u001B[1;35mUniformGrid\u001B[0m\u001B[1m(\u001B[0m\u001B[33mattrs\u001B[0m=\u001B[1m{\u001B[0m\u001B[1m}\u001B[0m, \u001B[33mtype\u001B[0m=\u001B[32m'UniformGrid'\u001B[0m, \u001B[33mdl\u001B[0m=\u001B[1;36m0\u001B[0m\u001B[1;36m.2\u001B[0m\u001B[1m)\u001B[0m,                                           \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   \u001B[0m\u001B[33mwavelength\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                                                    \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   \u001B[0m\u001B[33moverride_structures\u001B[0m=\u001B[1m(\u001B[0m\u001B[1m)\u001B[0m,                                                                             \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   \u001B[0m\u001B[33msnapping_points\u001B[0m=\u001B[1m(\u001B[0m\u001B[1m)\u001B[0m,                                                                                 \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   \u001B[0m\u001B[33mlayer_refinement_specs\u001B[0m=\u001B[1m(\u001B[0m\u001B[1m)\u001B[0m,                                                                          \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   \u001B[0m\u001B[33mtype\u001B[0m=\u001B[32m'GridSpec'\u001B[0m                                                                                     \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   \u001B[0m\u001B[1m)\u001B[0m,                                                                                                      \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   \u001B[0m\u001B[33mversion\u001B[0m=\u001B[32m'2.10.0rc3'\u001B[0m,                                                                                    \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   \u001B[0m\u001B[33mplot_length_units\u001B[0m=\u001B[32m'μm'\u001B[0m,                                                                                 \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   \u001B[0m\u001B[33mstructure_priority_mode\u001B[0m=\u001B[32m'equal'\u001B[0m,                                                                        \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   \u001B[0m\u001B[33mlumped_elements\u001B[0m=\u001B[1m(\u001B[0m\u001B[1m)\u001B[0m,                                                                                     \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   \u001B[0m\u001B[33msubpixel\u001B[0m=\u001B[1;35mSubpixelSpec\u001B[0m\u001B[1m(\u001B[0m                                                                                  \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   \u001B[0m\u001B[33mattrs\u001B[0m=\u001B[1m{\u001B[0m\u001B[1m}\u001B[0m,                                                                                           \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   \u001B[0m\u001B[33mdielectric\u001B[0m=\u001B[1;35mPolarizedAveraging\u001B[0m\u001B[1m(\u001B[0m\u001B[33mattrs\u001B[0m=\u001B[1m{\u001B[0m\u001B[1m}\u001B[0m, \u001B[33mtype\u001B[0m=\u001B[32m'PolarizedAveraging'\u001B[0m\u001B[1m)\u001B[0m,                                 \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   \u001B[0m\u001B[33mmetal\u001B[0m=\u001B[1;35mStaircasing\u001B[0m\u001B[1m(\u001B[0m\u001B[33mattrs\u001B[0m=\u001B[1m{\u001B[0m\u001B[1m}\u001B[0m, \u001B[33mtype\u001B[0m=\u001B[32m'Staircasing'\u001B[0m\u001B[1m)\u001B[0m,                                                    \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   \u001B[0m\u001B[33mpec\u001B[0m=\u001B[1;35mPECConformal\u001B[0m\u001B[1m(\u001B[0m                                                                                   \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   │   \u001B[0m\u001B[33mattrs\u001B[0m=\u001B[1m{\u001B[0m\u001B[1m}\u001B[0m,                                                                                       \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   │   \u001B[0m\u001B[33mtype\u001B[0m=\u001B[32m'PECConformal'\u001B[0m,                                                                            \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   │   \u001B[0m\u001B[33mtimestep_reduction\u001B[0m=\u001B[1;36m0\u001B[0m\u001B[1;36m.3\u001B[0m,                                                                         \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   │   \u001B[0m\u001B[33medge_singularity_correction\u001B[0m=\u001B[3;92mTrue\u001B[0m                                                                \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   \u001B[0m\u001B[1m)\u001B[0m,                                                                                                  \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   \u001B[0m\u001B[33mpmc\u001B[0m=\u001B[1;35mStaircasing\u001B[0m\u001B[1m(\u001B[0m\u001B[33mattrs\u001B[0m=\u001B[1m{\u001B[0m\u001B[1m}\u001B[0m, \u001B[33mtype\u001B[0m=\u001B[32m'Staircasing'\u001B[0m\u001B[1m)\u001B[0m,                                                      \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   \u001B[0m\u001B[33mlossy_metal\u001B[0m=\u001B[1;35mSurfaceImpedance\u001B[0m\u001B[1m(\u001B[0m                                                                       \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   │   \u001B[0m\u001B[33mattrs\u001B[0m=\u001B[1m{\u001B[0m\u001B[1m}\u001B[0m,                                                                                       \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   │   \u001B[0m\u001B[33mtype\u001B[0m=\u001B[32m'SurfaceImpedance'\u001B[0m,                                                                        \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   │   \u001B[0m\u001B[33mtimestep_reduction\u001B[0m=\u001B[1;36m0\u001B[0m\u001B[1;36m.0\u001B[0m,                                                                         \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   │   \u001B[0m\u001B[33medge_singularity_correction\u001B[0m=\u001B[3;92mTrue\u001B[0m                                                                \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   \u001B[0m\u001B[1m)\u001B[0m,                                                                                                  \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   │   \u001B[0m\u001B[33mtype\u001B[0m=\u001B[32m'SubpixelSpec'\u001B[0m                                                                                 \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   \u001B[0m\u001B[1m)\u001B[0m,                                                                                                      \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   \u001B[0m\u001B[33msimulation_type\u001B[0m=\u001B[32m'tidy3d'\u001B[0m,                                                                               \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   \u001B[0m\u001B[33mpost_norm\u001B[0m=\u001B[1;36m1\u001B[0m\u001B[1;36m.0\u001B[0m,                                                                                          \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   \u001B[0m\u001B[33minternal_absorbers\u001B[0m=\u001B[1m(\u001B[0m\u001B[1m)\u001B[0m,                                                                                  \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   \u001B[0m\u001B[33mcourant\u001B[0m=\u001B[1;36m0\u001B[0m\u001B[1;36m.99\u001B[0m,                                                                                           \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   \u001B[0m\u001B[33mprecision\u001B[0m=\u001B[32m'hybrid'\u001B[0m,                                                                                     \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   \u001B[0m\u001B[33mnormalize_index\u001B[0m=\u001B[1;36m0\u001B[0m,                                                                                      \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   \u001B[0m\u001B[33mshutoff\u001B[0m=\u001B[1;36m1e\u001B[0m\u001B[1;36m-05\u001B[0m,                                                                                          \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   \u001B[0m\u001B[33mrun_time\u001B[0m=\u001B[1;36m1e\u001B[0m\u001B[1;36m-12\u001B[0m,                                                                                         \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[2;32m│   \u001B[0m\u001B[33mlow_freq_smoothing\u001B[0m=\u001B[3;35mNone\u001B[0m                                                                                 \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m│\u001B[0m \u001B[1m)\u001B[0m                                                                                                           \u001B[32m│\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[32m╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────╯\u001B[0m \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                                                                                                 \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                \u001B[3;33mall_structures\u001B[0m = \u001B[1m[\u001B[0m                                                                               \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                     \u001B[1;35mStructure\u001B[0m\u001B[1m(\u001B[0m                                                                  \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mattrs\u001B[0m=\u001B[1m{\u001B[0m\u001B[1m}\u001B[0m,                                                               \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mgeometry\u001B[0m=\u001B[1;35mBox\u001B[0m\u001B[1m(\u001B[0m                                                           \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                             \u001B[33mattrs\u001B[0m=\u001B[1m{\u001B[0m\u001B[1m}\u001B[0m,                                                           \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                             \u001B[33mtype\u001B[0m=\u001B[32m'Box'\u001B[0m,                                                         \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                             \u001B[33mcenter\u001B[0m=\u001B[1m(\u001B[0m\u001B[1;36m0.0\u001B[0m, \u001B[1;36m0.0\u001B[0m, \u001B[1;36m0.0\u001B[0m\u001B[1m)\u001B[0m,                                             \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                             \u001B[33msize\u001B[0m=\u001B[1m(\u001B[0minf, inf, inf\u001B[1m)\u001B[0m                                                \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[1m)\u001B[0m,                                                                      \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mname\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                              \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mbackground_permittivity\u001B[0m=\u001B[3;35mNone\u001B[0m,                                           \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mbackground_medium\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                 \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mpriority\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                          \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mtype\u001B[0m=\u001B[32m'Structure'\u001B[0m,                                                       \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mmedium\u001B[0m=\u001B[1;35mMedium\u001B[0m\u001B[1m(\u001B[0m                                                          \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                             \u001B[33mattrs\u001B[0m=\u001B[1m{\u001B[0m\u001B[1m}\u001B[0m,                                                           \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                             \u001B[33mname\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                          \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                             \u001B[33mfrequency_range\u001B[0m=\u001B[3;35mNone\u001B[0m,                                               \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                             \u001B[33mallow_gain\u001B[0m=\u001B[3;91mFalse\u001B[0m,                                                   \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                             \u001B[33mnonlinear_spec\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                             \u001B[33mmodulation_spec\u001B[0m=\u001B[3;35mNone\u001B[0m,                                               \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                             \u001B[33mviz_spec\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                      \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                             \u001B[33mheat_spec\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                     \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                             \u001B[33mtype\u001B[0m=\u001B[32m'Medium'\u001B[0m,                                                      \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                             \u001B[33mpermittivity\u001B[0m=\u001B[1;36m1\u001B[0m\u001B[1;36m.0\u001B[0m,                                                   \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                             \u001B[33mconductivity\u001B[0m=\u001B[1;36m0\u001B[0m\u001B[1;36m.0\u001B[0m                                                    \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[1m)\u001B[0m                                                                       \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                     \u001B[1m)\u001B[0m,                                                                          \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                     \u001B[1;35mStructure\u001B[0m\u001B[1m(\u001B[0m                                                                  \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mattrs\u001B[0m=\u001B[1m{\u001B[0m\u001B[1m}\u001B[0m,                                                               \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mgeometry\u001B[0m=\u001B[1;35mBox\u001B[0m\u001B[1m(\u001B[0m                                                           \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                             \u001B[33mattrs\u001B[0m=\u001B[1m{\u001B[0m\u001B[1m}\u001B[0m,                                                           \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                             \u001B[33mtype\u001B[0m=\u001B[32m'Box'\u001B[0m,                                                         \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                             \u001B[33mcenter\u001B[0m=\u001B[1m(\u001B[0m\u001B[1;36m0.0\u001B[0m, \u001B[1;36m0.0\u001B[0m, \u001B[1;36m0.0\u001B[0m\u001B[1m)\u001B[0m,                                             \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                             \u001B[33msize\u001B[0m=\u001B[1m(\u001B[0m\u001B[1;36m1.0\u001B[0m, \u001B[1;36m1.0\u001B[0m, \u001B[1;36m1.0\u001B[0m\u001B[1m)\u001B[0m                                                \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[1m)\u001B[0m,                                                                      \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mname\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                              \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mbackground_permittivity\u001B[0m=\u001B[3;35mNone\u001B[0m,                                           \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mbackground_medium\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                 \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mpriority\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                          \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mtype\u001B[0m=\u001B[32m'Structure'\u001B[0m,                                                       \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mmedium\u001B[0m=\u001B[1;35mMedium\u001B[0m\u001B[1m(\u001B[0m                                                          \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                             \u001B[33mattrs\u001B[0m=\u001B[1m{\u001B[0m\u001B[1m}\u001B[0m,                                                           \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                             \u001B[33mname\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                          \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                             \u001B[33mfrequency_range\u001B[0m=\u001B[3;35mNone\u001B[0m,                                               \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                             \u001B[33mallow_gain\u001B[0m=\u001B[3;91mFalse\u001B[0m,                                                   \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                             \u001B[33mnonlinear_spec\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                             \u001B[33mmodulation_spec\u001B[0m=\u001B[3;35mNone\u001B[0m,                                               \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                             \u001B[33mviz_spec\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                      \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                             \u001B[33mheat_spec\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                     \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                             \u001B[33mtype\u001B[0m=\u001B[32m'Medium'\u001B[0m,                                                      \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                             \u001B[33mpermittivity\u001B[0m=\u001B[1;36m2\u001B[0m\u001B[1;36m.0\u001B[0m,                                                   \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                             \u001B[33mconductivity\u001B[0m=\u001B[1;36m0\u001B[0m\u001B[1;36m.0\u001B[0m                                                    \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[1m)\u001B[0m                                                                       \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                     \u001B[1m)\u001B[0m                                                                           \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                 \u001B[1m]\u001B[0m                                                                               \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                    \u001B[3;33mallow_gain\u001B[0m = \u001B[3;91mFalse\u001B[0m                                                                           \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                         \u001B[3;33mattrs\u001B[0m = \u001B[1m{\u001B[0m\u001B[1m}\u001B[0m                                                                              \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                    \u001B[3;33maux_fields\u001B[0m = \u001B[1m[\u001B[0m\u001B[1m]\u001B[0m                                                                              \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m          \u001B[3;33mbackground_structure\u001B[0m = \u001B[1;35mStructure\u001B[0m\u001B[1m(\u001B[0m                                                                      \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                     \u001B[33mattrs\u001B[0m=\u001B[1m{\u001B[0m\u001B[1m}\u001B[0m,                                                                   \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                     \u001B[33mgeometry\u001B[0m=\u001B[1;35mBox\u001B[0m\u001B[1m(\u001B[0m                                                               \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mattrs\u001B[0m=\u001B[1m{\u001B[0m\u001B[1m}\u001B[0m,                                                               \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mtype\u001B[0m=\u001B[32m'Box'\u001B[0m,                                                             \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mcenter\u001B[0m=\u001B[1m(\u001B[0m\u001B[1;36m0.0\u001B[0m, \u001B[1;36m0.0\u001B[0m, \u001B[1;36m0.0\u001B[0m\u001B[1m)\u001B[0m,                                                 \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33msize\u001B[0m=\u001B[1m(\u001B[0minf, inf, inf\u001B[1m)\u001B[0m                                                    \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                     \u001B[1m)\u001B[0m,                                                                          \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                     \u001B[33mname\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                                  \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                     \u001B[33mbackground_permittivity\u001B[0m=\u001B[3;35mNone\u001B[0m,                                               \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                     \u001B[33mbackground_medium\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                     \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                     \u001B[33mpriority\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                              \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                     \u001B[33mtype\u001B[0m=\u001B[32m'Structure'\u001B[0m,                                                           \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                     \u001B[33mmedium\u001B[0m=\u001B[1;35mMedium\u001B[0m\u001B[1m(\u001B[0m                                                              \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mattrs\u001B[0m=\u001B[1m{\u001B[0m\u001B[1m}\u001B[0m,                                                               \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mname\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                              \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mfrequency_range\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                   \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mallow_gain\u001B[0m=\u001B[3;91mFalse\u001B[0m,                                                       \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mnonlinear_spec\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                    \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mmodulation_spec\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                   \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mviz_spec\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                          \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mheat_spec\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                         \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mtype\u001B[0m=\u001B[32m'Medium'\u001B[0m,                                                          \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mpermittivity\u001B[0m=\u001B[1;36m1\u001B[0m\u001B[1;36m.0\u001B[0m,                                                       \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mconductivity\u001B[0m=\u001B[1;36m0\u001B[0m\u001B[1;36m.0\u001B[0m                                                        \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                     \u001B[1m)\u001B[0m                                                                           \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                 \u001B[1m)\u001B[0m                                                                               \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                 \u001B[3;33mboundary_spec\u001B[0m = \u001B[1;35mBoundarySpec\u001B[0m\u001B[1m(\u001B[0m                                                                   \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                     \u001B[33mattrs\u001B[0m=\u001B[1m{\u001B[0m\u001B[1m}\u001B[0m,                                                                   \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                     \u001B[33mx\u001B[0m=\u001B[1;35mBoundary\u001B[0m\u001B[1m(\u001B[0m                                                                 \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mattrs\u001B[0m=\u001B[1m{\u001B[0m\u001B[1m}\u001B[0m,                                                               \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mplus\u001B[0m=\u001B[1;35mPeriodic\u001B[0m\u001B[1m(\u001B[0m\u001B[33mattrs\u001B[0m=\u001B[1m{\u001B[0m\u001B[1m}\u001B[0m, \u001B[33mname\u001B[0m=\u001B[3;35mNone\u001B[0m, \u001B[33mtype\u001B[0m=\u001B[32m'Periodic'\u001B[0m\u001B[1m)\u001B[0m,                    \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mminus\u001B[0m=\u001B[1;35mPeriodic\u001B[0m\u001B[1m(\u001B[0m\u001B[33mattrs\u001B[0m=\u001B[1m{\u001B[0m\u001B[1m}\u001B[0m, \u001B[33mname\u001B[0m=\u001B[3;35mNone\u001B[0m, \u001B[33mtype\u001B[0m=\u001B[32m'Periodic'\u001B[0m\u001B[1m)\u001B[0m,                   \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mtype\u001B[0m=\u001B[32m'Boundary'\u001B[0m                                                         \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                     \u001B[1m)\u001B[0m,                                                                          \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                     \u001B[33my\u001B[0m=\u001B[1;35mBoundary\u001B[0m\u001B[1m(\u001B[0m                                                                 \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mattrs\u001B[0m=\u001B[1m{\u001B[0m\u001B[1m}\u001B[0m,                                                               \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mplus\u001B[0m=\u001B[1;35mPML\u001B[0m\u001B[1m(\u001B[0m                                                               \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                             \u001B[33mattrs\u001B[0m=\u001B[1m{\u001B[0m\u001B[1m}\u001B[0m,                                                           \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                             \u001B[33mname\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                          \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                             \u001B[33mtype\u001B[0m=\u001B[32m'PML'\u001B[0m,                                                         \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                             \u001B[33mnum_layers\u001B[0m=\u001B[1;36m12\u001B[0m,                                                      \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                             \u001B[33mparameters\u001B[0m=\u001B[1;35mPMLParams\u001B[0m\u001B[1m(\u001B[0m                                               \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                                 \u001B[33mattrs\u001B[0m=\u001B[1m{\u001B[0m\u001B[1m}\u001B[0m,                                                       \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                                 \u001B[33msigma_order\u001B[0m=\u001B[1;36m3\u001B[0m,                                                  \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                                 \u001B[33msigma_min\u001B[0m=\u001B[1;36m0\u001B[0m\u001B[1;36m.0\u001B[0m,                                                  \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                                 \u001B[33msigma_max\u001B[0m=\u001B[1;36m1\u001B[0m\u001B[1;36m.5\u001B[0m,                                                  \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                                 \u001B[33mtype\u001B[0m=\u001B[32m'PMLParams'\u001B[0m,                                               \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                                 \u001B[33mkappa_order\u001B[0m=\u001B[1;36m3\u001B[0m,                                                  \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                                 \u001B[33mkappa_min\u001B[0m=\u001B[1;36m1\u001B[0m\u001B[1;36m.0\u001B[0m,                                                  \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                                 \u001B[33mkappa_max\u001B[0m=\u001B[1;36m3\u001B[0m\u001B[1;36m.0\u001B[0m,                                                  \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                                 \u001B[33malpha_order\u001B[0m=\u001B[1;36m1\u001B[0m,                                                  \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                                 \u001B[33malpha_min\u001B[0m=\u001B[1;36m0\u001B[0m\u001B[1;36m.0\u001B[0m,                                                  \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                                 \u001B[33malpha_max\u001B[0m=\u001B[1;36m0\u001B[0m\u001B[1;36m.0\u001B[0m                                                   \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                             \u001B[1m)\u001B[0m                                                                   \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[1m)\u001B[0m,                                                                      \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mminus\u001B[0m=\u001B[1;35mPML\u001B[0m\u001B[1m(\u001B[0m                                                              \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                             \u001B[33mattrs\u001B[0m=\u001B[1m{\u001B[0m\u001B[1m}\u001B[0m,                                                           \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                             \u001B[33mname\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                          \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                             \u001B[33mtype\u001B[0m=\u001B[32m'PML'\u001B[0m,                                                         \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                             \u001B[33mnum_layers\u001B[0m=\u001B[1;36m12\u001B[0m,                                                      \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                             \u001B[33mparameters\u001B[0m=\u001B[1;35mPMLParams\u001B[0m\u001B[1m(\u001B[0m                                               \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                                 \u001B[33mattrs\u001B[0m=\u001B[1m{\u001B[0m\u001B[1m}\u001B[0m,                                                       \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                                 \u001B[33msigma_order\u001B[0m=\u001B[1;36m3\u001B[0m,                                                  \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                                 \u001B[33msigma_min\u001B[0m=\u001B[1;36m0\u001B[0m\u001B[1;36m.0\u001B[0m,                                                  \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                                 \u001B[33msigma_max\u001B[0m=\u001B[1;36m1\u001B[0m\u001B[1;36m.5\u001B[0m,                                                  \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                                 \u001B[33mtype\u001B[0m=\u001B[32m'PMLParams'\u001B[0m,                                               \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                                 \u001B[33mkappa_order\u001B[0m=\u001B[1;36m3\u001B[0m,                                                  \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                                 \u001B[33mkappa_min\u001B[0m=\u001B[1;36m1\u001B[0m\u001B[1;36m.0\u001B[0m,                                                  \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                                 \u001B[33mkappa_max\u001B[0m=\u001B[1;36m3\u001B[0m\u001B[1;36m.0\u001B[0m,                                                  \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                                 \u001B[33malpha_order\u001B[0m=\u001B[1;36m1\u001B[0m,                                                  \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                                 \u001B[33malpha_min\u001B[0m=\u001B[1;36m0\u001B[0m\u001B[1;36m.0\u001B[0m,                                                  \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                                 \u001B[33malpha_max\u001B[0m=\u001B[1;36m0\u001B[0m\u001B[1;36m.0\u001B[0m                                                   \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                             \u001B[1m)\u001B[0m                                                                   \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[1m)\u001B[0m,                                                                      \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mtype\u001B[0m=\u001B[32m'Boundary'\u001B[0m                                                         \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                     \u001B[1m)\u001B[0m,                                                                          \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                     \u001B[33mz\u001B[0m=\u001B[1;35mBoundary\u001B[0m\u001B[1m(\u001B[0m                                                                 \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mattrs\u001B[0m=\u001B[1m{\u001B[0m\u001B[1m}\u001B[0m,                                                               \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mplus\u001B[0m=\u001B[1;35mPeriodic\u001B[0m\u001B[1m(\u001B[0m\u001B[33mattrs\u001B[0m=\u001B[1m{\u001B[0m\u001B[1m}\u001B[0m, \u001B[33mname\u001B[0m=\u001B[3;35mNone\u001B[0m, \u001B[33mtype\u001B[0m=\u001B[32m'Periodic'\u001B[0m\u001B[1m)\u001B[0m,                    \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mminus\u001B[0m=\u001B[1;35mPeriodic\u001B[0m\u001B[1m(\u001B[0m\u001B[33mattrs\u001B[0m=\u001B[1m{\u001B[0m\u001B[1m}\u001B[0m, \u001B[33mname\u001B[0m=\u001B[3;35mNone\u001B[0m, \u001B[33mtype\u001B[0m=\u001B[32m'Periodic'\u001B[0m\u001B[1m)\u001B[0m,                   \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mtype\u001B[0m=\u001B[32m'Boundary'\u001B[0m                                                         \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                     \u001B[1m)\u001B[0m,                                                                          \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                     \u001B[33mtype\u001B[0m=\u001B[32m'BoundarySpec'\u001B[0m                                                         \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                 \u001B[1m)\u001B[0m                                                                               \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                  \u001B[3;33mbounding_box\u001B[0m = \u001B[1;35mBox\u001B[0m\u001B[1m(\u001B[0m\u001B[33mattrs\u001B[0m=\u001B[1m{\u001B[0m\u001B[1m}\u001B[0m, \u001B[33mtype\u001B[0m=\u001B[32m'Box'\u001B[0m, \u001B[33mcenter\u001B[0m=\u001B[1m(\u001B[0m\u001B[1;36m0.0\u001B[0m, \u001B[1;36m0.0\u001B[0m, \u001B[1;36m0.0\u001B[0m\u001B[1m)\u001B[0m, \u001B[33msize\u001B[0m=\u001B[1m(\u001B[0m\u001B[1;36m4.0\u001B[0m, \u001B[1;36m4.0\u001B[0m, \u001B[1;36m4.0\u001B[0m\u001B[1m)\u001B[0m\u001B[1m)\u001B[0m         \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                        \u001B[3;33mbounds\u001B[0m = \u001B[1m(\u001B[0m\u001B[1m(\u001B[0m\u001B[1;36m-2.0\u001B[0m, \u001B[1;36m-2.0\u001B[0m, \u001B[1;36m-2.0\u001B[0m\u001B[1m)\u001B[0m, \u001B[1m(\u001B[0m\u001B[1;36m2.0\u001B[0m, \u001B[1;36m2.0\u001B[0m, \u001B[1;36m2.0\u001B[0m\u001B[1m)\u001B[0m\u001B[1m)\u001B[0m                                           \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                    \u001B[3;33mbounds_pml\u001B[0m = \u001B[1m(\u001B[0m                                                                               \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                     \u001B[1m(\u001B[0m\u001B[1;35mnp.float64\u001B[0m\u001B[1m(\u001B[0m\u001B[1;36m-2.0\u001B[0m\u001B[1m)\u001B[0m, \u001B[1;35mnp.float64\u001B[0m\u001B[1m(\u001B[0m\u001B[1;36m-4.3999999999999995\u001B[0m\u001B[1m)\u001B[0m, \u001B[1;35mnp.float64\u001B[0m\u001B[1m(\u001B[0m\u001B[1;36m-2.0\u001B[0m\u001B[1m)\u001B[0m\u001B[1m)\u001B[0m,      \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                     \u001B[1m(\u001B[0m\u001B[1;35mnp.float64\u001B[0m\u001B[1m(\u001B[0m\u001B[1;36m2.0\u001B[0m\u001B[1m)\u001B[0m, \u001B[1;35mnp.float64\u001B[0m\u001B[1m(\u001B[0m\u001B[1;36m4.399999999999997\u001B[0m\u001B[1m)\u001B[0m, \u001B[1;35mnp.float64\u001B[0m\u001B[1m(\u001B[0m\u001B[1;36m2.0\u001B[0m\u001B[1m)\u001B[0m\u001B[1m)\u001B[0m           \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                 \u001B[1m)\u001B[0m                                                                               \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                        \u001B[3;33mcenter\u001B[0m = \u001B[1m(\u001B[0m\u001B[1;36m0.0\u001B[0m, \u001B[1;36m0.0\u001B[0m, \u001B[1;36m0.0\u001B[0m\u001B[1m)\u001B[0m                                                                 \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                \u001B[3;33mcomplex_fields\u001B[0m = \u001B[3;91mFalse\u001B[0m                                                                           \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                       \u001B[3;33mcourant\u001B[0m = \u001B[1;36m0.99\u001B[0m                                                                            \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m               \u001B[3;33mcustom_datasets\u001B[0m = \u001B[1m[\u001B[0m\u001B[1m]\u001B[0m                                                                              \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                            \u001B[3;33mdt\u001B[0m = \u001B[1;35mnp.float64\u001B[0m\u001B[1m(\u001B[0m\u001B[1;36m3.813149739062003e-16\u001B[0m\u001B[1m)\u001B[0m                                               \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m               \u001B[3;33mfrequency_range\u001B[0m = \u001B[1m(\u001B[0m\u001B[1;36m110770887769698.48\u001B[0m, \u001B[1;36m190588842668354.53\u001B[0m\u001B[1m)\u001B[0m                                        \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                      \u001B[3;33mgeometry\u001B[0m = \u001B[1;35mBox\u001B[0m\u001B[1m(\u001B[0m\u001B[33mattrs\u001B[0m=\u001B[1m{\u001B[0m\u001B[1m}\u001B[0m, \u001B[33mtype\u001B[0m=\u001B[32m'Box'\u001B[0m, \u001B[33mcenter\u001B[0m=\u001B[1m(\u001B[0m\u001B[1;36m0.0\u001B[0m, \u001B[1;36m0.0\u001B[0m, \u001B[1;36m0.0\u001B[0m\u001B[1m)\u001B[0m, \u001B[33msize\u001B[0m=\u001B[1m(\u001B[0m\u001B[1;36m4.0\u001B[0m, \u001B[1;36m4.0\u001B[0m, \u001B[1;36m4.0\u001B[0m\u001B[1m)\u001B[0m\u001B[1m)\u001B[0m         \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                          \u001B[3;33mgrid\u001B[0m = \u001B[1;35mGrid\u001B[0m\u001B[1m(\u001B[0m                                                                           \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                     \u001B[33mattrs\u001B[0m=\u001B[1m{\u001B[0m\u001B[1m}\u001B[0m,                                                                   \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                     \u001B[33mboundaries\u001B[0m=\u001B[1;35mCoords\u001B[0m\u001B[1m(\u001B[0m                                                          \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mattrs\u001B[0m=\u001B[1m{\u001B[0m\u001B[1m}\u001B[0m,                                                               \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mx\u001B[0m=\u001B[1;35marray\u001B[0m\u001B[1m(\u001B[0m\u001B[1m[\u001B[0m\u001B[1;36m-2\u001B[0m. , \u001B[1;36m-1.8\u001B[0m, \u001B[1;36m-1.6\u001B[0m, \u001B[1;36m-1.4\u001B[0m, \u001B[1;36m-1.2\u001B[0m, \u001B[1;36m-1\u001B[0m. , \u001B[1;36m-0.8\u001B[0m, \u001B[1;36m-0.6\u001B[0m, \u001B[1;36m-0.4\u001B[0m, \u001B[1;36m-0.2\u001B[0m,    \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                 \u001B[1;36m0\u001B[0m. ,                                                                            \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[1;36m0.2\u001B[0m,  \u001B[1;36m0.4\u001B[0m,  \u001B[1;36m0.6\u001B[0m,  \u001B[1;36m0.8\u001B[0m,  \u001B[1;36m1\u001B[0m. ,  \u001B[1;36m1.2\u001B[0m,  \u001B[1;36m1.4\u001B[0m,  \u001B[1;36m1.6\u001B[0m,  \u001B[1;36m1.8\u001B[0m,  \u001B[1;36m2\u001B[0m. \u001B[1m]\u001B[0m\u001B[1m)\u001B[0m,            \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33my\u001B[0m=\u001B[1;35marray\u001B[0m\u001B[1m(\u001B[0m\u001B[1m[\u001B[0m\u001B[1;36m-4.4\u001B[0m, \u001B[1;36m-4.2\u001B[0m, \u001B[1;36m-4\u001B[0m. , \u001B[1;36m-3.8\u001B[0m, \u001B[1;36m-3.6\u001B[0m, \u001B[1;36m-3.4\u001B[0m, \u001B[1;36m-3.2\u001B[0m, \u001B[1;36m-3\u001B[0m. , \u001B[1;36m-2.8\u001B[0m, \u001B[1;36m-2.6\u001B[0m,    \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                 \u001B[1;36m-2.4\u001B[0m,                                                                           \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                        \u001B[1;36m-2.2\u001B[0m, \u001B[1;36m-2\u001B[0m. , \u001B[1;36m-1.8\u001B[0m, \u001B[1;36m-1.6\u001B[0m, \u001B[1;36m-1.4\u001B[0m, \u001B[1;36m-1.2\u001B[0m, \u001B[1;36m-1\u001B[0m. , \u001B[1;36m-0.8\u001B[0m, \u001B[1;36m-0.6\u001B[0m, \u001B[1;36m-0.4\u001B[0m, \u001B[1;36m-0.2\u001B[0m,        \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[1;36m0\u001B[0m. ,  \u001B[1;36m0.2\u001B[0m,  \u001B[1;36m0.4\u001B[0m,  \u001B[1;36m0.6\u001B[0m,  \u001B[1;36m0.8\u001B[0m,  \u001B[1;36m1\u001B[0m. ,  \u001B[1;36m1.2\u001B[0m,  \u001B[1;36m1.4\u001B[0m,  \u001B[1;36m1.6\u001B[0m,  \u001B[1;36m1.8\u001B[0m,  \u001B[1;36m2\u001B[0m. ,        \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[1;36m2.2\u001B[0m,  \u001B[1;36m2.4\u001B[0m,  \u001B[1;36m2.6\u001B[0m,  \u001B[1;36m2.8\u001B[0m,  \u001B[1;36m3\u001B[0m. ,  \u001B[1;36m3.2\u001B[0m,  \u001B[1;36m3.4\u001B[0m,  \u001B[1;36m3.6\u001B[0m,  \u001B[1;36m3.8\u001B[0m,  \u001B[1;36m4\u001B[0m. ,  \u001B[1;36m4.2\u001B[0m,        \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[1;36m4.4\u001B[0m\u001B[1m]\u001B[0m\u001B[1m)\u001B[0m,                                                                  \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mz\u001B[0m=\u001B[1;35marray\u001B[0m\u001B[1m(\u001B[0m\u001B[1m[\u001B[0m\u001B[1;36m-2\u001B[0m. , \u001B[1;36m-1.8\u001B[0m, \u001B[1;36m-1.6\u001B[0m, \u001B[1;36m-1.4\u001B[0m, \u001B[1;36m-1.2\u001B[0m, \u001B[1;36m-1\u001B[0m. , \u001B[1;36m-0.8\u001B[0m, \u001B[1;36m-0.6\u001B[0m, \u001B[1;36m-0.4\u001B[0m, \u001B[1;36m-0.2\u001B[0m,    \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                 \u001B[1;36m0\u001B[0m. ,                                                                            \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[1;36m0.2\u001B[0m,  \u001B[1;36m0.4\u001B[0m,  \u001B[1;36m0.6\u001B[0m,  \u001B[1;36m0.8\u001B[0m,  \u001B[1;36m1\u001B[0m. ,  \u001B[1;36m1.2\u001B[0m,  \u001B[1;36m1.4\u001B[0m,  \u001B[1;36m1.6\u001B[0m,  \u001B[1;36m1.8\u001B[0m,  \u001B[1;36m2\u001B[0m. \u001B[1m]\u001B[0m\u001B[1m)\u001B[0m,            \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mtype\u001B[0m=\u001B[32m'Coords'\u001B[0m                                                           \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                     \u001B[1m)\u001B[0m,                                                                          \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                     \u001B[33mtype\u001B[0m=\u001B[32m'Grid'\u001B[0m                                                                 \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                 \u001B[1m)\u001B[0m                                                                               \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                     \u001B[3;33mgrid_info\u001B[0m = \u001B[1m{\u001B[0m                                                                               \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                     \u001B[32m'Nx'\u001B[0m: \u001B[1;36m20\u001B[0m,                                                                   \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                     \u001B[32m'Ny'\u001B[0m: \u001B[1;36m44\u001B[0m,                                                                   \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                     \u001B[32m'Nz'\u001B[0m: \u001B[1;36m20\u001B[0m,                                                                   \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                     \u001B[32m'grid_points'\u001B[0m: \u001B[1;36m17600\u001B[0m,                                                       \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                     \u001B[32m'min_grid_size'\u001B[0m: \u001B[1;36m0.1999999999999993\u001B[0m,                                        \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                     \u001B[32m'max_grid_size'\u001B[0m: \u001B[1;36m0.20000000000000018\u001B[0m,                                       \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                     \u001B[32m'computational_complexity'\u001B[0m: \u001B[1;36m88000.0000000003\u001B[0m                                \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                 \u001B[1m}\u001B[0m                                                                               \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                     \u001B[3;33mgrid_spec\u001B[0m = \u001B[1;35mGridSpec\u001B[0m\u001B[1m(\u001B[0m                                                                       \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                     \u001B[33mattrs\u001B[0m=\u001B[1m{\u001B[0m\u001B[1m}\u001B[0m,                                                                   \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                     \u001B[33mgrid_x\u001B[0m=\u001B[1;35mUniformGrid\u001B[0m\u001B[1m(\u001B[0m\u001B[33mattrs\u001B[0m=\u001B[1m{\u001B[0m\u001B[1m}\u001B[0m, \u001B[33mtype\u001B[0m=\u001B[32m'UniformGrid'\u001B[0m, \u001B[33mdl\u001B[0m=\u001B[1;36m0\u001B[0m\u001B[1;36m.2\u001B[0m\u001B[1m)\u001B[0m,                   \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                     \u001B[33mgrid_y\u001B[0m=\u001B[1;35mUniformGrid\u001B[0m\u001B[1m(\u001B[0m\u001B[33mattrs\u001B[0m=\u001B[1m{\u001B[0m\u001B[1m}\u001B[0m, \u001B[33mtype\u001B[0m=\u001B[32m'UniformGrid'\u001B[0m, \u001B[33mdl\u001B[0m=\u001B[1;36m0\u001B[0m\u001B[1;36m.2\u001B[0m\u001B[1m)\u001B[0m,                   \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                     \u001B[33mgrid_z\u001B[0m=\u001B[1;35mUniformGrid\u001B[0m\u001B[1m(\u001B[0m\u001B[33mattrs\u001B[0m=\u001B[1m{\u001B[0m\u001B[1m}\u001B[0m, \u001B[33mtype\u001B[0m=\u001B[32m'UniformGrid'\u001B[0m, \u001B[33mdl\u001B[0m=\u001B[1;36m0\u001B[0m\u001B[1;36m.2\u001B[0m\u001B[1m)\u001B[0m,                   \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                     \u001B[33mwavelength\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                            \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                     \u001B[33moverride_structures\u001B[0m=\u001B[1m(\u001B[0m\u001B[1m)\u001B[0m,                                                     \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                     \u001B[33msnapping_points\u001B[0m=\u001B[1m(\u001B[0m\u001B[1m)\u001B[0m,                                                         \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                     \u001B[33mlayer_refinement_specs\u001B[0m=\u001B[1m(\u001B[0m\u001B[1m)\u001B[0m,                                                  \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                     \u001B[33mtype\u001B[0m=\u001B[32m'GridSpec'\u001B[0m                                                             \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                 \u001B[1m)\u001B[0m                                                                               \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m            \u001B[3;33minternal_absorbers\u001B[0m = \u001B[1m(\u001B[0m\u001B[1m)\u001B[0m                                                                              \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m  \u001B[3;33minternal_override_structures\u001B[0m = \u001B[1m[\u001B[0m\u001B[1m]\u001B[0m                                                                              \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m      \u001B[3;33minternal_snapping_points\u001B[0m = \u001B[1m[\u001B[0m\u001B[1m]\u001B[0m                                                                              \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m            \u001B[3;33mlow_freq_smoothing\u001B[0m = \u001B[3;35mNone\u001B[0m                                                                            \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m               \u001B[3;33mlumped_elements\u001B[0m = \u001B[1m(\u001B[0m\u001B[1m)\u001B[0m                                                                              \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                        \u001B[3;33mmedium\u001B[0m = \u001B[1;35mMedium\u001B[0m\u001B[1m(\u001B[0m                                                                         \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                     \u001B[33mattrs\u001B[0m=\u001B[1m{\u001B[0m\u001B[1m}\u001B[0m,                                                                   \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                     \u001B[33mname\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                                  \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                     \u001B[33mfrequency_range\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                       \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                     \u001B[33mallow_gain\u001B[0m=\u001B[3;91mFalse\u001B[0m,                                                           \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                     \u001B[33mnonlinear_spec\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                        \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                     \u001B[33mmodulation_spec\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                       \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                     \u001B[33mviz_spec\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                              \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                     \u001B[33mheat_spec\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                             \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                     \u001B[33mtype\u001B[0m=\u001B[32m'Medium'\u001B[0m,                                                              \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                     \u001B[33mpermittivity\u001B[0m=\u001B[1;36m1\u001B[0m\u001B[1;36m.0\u001B[0m,                                                           \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                     \u001B[33mconductivity\u001B[0m=\u001B[1;36m0\u001B[0m\u001B[1;36m.0\u001B[0m                                                            \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                 \u001B[1m)\u001B[0m                                                                               \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                    \u001B[3;33mmedium_map\u001B[0m = \u001B[1m{\u001B[0m                                                                               \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                     \u001B[1;35mMedium\u001B[0m\u001B[1m(\u001B[0m\u001B[33mattrs\u001B[0m=\u001B[1m{\u001B[0m\u001B[1m}\u001B[0m, \u001B[33mname\u001B[0m=\u001B[3;35mNone\u001B[0m, \u001B[33mfrequency_range\u001B[0m=\u001B[3;35mNone\u001B[0m, \u001B[33mallow_gain\u001B[0m=\u001B[3;91mFalse\u001B[0m,         \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                 \u001B[33mnonlinear_spec\u001B[0m=\u001B[3;35mNone\u001B[0m, \u001B[33mmodulation_spec\u001B[0m=\u001B[3;35mNone\u001B[0m, \u001B[33mviz_spec\u001B[0m=\u001B[3;35mNone\u001B[0m, \u001B[33mheat_spec\u001B[0m=\u001B[3;35mNone\u001B[0m,       \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                 \u001B[33mtype\u001B[0m=\u001B[32m'Medium'\u001B[0m, \u001B[33mpermittivity\u001B[0m=\u001B[1;36m1\u001B[0m\u001B[1;36m.0\u001B[0m, \u001B[33mconductivity\u001B[0m=\u001B[1;36m0\u001B[0m\u001B[1;36m.0\u001B[0m\u001B[1m)\u001B[0m: \u001B[1;36m0\u001B[0m,                          \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                     \u001B[1;35mMedium\u001B[0m\u001B[1m(\u001B[0m\u001B[33mattrs\u001B[0m=\u001B[1m{\u001B[0m\u001B[1m}\u001B[0m, \u001B[33mname\u001B[0m=\u001B[3;35mNone\u001B[0m, \u001B[33mfrequency_range\u001B[0m=\u001B[3;35mNone\u001B[0m, \u001B[33mallow_gain\u001B[0m=\u001B[3;91mFalse\u001B[0m,         \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                 \u001B[33mnonlinear_spec\u001B[0m=\u001B[3;35mNone\u001B[0m, \u001B[33mmodulation_spec\u001B[0m=\u001B[3;35mNone\u001B[0m, \u001B[33mviz_spec\u001B[0m=\u001B[3;35mNone\u001B[0m, \u001B[33mheat_spec\u001B[0m=\u001B[3;35mNone\u001B[0m,       \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                 \u001B[33mtype\u001B[0m=\u001B[32m'Medium'\u001B[0m, \u001B[33mpermittivity\u001B[0m=\u001B[1;36m2\u001B[0m\u001B[1;36m.0\u001B[0m, \u001B[33mconductivity\u001B[0m=\u001B[1;36m0\u001B[0m\u001B[1;36m.0\u001B[0m\u001B[1m)\u001B[0m: \u001B[1;36m1\u001B[0m                           \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                 \u001B[1m}\u001B[0m                                                                               \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                       \u001B[3;33mmediums\u001B[0m = \u001B[1m[\u001B[0m                                                                               \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                     \u001B[1;35mMedium\u001B[0m\u001B[1m(\u001B[0m                                                                     \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mattrs\u001B[0m=\u001B[1m{\u001B[0m\u001B[1m}\u001B[0m,                                                               \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mname\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                              \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mfrequency_range\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                   \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mallow_gain\u001B[0m=\u001B[3;91mFalse\u001B[0m,                                                       \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mnonlinear_spec\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                    \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mmodulation_spec\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                   \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mviz_spec\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                          \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mheat_spec\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                         \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mtype\u001B[0m=\u001B[32m'Medium'\u001B[0m,                                                          \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mpermittivity\u001B[0m=\u001B[1;36m1\u001B[0m\u001B[1;36m.0\u001B[0m,                                                       \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mconductivity\u001B[0m=\u001B[1;36m0\u001B[0m\u001B[1;36m.0\u001B[0m                                                        \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                     \u001B[1m)\u001B[0m,                                                                          \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                     \u001B[1;35mMedium\u001B[0m\u001B[1m(\u001B[0m                                                                     \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mattrs\u001B[0m=\u001B[1m{\u001B[0m\u001B[1m}\u001B[0m,                                                               \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mname\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                              \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mfrequency_range\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                   \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mallow_gain\u001B[0m=\u001B[3;91mFalse\u001B[0m,                                                       \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mnonlinear_spec\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                    \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mmodulation_spec\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                   \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mviz_spec\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                          \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mheat_spec\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                         \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mtype\u001B[0m=\u001B[32m'Medium'\u001B[0m,                                                          \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mpermittivity\u001B[0m=\u001B[1;36m2\u001B[0m\u001B[1;36m.0\u001B[0m,                                                       \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mconductivity\u001B[0m=\u001B[1;36m0\u001B[0m\u001B[1;36m.0\u001B[0m                                                        \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                     \u001B[1m)\u001B[0m                                                                           \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                 \u001B[1m]\u001B[0m                                                                               \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                      \u001B[3;33mmonitors\u001B[0m = \u001B[1m(\u001B[0m                                                                               \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                     \u001B[1;35mFieldMonitor\u001B[0m\u001B[1m(\u001B[0m                                                               \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mattrs\u001B[0m=\u001B[1m{\u001B[0m\u001B[1m}\u001B[0m,                                                               \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mtype\u001B[0m=\u001B[32m'FieldMonitor'\u001B[0m,                                                    \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mcenter\u001B[0m=\u001B[1m(\u001B[0m\u001B[1;36m1.0\u001B[0m, \u001B[1;36m0.0\u001B[0m, \u001B[1;36m0.0\u001B[0m\u001B[1m)\u001B[0m,                                                 \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33msize\u001B[0m=\u001B[1m(\u001B[0minf, inf, \u001B[1;36m0.0\u001B[0m\u001B[1m)\u001B[0m,                                                   \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mname\u001B[0m=\u001B[32m'fields_at_150THz'\u001B[0m,                                                \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33minterval_space\u001B[0m=\u001B[1m(\u001B[0m\u001B[1;36m1\u001B[0m, \u001B[1;36m1\u001B[0m, \u001B[1;36m1\u001B[0m\u001B[1m)\u001B[0m,                                               \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mcolocate\u001B[0m=\u001B[3;92mTrue\u001B[0m,                                                          \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mfreqs\u001B[0m=\u001B[1m(\u001B[0m\u001B[1;36m150000000000000.0\u001B[0m,\u001B[1m)\u001B[0m,                                             \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mapodization\u001B[0m=\u001B[1;35mApodizationSpec\u001B[0m\u001B[1m(\u001B[0m                                            \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                             \u001B[33mattrs\u001B[0m=\u001B[1m{\u001B[0m\u001B[1m}\u001B[0m,                                                           \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                             \u001B[33mstart\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                         \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                             \u001B[33mend\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                           \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                             \u001B[33mwidth\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                         \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                             \u001B[33mtype\u001B[0m=\u001B[32m'ApodizationSpec'\u001B[0m                                              \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[1m)\u001B[0m,                                                                      \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mfields\u001B[0m=\u001B[1m(\u001B[0m\u001B[32m'Ex'\u001B[0m, \u001B[32m'Ey'\u001B[0m, \u001B[32m'Hz'\u001B[0m\u001B[1m)\u001B[0m                                               \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                     \u001B[1m)\u001B[0m,                                                                          \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                     \u001B[1;35mFluxTimeMonitor\u001B[0m\u001B[1m(\u001B[0m                                                            \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mattrs\u001B[0m=\u001B[1m{\u001B[0m\u001B[1m}\u001B[0m,                                                               \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mtype\u001B[0m=\u001B[32m'FluxTimeMonitor'\u001B[0m,                                                 \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mcenter\u001B[0m=\u001B[1m(\u001B[0m\u001B[1;36m1.0\u001B[0m, \u001B[1;36m0.0\u001B[0m, \u001B[1;36m0.0\u001B[0m\u001B[1m)\u001B[0m,                                                 \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33msize\u001B[0m=\u001B[1m(\u001B[0minf, inf, \u001B[1;36m0.0\u001B[0m\u001B[1m)\u001B[0m,                                                   \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mname\u001B[0m=\u001B[32m'flux_over_time'\u001B[0m,                                                  \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33minterval_space\u001B[0m=\u001B[1m(\u001B[0m\u001B[1;36m1\u001B[0m, \u001B[1;36m1\u001B[0m, \u001B[1;36m1\u001B[0m\u001B[1m)\u001B[0m,                                               \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mcolocate\u001B[0m=\u001B[3;92mTrue\u001B[0m,                                                          \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mstart\u001B[0m=\u001B[1;36m1e\u001B[0m\u001B[1;36m-13\u001B[0m,                                                            \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mstop\u001B[0m=\u001B[1;36m3e\u001B[0m\u001B[1;36m-13\u001B[0m,                                                             \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33minterval\u001B[0m=\u001B[1;36m5\u001B[0m,                                                             \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mnormal_dir\u001B[0m=\u001B[32m'+'\u001B[0m,                                                         \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mexclude_surfaces\u001B[0m=\u001B[3;35mNone\u001B[0m                                                   \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                     \u001B[1m)\u001B[0m                                                                           \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                 \u001B[1m)\u001B[0m                                                                               \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m            \u001B[3;33mmonitors_data_size\u001B[0m = \u001B[1m{\u001B[0m\u001B[32m'fields_at_150THz'\u001B[0m: \u001B[1;36m22680.0\u001B[0m, \u001B[32m'flux_over_time'\u001B[0m: \u001B[1;36m416.0\u001B[0m\u001B[1m}\u001B[0m                          \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                         \u001B[1;3;31mn_max\u001B[0m\u001B[1;31m =\u001B[0m \u001B[1;35mAttributeError\u001B[0m\u001B[1m(\u001B[0m\u001B[32m\"'Simulation' object has no attribute 'freq_max'\"\u001B[0m\u001B[1m)\u001B[0m               \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m               \u001B[3;33mnormalize_index\u001B[0m = \u001B[1;36m0\u001B[0m                                                                               \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                     \u001B[3;33mnum_cells\u001B[0m = \u001B[1;36m17600\u001B[0m                                                                           \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m \u001B[3;33mnum_computational_grid_points\u001B[0m = \u001B[1;35mnp.int64\u001B[0m\u001B[1m(\u001B[0m\u001B[1;36m18400\u001B[0m\u001B[1m)\u001B[0m                                                                 \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                \u001B[3;33mnum_pml_layers\u001B[0m = \u001B[1m[\u001B[0m\u001B[1m[\u001B[0m\u001B[1;36m0\u001B[0m, \u001B[1;36m0\u001B[0m\u001B[1m]\u001B[0m, \u001B[1m[\u001B[0m\u001B[1;36m12\u001B[0m, \u001B[1;36m12\u001B[0m\u001B[1m]\u001B[0m, \u001B[1m[\u001B[0m\u001B[1;36m0\u001B[0m, \u001B[1;36m0\u001B[0m\u001B[1m]\u001B[0m\u001B[1m]\u001B[0m                                                      \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                \u001B[3;33mnum_time_steps\u001B[0m = \u001B[1;36m2624\u001B[0m                                                                            \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                  \u001B[3;33mnyquist_step\u001B[0m = \u001B[1;36m5\u001B[0m                                                                               \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m             \u001B[3;33mplot_length_units\u001B[0m = \u001B[32m'μm'\u001B[0m                                                                            \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                   \u001B[3;33mplot_params\u001B[0m = \u001B[1;35mPlotParams\u001B[0m\u001B[1m(\u001B[0m                                                                     \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                     \u001B[33mattrs\u001B[0m=\u001B[1m{\u001B[0m\u001B[1m}\u001B[0m,                                                                   \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                     \u001B[33malpha\u001B[0m=\u001B[1;36m1\u001B[0m\u001B[1;36m.0\u001B[0m,                                                                  \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                     \u001B[33mzorder\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                                \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                     \u001B[33mtype\u001B[0m=\u001B[32m'PlotParams'\u001B[0m,                                                          \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                     \u001B[33medgecolor\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                             \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                     \u001B[33mfacecolor\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                             \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                     \u001B[33mfill\u001B[0m=\u001B[3;92mTrue\u001B[0m,                                                                  \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                     \u001B[33mhatch\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                                 \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                     \u001B[33mlinewidth\u001B[0m=\u001B[1;36m1\u001B[0m\u001B[1;36m.0\u001B[0m                                                               \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                 \u001B[1m)\u001B[0m                                                                               \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m               \u001B[3;33mpml_thicknesses\u001B[0m = \u001B[1m[\u001B[0m                                                                               \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                     \u001B[1m(\u001B[0m\u001B[1;35mnp.float64\u001B[0m\u001B[1m(\u001B[0m\u001B[1;36m0.0\u001B[0m\u001B[1m)\u001B[0m, \u001B[1;35mnp.float64\u001B[0m\u001B[1m(\u001B[0m\u001B[1;36m0.0\u001B[0m\u001B[1m)\u001B[0m\u001B[1m)\u001B[0m,                                         \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                     \u001B[1m(\u001B[0m\u001B[1;35mnp.float64\u001B[0m\u001B[1m(\u001B[0m\u001B[1;36m2.3999999999999995\u001B[0m\u001B[1m)\u001B[0m, \u001B[1;35mnp.float64\u001B[0m\u001B[1m(\u001B[0m\u001B[1;36m2.399999999999997\u001B[0m\u001B[1m)\u001B[0m\u001B[1m)\u001B[0m,            \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                     \u001B[1m(\u001B[0m\u001B[1;35mnp.float64\u001B[0m\u001B[1m(\u001B[0m\u001B[1;36m0.0\u001B[0m\u001B[1m)\u001B[0m, \u001B[1;35mnp.float64\u001B[0m\u001B[1m(\u001B[0m\u001B[1;36m0.0\u001B[0m\u001B[1m)\u001B[0m\u001B[1m)\u001B[0m                                          \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                 \u001B[1m]\u001B[0m                                                                               \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                     \u001B[3;33mpost_norm\u001B[0m = \u001B[1;36m1.0\u001B[0m                                                                             \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                     \u001B[3;33mprecision\u001B[0m = \u001B[32m'hybrid'\u001B[0m                                                                        \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                      \u001B[3;33mrun_time\u001B[0m = \u001B[1;36m1e-12\u001B[0m                                                                           \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                \u001B[3;33mscaled_courant\u001B[0m = \u001B[1;36m0.99\u001B[0m                                                                            \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                         \u001B[3;33mscene\u001B[0m = \u001B[1;35mScene\u001B[0m\u001B[1m(\u001B[0m                                                                          \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                     \u001B[33mattrs\u001B[0m=\u001B[1m{\u001B[0m\u001B[1m}\u001B[0m,                                                                   \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                     \u001B[33mmedium\u001B[0m=\u001B[1;35mMedium\u001B[0m\u001B[1m(\u001B[0m                                                              \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mattrs\u001B[0m=\u001B[1m{\u001B[0m\u001B[1m}\u001B[0m,                                                               \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mname\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                              \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mfrequency_range\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                   \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mallow_gain\u001B[0m=\u001B[3;91mFalse\u001B[0m,                                                       \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mnonlinear_spec\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                    \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mmodulation_spec\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                   \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mviz_spec\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                          \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mheat_spec\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                         \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mtype\u001B[0m=\u001B[32m'Medium'\u001B[0m,                                                          \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mpermittivity\u001B[0m=\u001B[1;36m1\u001B[0m\u001B[1;36m.0\u001B[0m,                                                       \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mconductivity\u001B[0m=\u001B[1;36m0\u001B[0m\u001B[1;36m.0\u001B[0m                                                        \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                     \u001B[1m)\u001B[0m,                                                                          \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                     \u001B[33mstructures\u001B[0m=\u001B[1m(\u001B[0m                                                                \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[1;35mStructure\u001B[0m\u001B[1m(\u001B[0m                                                              \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                             \u001B[33mattrs\u001B[0m=\u001B[1m{\u001B[0m\u001B[1m}\u001B[0m,                                                           \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                             \u001B[33mgeometry\u001B[0m=\u001B[1;35mBox\u001B[0m\u001B[1m(\u001B[0m                                                       \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                                 \u001B[33mattrs\u001B[0m=\u001B[1m{\u001B[0m\u001B[1m}\u001B[0m,                                                       \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                                 \u001B[33mtype\u001B[0m=\u001B[32m'Box'\u001B[0m,                                                     \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                                 \u001B[33mcenter\u001B[0m=\u001B[1m(\u001B[0m\u001B[1;36m0.0\u001B[0m, \u001B[1;36m0.0\u001B[0m, \u001B[1;36m0.0\u001B[0m\u001B[1m)\u001B[0m,                                         \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                                 \u001B[33msize\u001B[0m=\u001B[1m(\u001B[0m\u001B[1;36m1.0\u001B[0m, \u001B[1;36m1.0\u001B[0m, \u001B[1;36m1.0\u001B[0m\u001B[1m)\u001B[0m                                            \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                             \u001B[1m)\u001B[0m,                                                                  \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                             \u001B[33mname\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                          \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                             \u001B[33mbackground_permittivity\u001B[0m=\u001B[3;35mNone\u001B[0m,                                       \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                             \u001B[33mbackground_medium\u001B[0m=\u001B[3;35mNone\u001B[0m,                                             \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                             \u001B[33mpriority\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                      \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                             \u001B[33mtype\u001B[0m=\u001B[32m'Structure'\u001B[0m,                                                   \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                             \u001B[33mmedium\u001B[0m=\u001B[1;35mMedium\u001B[0m\u001B[1m(\u001B[0m                                                      \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                                 \u001B[33mattrs\u001B[0m=\u001B[1m{\u001B[0m\u001B[1m}\u001B[0m,                                                       \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                                 \u001B[33mname\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                      \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                                 \u001B[33mfrequency_range\u001B[0m=\u001B[3;35mNone\u001B[0m,                                           \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                                 \u001B[33mallow_gain\u001B[0m=\u001B[3;91mFalse\u001B[0m,                                               \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                                 \u001B[33mnonlinear_spec\u001B[0m=\u001B[3;35mNone\u001B[0m,                                            \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                                 \u001B[33mmodulation_spec\u001B[0m=\u001B[3;35mNone\u001B[0m,                                           \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                                 \u001B[33mviz_spec\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                  \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                                 \u001B[33mheat_spec\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                 \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                                 \u001B[33mtype\u001B[0m=\u001B[32m'Medium'\u001B[0m,                                                  \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                                 \u001B[33mpermittivity\u001B[0m=\u001B[1;36m2\u001B[0m\u001B[1;36m.0\u001B[0m,                                               \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                                 \u001B[33mconductivity\u001B[0m=\u001B[1;36m0\u001B[0m\u001B[1;36m.0\u001B[0m                                                \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                             \u001B[1m)\u001B[0m                                                                   \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[1m)\u001B[0m,                                                                      \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                     \u001B[1m)\u001B[0m,                                                                          \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                     \u001B[33mstructure_priority_mode\u001B[0m=\u001B[32m'equal'\u001B[0m,                                            \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                     \u001B[33mplot_length_units\u001B[0m=\u001B[32m'μm'\u001B[0m,                                                     \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                     \u001B[33mtype\u001B[0m=\u001B[32m'Scene'\u001B[0m                                                                \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                 \u001B[1m)\u001B[0m                                                                               \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                \u001B[3;33mself_structure\u001B[0m = \u001B[1;35mStructure\u001B[0m\u001B[1m(\u001B[0m                                                                      \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                     \u001B[33mattrs\u001B[0m=\u001B[1m{\u001B[0m\u001B[1m}\u001B[0m,                                                                   \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                     \u001B[33mgeometry\u001B[0m=\u001B[1;35mBox\u001B[0m\u001B[1m(\u001B[0m                                                               \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mattrs\u001B[0m=\u001B[1m{\u001B[0m\u001B[1m}\u001B[0m,                                                               \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mtype\u001B[0m=\u001B[32m'Box'\u001B[0m,                                                             \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mcenter\u001B[0m=\u001B[1m(\u001B[0m\u001B[1;36m0.0\u001B[0m, \u001B[1;36m0.0\u001B[0m, \u001B[1;36m0.0\u001B[0m\u001B[1m)\u001B[0m,                                                 \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33msize\u001B[0m=\u001B[1m(\u001B[0minf, inf, inf\u001B[1m)\u001B[0m                                                    \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                     \u001B[1m)\u001B[0m,                                                                          \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                     \u001B[33mname\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                                  \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                     \u001B[33mbackground_permittivity\u001B[0m=\u001B[3;35mNone\u001B[0m,                                               \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                     \u001B[33mbackground_medium\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                     \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                     \u001B[33mpriority\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                              \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                     \u001B[33mtype\u001B[0m=\u001B[32m'Structure'\u001B[0m,                                                           \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                     \u001B[33mmedium\u001B[0m=\u001B[1;35mMedium\u001B[0m\u001B[1m(\u001B[0m                                                              \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mattrs\u001B[0m=\u001B[1m{\u001B[0m\u001B[1m}\u001B[0m,                                                               \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mname\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                              \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mfrequency_range\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                   \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mallow_gain\u001B[0m=\u001B[3;91mFalse\u001B[0m,                                                       \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mnonlinear_spec\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                    \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mmodulation_spec\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                   \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mviz_spec\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                          \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mheat_spec\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                         \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mtype\u001B[0m=\u001B[32m'Medium'\u001B[0m,                                                          \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mpermittivity\u001B[0m=\u001B[1;36m1\u001B[0m\u001B[1;36m.0\u001B[0m,                                                       \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mconductivity\u001B[0m=\u001B[1;36m0\u001B[0m\u001B[1;36m.0\u001B[0m                                                        \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                     \u001B[1m)\u001B[0m                                                                           \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                 \u001B[1m)\u001B[0m                                                                               \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                       \u001B[3;33mshutoff\u001B[0m = \u001B[1;36m1e-05\u001B[0m                                                                           \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m             \u001B[3;33msimulation_bounds\u001B[0m = \u001B[1m(\u001B[0m                                                                               \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                     \u001B[1m(\u001B[0m\u001B[1;35mnp.float64\u001B[0m\u001B[1m(\u001B[0m\u001B[1;36m-2.0\u001B[0m\u001B[1m)\u001B[0m, \u001B[1;35mnp.float64\u001B[0m\u001B[1m(\u001B[0m\u001B[1;36m-4.3999999999999995\u001B[0m\u001B[1m)\u001B[0m, \u001B[1;35mnp.float64\u001B[0m\u001B[1m(\u001B[0m\u001B[1;36m-2.0\u001B[0m\u001B[1m)\u001B[0m\u001B[1m)\u001B[0m,      \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                     \u001B[1m(\u001B[0m\u001B[1;35mnp.float64\u001B[0m\u001B[1m(\u001B[0m\u001B[1;36m2.0\u001B[0m\u001B[1m)\u001B[0m, \u001B[1;35mnp.float64\u001B[0m\u001B[1m(\u001B[0m\u001B[1;36m4.399999999999997\u001B[0m\u001B[1m)\u001B[0m, \u001B[1;35mnp.float64\u001B[0m\u001B[1m(\u001B[0m\u001B[1;36m2.0\u001B[0m\u001B[1m)\u001B[0m\u001B[1m)\u001B[0m           \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                 \u001B[1m)\u001B[0m                                                                               \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m           \u001B[3;33msimulation_geometry\u001B[0m = \u001B[1;35mBox\u001B[0m\u001B[1m(\u001B[0m                                                                            \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                     \u001B[33mattrs\u001B[0m=\u001B[1m{\u001B[0m\u001B[1m}\u001B[0m,                                                                   \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                     \u001B[33mtype\u001B[0m=\u001B[32m'Box'\u001B[0m,                                                                 \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                     \u001B[33mcenter\u001B[0m=\u001B[1m(\u001B[0m                                                                    \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[1;35mnp.float64\u001B[0m\u001B[1m(\u001B[0m\u001B[1;36m0.0\u001B[0m\u001B[1m)\u001B[0m,                                                        \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[1;35mnp.float64\u001B[0m\u001B[1m(\u001B[0m\u001B[1;36m-1.3322676295501878e-15\u001B[0m\u001B[1m)\u001B[0m,                                    \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[1;35mnp.float64\u001B[0m\u001B[1m(\u001B[0m\u001B[1;36m0.0\u001B[0m\u001B[1m)\u001B[0m                                                         \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                     \u001B[1m)\u001B[0m,                                                                          \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                     \u001B[33msize\u001B[0m=\u001B[1m(\u001B[0m\u001B[1;35mnp.float64\u001B[0m\u001B[1m(\u001B[0m\u001B[1;36m4.0\u001B[0m\u001B[1m)\u001B[0m, \u001B[1;35mnp.float64\u001B[0m\u001B[1m(\u001B[0m\u001B[1;36m8.799999999999997\u001B[0m\u001B[1m)\u001B[0m, \u001B[1;35mnp.float64\u001B[0m\u001B[1m(\u001B[0m\u001B[1;36m4.0\u001B[0m\u001B[1m)\u001B[0m\u001B[1m)\u001B[0m      \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                 \u001B[1m)\u001B[0m                                                                               \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m          \u001B[3;33msimulation_structure\u001B[0m = \u001B[1;35mStructure\u001B[0m\u001B[1m(\u001B[0m                                                                      \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                     \u001B[33mattrs\u001B[0m=\u001B[1m{\u001B[0m\u001B[1m}\u001B[0m,                                                                   \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                     \u001B[33mgeometry\u001B[0m=\u001B[1;35mBox\u001B[0m\u001B[1m(\u001B[0m                                                               \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mattrs\u001B[0m=\u001B[1m{\u001B[0m\u001B[1m}\u001B[0m,                                                               \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mtype\u001B[0m=\u001B[32m'Box'\u001B[0m,                                                             \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mcenter\u001B[0m=\u001B[1m(\u001B[0m                                                                \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                             \u001B[1;35mnp.float64\u001B[0m\u001B[1m(\u001B[0m\u001B[1;36m0.0\u001B[0m\u001B[1m)\u001B[0m,                                                    \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                             \u001B[1;35mnp.float64\u001B[0m\u001B[1m(\u001B[0m\u001B[1;36m-1.3322676295501878e-15\u001B[0m\u001B[1m)\u001B[0m,                                \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                             \u001B[1;35mnp.float64\u001B[0m\u001B[1m(\u001B[0m\u001B[1;36m0.0\u001B[0m\u001B[1m)\u001B[0m                                                     \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[1m)\u001B[0m,                                                                      \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33msize\u001B[0m=\u001B[1m(\u001B[0m                                                                  \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                             \u001B[1;35mnp.float64\u001B[0m\u001B[1m(\u001B[0m\u001B[1;36m4.0\u001B[0m\u001B[1m)\u001B[0m,                                                    \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                             \u001B[1;35mnp.float64\u001B[0m\u001B[1m(\u001B[0m\u001B[1;36m8.799999999999997\u001B[0m\u001B[1m)\u001B[0m,                                      \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                             \u001B[1;35mnp.float64\u001B[0m\u001B[1m(\u001B[0m\u001B[1;36m4.0\u001B[0m\u001B[1m)\u001B[0m                                                     \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[1m)\u001B[0m                                                                       \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                     \u001B[1m)\u001B[0m,                                                                          \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                     \u001B[33mname\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                                  \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                     \u001B[33mbackground_permittivity\u001B[0m=\u001B[3;35mNone\u001B[0m,                                               \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                     \u001B[33mbackground_medium\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                     \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                     \u001B[33mpriority\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                              \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                     \u001B[33mtype\u001B[0m=\u001B[32m'Structure'\u001B[0m,                                                           \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                     \u001B[33mmedium\u001B[0m=\u001B[1;35mMedium\u001B[0m\u001B[1m(\u001B[0m                                                              \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mattrs\u001B[0m=\u001B[1m{\u001B[0m\u001B[1m}\u001B[0m,                                                               \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mname\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                              \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mfrequency_range\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                   \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mallow_gain\u001B[0m=\u001B[3;91mFalse\u001B[0m,                                                       \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mnonlinear_spec\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                    \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mmodulation_spec\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                   \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mviz_spec\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                          \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mheat_spec\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                         \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mtype\u001B[0m=\u001B[32m'Medium'\u001B[0m,                                                          \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mpermittivity\u001B[0m=\u001B[1;36m1\u001B[0m\u001B[1;36m.0\u001B[0m,                                                       \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mconductivity\u001B[0m=\u001B[1;36m0\u001B[0m\u001B[1;36m.0\u001B[0m                                                        \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                     \u001B[1m)\u001B[0m                                                                           \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                 \u001B[1m)\u001B[0m                                                                               \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m               \u001B[3;33msimulation_type\u001B[0m = \u001B[32m'tidy3d'\u001B[0m                                                                        \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                          \u001B[3;33msize\u001B[0m = \u001B[1m(\u001B[0m\u001B[1;36m4.0\u001B[0m, \u001B[1;36m4.0\u001B[0m, \u001B[1;36m4.0\u001B[0m\u001B[1m)\u001B[0m                                                                 \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                       \u001B[3;33msources\u001B[0m = \u001B[1m(\u001B[0m                                                                               \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                     \u001B[1;35mUniformCurrentSource\u001B[0m\u001B[1m(\u001B[0m                                                       \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mattrs\u001B[0m=\u001B[1m{\u001B[0m\u001B[1m}\u001B[0m,                                                               \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mname\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                              \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mtype\u001B[0m=\u001B[32m'UniformCurrentSource'\u001B[0m,                                            \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mcenter\u001B[0m=\u001B[1m(\u001B[0m\u001B[1;36m0.0\u001B[0m, \u001B[1;36m0.0\u001B[0m, \u001B[1;36m0.0\u001B[0m\u001B[1m)\u001B[0m,                                                 \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33msize\u001B[0m=\u001B[1m(\u001B[0m\u001B[1;36m0.0\u001B[0m, \u001B[1;36m0.0\u001B[0m, \u001B[1;36m0.0\u001B[0m\u001B[1m)\u001B[0m,                                                   \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33msource_time\u001B[0m=\u001B[1;35mGaussianPulse\u001B[0m\u001B[1m(\u001B[0m                                              \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                             \u001B[33mattrs\u001B[0m=\u001B[1m{\u001B[0m\u001B[1m}\u001B[0m,                                                           \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                             \u001B[33mamplitude\u001B[0m=\u001B[1;36m1\u001B[0m\u001B[1;36m.0\u001B[0m,                                                      \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                             \u001B[33mphase\u001B[0m=\u001B[1;36m0\u001B[0m\u001B[1;36m.0\u001B[0m,                                                          \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                             \u001B[33mtype\u001B[0m=\u001B[32m'GaussianPulse'\u001B[0m,                                               \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                             \u001B[33mfreq0\u001B[0m=\u001B[1;36m150000000000000\u001B[0m\u001B[1;36m.0\u001B[0m,                                            \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                             \u001B[33mfwidth\u001B[0m=\u001B[1;36m10000000000000\u001B[0m\u001B[1;36m.0\u001B[0m,                                            \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                             \u001B[33moffset\u001B[0m=\u001B[1;36m5\u001B[0m\u001B[1;36m.0\u001B[0m,                                                         \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                             \u001B[33mremove_dc_component\u001B[0m=\u001B[3;92mTrue\u001B[0m                                            \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[1m)\u001B[0m,                                                                      \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33minterpolate\u001B[0m=\u001B[3;92mTrue\u001B[0m,                                                       \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mconfine_to_bounds\u001B[0m=\u001B[3;91mFalse\u001B[0m,                                                \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mpolarization\u001B[0m=\u001B[32m'Ez'\u001B[0m                                                       \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                     \u001B[1m)\u001B[0m,                                                                          \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                 \u001B[1m)\u001B[0m                                                                               \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m             \u001B[3;33mstatic_structures\u001B[0m = \u001B[1m[\u001B[0m                                                                               \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                     \u001B[1;35mStructure\u001B[0m\u001B[1m(\u001B[0m                                                                  \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mattrs\u001B[0m=\u001B[1m{\u001B[0m\u001B[1m}\u001B[0m,                                                               \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mgeometry\u001B[0m=\u001B[1;35mBox\u001B[0m\u001B[1m(\u001B[0m                                                           \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                             \u001B[33mattrs\u001B[0m=\u001B[1m{\u001B[0m\u001B[1m}\u001B[0m,                                                           \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                             \u001B[33mtype\u001B[0m=\u001B[32m'Box'\u001B[0m,                                                         \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                             \u001B[33mcenter\u001B[0m=\u001B[1m(\u001B[0m\u001B[1;36m0.0\u001B[0m, \u001B[1;36m0.0\u001B[0m, \u001B[1;36m0.0\u001B[0m\u001B[1m)\u001B[0m,                                             \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                             \u001B[33msize\u001B[0m=\u001B[1m(\u001B[0m\u001B[1;36m1.0\u001B[0m, \u001B[1;36m1.0\u001B[0m, \u001B[1;36m1.0\u001B[0m\u001B[1m)\u001B[0m                                                \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[1m)\u001B[0m,                                                                      \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mname\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                              \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mbackground_permittivity\u001B[0m=\u001B[3;35mNone\u001B[0m,                                           \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mbackground_medium\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                 \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mpriority\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                          \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mtype\u001B[0m=\u001B[32m'Structure'\u001B[0m,                                                       \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mmedium\u001B[0m=\u001B[1;35mMedium\u001B[0m\u001B[1m(\u001B[0m                                                          \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                             \u001B[33mattrs\u001B[0m=\u001B[1m{\u001B[0m\u001B[1m}\u001B[0m,                                                           \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                             \u001B[33mname\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                          \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                             \u001B[33mfrequency_range\u001B[0m=\u001B[3;35mNone\u001B[0m,                                               \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                             \u001B[33mallow_gain\u001B[0m=\u001B[3;91mFalse\u001B[0m,                                                   \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                             \u001B[33mnonlinear_spec\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                             \u001B[33mmodulation_spec\u001B[0m=\u001B[3;35mNone\u001B[0m,                                               \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                             \u001B[33mviz_spec\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                      \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                             \u001B[33mheat_spec\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                     \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                             \u001B[33mtype\u001B[0m=\u001B[32m'Medium'\u001B[0m,                                                      \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                             \u001B[33mpermittivity\u001B[0m=\u001B[1;36m2\u001B[0m\u001B[1;36m.0\u001B[0m,                                                   \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                             \u001B[33mconductivity\u001B[0m=\u001B[1;36m0\u001B[0m\u001B[1;36m.0\u001B[0m                                                    \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[1m)\u001B[0m                                                                       \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                     \u001B[1m)\u001B[0m                                                                           \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                 \u001B[1m]\u001B[0m                                                                               \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m       \u001B[3;33mstructure_priority_mode\u001B[0m = \u001B[32m'equal'\u001B[0m                                                                         \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                    \u001B[3;33mstructures\u001B[0m = \u001B[1m(\u001B[0m                                                                               \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                     \u001B[1;35mStructure\u001B[0m\u001B[1m(\u001B[0m                                                                  \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mattrs\u001B[0m=\u001B[1m{\u001B[0m\u001B[1m}\u001B[0m,                                                               \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mgeometry\u001B[0m=\u001B[1;35mBox\u001B[0m\u001B[1m(\u001B[0m                                                           \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                             \u001B[33mattrs\u001B[0m=\u001B[1m{\u001B[0m\u001B[1m}\u001B[0m,                                                           \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                             \u001B[33mtype\u001B[0m=\u001B[32m'Box'\u001B[0m,                                                         \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                             \u001B[33mcenter\u001B[0m=\u001B[1m(\u001B[0m\u001B[1;36m0.0\u001B[0m, \u001B[1;36m0.0\u001B[0m, \u001B[1;36m0.0\u001B[0m\u001B[1m)\u001B[0m,                                             \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                             \u001B[33msize\u001B[0m=\u001B[1m(\u001B[0m\u001B[1;36m1.0\u001B[0m, \u001B[1;36m1.0\u001B[0m, \u001B[1;36m1.0\u001B[0m\u001B[1m)\u001B[0m                                                \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[1m)\u001B[0m,                                                                      \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mname\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                              \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mbackground_permittivity\u001B[0m=\u001B[3;35mNone\u001B[0m,                                           \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mbackground_medium\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                 \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mpriority\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                          \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mtype\u001B[0m=\u001B[32m'Structure'\u001B[0m,                                                       \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mmedium\u001B[0m=\u001B[1;35mMedium\u001B[0m\u001B[1m(\u001B[0m                                                          \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                             \u001B[33mattrs\u001B[0m=\u001B[1m{\u001B[0m\u001B[1m}\u001B[0m,                                                           \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                             \u001B[33mname\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                          \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                             \u001B[33mfrequency_range\u001B[0m=\u001B[3;35mNone\u001B[0m,                                               \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                             \u001B[33mallow_gain\u001B[0m=\u001B[3;91mFalse\u001B[0m,                                                   \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                             \u001B[33mnonlinear_spec\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                             \u001B[33mmodulation_spec\u001B[0m=\u001B[3;35mNone\u001B[0m,                                               \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                             \u001B[33mviz_spec\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                      \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                             \u001B[33mheat_spec\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                     \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                             \u001B[33mtype\u001B[0m=\u001B[32m'Medium'\u001B[0m,                                                      \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                             \u001B[33mpermittivity\u001B[0m=\u001B[1;36m2\u001B[0m\u001B[1;36m.0\u001B[0m,                                                   \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                             \u001B[33mconductivity\u001B[0m=\u001B[1;36m0\u001B[0m\u001B[1;36m.0\u001B[0m                                                    \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[1m)\u001B[0m                                                                       \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                     \u001B[1m)\u001B[0m,                                                                          \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                 \u001B[1m)\u001B[0m                                                                               \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                      \u001B[3;33msubpixel\u001B[0m = \u001B[1;35mSubpixelSpec\u001B[0m\u001B[1m(\u001B[0m                                                                   \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                     \u001B[33mattrs\u001B[0m=\u001B[1m{\u001B[0m\u001B[1m}\u001B[0m,                                                                   \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                     \u001B[33mdielectric\u001B[0m=\u001B[1;35mPolarizedAveraging\u001B[0m\u001B[1m(\u001B[0m\u001B[33mattrs\u001B[0m=\u001B[1m{\u001B[0m\u001B[1m}\u001B[0m, \u001B[33mtype\u001B[0m=\u001B[32m'PolarizedAveraging'\u001B[0m\u001B[1m)\u001B[0m,         \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                     \u001B[33mmetal\u001B[0m=\u001B[1;35mStaircasing\u001B[0m\u001B[1m(\u001B[0m\u001B[33mattrs\u001B[0m=\u001B[1m{\u001B[0m\u001B[1m}\u001B[0m, \u001B[33mtype\u001B[0m=\u001B[32m'Staircasing'\u001B[0m\u001B[1m)\u001B[0m,                            \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                     \u001B[33mpec\u001B[0m=\u001B[1;35mPECConformal\u001B[0m\u001B[1m(\u001B[0m                                                           \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mattrs\u001B[0m=\u001B[1m{\u001B[0m\u001B[1m}\u001B[0m,                                                               \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mtype\u001B[0m=\u001B[32m'PECConformal'\u001B[0m,                                                    \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mtimestep_reduction\u001B[0m=\u001B[1;36m0\u001B[0m\u001B[1;36m.3\u001B[0m,                                                 \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33medge_singularity_correction\u001B[0m=\u001B[3;92mTrue\u001B[0m                                        \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                     \u001B[1m)\u001B[0m,                                                                          \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                     \u001B[33mpmc\u001B[0m=\u001B[1;35mStaircasing\u001B[0m\u001B[1m(\u001B[0m\u001B[33mattrs\u001B[0m=\u001B[1m{\u001B[0m\u001B[1m}\u001B[0m, \u001B[33mtype\u001B[0m=\u001B[32m'Staircasing'\u001B[0m\u001B[1m)\u001B[0m,                              \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                     \u001B[33mlossy_metal\u001B[0m=\u001B[1;35mSurfaceImpedance\u001B[0m\u001B[1m(\u001B[0m                                               \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mattrs\u001B[0m=\u001B[1m{\u001B[0m\u001B[1m}\u001B[0m,                                                               \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mtype\u001B[0m=\u001B[32m'SurfaceImpedance'\u001B[0m,                                                \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mtimestep_reduction\u001B[0m=\u001B[1;36m0\u001B[0m\u001B[1;36m.0\u001B[0m,                                                 \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33medge_singularity_correction\u001B[0m=\u001B[3;92mTrue\u001B[0m                                        \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                     \u001B[1m)\u001B[0m,                                                                          \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                     \u001B[33mtype\u001B[0m=\u001B[32m'SubpixelSpec'\u001B[0m                                                         \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                 \u001B[1m)\u001B[0m                                                                               \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                      \u001B[3;33msymmetry\u001B[0m = \u001B[1m(\u001B[0m\u001B[1;36m0\u001B[0m, \u001B[1;36m0\u001B[0m, \u001B[1;36m0\u001B[0m\u001B[1m)\u001B[0m                                                                       \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                         \u001B[3;33mtmesh\u001B[0m = \u001B[1;35marray\u001B[0m\u001B[1m(\u001B[0m\u001B[1m[\u001B[0m\u001B[1;36m0.00000000e+00\u001B[0m, \u001B[1;36m3.81314974e-16\u001B[0m, \u001B[1;36m7.62629948e-16\u001B[0m, \u001B[33m...\u001B[0m,                     \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                        \u001B[1;36m9.99426547e-13\u001B[0m, \u001B[1;36m9.99807862e-13\u001B[0m, \u001B[1;36m1.00018918e-12\u001B[0m\u001B[1m]\u001B[0m, \u001B[33mshape\u001B[0m=\u001B[1m(\u001B[0m\u001B[1;36m2624\u001B[0m,\u001B[1m)\u001B[0m\u001B[1m)\u001B[0m          \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                          \u001B[3;33mtype\u001B[0m = \u001B[32m'Simulation'\u001B[0m                                                                    \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                       \u001B[3;33mversion\u001B[0m = \u001B[32m'2.10.0rc3'\u001B[0m                                                                     \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m         \u001B[3;33mvolumetric_structures\u001B[0m = \u001B[1m[\u001B[0m                                                                               \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                     \u001B[1;35mStructure\u001B[0m\u001B[1m(\u001B[0m                                                                  \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mattrs\u001B[0m=\u001B[1m{\u001B[0m\u001B[1m}\u001B[0m,                                                               \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mgeometry\u001B[0m=\u001B[1;35mBox\u001B[0m\u001B[1m(\u001B[0m                                                           \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                             \u001B[33mattrs\u001B[0m=\u001B[1m{\u001B[0m\u001B[1m}\u001B[0m,                                                           \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                             \u001B[33mtype\u001B[0m=\u001B[32m'Box'\u001B[0m,                                                         \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                             \u001B[33mcenter\u001B[0m=\u001B[1m(\u001B[0m\u001B[1;36m0.0\u001B[0m, \u001B[1;36m0.0\u001B[0m, \u001B[1;36m0.0\u001B[0m\u001B[1m)\u001B[0m,                                             \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                             \u001B[33msize\u001B[0m=\u001B[1m(\u001B[0m\u001B[1;36m1.0\u001B[0m, \u001B[1;36m1.0\u001B[0m, \u001B[1;36m1.0\u001B[0m\u001B[1m)\u001B[0m                                                \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[1m)\u001B[0m,                                                                      \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mname\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                              \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mbackground_permittivity\u001B[0m=\u001B[3;35mNone\u001B[0m,                                           \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mbackground_medium\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                 \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mpriority\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                          \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mtype\u001B[0m=\u001B[32m'Structure'\u001B[0m,                                                       \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[33mmedium\u001B[0m=\u001B[1;35mMedium\u001B[0m\u001B[1m(\u001B[0m                                                          \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                             \u001B[33mattrs\u001B[0m=\u001B[1m{\u001B[0m\u001B[1m}\u001B[0m,                                                           \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                             \u001B[33mname\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                          \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                             \u001B[33mfrequency_range\u001B[0m=\u001B[3;35mNone\u001B[0m,                                               \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                             \u001B[33mallow_gain\u001B[0m=\u001B[3;91mFalse\u001B[0m,                                                   \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                             \u001B[33mnonlinear_spec\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                             \u001B[33mmodulation_spec\u001B[0m=\u001B[3;35mNone\u001B[0m,                                               \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                             \u001B[33mviz_spec\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                      \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                             \u001B[33mheat_spec\u001B[0m=\u001B[3;35mNone\u001B[0m,                                                     \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                             \u001B[33mtype\u001B[0m=\u001B[32m'Medium'\u001B[0m,                                                      \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                             \u001B[33mpermittivity\u001B[0m=\u001B[1;36m2\u001B[0m\u001B[1;36m.0\u001B[0m,                                                   \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                             \u001B[33mconductivity\u001B[0m=\u001B[1;36m0\u001B[0m\u001B[1;36m.0\u001B[0m                                                    \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                         \u001B[1m)\u001B[0m                                                                       \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                     \u001B[1m)\u001B[0m                                                                           \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                                 \u001B[1m]\u001B[0m                                                                               \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                   \u001B[3;33mwvl_mat_min\u001B[0m = \u001B[1;35mnp.float64\u001B[0m\u001B[1m(\u001B[0m\u001B[1;36m1.4132352000025548\u001B[0m\u001B[1m)\u001B[0m                                                  \u001B[34m│\u001B[0m\n",
       "\u001B[34m│\u001B[0m                     \u001B[3;33mzero_dims\u001B[0m = \u001B[1m[\u001B[0m\u001B[1m]\u001B[0m                                                                              \u001B[34m│\u001B[0m\n",
       "\u001B[34m╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯\u001B[0m\n"
      ],
      "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: #000080; text-decoration-color: #000080\">╭─────────────────────────────── </span><span style=\"color: #000080; text-decoration-color: #000080; font-weight: bold\">&lt;</span><span style=\"color: #ff00ff; text-decoration-color: #ff00ff; font-weight: bold\">class</span><span style=\"color: #000000; text-decoration-color: #000000\"> </span><span style=\"color: #008000; text-decoration-color: #008000\">'tidy3d.components.simulation.Simulation'</span><span style=\"color: #000080; text-decoration-color: #000080; font-weight: bold\">&gt;</span><span style=\"color: #000080; text-decoration-color: #000080\"> ───────────────────────────────╮</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008080; text-decoration-color: #008080\">Custom implementation of Maxwell’s equations which represents the physical model to be solved using the FDTD</span>    <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008080; text-decoration-color: #008080\">method.</span>                                                                                                         <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                                                                                                 <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">╭─────────────────────────────────────────────────────────────────────────────────────────────────────────────╮</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">Simulation</span><span style=\"font-weight: bold\">(</span>                                                                                                 <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   </span><span style=\"color: #808000; text-decoration-color: #808000\">attrs</span>=<span style=\"font-weight: bold\">{}</span>,                                                                                               <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   </span><span style=\"color: #808000; text-decoration-color: #808000\">type</span>=<span style=\"color: #008000; text-decoration-color: #008000\">'Simulation'</span>,                                                                                      <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   </span><span style=\"color: #808000; text-decoration-color: #808000\">center</span>=<span style=\"font-weight: bold\">(</span><span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span><span style=\"font-weight: bold\">)</span>,                                                                                 <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   </span><span style=\"color: #808000; text-decoration-color: #808000\">size</span>=<span style=\"font-weight: bold\">(</span><span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">4.0</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">4.0</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">4.0</span><span style=\"font-weight: bold\">)</span>,                                                                                   <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   </span><span style=\"color: #808000; text-decoration-color: #808000\">medium</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">Medium</span><span style=\"font-weight: bold\">(</span>                                                                                          <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">attrs</span>=<span style=\"font-weight: bold\">{}</span>,                                                                                           <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">name</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                                                          <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">frequency_range</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                                               <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">allow_gain</span>=<span style=\"color: #ff0000; text-decoration-color: #ff0000; font-style: italic\">False</span>,                                                                                   <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">nonlinear_spec</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                                                <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">modulation_spec</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                                               <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">viz_spec</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                                                      <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">heat_spec</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                                                     <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">type</span>=<span style=\"color: #008000; text-decoration-color: #008000\">'Medium'</span>,                                                                                      <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">permittivity</span>=<span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">1.0</span>,                                                                                   <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">conductivity</span>=<span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span>                                                                                    <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   </span><span style=\"font-weight: bold\">)</span>,                                                                                                      <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   </span><span style=\"color: #808000; text-decoration-color: #808000\">structures</span>=<span style=\"font-weight: bold\">(</span>                                                                                            <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   </span><span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">Structure</span><span style=\"font-weight: bold\">(</span>                                                                                          <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">attrs</span>=<span style=\"font-weight: bold\">{}</span>,                                                                                       <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">geometry</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">Box</span><span style=\"font-weight: bold\">(</span><span style=\"color: #808000; text-decoration-color: #808000\">attrs</span>=<span style=\"font-weight: bold\">{}</span>, <span style=\"color: #808000; text-decoration-color: #808000\">type</span>=<span style=\"color: #008000; text-decoration-color: #008000\">'Box'</span>, <span style=\"color: #808000; text-decoration-color: #808000\">center</span>=<span style=\"font-weight: bold\">(</span><span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span><span style=\"font-weight: bold\">)</span>, <span style=\"color: #808000; text-decoration-color: #808000\">size</span>=<span style=\"font-weight: bold\">(</span><span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">1.0</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">1.0</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">1.0</span><span style=\"font-weight: bold\">))</span>,               <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">name</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                                                      <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">background_permittivity</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                                   <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">background_medium</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                                         <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">priority</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                                                  <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">type</span>=<span style=\"color: #008000; text-decoration-color: #008000\">'Structure'</span>,                                                                               <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">medium</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">Medium</span><span style=\"font-weight: bold\">(</span>                                                                                  <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   │   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">attrs</span>=<span style=\"font-weight: bold\">{}</span>,                                                                                   <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   │   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">name</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                                                  <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   │   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">frequency_range</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                                       <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   │   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">allow_gain</span>=<span style=\"color: #ff0000; text-decoration-color: #ff0000; font-style: italic\">False</span>,                                                                           <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   │   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">nonlinear_spec</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                                        <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   │   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">modulation_spec</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                                       <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   │   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">viz_spec</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                                              <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   │   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">heat_spec</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                                             <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   │   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">type</span>=<span style=\"color: #008000; text-decoration-color: #008000\">'Medium'</span>,                                                                              <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   │   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">permittivity</span>=<span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">2.0</span>,                                                                           <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   │   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">conductivity</span>=<span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span>                                                                            <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   │   </span><span style=\"font-weight: bold\">)</span>                                                                                               <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   </span><span style=\"font-weight: bold\">)</span>,                                                                                                  <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   </span><span style=\"font-weight: bold\">)</span>,                                                                                                      <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   </span><span style=\"color: #808000; text-decoration-color: #808000\">symmetry</span>=<span style=\"font-weight: bold\">(</span><span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0</span><span style=\"font-weight: bold\">)</span>,                                                                                     <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   </span><span style=\"color: #808000; text-decoration-color: #808000\">sources</span>=<span style=\"font-weight: bold\">(</span>                                                                                               <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   </span><span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">UniformCurrentSource</span><span style=\"font-weight: bold\">(</span>                                                                               <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">attrs</span>=<span style=\"font-weight: bold\">{}</span>,                                                                                       <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">name</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                                                      <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">type</span>=<span style=\"color: #008000; text-decoration-color: #008000\">'UniformCurrentSource'</span>,                                                                    <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">center</span>=<span style=\"font-weight: bold\">(</span><span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span><span style=\"font-weight: bold\">)</span>,                                                                         <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">size</span>=<span style=\"font-weight: bold\">(</span><span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span><span style=\"font-weight: bold\">)</span>,                                                                           <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">source_time</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">GaussianPulse</span><span style=\"font-weight: bold\">(</span>                                                                      <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   │   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">attrs</span>=<span style=\"font-weight: bold\">{}</span>,                                                                                   <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   │   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">amplitude</span>=<span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">1.0</span>,                                                                              <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   │   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">phase</span>=<span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span>,                                                                                  <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   │   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">type</span>=<span style=\"color: #008000; text-decoration-color: #008000\">'GaussianPulse'</span>,                                                                       <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   │   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">freq0</span>=<span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">150000000000000.0</span>,                                                                    <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   │   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">fwidth</span>=<span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">10000000000000.0</span>,                                                                    <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   │   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">offset</span>=<span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">5.0</span>,                                                                                 <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   │   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">remove_dc_component</span>=<span style=\"color: #00ff00; text-decoration-color: #00ff00; font-style: italic\">True</span>                                                                    <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   │   </span><span style=\"font-weight: bold\">)</span>,                                                                                              <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">interpolate</span>=<span style=\"color: #00ff00; text-decoration-color: #00ff00; font-style: italic\">True</span>,                                                                               <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">confine_to_bounds</span>=<span style=\"color: #ff0000; text-decoration-color: #ff0000; font-style: italic\">False</span>,                                                                        <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">polarization</span>=<span style=\"color: #008000; text-decoration-color: #008000\">'Ez'</span>                                                                               <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   </span><span style=\"font-weight: bold\">)</span>,                                                                                                  <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   </span><span style=\"font-weight: bold\">)</span>,                                                                                                      <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   </span><span style=\"color: #808000; text-decoration-color: #808000\">boundary_spec</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">BoundarySpec</span><span style=\"font-weight: bold\">(</span>                                                                             <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">attrs</span>=<span style=\"font-weight: bold\">{}</span>,                                                                                           <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">x</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">Boundary</span><span style=\"font-weight: bold\">(</span>                                                                                         <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">attrs</span>=<span style=\"font-weight: bold\">{}</span>,                                                                                       <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">plus</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">Periodic</span><span style=\"font-weight: bold\">(</span><span style=\"color: #808000; text-decoration-color: #808000\">attrs</span>=<span style=\"font-weight: bold\">{}</span>, <span style=\"color: #808000; text-decoration-color: #808000\">name</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>, <span style=\"color: #808000; text-decoration-color: #808000\">type</span>=<span style=\"color: #008000; text-decoration-color: #008000\">'Periodic'</span><span style=\"font-weight: bold\">)</span>,                                            <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">minus</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">Periodic</span><span style=\"font-weight: bold\">(</span><span style=\"color: #808000; text-decoration-color: #808000\">attrs</span>=<span style=\"font-weight: bold\">{}</span>, <span style=\"color: #808000; text-decoration-color: #808000\">name</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>, <span style=\"color: #808000; text-decoration-color: #808000\">type</span>=<span style=\"color: #008000; text-decoration-color: #008000\">'Periodic'</span><span style=\"font-weight: bold\">)</span>,                                           <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">type</span>=<span style=\"color: #008000; text-decoration-color: #008000\">'Boundary'</span>                                                                                 <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   </span><span style=\"font-weight: bold\">)</span>,                                                                                                  <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">y</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">Boundary</span><span style=\"font-weight: bold\">(</span>                                                                                         <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">attrs</span>=<span style=\"font-weight: bold\">{}</span>,                                                                                       <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">plus</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">PML</span><span style=\"font-weight: bold\">(</span>                                                                                       <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   │   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">attrs</span>=<span style=\"font-weight: bold\">{}</span>,                                                                                   <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   │   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">name</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                                                  <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   │   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">type</span>=<span style=\"color: #008000; text-decoration-color: #008000\">'PML'</span>,                                                                                 <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   │   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">num_layers</span>=<span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">12</span>,                                                                              <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   │   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">parameters</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">PMLParams</span><span style=\"font-weight: bold\">(</span>                                                                       <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   │   │   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">attrs</span>=<span style=\"font-weight: bold\">{}</span>,                                                                               <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   │   │   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">sigma_order</span>=<span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">3</span>,                                                                          <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   │   │   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">sigma_min</span>=<span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span>,                                                                          <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   │   │   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">sigma_max</span>=<span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">1.5</span>,                                                                          <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   │   │   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">type</span>=<span style=\"color: #008000; text-decoration-color: #008000\">'PMLParams'</span>,                                                                       <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   │   │   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">kappa_order</span>=<span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">3</span>,                                                                          <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   │   │   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">kappa_min</span>=<span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">1.0</span>,                                                                          <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   │   │   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">kappa_max</span>=<span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">3.0</span>,                                                                          <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   │   │   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">alpha_order</span>=<span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">1</span>,                                                                          <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   │   │   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">alpha_min</span>=<span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span>,                                                                          <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   │   │   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">alpha_max</span>=<span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span>                                                                           <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   │   │   </span><span style=\"font-weight: bold\">)</span>                                                                                           <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   │   </span><span style=\"font-weight: bold\">)</span>,                                                                                              <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">minus</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">PML</span><span style=\"font-weight: bold\">(</span>                                                                                      <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   │   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">attrs</span>=<span style=\"font-weight: bold\">{}</span>,                                                                                   <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   │   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">name</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                                                  <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   │   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">type</span>=<span style=\"color: #008000; text-decoration-color: #008000\">'PML'</span>,                                                                                 <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   │   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">num_layers</span>=<span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">12</span>,                                                                              <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   │   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">parameters</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">PMLParams</span><span style=\"font-weight: bold\">(</span>                                                                       <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   │   │   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">attrs</span>=<span style=\"font-weight: bold\">{}</span>,                                                                               <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   │   │   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">sigma_order</span>=<span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">3</span>,                                                                          <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   │   │   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">sigma_min</span>=<span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span>,                                                                          <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   │   │   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">sigma_max</span>=<span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">1.5</span>,                                                                          <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   │   │   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">type</span>=<span style=\"color: #008000; text-decoration-color: #008000\">'PMLParams'</span>,                                                                       <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   │   │   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">kappa_order</span>=<span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">3</span>,                                                                          <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   │   │   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">kappa_min</span>=<span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">1.0</span>,                                                                          <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   │   │   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">kappa_max</span>=<span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">3.0</span>,                                                                          <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   │   │   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">alpha_order</span>=<span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">1</span>,                                                                          <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   │   │   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">alpha_min</span>=<span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span>,                                                                          <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   │   │   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">alpha_max</span>=<span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span>                                                                           <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   │   │   </span><span style=\"font-weight: bold\">)</span>                                                                                           <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   │   </span><span style=\"font-weight: bold\">)</span>,                                                                                              <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">type</span>=<span style=\"color: #008000; text-decoration-color: #008000\">'Boundary'</span>                                                                                 <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   </span><span style=\"font-weight: bold\">)</span>,                                                                                                  <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">z</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">Boundary</span><span style=\"font-weight: bold\">(</span>                                                                                         <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">attrs</span>=<span style=\"font-weight: bold\">{}</span>,                                                                                       <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">plus</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">Periodic</span><span style=\"font-weight: bold\">(</span><span style=\"color: #808000; text-decoration-color: #808000\">attrs</span>=<span style=\"font-weight: bold\">{}</span>, <span style=\"color: #808000; text-decoration-color: #808000\">name</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>, <span style=\"color: #808000; text-decoration-color: #808000\">type</span>=<span style=\"color: #008000; text-decoration-color: #008000\">'Periodic'</span><span style=\"font-weight: bold\">)</span>,                                            <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">minus</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">Periodic</span><span style=\"font-weight: bold\">(</span><span style=\"color: #808000; text-decoration-color: #808000\">attrs</span>=<span style=\"font-weight: bold\">{}</span>, <span style=\"color: #808000; text-decoration-color: #808000\">name</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>, <span style=\"color: #808000; text-decoration-color: #808000\">type</span>=<span style=\"color: #008000; text-decoration-color: #008000\">'Periodic'</span><span style=\"font-weight: bold\">)</span>,                                           <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">type</span>=<span style=\"color: #008000; text-decoration-color: #008000\">'Boundary'</span>                                                                                 <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   </span><span style=\"font-weight: bold\">)</span>,                                                                                                  <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">type</span>=<span style=\"color: #008000; text-decoration-color: #008000\">'BoundarySpec'</span>                                                                                 <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   </span><span style=\"font-weight: bold\">)</span>,                                                                                                      <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   </span><span style=\"color: #808000; text-decoration-color: #808000\">monitors</span>=<span style=\"font-weight: bold\">(</span>                                                                                              <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   </span><span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">FieldMonitor</span><span style=\"font-weight: bold\">(</span>                                                                                       <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">attrs</span>=<span style=\"font-weight: bold\">{}</span>,                                                                                       <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">type</span>=<span style=\"color: #008000; text-decoration-color: #008000\">'FieldMonitor'</span>,                                                                            <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">center</span>=<span style=\"font-weight: bold\">(</span><span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">1.0</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span><span style=\"font-weight: bold\">)</span>,                                                                         <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">size</span>=<span style=\"font-weight: bold\">(</span>inf, inf, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span><span style=\"font-weight: bold\">)</span>,                                                                           <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">name</span>=<span style=\"color: #008000; text-decoration-color: #008000\">'fields_at_150THz'</span>,                                                                        <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">interval_space</span>=<span style=\"font-weight: bold\">(</span><span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">1</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">1</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">1</span><span style=\"font-weight: bold\">)</span>,                                                                       <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">colocate</span>=<span style=\"color: #00ff00; text-decoration-color: #00ff00; font-style: italic\">True</span>,                                                                                  <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">freqs</span>=<span style=\"font-weight: bold\">(</span><span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">150000000000000.0</span>,<span style=\"font-weight: bold\">)</span>,                                                                     <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">apodization</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">ApodizationSpec</span><span style=\"font-weight: bold\">(</span>                                                                    <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   │   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">attrs</span>=<span style=\"font-weight: bold\">{}</span>,                                                                                   <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   │   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">start</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                                                 <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   │   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">end</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                                                   <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   │   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">width</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                                                 <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   │   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">type</span>=<span style=\"color: #008000; text-decoration-color: #008000\">'ApodizationSpec'</span>                                                                      <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   │   </span><span style=\"font-weight: bold\">)</span>,                                                                                              <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">fields</span>=<span style=\"font-weight: bold\">(</span><span style=\"color: #008000; text-decoration-color: #008000\">'Ex'</span>, <span style=\"color: #008000; text-decoration-color: #008000\">'Ey'</span>, <span style=\"color: #008000; text-decoration-color: #008000\">'Hz'</span><span style=\"font-weight: bold\">)</span>                                                                       <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   </span><span style=\"font-weight: bold\">)</span>,                                                                                                  <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   </span><span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">FluxTimeMonitor</span><span style=\"font-weight: bold\">(</span>                                                                                    <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">attrs</span>=<span style=\"font-weight: bold\">{}</span>,                                                                                       <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">type</span>=<span style=\"color: #008000; text-decoration-color: #008000\">'FluxTimeMonitor'</span>,                                                                         <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">center</span>=<span style=\"font-weight: bold\">(</span><span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">1.0</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span><span style=\"font-weight: bold\">)</span>,                                                                         <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">size</span>=<span style=\"font-weight: bold\">(</span>inf, inf, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span><span style=\"font-weight: bold\">)</span>,                                                                           <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">name</span>=<span style=\"color: #008000; text-decoration-color: #008000\">'flux_over_time'</span>,                                                                          <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">interval_space</span>=<span style=\"font-weight: bold\">(</span><span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">1</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">1</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">1</span><span style=\"font-weight: bold\">)</span>,                                                                       <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">colocate</span>=<span style=\"color: #00ff00; text-decoration-color: #00ff00; font-style: italic\">True</span>,                                                                                  <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">start</span>=<span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">1e-13</span>,                                                                                    <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">stop</span>=<span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">3e-13</span>,                                                                                     <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">interval</span>=<span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">5</span>,                                                                                     <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">normal_dir</span>=<span style=\"color: #008000; text-decoration-color: #008000\">'+'</span>,                                                                                 <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">exclude_surfaces</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>                                                                           <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   </span><span style=\"font-weight: bold\">)</span>                                                                                                   <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   </span><span style=\"font-weight: bold\">)</span>,                                                                                                      <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   </span><span style=\"color: #808000; text-decoration-color: #808000\">grid_spec</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">GridSpec</span><span style=\"font-weight: bold\">(</span>                                                                                     <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">attrs</span>=<span style=\"font-weight: bold\">{}</span>,                                                                                           <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">grid_x</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">UniformGrid</span><span style=\"font-weight: bold\">(</span><span style=\"color: #808000; text-decoration-color: #808000\">attrs</span>=<span style=\"font-weight: bold\">{}</span>, <span style=\"color: #808000; text-decoration-color: #808000\">type</span>=<span style=\"color: #008000; text-decoration-color: #008000\">'UniformGrid'</span>, <span style=\"color: #808000; text-decoration-color: #808000\">dl</span>=<span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.2</span><span style=\"font-weight: bold\">)</span>,                                           <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">grid_y</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">UniformGrid</span><span style=\"font-weight: bold\">(</span><span style=\"color: #808000; text-decoration-color: #808000\">attrs</span>=<span style=\"font-weight: bold\">{}</span>, <span style=\"color: #808000; text-decoration-color: #808000\">type</span>=<span style=\"color: #008000; text-decoration-color: #008000\">'UniformGrid'</span>, <span style=\"color: #808000; text-decoration-color: #808000\">dl</span>=<span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.2</span><span style=\"font-weight: bold\">)</span>,                                           <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">grid_z</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">UniformGrid</span><span style=\"font-weight: bold\">(</span><span style=\"color: #808000; text-decoration-color: #808000\">attrs</span>=<span style=\"font-weight: bold\">{}</span>, <span style=\"color: #808000; text-decoration-color: #808000\">type</span>=<span style=\"color: #008000; text-decoration-color: #008000\">'UniformGrid'</span>, <span style=\"color: #808000; text-decoration-color: #808000\">dl</span>=<span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.2</span><span style=\"font-weight: bold\">)</span>,                                           <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">wavelength</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                                                    <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">override_structures</span>=<span style=\"font-weight: bold\">()</span>,                                                                             <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">snapping_points</span>=<span style=\"font-weight: bold\">()</span>,                                                                                 <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">layer_refinement_specs</span>=<span style=\"font-weight: bold\">()</span>,                                                                          <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">type</span>=<span style=\"color: #008000; text-decoration-color: #008000\">'GridSpec'</span>                                                                                     <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   </span><span style=\"font-weight: bold\">)</span>,                                                                                                      <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   </span><span style=\"color: #808000; text-decoration-color: #808000\">version</span>=<span style=\"color: #008000; text-decoration-color: #008000\">'2.10.0rc3'</span>,                                                                                    <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   </span><span style=\"color: #808000; text-decoration-color: #808000\">plot_length_units</span>=<span style=\"color: #008000; text-decoration-color: #008000\">'μm'</span>,                                                                                 <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   </span><span style=\"color: #808000; text-decoration-color: #808000\">structure_priority_mode</span>=<span style=\"color: #008000; text-decoration-color: #008000\">'equal'</span>,                                                                        <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   </span><span style=\"color: #808000; text-decoration-color: #808000\">lumped_elements</span>=<span style=\"font-weight: bold\">()</span>,                                                                                     <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   </span><span style=\"color: #808000; text-decoration-color: #808000\">subpixel</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">SubpixelSpec</span><span style=\"font-weight: bold\">(</span>                                                                                  <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">attrs</span>=<span style=\"font-weight: bold\">{}</span>,                                                                                           <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">dielectric</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">PolarizedAveraging</span><span style=\"font-weight: bold\">(</span><span style=\"color: #808000; text-decoration-color: #808000\">attrs</span>=<span style=\"font-weight: bold\">{}</span>, <span style=\"color: #808000; text-decoration-color: #808000\">type</span>=<span style=\"color: #008000; text-decoration-color: #008000\">'PolarizedAveraging'</span><span style=\"font-weight: bold\">)</span>,                                 <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">metal</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">Staircasing</span><span style=\"font-weight: bold\">(</span><span style=\"color: #808000; text-decoration-color: #808000\">attrs</span>=<span style=\"font-weight: bold\">{}</span>, <span style=\"color: #808000; text-decoration-color: #808000\">type</span>=<span style=\"color: #008000; text-decoration-color: #008000\">'Staircasing'</span><span style=\"font-weight: bold\">)</span>,                                                    <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">pec</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">PECConformal</span><span style=\"font-weight: bold\">(</span>                                                                                   <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">attrs</span>=<span style=\"font-weight: bold\">{}</span>,                                                                                       <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">type</span>=<span style=\"color: #008000; text-decoration-color: #008000\">'PECConformal'</span>,                                                                            <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">timestep_reduction</span>=<span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.3</span>,                                                                         <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">edge_singularity_correction</span>=<span style=\"color: #00ff00; text-decoration-color: #00ff00; font-style: italic\">True</span>                                                                <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   </span><span style=\"font-weight: bold\">)</span>,                                                                                                  <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">pmc</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">Staircasing</span><span style=\"font-weight: bold\">(</span><span style=\"color: #808000; text-decoration-color: #808000\">attrs</span>=<span style=\"font-weight: bold\">{}</span>, <span style=\"color: #808000; text-decoration-color: #808000\">type</span>=<span style=\"color: #008000; text-decoration-color: #008000\">'Staircasing'</span><span style=\"font-weight: bold\">)</span>,                                                      <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">lossy_metal</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">SurfaceImpedance</span><span style=\"font-weight: bold\">(</span>                                                                       <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">attrs</span>=<span style=\"font-weight: bold\">{}</span>,                                                                                       <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">type</span>=<span style=\"color: #008000; text-decoration-color: #008000\">'SurfaceImpedance'</span>,                                                                        <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">timestep_reduction</span>=<span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span>,                                                                         <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">edge_singularity_correction</span>=<span style=\"color: #00ff00; text-decoration-color: #00ff00; font-style: italic\">True</span>                                                                <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   </span><span style=\"font-weight: bold\">)</span>,                                                                                                  <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   │   </span><span style=\"color: #808000; text-decoration-color: #808000\">type</span>=<span style=\"color: #008000; text-decoration-color: #008000\">'SubpixelSpec'</span>                                                                                 <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   </span><span style=\"font-weight: bold\">)</span>,                                                                                                      <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   </span><span style=\"color: #808000; text-decoration-color: #808000\">simulation_type</span>=<span style=\"color: #008000; text-decoration-color: #008000\">'tidy3d'</span>,                                                                               <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   </span><span style=\"color: #808000; text-decoration-color: #808000\">post_norm</span>=<span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">1.0</span>,                                                                                          <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   </span><span style=\"color: #808000; text-decoration-color: #808000\">internal_absorbers</span>=<span style=\"font-weight: bold\">()</span>,                                                                                  <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   </span><span style=\"color: #808000; text-decoration-color: #808000\">courant</span>=<span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.99</span>,                                                                                           <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   </span><span style=\"color: #808000; text-decoration-color: #808000\">precision</span>=<span style=\"color: #008000; text-decoration-color: #008000\">'hybrid'</span>,                                                                                     <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   </span><span style=\"color: #808000; text-decoration-color: #808000\">normalize_index</span>=<span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0</span>,                                                                                      <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   </span><span style=\"color: #808000; text-decoration-color: #808000\">shutoff</span>=<span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">1e-05</span>,                                                                                          <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   </span><span style=\"color: #808000; text-decoration-color: #808000\">run_time</span>=<span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">1e-12</span>,                                                                                         <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #7fbf7f; text-decoration-color: #7fbf7f\">│   </span><span style=\"color: #808000; text-decoration-color: #808000\">low_freq_smoothing</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>                                                                                 <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"font-weight: bold\">)</span>                                                                                                           <span style=\"color: #008000; text-decoration-color: #008000\">│</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #008000; text-decoration-color: #008000\">╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span> <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                                                                                                 <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                <span style=\"color: #808000; text-decoration-color: #808000; font-style: italic\">all_structures</span> = <span style=\"font-weight: bold\">[</span>                                                                               <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                     <span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">Structure</span><span style=\"font-weight: bold\">(</span>                                                                  <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">attrs</span>=<span style=\"font-weight: bold\">{}</span>,                                                               <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">geometry</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">Box</span><span style=\"font-weight: bold\">(</span>                                                           <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                             <span style=\"color: #808000; text-decoration-color: #808000\">attrs</span>=<span style=\"font-weight: bold\">{}</span>,                                                           <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                             <span style=\"color: #808000; text-decoration-color: #808000\">type</span>=<span style=\"color: #008000; text-decoration-color: #008000\">'Box'</span>,                                                         <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                             <span style=\"color: #808000; text-decoration-color: #808000\">center</span>=<span style=\"font-weight: bold\">(</span><span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span><span style=\"font-weight: bold\">)</span>,                                             <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                             <span style=\"color: #808000; text-decoration-color: #808000\">size</span>=<span style=\"font-weight: bold\">(</span>inf, inf, inf<span style=\"font-weight: bold\">)</span>                                                <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"font-weight: bold\">)</span>,                                                                      <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">name</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                              <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">background_permittivity</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                           <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">background_medium</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                 <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">priority</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                          <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">type</span>=<span style=\"color: #008000; text-decoration-color: #008000\">'Structure'</span>,                                                       <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">medium</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">Medium</span><span style=\"font-weight: bold\">(</span>                                                          <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                             <span style=\"color: #808000; text-decoration-color: #808000\">attrs</span>=<span style=\"font-weight: bold\">{}</span>,                                                           <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                             <span style=\"color: #808000; text-decoration-color: #808000\">name</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                          <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                             <span style=\"color: #808000; text-decoration-color: #808000\">frequency_range</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                               <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                             <span style=\"color: #808000; text-decoration-color: #808000\">allow_gain</span>=<span style=\"color: #ff0000; text-decoration-color: #ff0000; font-style: italic\">False</span>,                                                   <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                             <span style=\"color: #808000; text-decoration-color: #808000\">nonlinear_spec</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                             <span style=\"color: #808000; text-decoration-color: #808000\">modulation_spec</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                               <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                             <span style=\"color: #808000; text-decoration-color: #808000\">viz_spec</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                      <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                             <span style=\"color: #808000; text-decoration-color: #808000\">heat_spec</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                     <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                             <span style=\"color: #808000; text-decoration-color: #808000\">type</span>=<span style=\"color: #008000; text-decoration-color: #008000\">'Medium'</span>,                                                      <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                             <span style=\"color: #808000; text-decoration-color: #808000\">permittivity</span>=<span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">1.0</span>,                                                   <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                             <span style=\"color: #808000; text-decoration-color: #808000\">conductivity</span>=<span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span>                                                    <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"font-weight: bold\">)</span>                                                                       <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                     <span style=\"font-weight: bold\">)</span>,                                                                          <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                     <span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">Structure</span><span style=\"font-weight: bold\">(</span>                                                                  <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">attrs</span>=<span style=\"font-weight: bold\">{}</span>,                                                               <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">geometry</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">Box</span><span style=\"font-weight: bold\">(</span>                                                           <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                             <span style=\"color: #808000; text-decoration-color: #808000\">attrs</span>=<span style=\"font-weight: bold\">{}</span>,                                                           <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                             <span style=\"color: #808000; text-decoration-color: #808000\">type</span>=<span style=\"color: #008000; text-decoration-color: #008000\">'Box'</span>,                                                         <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                             <span style=\"color: #808000; text-decoration-color: #808000\">center</span>=<span style=\"font-weight: bold\">(</span><span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span><span style=\"font-weight: bold\">)</span>,                                             <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                             <span style=\"color: #808000; text-decoration-color: #808000\">size</span>=<span style=\"font-weight: bold\">(</span><span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">1.0</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">1.0</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">1.0</span><span style=\"font-weight: bold\">)</span>                                                <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"font-weight: bold\">)</span>,                                                                      <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">name</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                              <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">background_permittivity</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                           <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">background_medium</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                 <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">priority</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                          <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">type</span>=<span style=\"color: #008000; text-decoration-color: #008000\">'Structure'</span>,                                                       <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">medium</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">Medium</span><span style=\"font-weight: bold\">(</span>                                                          <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                             <span style=\"color: #808000; text-decoration-color: #808000\">attrs</span>=<span style=\"font-weight: bold\">{}</span>,                                                           <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                             <span style=\"color: #808000; text-decoration-color: #808000\">name</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                          <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                             <span style=\"color: #808000; text-decoration-color: #808000\">frequency_range</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                               <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                             <span style=\"color: #808000; text-decoration-color: #808000\">allow_gain</span>=<span style=\"color: #ff0000; text-decoration-color: #ff0000; font-style: italic\">False</span>,                                                   <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                             <span style=\"color: #808000; text-decoration-color: #808000\">nonlinear_spec</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                             <span style=\"color: #808000; text-decoration-color: #808000\">modulation_spec</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                               <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                             <span style=\"color: #808000; text-decoration-color: #808000\">viz_spec</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                      <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                             <span style=\"color: #808000; text-decoration-color: #808000\">heat_spec</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                     <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                             <span style=\"color: #808000; text-decoration-color: #808000\">type</span>=<span style=\"color: #008000; text-decoration-color: #008000\">'Medium'</span>,                                                      <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                             <span style=\"color: #808000; text-decoration-color: #808000\">permittivity</span>=<span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">2.0</span>,                                                   <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                             <span style=\"color: #808000; text-decoration-color: #808000\">conductivity</span>=<span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span>                                                    <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"font-weight: bold\">)</span>                                                                       <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                     <span style=\"font-weight: bold\">)</span>                                                                           <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                 <span style=\"font-weight: bold\">]</span>                                                                               <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                    <span style=\"color: #808000; text-decoration-color: #808000; font-style: italic\">allow_gain</span> = <span style=\"color: #ff0000; text-decoration-color: #ff0000; font-style: italic\">False</span>                                                                           <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                         <span style=\"color: #808000; text-decoration-color: #808000; font-style: italic\">attrs</span> = <span style=\"font-weight: bold\">{}</span>                                                                              <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                    <span style=\"color: #808000; text-decoration-color: #808000; font-style: italic\">aux_fields</span> = <span style=\"font-weight: bold\">[]</span>                                                                              <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>          <span style=\"color: #808000; text-decoration-color: #808000; font-style: italic\">background_structure</span> = <span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">Structure</span><span style=\"font-weight: bold\">(</span>                                                                      <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                     <span style=\"color: #808000; text-decoration-color: #808000\">attrs</span>=<span style=\"font-weight: bold\">{}</span>,                                                                   <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                     <span style=\"color: #808000; text-decoration-color: #808000\">geometry</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">Box</span><span style=\"font-weight: bold\">(</span>                                                               <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">attrs</span>=<span style=\"font-weight: bold\">{}</span>,                                                               <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">type</span>=<span style=\"color: #008000; text-decoration-color: #008000\">'Box'</span>,                                                             <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">center</span>=<span style=\"font-weight: bold\">(</span><span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span><span style=\"font-weight: bold\">)</span>,                                                 <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">size</span>=<span style=\"font-weight: bold\">(</span>inf, inf, inf<span style=\"font-weight: bold\">)</span>                                                    <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                     <span style=\"font-weight: bold\">)</span>,                                                                          <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                     <span style=\"color: #808000; text-decoration-color: #808000\">name</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                                  <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                     <span style=\"color: #808000; text-decoration-color: #808000\">background_permittivity</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                               <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                     <span style=\"color: #808000; text-decoration-color: #808000\">background_medium</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                     <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                     <span style=\"color: #808000; text-decoration-color: #808000\">priority</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                              <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                     <span style=\"color: #808000; text-decoration-color: #808000\">type</span>=<span style=\"color: #008000; text-decoration-color: #008000\">'Structure'</span>,                                                           <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                     <span style=\"color: #808000; text-decoration-color: #808000\">medium</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">Medium</span><span style=\"font-weight: bold\">(</span>                                                              <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">attrs</span>=<span style=\"font-weight: bold\">{}</span>,                                                               <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">name</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                              <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">frequency_range</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                   <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">allow_gain</span>=<span style=\"color: #ff0000; text-decoration-color: #ff0000; font-style: italic\">False</span>,                                                       <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">nonlinear_spec</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                    <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">modulation_spec</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                   <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">viz_spec</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                          <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">heat_spec</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                         <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">type</span>=<span style=\"color: #008000; text-decoration-color: #008000\">'Medium'</span>,                                                          <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">permittivity</span>=<span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">1.0</span>,                                                       <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">conductivity</span>=<span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span>                                                        <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                     <span style=\"font-weight: bold\">)</span>                                                                           <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                 <span style=\"font-weight: bold\">)</span>                                                                               <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                 <span style=\"color: #808000; text-decoration-color: #808000; font-style: italic\">boundary_spec</span> = <span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">BoundarySpec</span><span style=\"font-weight: bold\">(</span>                                                                   <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                     <span style=\"color: #808000; text-decoration-color: #808000\">attrs</span>=<span style=\"font-weight: bold\">{}</span>,                                                                   <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                     <span style=\"color: #808000; text-decoration-color: #808000\">x</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">Boundary</span><span style=\"font-weight: bold\">(</span>                                                                 <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">attrs</span>=<span style=\"font-weight: bold\">{}</span>,                                                               <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">plus</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">Periodic</span><span style=\"font-weight: bold\">(</span><span style=\"color: #808000; text-decoration-color: #808000\">attrs</span>=<span style=\"font-weight: bold\">{}</span>, <span style=\"color: #808000; text-decoration-color: #808000\">name</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>, <span style=\"color: #808000; text-decoration-color: #808000\">type</span>=<span style=\"color: #008000; text-decoration-color: #008000\">'Periodic'</span><span style=\"font-weight: bold\">)</span>,                    <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">minus</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">Periodic</span><span style=\"font-weight: bold\">(</span><span style=\"color: #808000; text-decoration-color: #808000\">attrs</span>=<span style=\"font-weight: bold\">{}</span>, <span style=\"color: #808000; text-decoration-color: #808000\">name</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>, <span style=\"color: #808000; text-decoration-color: #808000\">type</span>=<span style=\"color: #008000; text-decoration-color: #008000\">'Periodic'</span><span style=\"font-weight: bold\">)</span>,                   <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">type</span>=<span style=\"color: #008000; text-decoration-color: #008000\">'Boundary'</span>                                                         <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                     <span style=\"font-weight: bold\">)</span>,                                                                          <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                     <span style=\"color: #808000; text-decoration-color: #808000\">y</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">Boundary</span><span style=\"font-weight: bold\">(</span>                                                                 <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">attrs</span>=<span style=\"font-weight: bold\">{}</span>,                                                               <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">plus</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">PML</span><span style=\"font-weight: bold\">(</span>                                                               <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                             <span style=\"color: #808000; text-decoration-color: #808000\">attrs</span>=<span style=\"font-weight: bold\">{}</span>,                                                           <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                             <span style=\"color: #808000; text-decoration-color: #808000\">name</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                          <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                             <span style=\"color: #808000; text-decoration-color: #808000\">type</span>=<span style=\"color: #008000; text-decoration-color: #008000\">'PML'</span>,                                                         <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                             <span style=\"color: #808000; text-decoration-color: #808000\">num_layers</span>=<span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">12</span>,                                                      <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                             <span style=\"color: #808000; text-decoration-color: #808000\">parameters</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">PMLParams</span><span style=\"font-weight: bold\">(</span>                                               <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                                 <span style=\"color: #808000; text-decoration-color: #808000\">attrs</span>=<span style=\"font-weight: bold\">{}</span>,                                                       <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                                 <span style=\"color: #808000; text-decoration-color: #808000\">sigma_order</span>=<span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">3</span>,                                                  <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                                 <span style=\"color: #808000; text-decoration-color: #808000\">sigma_min</span>=<span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span>,                                                  <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                                 <span style=\"color: #808000; text-decoration-color: #808000\">sigma_max</span>=<span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">1.5</span>,                                                  <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                                 <span style=\"color: #808000; text-decoration-color: #808000\">type</span>=<span style=\"color: #008000; text-decoration-color: #008000\">'PMLParams'</span>,                                               <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                                 <span style=\"color: #808000; text-decoration-color: #808000\">kappa_order</span>=<span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">3</span>,                                                  <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                                 <span style=\"color: #808000; text-decoration-color: #808000\">kappa_min</span>=<span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">1.0</span>,                                                  <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                                 <span style=\"color: #808000; text-decoration-color: #808000\">kappa_max</span>=<span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">3.0</span>,                                                  <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                                 <span style=\"color: #808000; text-decoration-color: #808000\">alpha_order</span>=<span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">1</span>,                                                  <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                                 <span style=\"color: #808000; text-decoration-color: #808000\">alpha_min</span>=<span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span>,                                                  <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                                 <span style=\"color: #808000; text-decoration-color: #808000\">alpha_max</span>=<span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span>                                                   <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                             <span style=\"font-weight: bold\">)</span>                                                                   <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"font-weight: bold\">)</span>,                                                                      <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">minus</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">PML</span><span style=\"font-weight: bold\">(</span>                                                              <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                             <span style=\"color: #808000; text-decoration-color: #808000\">attrs</span>=<span style=\"font-weight: bold\">{}</span>,                                                           <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                             <span style=\"color: #808000; text-decoration-color: #808000\">name</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                          <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                             <span style=\"color: #808000; text-decoration-color: #808000\">type</span>=<span style=\"color: #008000; text-decoration-color: #008000\">'PML'</span>,                                                         <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                             <span style=\"color: #808000; text-decoration-color: #808000\">num_layers</span>=<span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">12</span>,                                                      <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                             <span style=\"color: #808000; text-decoration-color: #808000\">parameters</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">PMLParams</span><span style=\"font-weight: bold\">(</span>                                               <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                                 <span style=\"color: #808000; text-decoration-color: #808000\">attrs</span>=<span style=\"font-weight: bold\">{}</span>,                                                       <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                                 <span style=\"color: #808000; text-decoration-color: #808000\">sigma_order</span>=<span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">3</span>,                                                  <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                                 <span style=\"color: #808000; text-decoration-color: #808000\">sigma_min</span>=<span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span>,                                                  <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                                 <span style=\"color: #808000; text-decoration-color: #808000\">sigma_max</span>=<span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">1.5</span>,                                                  <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                                 <span style=\"color: #808000; text-decoration-color: #808000\">type</span>=<span style=\"color: #008000; text-decoration-color: #008000\">'PMLParams'</span>,                                               <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                                 <span style=\"color: #808000; text-decoration-color: #808000\">kappa_order</span>=<span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">3</span>,                                                  <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                                 <span style=\"color: #808000; text-decoration-color: #808000\">kappa_min</span>=<span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">1.0</span>,                                                  <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                                 <span style=\"color: #808000; text-decoration-color: #808000\">kappa_max</span>=<span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">3.0</span>,                                                  <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                                 <span style=\"color: #808000; text-decoration-color: #808000\">alpha_order</span>=<span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">1</span>,                                                  <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                                 <span style=\"color: #808000; text-decoration-color: #808000\">alpha_min</span>=<span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span>,                                                  <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                                 <span style=\"color: #808000; text-decoration-color: #808000\">alpha_max</span>=<span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span>                                                   <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                             <span style=\"font-weight: bold\">)</span>                                                                   <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"font-weight: bold\">)</span>,                                                                      <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">type</span>=<span style=\"color: #008000; text-decoration-color: #008000\">'Boundary'</span>                                                         <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                     <span style=\"font-weight: bold\">)</span>,                                                                          <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                     <span style=\"color: #808000; text-decoration-color: #808000\">z</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">Boundary</span><span style=\"font-weight: bold\">(</span>                                                                 <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">attrs</span>=<span style=\"font-weight: bold\">{}</span>,                                                               <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">plus</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">Periodic</span><span style=\"font-weight: bold\">(</span><span style=\"color: #808000; text-decoration-color: #808000\">attrs</span>=<span style=\"font-weight: bold\">{}</span>, <span style=\"color: #808000; text-decoration-color: #808000\">name</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>, <span style=\"color: #808000; text-decoration-color: #808000\">type</span>=<span style=\"color: #008000; text-decoration-color: #008000\">'Periodic'</span><span style=\"font-weight: bold\">)</span>,                    <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">minus</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">Periodic</span><span style=\"font-weight: bold\">(</span><span style=\"color: #808000; text-decoration-color: #808000\">attrs</span>=<span style=\"font-weight: bold\">{}</span>, <span style=\"color: #808000; text-decoration-color: #808000\">name</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>, <span style=\"color: #808000; text-decoration-color: #808000\">type</span>=<span style=\"color: #008000; text-decoration-color: #008000\">'Periodic'</span><span style=\"font-weight: bold\">)</span>,                   <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">type</span>=<span style=\"color: #008000; text-decoration-color: #008000\">'Boundary'</span>                                                         <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                     <span style=\"font-weight: bold\">)</span>,                                                                          <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                     <span style=\"color: #808000; text-decoration-color: #808000\">type</span>=<span style=\"color: #008000; text-decoration-color: #008000\">'BoundarySpec'</span>                                                         <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                 <span style=\"font-weight: bold\">)</span>                                                                               <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                  <span style=\"color: #808000; text-decoration-color: #808000; font-style: italic\">bounding_box</span> = <span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">Box</span><span style=\"font-weight: bold\">(</span><span style=\"color: #808000; text-decoration-color: #808000\">attrs</span>=<span style=\"font-weight: bold\">{}</span>, <span style=\"color: #808000; text-decoration-color: #808000\">type</span>=<span style=\"color: #008000; text-decoration-color: #008000\">'Box'</span>, <span style=\"color: #808000; text-decoration-color: #808000\">center</span>=<span style=\"font-weight: bold\">(</span><span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span><span style=\"font-weight: bold\">)</span>, <span style=\"color: #808000; text-decoration-color: #808000\">size</span>=<span style=\"font-weight: bold\">(</span><span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">4.0</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">4.0</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">4.0</span><span style=\"font-weight: bold\">))</span>         <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                        <span style=\"color: #808000; text-decoration-color: #808000; font-style: italic\">bounds</span> = <span style=\"font-weight: bold\">((</span><span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">-2.0</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">-2.0</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">-2.0</span><span style=\"font-weight: bold\">)</span>, <span style=\"font-weight: bold\">(</span><span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">2.0</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">2.0</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">2.0</span><span style=\"font-weight: bold\">))</span>                                           <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                    <span style=\"color: #808000; text-decoration-color: #808000; font-style: italic\">bounds_pml</span> = <span style=\"font-weight: bold\">(</span>                                                                               <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                     <span style=\"font-weight: bold\">(</span><span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">np.float64</span><span style=\"font-weight: bold\">(</span><span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">-2.0</span><span style=\"font-weight: bold\">)</span>, <span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">np.float64</span><span style=\"font-weight: bold\">(</span><span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">-4.3999999999999995</span><span style=\"font-weight: bold\">)</span>, <span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">np.float64</span><span style=\"font-weight: bold\">(</span><span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">-2.0</span><span style=\"font-weight: bold\">))</span>,      <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                     <span style=\"font-weight: bold\">(</span><span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">np.float64</span><span style=\"font-weight: bold\">(</span><span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">2.0</span><span style=\"font-weight: bold\">)</span>, <span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">np.float64</span><span style=\"font-weight: bold\">(</span><span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">4.399999999999997</span><span style=\"font-weight: bold\">)</span>, <span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">np.float64</span><span style=\"font-weight: bold\">(</span><span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">2.0</span><span style=\"font-weight: bold\">))</span>           <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                 <span style=\"font-weight: bold\">)</span>                                                                               <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                        <span style=\"color: #808000; text-decoration-color: #808000; font-style: italic\">center</span> = <span style=\"font-weight: bold\">(</span><span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span><span style=\"font-weight: bold\">)</span>                                                                 <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                <span style=\"color: #808000; text-decoration-color: #808000; font-style: italic\">complex_fields</span> = <span style=\"color: #ff0000; text-decoration-color: #ff0000; font-style: italic\">False</span>                                                                           <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                       <span style=\"color: #808000; text-decoration-color: #808000; font-style: italic\">courant</span> = <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.99</span>                                                                            <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>               <span style=\"color: #808000; text-decoration-color: #808000; font-style: italic\">custom_datasets</span> = <span style=\"font-weight: bold\">[]</span>                                                                              <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                            <span style=\"color: #808000; text-decoration-color: #808000; font-style: italic\">dt</span> = <span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">np.float64</span><span style=\"font-weight: bold\">(</span><span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">3.813149739062003e-16</span><span style=\"font-weight: bold\">)</span>                                               <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>               <span style=\"color: #808000; text-decoration-color: #808000; font-style: italic\">frequency_range</span> = <span style=\"font-weight: bold\">(</span><span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">110770887769698.48</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">190588842668354.53</span><span style=\"font-weight: bold\">)</span>                                        <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                      <span style=\"color: #808000; text-decoration-color: #808000; font-style: italic\">geometry</span> = <span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">Box</span><span style=\"font-weight: bold\">(</span><span style=\"color: #808000; text-decoration-color: #808000\">attrs</span>=<span style=\"font-weight: bold\">{}</span>, <span style=\"color: #808000; text-decoration-color: #808000\">type</span>=<span style=\"color: #008000; text-decoration-color: #008000\">'Box'</span>, <span style=\"color: #808000; text-decoration-color: #808000\">center</span>=<span style=\"font-weight: bold\">(</span><span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span><span style=\"font-weight: bold\">)</span>, <span style=\"color: #808000; text-decoration-color: #808000\">size</span>=<span style=\"font-weight: bold\">(</span><span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">4.0</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">4.0</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">4.0</span><span style=\"font-weight: bold\">))</span>         <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                          <span style=\"color: #808000; text-decoration-color: #808000; font-style: italic\">grid</span> = <span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">Grid</span><span style=\"font-weight: bold\">(</span>                                                                           <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                     <span style=\"color: #808000; text-decoration-color: #808000\">attrs</span>=<span style=\"font-weight: bold\">{}</span>,                                                                   <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                     <span style=\"color: #808000; text-decoration-color: #808000\">boundaries</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">Coords</span><span style=\"font-weight: bold\">(</span>                                                          <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">attrs</span>=<span style=\"font-weight: bold\">{}</span>,                                                               <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">x</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">array</span><span style=\"font-weight: bold\">([</span><span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">-2</span>. , <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">-1.8</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">-1.6</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">-1.4</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">-1.2</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">-1</span>. , <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">-0.8</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">-0.6</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">-0.4</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">-0.2</span>,    <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                 <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0</span>. ,                                                                            <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.2</span>,  <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.4</span>,  <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.6</span>,  <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.8</span>,  <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">1</span>. ,  <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">1.2</span>,  <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">1.4</span>,  <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">1.6</span>,  <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">1.8</span>,  <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">2</span>. <span style=\"font-weight: bold\">])</span>,            <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">y</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">array</span><span style=\"font-weight: bold\">([</span><span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">-4.4</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">-4.2</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">-4</span>. , <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">-3.8</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">-3.6</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">-3.4</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">-3.2</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">-3</span>. , <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">-2.8</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">-2.6</span>,    <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                 <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">-2.4</span>,                                                                           <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                        <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">-2.2</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">-2</span>. , <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">-1.8</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">-1.6</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">-1.4</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">-1.2</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">-1</span>. , <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">-0.8</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">-0.6</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">-0.4</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">-0.2</span>,        <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0</span>. ,  <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.2</span>,  <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.4</span>,  <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.6</span>,  <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.8</span>,  <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">1</span>. ,  <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">1.2</span>,  <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">1.4</span>,  <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">1.6</span>,  <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">1.8</span>,  <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">2</span>. ,        <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">2.2</span>,  <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">2.4</span>,  <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">2.6</span>,  <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">2.8</span>,  <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">3</span>. ,  <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">3.2</span>,  <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">3.4</span>,  <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">3.6</span>,  <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">3.8</span>,  <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">4</span>. ,  <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">4.2</span>,        <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">4.4</span><span style=\"font-weight: bold\">])</span>,                                                                  <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">z</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">array</span><span style=\"font-weight: bold\">([</span><span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">-2</span>. , <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">-1.8</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">-1.6</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">-1.4</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">-1.2</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">-1</span>. , <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">-0.8</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">-0.6</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">-0.4</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">-0.2</span>,    <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                 <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0</span>. ,                                                                            <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.2</span>,  <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.4</span>,  <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.6</span>,  <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.8</span>,  <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">1</span>. ,  <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">1.2</span>,  <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">1.4</span>,  <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">1.6</span>,  <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">1.8</span>,  <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">2</span>. <span style=\"font-weight: bold\">])</span>,            <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">type</span>=<span style=\"color: #008000; text-decoration-color: #008000\">'Coords'</span>                                                           <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                     <span style=\"font-weight: bold\">)</span>,                                                                          <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                     <span style=\"color: #808000; text-decoration-color: #808000\">type</span>=<span style=\"color: #008000; text-decoration-color: #008000\">'Grid'</span>                                                                 <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                 <span style=\"font-weight: bold\">)</span>                                                                               <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                     <span style=\"color: #808000; text-decoration-color: #808000; font-style: italic\">grid_info</span> = <span style=\"font-weight: bold\">{</span>                                                                               <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                     <span style=\"color: #008000; text-decoration-color: #008000\">'Nx'</span>: <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">20</span>,                                                                   <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                     <span style=\"color: #008000; text-decoration-color: #008000\">'Ny'</span>: <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">44</span>,                                                                   <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                     <span style=\"color: #008000; text-decoration-color: #008000\">'Nz'</span>: <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">20</span>,                                                                   <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                     <span style=\"color: #008000; text-decoration-color: #008000\">'grid_points'</span>: <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">17600</span>,                                                       <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                     <span style=\"color: #008000; text-decoration-color: #008000\">'min_grid_size'</span>: <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.1999999999999993</span>,                                        <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                     <span style=\"color: #008000; text-decoration-color: #008000\">'max_grid_size'</span>: <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.20000000000000018</span>,                                       <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                     <span style=\"color: #008000; text-decoration-color: #008000\">'computational_complexity'</span>: <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">88000.0000000003</span>                                <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                 <span style=\"font-weight: bold\">}</span>                                                                               <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                     <span style=\"color: #808000; text-decoration-color: #808000; font-style: italic\">grid_spec</span> = <span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">GridSpec</span><span style=\"font-weight: bold\">(</span>                                                                       <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                     <span style=\"color: #808000; text-decoration-color: #808000\">attrs</span>=<span style=\"font-weight: bold\">{}</span>,                                                                   <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                     <span style=\"color: #808000; text-decoration-color: #808000\">grid_x</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">UniformGrid</span><span style=\"font-weight: bold\">(</span><span style=\"color: #808000; text-decoration-color: #808000\">attrs</span>=<span style=\"font-weight: bold\">{}</span>, <span style=\"color: #808000; text-decoration-color: #808000\">type</span>=<span style=\"color: #008000; text-decoration-color: #008000\">'UniformGrid'</span>, <span style=\"color: #808000; text-decoration-color: #808000\">dl</span>=<span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.2</span><span style=\"font-weight: bold\">)</span>,                   <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                     <span style=\"color: #808000; text-decoration-color: #808000\">grid_y</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">UniformGrid</span><span style=\"font-weight: bold\">(</span><span style=\"color: #808000; text-decoration-color: #808000\">attrs</span>=<span style=\"font-weight: bold\">{}</span>, <span style=\"color: #808000; text-decoration-color: #808000\">type</span>=<span style=\"color: #008000; text-decoration-color: #008000\">'UniformGrid'</span>, <span style=\"color: #808000; text-decoration-color: #808000\">dl</span>=<span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.2</span><span style=\"font-weight: bold\">)</span>,                   <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                     <span style=\"color: #808000; text-decoration-color: #808000\">grid_z</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">UniformGrid</span><span style=\"font-weight: bold\">(</span><span style=\"color: #808000; text-decoration-color: #808000\">attrs</span>=<span style=\"font-weight: bold\">{}</span>, <span style=\"color: #808000; text-decoration-color: #808000\">type</span>=<span style=\"color: #008000; text-decoration-color: #008000\">'UniformGrid'</span>, <span style=\"color: #808000; text-decoration-color: #808000\">dl</span>=<span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.2</span><span style=\"font-weight: bold\">)</span>,                   <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                     <span style=\"color: #808000; text-decoration-color: #808000\">wavelength</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                            <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                     <span style=\"color: #808000; text-decoration-color: #808000\">override_structures</span>=<span style=\"font-weight: bold\">()</span>,                                                     <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                     <span style=\"color: #808000; text-decoration-color: #808000\">snapping_points</span>=<span style=\"font-weight: bold\">()</span>,                                                         <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                     <span style=\"color: #808000; text-decoration-color: #808000\">layer_refinement_specs</span>=<span style=\"font-weight: bold\">()</span>,                                                  <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                     <span style=\"color: #808000; text-decoration-color: #808000\">type</span>=<span style=\"color: #008000; text-decoration-color: #008000\">'GridSpec'</span>                                                             <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                 <span style=\"font-weight: bold\">)</span>                                                                               <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>            <span style=\"color: #808000; text-decoration-color: #808000; font-style: italic\">internal_absorbers</span> = <span style=\"font-weight: bold\">()</span>                                                                              <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>  <span style=\"color: #808000; text-decoration-color: #808000; font-style: italic\">internal_override_structures</span> = <span style=\"font-weight: bold\">[]</span>                                                                              <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>      <span style=\"color: #808000; text-decoration-color: #808000; font-style: italic\">internal_snapping_points</span> = <span style=\"font-weight: bold\">[]</span>                                                                              <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>            <span style=\"color: #808000; text-decoration-color: #808000; font-style: italic\">low_freq_smoothing</span> = <span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>                                                                            <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>               <span style=\"color: #808000; text-decoration-color: #808000; font-style: italic\">lumped_elements</span> = <span style=\"font-weight: bold\">()</span>                                                                              <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                        <span style=\"color: #808000; text-decoration-color: #808000; font-style: italic\">medium</span> = <span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">Medium</span><span style=\"font-weight: bold\">(</span>                                                                         <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                     <span style=\"color: #808000; text-decoration-color: #808000\">attrs</span>=<span style=\"font-weight: bold\">{}</span>,                                                                   <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                     <span style=\"color: #808000; text-decoration-color: #808000\">name</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                                  <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                     <span style=\"color: #808000; text-decoration-color: #808000\">frequency_range</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                       <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                     <span style=\"color: #808000; text-decoration-color: #808000\">allow_gain</span>=<span style=\"color: #ff0000; text-decoration-color: #ff0000; font-style: italic\">False</span>,                                                           <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                     <span style=\"color: #808000; text-decoration-color: #808000\">nonlinear_spec</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                        <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                     <span style=\"color: #808000; text-decoration-color: #808000\">modulation_spec</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                       <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                     <span style=\"color: #808000; text-decoration-color: #808000\">viz_spec</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                              <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                     <span style=\"color: #808000; text-decoration-color: #808000\">heat_spec</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                             <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                     <span style=\"color: #808000; text-decoration-color: #808000\">type</span>=<span style=\"color: #008000; text-decoration-color: #008000\">'Medium'</span>,                                                              <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                     <span style=\"color: #808000; text-decoration-color: #808000\">permittivity</span>=<span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">1.0</span>,                                                           <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                     <span style=\"color: #808000; text-decoration-color: #808000\">conductivity</span>=<span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span>                                                            <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                 <span style=\"font-weight: bold\">)</span>                                                                               <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                    <span style=\"color: #808000; text-decoration-color: #808000; font-style: italic\">medium_map</span> = <span style=\"font-weight: bold\">{</span>                                                                               <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                     <span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">Medium</span><span style=\"font-weight: bold\">(</span><span style=\"color: #808000; text-decoration-color: #808000\">attrs</span>=<span style=\"font-weight: bold\">{}</span>, <span style=\"color: #808000; text-decoration-color: #808000\">name</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>, <span style=\"color: #808000; text-decoration-color: #808000\">frequency_range</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>, <span style=\"color: #808000; text-decoration-color: #808000\">allow_gain</span>=<span style=\"color: #ff0000; text-decoration-color: #ff0000; font-style: italic\">False</span>,         <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                 <span style=\"color: #808000; text-decoration-color: #808000\">nonlinear_spec</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>, <span style=\"color: #808000; text-decoration-color: #808000\">modulation_spec</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>, <span style=\"color: #808000; text-decoration-color: #808000\">viz_spec</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>, <span style=\"color: #808000; text-decoration-color: #808000\">heat_spec</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,       <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                 <span style=\"color: #808000; text-decoration-color: #808000\">type</span>=<span style=\"color: #008000; text-decoration-color: #008000\">'Medium'</span>, <span style=\"color: #808000; text-decoration-color: #808000\">permittivity</span>=<span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">1.0</span>, <span style=\"color: #808000; text-decoration-color: #808000\">conductivity</span>=<span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span><span style=\"font-weight: bold\">)</span>: <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0</span>,                          <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                     <span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">Medium</span><span style=\"font-weight: bold\">(</span><span style=\"color: #808000; text-decoration-color: #808000\">attrs</span>=<span style=\"font-weight: bold\">{}</span>, <span style=\"color: #808000; text-decoration-color: #808000\">name</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>, <span style=\"color: #808000; text-decoration-color: #808000\">frequency_range</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>, <span style=\"color: #808000; text-decoration-color: #808000\">allow_gain</span>=<span style=\"color: #ff0000; text-decoration-color: #ff0000; font-style: italic\">False</span>,         <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                 <span style=\"color: #808000; text-decoration-color: #808000\">nonlinear_spec</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>, <span style=\"color: #808000; text-decoration-color: #808000\">modulation_spec</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>, <span style=\"color: #808000; text-decoration-color: #808000\">viz_spec</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>, <span style=\"color: #808000; text-decoration-color: #808000\">heat_spec</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,       <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                 <span style=\"color: #808000; text-decoration-color: #808000\">type</span>=<span style=\"color: #008000; text-decoration-color: #008000\">'Medium'</span>, <span style=\"color: #808000; text-decoration-color: #808000\">permittivity</span>=<span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">2.0</span>, <span style=\"color: #808000; text-decoration-color: #808000\">conductivity</span>=<span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span><span style=\"font-weight: bold\">)</span>: <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">1</span>                           <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                 <span style=\"font-weight: bold\">}</span>                                                                               <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                       <span style=\"color: #808000; text-decoration-color: #808000; font-style: italic\">mediums</span> = <span style=\"font-weight: bold\">[</span>                                                                               <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                     <span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">Medium</span><span style=\"font-weight: bold\">(</span>                                                                     <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">attrs</span>=<span style=\"font-weight: bold\">{}</span>,                                                               <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">name</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                              <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">frequency_range</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                   <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">allow_gain</span>=<span style=\"color: #ff0000; text-decoration-color: #ff0000; font-style: italic\">False</span>,                                                       <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">nonlinear_spec</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                    <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">modulation_spec</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                   <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">viz_spec</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                          <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">heat_spec</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                         <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">type</span>=<span style=\"color: #008000; text-decoration-color: #008000\">'Medium'</span>,                                                          <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">permittivity</span>=<span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">1.0</span>,                                                       <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">conductivity</span>=<span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span>                                                        <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                     <span style=\"font-weight: bold\">)</span>,                                                                          <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                     <span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">Medium</span><span style=\"font-weight: bold\">(</span>                                                                     <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">attrs</span>=<span style=\"font-weight: bold\">{}</span>,                                                               <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">name</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                              <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">frequency_range</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                   <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">allow_gain</span>=<span style=\"color: #ff0000; text-decoration-color: #ff0000; font-style: italic\">False</span>,                                                       <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">nonlinear_spec</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                    <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">modulation_spec</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                   <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">viz_spec</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                          <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">heat_spec</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                         <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">type</span>=<span style=\"color: #008000; text-decoration-color: #008000\">'Medium'</span>,                                                          <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">permittivity</span>=<span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">2.0</span>,                                                       <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">conductivity</span>=<span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span>                                                        <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                     <span style=\"font-weight: bold\">)</span>                                                                           <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                 <span style=\"font-weight: bold\">]</span>                                                                               <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                      <span style=\"color: #808000; text-decoration-color: #808000; font-style: italic\">monitors</span> = <span style=\"font-weight: bold\">(</span>                                                                               <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                     <span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">FieldMonitor</span><span style=\"font-weight: bold\">(</span>                                                               <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">attrs</span>=<span style=\"font-weight: bold\">{}</span>,                                                               <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">type</span>=<span style=\"color: #008000; text-decoration-color: #008000\">'FieldMonitor'</span>,                                                    <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">center</span>=<span style=\"font-weight: bold\">(</span><span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">1.0</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span><span style=\"font-weight: bold\">)</span>,                                                 <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">size</span>=<span style=\"font-weight: bold\">(</span>inf, inf, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span><span style=\"font-weight: bold\">)</span>,                                                   <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">name</span>=<span style=\"color: #008000; text-decoration-color: #008000\">'fields_at_150THz'</span>,                                                <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">interval_space</span>=<span style=\"font-weight: bold\">(</span><span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">1</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">1</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">1</span><span style=\"font-weight: bold\">)</span>,                                               <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">colocate</span>=<span style=\"color: #00ff00; text-decoration-color: #00ff00; font-style: italic\">True</span>,                                                          <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">freqs</span>=<span style=\"font-weight: bold\">(</span><span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">150000000000000.0</span>,<span style=\"font-weight: bold\">)</span>,                                             <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">apodization</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">ApodizationSpec</span><span style=\"font-weight: bold\">(</span>                                            <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                             <span style=\"color: #808000; text-decoration-color: #808000\">attrs</span>=<span style=\"font-weight: bold\">{}</span>,                                                           <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                             <span style=\"color: #808000; text-decoration-color: #808000\">start</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                         <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                             <span style=\"color: #808000; text-decoration-color: #808000\">end</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                           <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                             <span style=\"color: #808000; text-decoration-color: #808000\">width</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                         <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                             <span style=\"color: #808000; text-decoration-color: #808000\">type</span>=<span style=\"color: #008000; text-decoration-color: #008000\">'ApodizationSpec'</span>                                              <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"font-weight: bold\">)</span>,                                                                      <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">fields</span>=<span style=\"font-weight: bold\">(</span><span style=\"color: #008000; text-decoration-color: #008000\">'Ex'</span>, <span style=\"color: #008000; text-decoration-color: #008000\">'Ey'</span>, <span style=\"color: #008000; text-decoration-color: #008000\">'Hz'</span><span style=\"font-weight: bold\">)</span>                                               <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                     <span style=\"font-weight: bold\">)</span>,                                                                          <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                     <span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">FluxTimeMonitor</span><span style=\"font-weight: bold\">(</span>                                                            <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">attrs</span>=<span style=\"font-weight: bold\">{}</span>,                                                               <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">type</span>=<span style=\"color: #008000; text-decoration-color: #008000\">'FluxTimeMonitor'</span>,                                                 <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">center</span>=<span style=\"font-weight: bold\">(</span><span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">1.0</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span><span style=\"font-weight: bold\">)</span>,                                                 <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">size</span>=<span style=\"font-weight: bold\">(</span>inf, inf, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span><span style=\"font-weight: bold\">)</span>,                                                   <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">name</span>=<span style=\"color: #008000; text-decoration-color: #008000\">'flux_over_time'</span>,                                                  <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">interval_space</span>=<span style=\"font-weight: bold\">(</span><span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">1</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">1</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">1</span><span style=\"font-weight: bold\">)</span>,                                               <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">colocate</span>=<span style=\"color: #00ff00; text-decoration-color: #00ff00; font-style: italic\">True</span>,                                                          <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">start</span>=<span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">1e-13</span>,                                                            <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">stop</span>=<span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">3e-13</span>,                                                             <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">interval</span>=<span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">5</span>,                                                             <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">normal_dir</span>=<span style=\"color: #008000; text-decoration-color: #008000\">'+'</span>,                                                         <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">exclude_surfaces</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>                                                   <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                     <span style=\"font-weight: bold\">)</span>                                                                           <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                 <span style=\"font-weight: bold\">)</span>                                                                               <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>            <span style=\"color: #808000; text-decoration-color: #808000; font-style: italic\">monitors_data_size</span> = <span style=\"font-weight: bold\">{</span><span style=\"color: #008000; text-decoration-color: #008000\">'fields_at_150THz'</span>: <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">22680.0</span>, <span style=\"color: #008000; text-decoration-color: #008000\">'flux_over_time'</span>: <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">416.0</span><span style=\"font-weight: bold\">}</span>                          <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                         <span style=\"color: #800000; text-decoration-color: #800000; font-weight: bold; font-style: italic\">n_max</span><span style=\"color: #800000; text-decoration-color: #800000; font-weight: bold\"> =</span> <span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">AttributeError</span><span style=\"font-weight: bold\">(</span><span style=\"color: #008000; text-decoration-color: #008000\">\"'Simulation' object has no attribute 'freq_max'\"</span><span style=\"font-weight: bold\">)</span>               <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>               <span style=\"color: #808000; text-decoration-color: #808000; font-style: italic\">normalize_index</span> = <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0</span>                                                                               <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                     <span style=\"color: #808000; text-decoration-color: #808000; font-style: italic\">num_cells</span> = <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">17600</span>                                                                           <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span> <span style=\"color: #808000; text-decoration-color: #808000; font-style: italic\">num_computational_grid_points</span> = <span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">np.int64</span><span style=\"font-weight: bold\">(</span><span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">18400</span><span style=\"font-weight: bold\">)</span>                                                                 <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                <span style=\"color: #808000; text-decoration-color: #808000; font-style: italic\">num_pml_layers</span> = <span style=\"font-weight: bold\">[[</span><span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0</span><span style=\"font-weight: bold\">]</span>, <span style=\"font-weight: bold\">[</span><span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">12</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">12</span><span style=\"font-weight: bold\">]</span>, <span style=\"font-weight: bold\">[</span><span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0</span><span style=\"font-weight: bold\">]]</span>                                                      <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                <span style=\"color: #808000; text-decoration-color: #808000; font-style: italic\">num_time_steps</span> = <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">2624</span>                                                                            <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                  <span style=\"color: #808000; text-decoration-color: #808000; font-style: italic\">nyquist_step</span> = <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">5</span>                                                                               <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>             <span style=\"color: #808000; text-decoration-color: #808000; font-style: italic\">plot_length_units</span> = <span style=\"color: #008000; text-decoration-color: #008000\">'μm'</span>                                                                            <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                   <span style=\"color: #808000; text-decoration-color: #808000; font-style: italic\">plot_params</span> = <span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">PlotParams</span><span style=\"font-weight: bold\">(</span>                                                                     <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                     <span style=\"color: #808000; text-decoration-color: #808000\">attrs</span>=<span style=\"font-weight: bold\">{}</span>,                                                                   <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                     <span style=\"color: #808000; text-decoration-color: #808000\">alpha</span>=<span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">1.0</span>,                                                                  <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                     <span style=\"color: #808000; text-decoration-color: #808000\">zorder</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                                <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                     <span style=\"color: #808000; text-decoration-color: #808000\">type</span>=<span style=\"color: #008000; text-decoration-color: #008000\">'PlotParams'</span>,                                                          <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                     <span style=\"color: #808000; text-decoration-color: #808000\">edgecolor</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                             <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                     <span style=\"color: #808000; text-decoration-color: #808000\">facecolor</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                             <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                     <span style=\"color: #808000; text-decoration-color: #808000\">fill</span>=<span style=\"color: #00ff00; text-decoration-color: #00ff00; font-style: italic\">True</span>,                                                                  <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                     <span style=\"color: #808000; text-decoration-color: #808000\">hatch</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                                 <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                     <span style=\"color: #808000; text-decoration-color: #808000\">linewidth</span>=<span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">1.0</span>                                                               <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                 <span style=\"font-weight: bold\">)</span>                                                                               <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>               <span style=\"color: #808000; text-decoration-color: #808000; font-style: italic\">pml_thicknesses</span> = <span style=\"font-weight: bold\">[</span>                                                                               <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                     <span style=\"font-weight: bold\">(</span><span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">np.float64</span><span style=\"font-weight: bold\">(</span><span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span><span style=\"font-weight: bold\">)</span>, <span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">np.float64</span><span style=\"font-weight: bold\">(</span><span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span><span style=\"font-weight: bold\">))</span>,                                         <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                     <span style=\"font-weight: bold\">(</span><span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">np.float64</span><span style=\"font-weight: bold\">(</span><span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">2.3999999999999995</span><span style=\"font-weight: bold\">)</span>, <span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">np.float64</span><span style=\"font-weight: bold\">(</span><span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">2.399999999999997</span><span style=\"font-weight: bold\">))</span>,            <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                     <span style=\"font-weight: bold\">(</span><span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">np.float64</span><span style=\"font-weight: bold\">(</span><span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span><span style=\"font-weight: bold\">)</span>, <span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">np.float64</span><span style=\"font-weight: bold\">(</span><span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span><span style=\"font-weight: bold\">))</span>                                          <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                 <span style=\"font-weight: bold\">]</span>                                                                               <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                     <span style=\"color: #808000; text-decoration-color: #808000; font-style: italic\">post_norm</span> = <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">1.0</span>                                                                             <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                     <span style=\"color: #808000; text-decoration-color: #808000; font-style: italic\">precision</span> = <span style=\"color: #008000; text-decoration-color: #008000\">'hybrid'</span>                                                                        <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                      <span style=\"color: #808000; text-decoration-color: #808000; font-style: italic\">run_time</span> = <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">1e-12</span>                                                                           <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                <span style=\"color: #808000; text-decoration-color: #808000; font-style: italic\">scaled_courant</span> = <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.99</span>                                                                            <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                         <span style=\"color: #808000; text-decoration-color: #808000; font-style: italic\">scene</span> = <span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">Scene</span><span style=\"font-weight: bold\">(</span>                                                                          <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                     <span style=\"color: #808000; text-decoration-color: #808000\">attrs</span>=<span style=\"font-weight: bold\">{}</span>,                                                                   <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                     <span style=\"color: #808000; text-decoration-color: #808000\">medium</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">Medium</span><span style=\"font-weight: bold\">(</span>                                                              <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">attrs</span>=<span style=\"font-weight: bold\">{}</span>,                                                               <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">name</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                              <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">frequency_range</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                   <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">allow_gain</span>=<span style=\"color: #ff0000; text-decoration-color: #ff0000; font-style: italic\">False</span>,                                                       <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">nonlinear_spec</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                    <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">modulation_spec</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                   <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">viz_spec</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                          <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">heat_spec</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                         <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">type</span>=<span style=\"color: #008000; text-decoration-color: #008000\">'Medium'</span>,                                                          <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">permittivity</span>=<span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">1.0</span>,                                                       <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">conductivity</span>=<span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span>                                                        <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                     <span style=\"font-weight: bold\">)</span>,                                                                          <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                     <span style=\"color: #808000; text-decoration-color: #808000\">structures</span>=<span style=\"font-weight: bold\">(</span>                                                                <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">Structure</span><span style=\"font-weight: bold\">(</span>                                                              <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                             <span style=\"color: #808000; text-decoration-color: #808000\">attrs</span>=<span style=\"font-weight: bold\">{}</span>,                                                           <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                             <span style=\"color: #808000; text-decoration-color: #808000\">geometry</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">Box</span><span style=\"font-weight: bold\">(</span>                                                       <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                                 <span style=\"color: #808000; text-decoration-color: #808000\">attrs</span>=<span style=\"font-weight: bold\">{}</span>,                                                       <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                                 <span style=\"color: #808000; text-decoration-color: #808000\">type</span>=<span style=\"color: #008000; text-decoration-color: #008000\">'Box'</span>,                                                     <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                                 <span style=\"color: #808000; text-decoration-color: #808000\">center</span>=<span style=\"font-weight: bold\">(</span><span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span><span style=\"font-weight: bold\">)</span>,                                         <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                                 <span style=\"color: #808000; text-decoration-color: #808000\">size</span>=<span style=\"font-weight: bold\">(</span><span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">1.0</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">1.0</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">1.0</span><span style=\"font-weight: bold\">)</span>                                            <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                             <span style=\"font-weight: bold\">)</span>,                                                                  <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                             <span style=\"color: #808000; text-decoration-color: #808000\">name</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                          <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                             <span style=\"color: #808000; text-decoration-color: #808000\">background_permittivity</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                       <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                             <span style=\"color: #808000; text-decoration-color: #808000\">background_medium</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                             <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                             <span style=\"color: #808000; text-decoration-color: #808000\">priority</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                      <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                             <span style=\"color: #808000; text-decoration-color: #808000\">type</span>=<span style=\"color: #008000; text-decoration-color: #008000\">'Structure'</span>,                                                   <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                             <span style=\"color: #808000; text-decoration-color: #808000\">medium</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">Medium</span><span style=\"font-weight: bold\">(</span>                                                      <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                                 <span style=\"color: #808000; text-decoration-color: #808000\">attrs</span>=<span style=\"font-weight: bold\">{}</span>,                                                       <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                                 <span style=\"color: #808000; text-decoration-color: #808000\">name</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                      <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                                 <span style=\"color: #808000; text-decoration-color: #808000\">frequency_range</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                           <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                                 <span style=\"color: #808000; text-decoration-color: #808000\">allow_gain</span>=<span style=\"color: #ff0000; text-decoration-color: #ff0000; font-style: italic\">False</span>,                                               <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                                 <span style=\"color: #808000; text-decoration-color: #808000\">nonlinear_spec</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                            <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                                 <span style=\"color: #808000; text-decoration-color: #808000\">modulation_spec</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                           <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                                 <span style=\"color: #808000; text-decoration-color: #808000\">viz_spec</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                  <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                                 <span style=\"color: #808000; text-decoration-color: #808000\">heat_spec</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                 <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                                 <span style=\"color: #808000; text-decoration-color: #808000\">type</span>=<span style=\"color: #008000; text-decoration-color: #008000\">'Medium'</span>,                                                  <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                                 <span style=\"color: #808000; text-decoration-color: #808000\">permittivity</span>=<span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">2.0</span>,                                               <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                                 <span style=\"color: #808000; text-decoration-color: #808000\">conductivity</span>=<span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span>                                                <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                             <span style=\"font-weight: bold\">)</span>                                                                   <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"font-weight: bold\">)</span>,                                                                      <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                     <span style=\"font-weight: bold\">)</span>,                                                                          <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                     <span style=\"color: #808000; text-decoration-color: #808000\">structure_priority_mode</span>=<span style=\"color: #008000; text-decoration-color: #008000\">'equal'</span>,                                            <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                     <span style=\"color: #808000; text-decoration-color: #808000\">plot_length_units</span>=<span style=\"color: #008000; text-decoration-color: #008000\">'μm'</span>,                                                     <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                     <span style=\"color: #808000; text-decoration-color: #808000\">type</span>=<span style=\"color: #008000; text-decoration-color: #008000\">'Scene'</span>                                                                <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                 <span style=\"font-weight: bold\">)</span>                                                                               <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                <span style=\"color: #808000; text-decoration-color: #808000; font-style: italic\">self_structure</span> = <span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">Structure</span><span style=\"font-weight: bold\">(</span>                                                                      <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                     <span style=\"color: #808000; text-decoration-color: #808000\">attrs</span>=<span style=\"font-weight: bold\">{}</span>,                                                                   <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                     <span style=\"color: #808000; text-decoration-color: #808000\">geometry</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">Box</span><span style=\"font-weight: bold\">(</span>                                                               <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">attrs</span>=<span style=\"font-weight: bold\">{}</span>,                                                               <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">type</span>=<span style=\"color: #008000; text-decoration-color: #008000\">'Box'</span>,                                                             <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">center</span>=<span style=\"font-weight: bold\">(</span><span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span><span style=\"font-weight: bold\">)</span>,                                                 <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">size</span>=<span style=\"font-weight: bold\">(</span>inf, inf, inf<span style=\"font-weight: bold\">)</span>                                                    <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                     <span style=\"font-weight: bold\">)</span>,                                                                          <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                     <span style=\"color: #808000; text-decoration-color: #808000\">name</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                                  <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                     <span style=\"color: #808000; text-decoration-color: #808000\">background_permittivity</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                               <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                     <span style=\"color: #808000; text-decoration-color: #808000\">background_medium</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                     <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                     <span style=\"color: #808000; text-decoration-color: #808000\">priority</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                              <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                     <span style=\"color: #808000; text-decoration-color: #808000\">type</span>=<span style=\"color: #008000; text-decoration-color: #008000\">'Structure'</span>,                                                           <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                     <span style=\"color: #808000; text-decoration-color: #808000\">medium</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">Medium</span><span style=\"font-weight: bold\">(</span>                                                              <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">attrs</span>=<span style=\"font-weight: bold\">{}</span>,                                                               <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">name</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                              <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">frequency_range</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                   <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">allow_gain</span>=<span style=\"color: #ff0000; text-decoration-color: #ff0000; font-style: italic\">False</span>,                                                       <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">nonlinear_spec</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                    <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">modulation_spec</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                   <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">viz_spec</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                          <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">heat_spec</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                         <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">type</span>=<span style=\"color: #008000; text-decoration-color: #008000\">'Medium'</span>,                                                          <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">permittivity</span>=<span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">1.0</span>,                                                       <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">conductivity</span>=<span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span>                                                        <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                     <span style=\"font-weight: bold\">)</span>                                                                           <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                 <span style=\"font-weight: bold\">)</span>                                                                               <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                       <span style=\"color: #808000; text-decoration-color: #808000; font-style: italic\">shutoff</span> = <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">1e-05</span>                                                                           <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>             <span style=\"color: #808000; text-decoration-color: #808000; font-style: italic\">simulation_bounds</span> = <span style=\"font-weight: bold\">(</span>                                                                               <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                     <span style=\"font-weight: bold\">(</span><span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">np.float64</span><span style=\"font-weight: bold\">(</span><span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">-2.0</span><span style=\"font-weight: bold\">)</span>, <span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">np.float64</span><span style=\"font-weight: bold\">(</span><span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">-4.3999999999999995</span><span style=\"font-weight: bold\">)</span>, <span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">np.float64</span><span style=\"font-weight: bold\">(</span><span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">-2.0</span><span style=\"font-weight: bold\">))</span>,      <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                     <span style=\"font-weight: bold\">(</span><span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">np.float64</span><span style=\"font-weight: bold\">(</span><span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">2.0</span><span style=\"font-weight: bold\">)</span>, <span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">np.float64</span><span style=\"font-weight: bold\">(</span><span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">4.399999999999997</span><span style=\"font-weight: bold\">)</span>, <span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">np.float64</span><span style=\"font-weight: bold\">(</span><span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">2.0</span><span style=\"font-weight: bold\">))</span>           <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                 <span style=\"font-weight: bold\">)</span>                                                                               <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>           <span style=\"color: #808000; text-decoration-color: #808000; font-style: italic\">simulation_geometry</span> = <span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">Box</span><span style=\"font-weight: bold\">(</span>                                                                            <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                     <span style=\"color: #808000; text-decoration-color: #808000\">attrs</span>=<span style=\"font-weight: bold\">{}</span>,                                                                   <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                     <span style=\"color: #808000; text-decoration-color: #808000\">type</span>=<span style=\"color: #008000; text-decoration-color: #008000\">'Box'</span>,                                                                 <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                     <span style=\"color: #808000; text-decoration-color: #808000\">center</span>=<span style=\"font-weight: bold\">(</span>                                                                    <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">np.float64</span><span style=\"font-weight: bold\">(</span><span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span><span style=\"font-weight: bold\">)</span>,                                                        <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">np.float64</span><span style=\"font-weight: bold\">(</span><span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">-1.3322676295501878e-15</span><span style=\"font-weight: bold\">)</span>,                                    <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">np.float64</span><span style=\"font-weight: bold\">(</span><span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span><span style=\"font-weight: bold\">)</span>                                                         <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                     <span style=\"font-weight: bold\">)</span>,                                                                          <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                     <span style=\"color: #808000; text-decoration-color: #808000\">size</span>=<span style=\"font-weight: bold\">(</span><span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">np.float64</span><span style=\"font-weight: bold\">(</span><span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">4.0</span><span style=\"font-weight: bold\">)</span>, <span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">np.float64</span><span style=\"font-weight: bold\">(</span><span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">8.799999999999997</span><span style=\"font-weight: bold\">)</span>, <span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">np.float64</span><span style=\"font-weight: bold\">(</span><span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">4.0</span><span style=\"font-weight: bold\">))</span>      <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                 <span style=\"font-weight: bold\">)</span>                                                                               <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>          <span style=\"color: #808000; text-decoration-color: #808000; font-style: italic\">simulation_structure</span> = <span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">Structure</span><span style=\"font-weight: bold\">(</span>                                                                      <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                     <span style=\"color: #808000; text-decoration-color: #808000\">attrs</span>=<span style=\"font-weight: bold\">{}</span>,                                                                   <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                     <span style=\"color: #808000; text-decoration-color: #808000\">geometry</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">Box</span><span style=\"font-weight: bold\">(</span>                                                               <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">attrs</span>=<span style=\"font-weight: bold\">{}</span>,                                                               <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">type</span>=<span style=\"color: #008000; text-decoration-color: #008000\">'Box'</span>,                                                             <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">center</span>=<span style=\"font-weight: bold\">(</span>                                                                <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                             <span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">np.float64</span><span style=\"font-weight: bold\">(</span><span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span><span style=\"font-weight: bold\">)</span>,                                                    <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                             <span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">np.float64</span><span style=\"font-weight: bold\">(</span><span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">-1.3322676295501878e-15</span><span style=\"font-weight: bold\">)</span>,                                <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                             <span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">np.float64</span><span style=\"font-weight: bold\">(</span><span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span><span style=\"font-weight: bold\">)</span>                                                     <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"font-weight: bold\">)</span>,                                                                      <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">size</span>=<span style=\"font-weight: bold\">(</span>                                                                  <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                             <span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">np.float64</span><span style=\"font-weight: bold\">(</span><span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">4.0</span><span style=\"font-weight: bold\">)</span>,                                                    <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                             <span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">np.float64</span><span style=\"font-weight: bold\">(</span><span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">8.799999999999997</span><span style=\"font-weight: bold\">)</span>,                                      <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                             <span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">np.float64</span><span style=\"font-weight: bold\">(</span><span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">4.0</span><span style=\"font-weight: bold\">)</span>                                                     <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"font-weight: bold\">)</span>                                                                       <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                     <span style=\"font-weight: bold\">)</span>,                                                                          <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                     <span style=\"color: #808000; text-decoration-color: #808000\">name</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                                  <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                     <span style=\"color: #808000; text-decoration-color: #808000\">background_permittivity</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                               <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                     <span style=\"color: #808000; text-decoration-color: #808000\">background_medium</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                     <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                     <span style=\"color: #808000; text-decoration-color: #808000\">priority</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                              <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                     <span style=\"color: #808000; text-decoration-color: #808000\">type</span>=<span style=\"color: #008000; text-decoration-color: #008000\">'Structure'</span>,                                                           <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                     <span style=\"color: #808000; text-decoration-color: #808000\">medium</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">Medium</span><span style=\"font-weight: bold\">(</span>                                                              <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">attrs</span>=<span style=\"font-weight: bold\">{}</span>,                                                               <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">name</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                              <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">frequency_range</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                   <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">allow_gain</span>=<span style=\"color: #ff0000; text-decoration-color: #ff0000; font-style: italic\">False</span>,                                                       <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">nonlinear_spec</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                    <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">modulation_spec</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                   <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">viz_spec</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                          <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">heat_spec</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                         <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">type</span>=<span style=\"color: #008000; text-decoration-color: #008000\">'Medium'</span>,                                                          <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">permittivity</span>=<span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">1.0</span>,                                                       <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">conductivity</span>=<span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span>                                                        <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                     <span style=\"font-weight: bold\">)</span>                                                                           <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                 <span style=\"font-weight: bold\">)</span>                                                                               <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>               <span style=\"color: #808000; text-decoration-color: #808000; font-style: italic\">simulation_type</span> = <span style=\"color: #008000; text-decoration-color: #008000\">'tidy3d'</span>                                                                        <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                          <span style=\"color: #808000; text-decoration-color: #808000; font-style: italic\">size</span> = <span style=\"font-weight: bold\">(</span><span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">4.0</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">4.0</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">4.0</span><span style=\"font-weight: bold\">)</span>                                                                 <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                       <span style=\"color: #808000; text-decoration-color: #808000; font-style: italic\">sources</span> = <span style=\"font-weight: bold\">(</span>                                                                               <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                     <span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">UniformCurrentSource</span><span style=\"font-weight: bold\">(</span>                                                       <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">attrs</span>=<span style=\"font-weight: bold\">{}</span>,                                                               <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">name</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                              <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">type</span>=<span style=\"color: #008000; text-decoration-color: #008000\">'UniformCurrentSource'</span>,                                            <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">center</span>=<span style=\"font-weight: bold\">(</span><span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span><span style=\"font-weight: bold\">)</span>,                                                 <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">size</span>=<span style=\"font-weight: bold\">(</span><span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span><span style=\"font-weight: bold\">)</span>,                                                   <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">source_time</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">GaussianPulse</span><span style=\"font-weight: bold\">(</span>                                              <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                             <span style=\"color: #808000; text-decoration-color: #808000\">attrs</span>=<span style=\"font-weight: bold\">{}</span>,                                                           <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                             <span style=\"color: #808000; text-decoration-color: #808000\">amplitude</span>=<span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">1.0</span>,                                                      <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                             <span style=\"color: #808000; text-decoration-color: #808000\">phase</span>=<span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span>,                                                          <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                             <span style=\"color: #808000; text-decoration-color: #808000\">type</span>=<span style=\"color: #008000; text-decoration-color: #008000\">'GaussianPulse'</span>,                                               <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                             <span style=\"color: #808000; text-decoration-color: #808000\">freq0</span>=<span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">150000000000000.0</span>,                                            <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                             <span style=\"color: #808000; text-decoration-color: #808000\">fwidth</span>=<span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">10000000000000.0</span>,                                            <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                             <span style=\"color: #808000; text-decoration-color: #808000\">offset</span>=<span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">5.0</span>,                                                         <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                             <span style=\"color: #808000; text-decoration-color: #808000\">remove_dc_component</span>=<span style=\"color: #00ff00; text-decoration-color: #00ff00; font-style: italic\">True</span>                                            <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"font-weight: bold\">)</span>,                                                                      <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">interpolate</span>=<span style=\"color: #00ff00; text-decoration-color: #00ff00; font-style: italic\">True</span>,                                                       <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">confine_to_bounds</span>=<span style=\"color: #ff0000; text-decoration-color: #ff0000; font-style: italic\">False</span>,                                                <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">polarization</span>=<span style=\"color: #008000; text-decoration-color: #008000\">'Ez'</span>                                                       <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                     <span style=\"font-weight: bold\">)</span>,                                                                          <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                 <span style=\"font-weight: bold\">)</span>                                                                               <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>             <span style=\"color: #808000; text-decoration-color: #808000; font-style: italic\">static_structures</span> = <span style=\"font-weight: bold\">[</span>                                                                               <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                     <span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">Structure</span><span style=\"font-weight: bold\">(</span>                                                                  <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">attrs</span>=<span style=\"font-weight: bold\">{}</span>,                                                               <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">geometry</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">Box</span><span style=\"font-weight: bold\">(</span>                                                           <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                             <span style=\"color: #808000; text-decoration-color: #808000\">attrs</span>=<span style=\"font-weight: bold\">{}</span>,                                                           <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                             <span style=\"color: #808000; text-decoration-color: #808000\">type</span>=<span style=\"color: #008000; text-decoration-color: #008000\">'Box'</span>,                                                         <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                             <span style=\"color: #808000; text-decoration-color: #808000\">center</span>=<span style=\"font-weight: bold\">(</span><span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span><span style=\"font-weight: bold\">)</span>,                                             <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                             <span style=\"color: #808000; text-decoration-color: #808000\">size</span>=<span style=\"font-weight: bold\">(</span><span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">1.0</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">1.0</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">1.0</span><span style=\"font-weight: bold\">)</span>                                                <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"font-weight: bold\">)</span>,                                                                      <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">name</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                              <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">background_permittivity</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                           <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">background_medium</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                 <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">priority</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                          <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">type</span>=<span style=\"color: #008000; text-decoration-color: #008000\">'Structure'</span>,                                                       <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">medium</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">Medium</span><span style=\"font-weight: bold\">(</span>                                                          <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                             <span style=\"color: #808000; text-decoration-color: #808000\">attrs</span>=<span style=\"font-weight: bold\">{}</span>,                                                           <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                             <span style=\"color: #808000; text-decoration-color: #808000\">name</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                          <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                             <span style=\"color: #808000; text-decoration-color: #808000\">frequency_range</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                               <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                             <span style=\"color: #808000; text-decoration-color: #808000\">allow_gain</span>=<span style=\"color: #ff0000; text-decoration-color: #ff0000; font-style: italic\">False</span>,                                                   <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                             <span style=\"color: #808000; text-decoration-color: #808000\">nonlinear_spec</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                             <span style=\"color: #808000; text-decoration-color: #808000\">modulation_spec</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                               <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                             <span style=\"color: #808000; text-decoration-color: #808000\">viz_spec</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                      <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                             <span style=\"color: #808000; text-decoration-color: #808000\">heat_spec</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                     <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                             <span style=\"color: #808000; text-decoration-color: #808000\">type</span>=<span style=\"color: #008000; text-decoration-color: #008000\">'Medium'</span>,                                                      <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                             <span style=\"color: #808000; text-decoration-color: #808000\">permittivity</span>=<span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">2.0</span>,                                                   <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                             <span style=\"color: #808000; text-decoration-color: #808000\">conductivity</span>=<span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span>                                                    <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"font-weight: bold\">)</span>                                                                       <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                     <span style=\"font-weight: bold\">)</span>                                                                           <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                 <span style=\"font-weight: bold\">]</span>                                                                               <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>       <span style=\"color: #808000; text-decoration-color: #808000; font-style: italic\">structure_priority_mode</span> = <span style=\"color: #008000; text-decoration-color: #008000\">'equal'</span>                                                                         <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                    <span style=\"color: #808000; text-decoration-color: #808000; font-style: italic\">structures</span> = <span style=\"font-weight: bold\">(</span>                                                                               <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                     <span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">Structure</span><span style=\"font-weight: bold\">(</span>                                                                  <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">attrs</span>=<span style=\"font-weight: bold\">{}</span>,                                                               <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">geometry</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">Box</span><span style=\"font-weight: bold\">(</span>                                                           <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                             <span style=\"color: #808000; text-decoration-color: #808000\">attrs</span>=<span style=\"font-weight: bold\">{}</span>,                                                           <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                             <span style=\"color: #808000; text-decoration-color: #808000\">type</span>=<span style=\"color: #008000; text-decoration-color: #008000\">'Box'</span>,                                                         <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                             <span style=\"color: #808000; text-decoration-color: #808000\">center</span>=<span style=\"font-weight: bold\">(</span><span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span><span style=\"font-weight: bold\">)</span>,                                             <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                             <span style=\"color: #808000; text-decoration-color: #808000\">size</span>=<span style=\"font-weight: bold\">(</span><span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">1.0</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">1.0</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">1.0</span><span style=\"font-weight: bold\">)</span>                                                <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"font-weight: bold\">)</span>,                                                                      <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">name</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                              <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">background_permittivity</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                           <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">background_medium</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                 <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">priority</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                          <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">type</span>=<span style=\"color: #008000; text-decoration-color: #008000\">'Structure'</span>,                                                       <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">medium</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">Medium</span><span style=\"font-weight: bold\">(</span>                                                          <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                             <span style=\"color: #808000; text-decoration-color: #808000\">attrs</span>=<span style=\"font-weight: bold\">{}</span>,                                                           <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                             <span style=\"color: #808000; text-decoration-color: #808000\">name</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                          <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                             <span style=\"color: #808000; text-decoration-color: #808000\">frequency_range</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                               <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                             <span style=\"color: #808000; text-decoration-color: #808000\">allow_gain</span>=<span style=\"color: #ff0000; text-decoration-color: #ff0000; font-style: italic\">False</span>,                                                   <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                             <span style=\"color: #808000; text-decoration-color: #808000\">nonlinear_spec</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                             <span style=\"color: #808000; text-decoration-color: #808000\">modulation_spec</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                               <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                             <span style=\"color: #808000; text-decoration-color: #808000\">viz_spec</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                      <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                             <span style=\"color: #808000; text-decoration-color: #808000\">heat_spec</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                     <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                             <span style=\"color: #808000; text-decoration-color: #808000\">type</span>=<span style=\"color: #008000; text-decoration-color: #008000\">'Medium'</span>,                                                      <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                             <span style=\"color: #808000; text-decoration-color: #808000\">permittivity</span>=<span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">2.0</span>,                                                   <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                             <span style=\"color: #808000; text-decoration-color: #808000\">conductivity</span>=<span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span>                                                    <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"font-weight: bold\">)</span>                                                                       <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                     <span style=\"font-weight: bold\">)</span>,                                                                          <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                 <span style=\"font-weight: bold\">)</span>                                                                               <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                      <span style=\"color: #808000; text-decoration-color: #808000; font-style: italic\">subpixel</span> = <span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">SubpixelSpec</span><span style=\"font-weight: bold\">(</span>                                                                   <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                     <span style=\"color: #808000; text-decoration-color: #808000\">attrs</span>=<span style=\"font-weight: bold\">{}</span>,                                                                   <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                     <span style=\"color: #808000; text-decoration-color: #808000\">dielectric</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">PolarizedAveraging</span><span style=\"font-weight: bold\">(</span><span style=\"color: #808000; text-decoration-color: #808000\">attrs</span>=<span style=\"font-weight: bold\">{}</span>, <span style=\"color: #808000; text-decoration-color: #808000\">type</span>=<span style=\"color: #008000; text-decoration-color: #008000\">'PolarizedAveraging'</span><span style=\"font-weight: bold\">)</span>,         <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                     <span style=\"color: #808000; text-decoration-color: #808000\">metal</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">Staircasing</span><span style=\"font-weight: bold\">(</span><span style=\"color: #808000; text-decoration-color: #808000\">attrs</span>=<span style=\"font-weight: bold\">{}</span>, <span style=\"color: #808000; text-decoration-color: #808000\">type</span>=<span style=\"color: #008000; text-decoration-color: #008000\">'Staircasing'</span><span style=\"font-weight: bold\">)</span>,                            <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                     <span style=\"color: #808000; text-decoration-color: #808000\">pec</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">PECConformal</span><span style=\"font-weight: bold\">(</span>                                                           <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">attrs</span>=<span style=\"font-weight: bold\">{}</span>,                                                               <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">type</span>=<span style=\"color: #008000; text-decoration-color: #008000\">'PECConformal'</span>,                                                    <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">timestep_reduction</span>=<span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.3</span>,                                                 <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">edge_singularity_correction</span>=<span style=\"color: #00ff00; text-decoration-color: #00ff00; font-style: italic\">True</span>                                        <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                     <span style=\"font-weight: bold\">)</span>,                                                                          <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                     <span style=\"color: #808000; text-decoration-color: #808000\">pmc</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">Staircasing</span><span style=\"font-weight: bold\">(</span><span style=\"color: #808000; text-decoration-color: #808000\">attrs</span>=<span style=\"font-weight: bold\">{}</span>, <span style=\"color: #808000; text-decoration-color: #808000\">type</span>=<span style=\"color: #008000; text-decoration-color: #008000\">'Staircasing'</span><span style=\"font-weight: bold\">)</span>,                              <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                     <span style=\"color: #808000; text-decoration-color: #808000\">lossy_metal</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">SurfaceImpedance</span><span style=\"font-weight: bold\">(</span>                                               <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">attrs</span>=<span style=\"font-weight: bold\">{}</span>,                                                               <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">type</span>=<span style=\"color: #008000; text-decoration-color: #008000\">'SurfaceImpedance'</span>,                                                <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">timestep_reduction</span>=<span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span>,                                                 <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">edge_singularity_correction</span>=<span style=\"color: #00ff00; text-decoration-color: #00ff00; font-style: italic\">True</span>                                        <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                     <span style=\"font-weight: bold\">)</span>,                                                                          <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                     <span style=\"color: #808000; text-decoration-color: #808000\">type</span>=<span style=\"color: #008000; text-decoration-color: #008000\">'SubpixelSpec'</span>                                                         <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                 <span style=\"font-weight: bold\">)</span>                                                                               <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                      <span style=\"color: #808000; text-decoration-color: #808000; font-style: italic\">symmetry</span> = <span style=\"font-weight: bold\">(</span><span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0</span><span style=\"font-weight: bold\">)</span>                                                                       <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                         <span style=\"color: #808000; text-decoration-color: #808000; font-style: italic\">tmesh</span> = <span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">array</span><span style=\"font-weight: bold\">([</span><span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.00000000e+00</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">3.81314974e-16</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">7.62629948e-16</span>, <span style=\"color: #808000; text-decoration-color: #808000\">...</span>,                     <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                        <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">9.99426547e-13</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">9.99807862e-13</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">1.00018918e-12</span><span style=\"font-weight: bold\">]</span>, <span style=\"color: #808000; text-decoration-color: #808000\">shape</span>=<span style=\"font-weight: bold\">(</span><span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">2624</span>,<span style=\"font-weight: bold\">))</span>          <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                          <span style=\"color: #808000; text-decoration-color: #808000; font-style: italic\">type</span> = <span style=\"color: #008000; text-decoration-color: #008000\">'Simulation'</span>                                                                    <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                       <span style=\"color: #808000; text-decoration-color: #808000; font-style: italic\">version</span> = <span style=\"color: #008000; text-decoration-color: #008000\">'2.10.0rc3'</span>                                                                     <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>         <span style=\"color: #808000; text-decoration-color: #808000; font-style: italic\">volumetric_structures</span> = <span style=\"font-weight: bold\">[</span>                                                                               <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                     <span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">Structure</span><span style=\"font-weight: bold\">(</span>                                                                  <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">attrs</span>=<span style=\"font-weight: bold\">{}</span>,                                                               <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">geometry</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">Box</span><span style=\"font-weight: bold\">(</span>                                                           <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                             <span style=\"color: #808000; text-decoration-color: #808000\">attrs</span>=<span style=\"font-weight: bold\">{}</span>,                                                           <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                             <span style=\"color: #808000; text-decoration-color: #808000\">type</span>=<span style=\"color: #008000; text-decoration-color: #008000\">'Box'</span>,                                                         <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                             <span style=\"color: #808000; text-decoration-color: #808000\">center</span>=<span style=\"font-weight: bold\">(</span><span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span><span style=\"font-weight: bold\">)</span>,                                             <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                             <span style=\"color: #808000; text-decoration-color: #808000\">size</span>=<span style=\"font-weight: bold\">(</span><span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">1.0</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">1.0</span>, <span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">1.0</span><span style=\"font-weight: bold\">)</span>                                                <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"font-weight: bold\">)</span>,                                                                      <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">name</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                              <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">background_permittivity</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                           <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">background_medium</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                 <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">priority</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                          <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">type</span>=<span style=\"color: #008000; text-decoration-color: #008000\">'Structure'</span>,                                                       <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"color: #808000; text-decoration-color: #808000\">medium</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">Medium</span><span style=\"font-weight: bold\">(</span>                                                          <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                             <span style=\"color: #808000; text-decoration-color: #808000\">attrs</span>=<span style=\"font-weight: bold\">{}</span>,                                                           <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                             <span style=\"color: #808000; text-decoration-color: #808000\">name</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                          <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                             <span style=\"color: #808000; text-decoration-color: #808000\">frequency_range</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                               <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                             <span style=\"color: #808000; text-decoration-color: #808000\">allow_gain</span>=<span style=\"color: #ff0000; text-decoration-color: #ff0000; font-style: italic\">False</span>,                                                   <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                             <span style=\"color: #808000; text-decoration-color: #808000\">nonlinear_spec</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                             <span style=\"color: #808000; text-decoration-color: #808000\">modulation_spec</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                               <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                             <span style=\"color: #808000; text-decoration-color: #808000\">viz_spec</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                      <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                             <span style=\"color: #808000; text-decoration-color: #808000\">heat_spec</span>=<span style=\"color: #800080; text-decoration-color: #800080; font-style: italic\">None</span>,                                                     <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                             <span style=\"color: #808000; text-decoration-color: #808000\">type</span>=<span style=\"color: #008000; text-decoration-color: #008000\">'Medium'</span>,                                                      <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                             <span style=\"color: #808000; text-decoration-color: #808000\">permittivity</span>=<span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">2.0</span>,                                                   <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                             <span style=\"color: #808000; text-decoration-color: #808000\">conductivity</span>=<span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">0.0</span>                                                    <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                         <span style=\"font-weight: bold\">)</span>                                                                       <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                     <span style=\"font-weight: bold\">)</span>                                                                           <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                                 <span style=\"font-weight: bold\">]</span>                                                                               <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                   <span style=\"color: #808000; text-decoration-color: #808000; font-style: italic\">wvl_mat_min</span> = <span style=\"color: #800080; text-decoration-color: #800080; font-weight: bold\">np.float64</span><span style=\"font-weight: bold\">(</span><span style=\"color: #008080; text-decoration-color: #008080; font-weight: bold\">1.4132352000025548</span><span style=\"font-weight: bold\">)</span>                                                  <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">│</span>                     <span style=\"color: #808000; text-decoration-color: #808000; font-style: italic\">zero_dims</span> = <span style=\"font-weight: bold\">[]</span>                                                                              <span style=\"color: #000080; text-decoration-color: #000080\">│</span>\n",
       "<span style=\"color: #000080; text-decoration-color: #000080\">╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</span>\n",
       "</pre>\n"
      ]
     },
     "metadata": {},
     "output_type": "display_data",
     "jetTransient": {
      "display_id": null
     }
    }
   ],
   "execution_count": 23
  },
  {
   "cell_type": "markdown",
   "id": "f33815ce",
   "metadata": {},
   "source": [
    "### Monitor Data\n",
    "\n",
    "Data for each monitor is stored as its corresponding MonitorData instance.\n",
    "\n",
    "The monitor data can be found using the `monitor.name` by indexing into the [SimulationData](https://docs.flexcompute.com/projects/tidy3d/en/latest/api/_autosummary/tidy3d.SimulationData.html) using square brackets.\n",
    "\n",
    "The data are stored as [xarray](http://xarray.pydata.org/en/stable/) objects, which means they work similarly to numpy arrays but provide many additional useful features.  For more details refer to the [tutorial on data visualization](../notebooks/VizData.html)."
   ]
  },
  {
   "cell_type": "code",
   "id": "5a1d45b1",
   "metadata": {
    "tags": [],
    "ExecuteTime": {
     "end_time": "2025-10-29T14:07:40.399392Z",
     "start_time": "2025-10-29T14:07:40.341858Z"
    }
   },
   "source": [
    "flux_data = sim_data[\"flux_over_time\"].flux\n",
    "flux_data.plot()\n",
    "plt.title(\"flux over time\")\n",
    "plt.show()"
   ],
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<Figure size 640x480 with 1 Axes>"
      ],
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAksAAAHHCAYAAACvJxw8AAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjYsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvq6yFwwAAAAlwSFlzAAAPYQAAD2EBqD+naQAAOWRJREFUeJzt3XlclWX+//H3AQTUBFxBDPd93xKx+rpAoa2kmTrmlqbTaFpaqS0u1aRNq02W03xLbMq9NDOzMRNtktFEzd2scEkFlxIQFQmu3x/+PN/OAJcHZDnHeT0fj/Ooc53ruu/Px9sjb+9zn1uHMcYIAAAA+fIp6wIAAAA8GWEJAADAgrAEAABgQVgCAACwICwBAABYEJYAAAAsCEsAAAAWhCUAAAALwhIAAIAFYQnAVfn222/VpUsXVaxYUQ6HQ9u3b9e0adPkcDjKujSvFB8fL4fDoYMHD5Z1KQD+P7+yLgCA98rOzlbfvn0VGBio1157TRUqVFCdOnXKuiyv8MILL6h58+aKi4sr61IAXAFnlgAU2Y8//qhDhw7pscce08iRI3X//fercuXKZV2WV3jhhRe0fPnyPOODBg3S+fPnCZ2AB+HMEoAiO3HihCQpJCSkbAvxQL/99ptyc3Pl7+9fqHW+vr7y9fUtoaoAFAVnlgAUydChQ9W1a1dJUt++feVwONStW7d85x48eFAOh0Px8fF5XnM4HJo2bZok6fz582ratKmaNm2q8+fPO+f88ssvqlmzprp06aKcnBxrXT/99JP69u2rKlWqqEKFCurcubM+++wz5+upqany8/PT9OnT86zdv3+/HA6H3nzzTefYmTNn9MgjjygiIkIBAQFq2LChXnzxReXm5ubp7+WXX9brr7+uBg0aKCAgQHv27Mm3RofDoczMTM2bN08Oh0MOh0NDhw6VlP81S3Xr1tUdd9yhhIQEdezYUeXLl1erVq2UkJAgSfr444/VqlUrBQYGqkOHDtq2bVuefe7bt0/33nuvqlSposDAQHXs2FErVqyw/loCuIQzSwCKZNSoUapVq5ZeeOEFjR07VjfccINCQ0Ovapvly5fXvHnzdOONN+qpp57Sq6++KkkaPXq00tLSFB8fbz3rkpqaqi5duujcuXMaO3asqlatqnnz5umuu+7S0qVLdc899yg0NFRdu3bV4sWLNXXqVJf1ixYtkq+vr/r27StJOnfunLp27aqjR49q1KhRql27tjZu3KjJkyfr+PHjev31113Wz507VxcuXNDIkSMVEBCgKlWq5FvnP/7xD40YMUKdOnXSyJEjJUkNGjSw/tr88MMP+sMf/qBRo0bp/vvv18svv6w777xTc+bM0ZNPPqk//elPkqQZM2bovvvu0/79++Xjc+nvw7t379aNN96oWrVqadKkSapYsaIWL16suLg4ffTRR7rnnnus+wb+6xkAKKJ169YZSWbJkiUu41OnTjW//+MlOTnZSDJz587Nsw1JZurUqS5jkydPNj4+PmbDhg1myZIlRpJ5/fXXr1jPI488YiSZr7/+2jmWkZFh6tWrZ+rWrWtycnKMMcb87W9/M5LMzp07XdY3b97c9OjRw/n8ueeeMxUrVjTff/+9y7xJkyYZX19fc/jwYZf+goKCzIkTJ65YpzHGVKxY0QwZMiTP+Ny5c40kk5yc7ByrU6eOkWQ2btzoHPviiy+MJFO+fHlz6NAh5/jl3tatW+cci46ONq1atTIXLlxwjuXm5pouXbqYRo0auVUv8N+Mj+EAeJxp06apRYsWGjJkiP70pz+pa9euGjt27BXXrVq1Sp06ddJNN93kHLvuuus0cuRIHTx40PmxWO/eveXn56dFixY55+3atUt79uxRv379nGNLlizRzTffrMqVK+vUqVPOR0xMjHJycrRhwwaX/ffp00fVq1e/2vbz1bx5c0VFRTmfR0ZGSpJ69Oih2rVr5xn/6aefJF36CPOrr77Sfffdp4yMDGcPp0+fVmxsrA4cOKCjR4+WSM3AtYKP4QB4HH9/f7333nu64YYbFBgYqLlz57p136ZDhw45w8LvNWvWzPl6y5YtVa1aNUVHR2vx4sV67rnnJF36CM7Pz0+9e/d2rjtw4IB27NhRYAC6fIH7ZfXq1XO7x8L6fSCSpODgYElSREREvuO//vqrpEsf3xlj9Mwzz+iZZ57Jd9snTpxQrVq1irtk4JpBWAJQ4goKOraLtb/44gtJ0oULF3TgwIFiDyL9+/fXsGHDtH37drVt21aLFy9WdHS0qlWr5pyTm5urW265RU888US+22jcuLHL8/Llyxdrjb9X0LVaBY0bYyTJeSH6Y489ptjY2HznNmzYsBgqBK5dhCUAJe7yvZfOnDnjMn7o0KF85+/YsUPPPvusM8yMGDFCO3fudJ41KUidOnW0f//+POP79u1zvn5ZXFycRo0a5fwo7vvvv9fkyZNd1jVo0EBnz55VTEyMvcEiKK07nNevX1+SVK5cuRLpA/hvwDVLAEpcUFCQqlWrlucan7feeivP3OzsbA0dOlTh4eGaNWuW4uPjlZqaqkcfffSK+7ntttu0efNmJSYmOscyMzP1zjvvqG7dumrevLlzPCQkRLGxsVq8eLEWLlwof3//PHfTvu+++5SYmOg8y/V7Z86c0W+//XbFmgpSsWLFPOGxJNSoUUPdunXT3/72Nx0/fjzP6ydPnizxGgBvx5klAKVixIgRmjlzpkaMGKGOHTtqw4YN+v777/PMe/7557V9+3atXbtWlSpVUuvWrTVlyhQ9/fTTuvfee3XbbbcVuI9JkyZpwYIF6tWrl8aOHasqVapo3rx5Sk5O1kcffeT8Kv1l/fr10/3336+33npLsbGxeW6u+fjjj2vFihW64447NHToUHXo0EGZmZnauXOnli5dqoMHD7p8bFcYHTp00JdffqlXX31V4eHhqlevXr7XWxWH2bNn66abblKrVq304IMPqn79+kpNTVViYqJ+/vlnfffddyWyX+BaQVgCUCqmTJmikydPaunSpVq8eLF69eqlzz//XDVq1HDO2bp1q1544QWNGTNG3bt3d45PmjRJn3zyiR588EHt3r27wDuGh4aGauPGjZo4caL++te/6sKFC2rdurU+/fRT3X777Xnm33XXXSpfvrwyMjJcvgV3WYUKFbR+/Xq98MILWrJkid5//30FBQWpcePGmj59+hU/FrR59dVXNXLkSD399NM6f/68hgwZUmJhqXnz5tqyZYumT5+u+Ph4nT59WjVq1FC7du00ZcqUEtkncC1xmMtXAQIAACAPrlkCAACwICwBAABYEJYAAAAsCEsAAAAWhCUAAAALwhIAAIAF91kqBrm5uTp27JgqVapUav+EAQAAuDrGGGVkZCg8PDzPTWt/j7BUDI4dO5bnX/4GAADe4ciRI7r++usLfJ2wVAwqVaok6dIvdlBQUBlXAwAA3JGenq6IiAjnz/GCEJaKweWP3oKCgghLAAB4mStdQsMF3gAAABaEJQAAAAvCEgAAgAVhCQAAwIKwBAAAYEFYAgAAsCAsAQAAWBCWAAAALAhLAAAAFoQlAAAAC8ISAACABWEJAADAgrAEAABgQVgCAACwICwBAABY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AACABWEJAADAgrAEAABgQVgCAACwICwBAABYEJYAAAAsCEsAAAAWhCUAAAALwhIAAIAFYQkAAMCCsAQAAGBBWAIAALAgLAEAAFgQlgAAACwISwAAABaEJQAAAAvCEgAAgAVhCQAAwIKwBAAAYEFYAgAAsCAsAQAAWBCWAAAALAhLAAAAFoQlAAAAC8ISAACABWEJAADAgrAEAABgQVgCAACwICwBAABYEJYAAAAsCEsAAAAWhCUAAAALrwlLv/zyiwYOHKigoCCFhIRo+PDhOnv2rHXNhQsXNHr0aFWtWlXXXXed+vTpo9TUVOfr3333nQYMGKCIiAiVL19ezZo106xZs0q6FQAA4EW8JiwNHDhQu3fv1po1a7Ry5Upt2LBBI0eOtK559NFH9emnn2rJkiVav369jh07pt69eztfT0pKUo0aNfTBBx9o9+7deuqppzR58mS9+eabJd0OAADwEg5jjCnrIq5k7969at68ub799lt17NhRkrR69Wrddttt+vnnnxUeHp5nTVpamqpXr6758+fr3nvvlSTt27dPzZo1U2Jiojp37pzvvkaPHq29e/fqq6++cru+9PR0BQcHKy0tTUFBQUXoEAAAlDZ3f357xZmlxMREhYSEOIOSJMXExMjHx0ebNm3Kd01SUpKys7MVExPjHGvatKlq166txMTEAveVlpamKlWqWOvJyspSenq6ywMAAFybvCIspaSkqEaNGi5jfn5+qlKlilJSUgpc4+/vr5CQEJfx0NDQAtds3LhRixYtuuLHezNmzFBwcLDzERER4X4zAADAq5RpWJo0aZIcDof1sW/fvlKpZdeuXbr77rs1depU3Xrrrda5kydPVlpamvNx5MiRUqkRAACUPr+y3PmECRM0dOhQ65z69esrLCxMJ06ccBn/7bff9MsvvygsLCzfdWFhYbp48aLOnDnjcnYpNTU1z5o9e/YoOjpaI0eO1NNPP33FugMCAhQQEHDFeQAAwPuVaViqXr26qlevfsV5UVFROnPmjJKSktShQwdJ0ldffaXc3FxFRkbmu6ZDhw4qV66c1q5dqz59+kiS9u/fr8OHDysqKso5b/fu3erRo4eGDBmiP//5z8XQFQAAuJZ4xbfhJKlXr15KTU3VnDlzlJ2drWHDhqljx46aP3++JOno0aOKjo7W+++/r06dOkmSHnroIa1atUrx8fEK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M2dM+fLlzTvvvJPvNj3tOObXnySX91fXrl1dfi8aY8zixYtN48aNjb+/v2nRooX57LPPXF7Pzc01zzzzjAkNDTUBAQEmOjra7N+/vxQ6clWU/urUqZPvmqlTpxpjjDl37py59dZbTfXq1U25cuVMnTp1zIMPPlhmob4oPT7yyCPO91loaKi57bbbzNatW1226ynH0Jii/z7dt2+fkeQMHL/nacfxgQceMHXq1DH+/v6mevXqJjo62qVuT3ofOowx5urOTQEAAFy7uGYJAADAgrAEAABgQVgCAACwICwBAABYEJYAAAAsCEsAAAAWhCUAAAALwhIAr5KQkCCHw6EzZ86U+r4dDoccDodCQkJKZX8HDx507rNt27alsk+gqDZs2KA777xT4eHhcjgcWr58eZnvb9q0aWratKkqVqyoypUrKyYmRps2bSr0vghLADxWt27d9Mgjj7iMdenSRcePH1dwcHCZ1DR37lx9//33pbKviIgIHT9+XBMmTCiV/QFXIzMzU23atNHs2bM9Zn+NGzfWm2++qZ07d+pf//qX6tatq1tvvVUnT54s1L78rrZYAChN/v7+ZfqvwIeEhKhGjRqlsi9fX1+FhYXpuuuuK5X9AVejV69e6tWrV4GvZ2Vl6amnntKCBQt05swZtWzZUi+++KK6detWIvuTpD/84Q8uz1999VW9++672rFjh6Kjo93eF2eWAHikoUOHav369Zo1a5bzo6iDBw/m+RguPj5eISEhWrlypZo0aaIKFSro3nvv1blz5zRv3jzVrVtXlStX1tixY5WTk+PcflZWlh577DHVqlVLFStWVGRkpBISEgpd53fffafu3burUqVKCgoKUocOHbRlyxbn6//617908803q3z58oqIiNDYsWOVmZnpUsfEiRMVERGhgIAANWzYUO+++26Rf90ATzVmzBglJiZq4cKF2rFjh/r27auePXvqwIEDpbL/ixcv6p133lFwcLDatGlTqLWcWQLgkWbNmqXvv/9eLVu21LPPPitJql69ug4ePJhn7rlz5/TGG29o4cKFysjIUO/evXXPPfcoJCREq1at0k8//aQ+ffroxhtvVL9+/SRd+oN7z549WrhwocLDw7Vs2TL17NlTO3fuVKNGjdyuc+DAgWrXrp3efvtt+fr6avv27SpXrpwk6ccff1TPnj31/PPP67333tPJkyc1ZswYjRkzRnPnzpUkDR48WImJiXrjjTfUpk0bJScn69SpU1f5qwd4lsOHD2vu3Lk6fPiwwsPDJUmPPfaYVq9erblz5+qFF14osX2vXLlS/fv317lz51SzZk2tWbNG1apVK9xGrvqf4gWAEtK1a1czbtw4l7F169YZSebXX381xhgzd+5cI8n88MMPzjmjRo0yFSpUMBkZGc6x2NhYM2rUKGOMMYcOHTK+vr7m6NGjLtuOjo42kydPLrAeSWbZsmUuY5UqVTLx8fH5zh8+fLgZOXKky9jXX39tfHx8zPnz583+/fuNJLNmzZoC92mMMVOnTjVt2rSxzgE8yX++V1auXGkkmYoVK7o8/Pz8zH333WeMMWbv3r1GkvUxceJEt/b3e2fPnjUHDhwwiYmJ5oEHHjB169Y1qampheqHM0sAvF6FChXUoEED5/PQ0FDVrVvX5Vqf0NBQnThxQpK0c+dO5eTkqHHjxi7bycrKUtWqVQu17/Hjx2vEiBH6xz/+oZiYGPXt29dZy3fffacdO3boww8/dM43xig3N1fJycnauXOnfH191bVr10L3DHiTs2fPytfXV0lJSfL19XV57fL7tH79+tq7d691O4V9f0pSxYoV1bBhQzVs2FCdO3dWo0aN9O6772ry5Mlub4OwBMDrXf7Y6zKHw5HvWG5uriT3/uB217Rp0/SHP/xBn332mT7//HNNnTpVCxcu1D333KOzZ89q1KhRGjt2bJ51tWvX1g8//FCofQHeql27dsrJydGJEyd088035zvH399fTZs2LfFacnNzlZWVVag1hCUAHsvf39/louzi4s4f3IXRuHFjNW7cWI8++qgGDBiguXPn6p577lH79u21Z88eNWzYMN91rVq1Um5urtavX6+YmJirrgMoS2fPnnX5C0BycrK2b9+uKlWqqHHjxho4cKAGDx6sV155Re3atdPJkye1du1atW7dWrfffnux7q927drKzMzUn//8Z911112qWbOmTp06pdmzZ+vo0aPq27dvofbFt+EAeKy6detq06ZNOnjwoE6dOuU8M3S1fv8H98cff6zk5GRt3rxZM2bM0Geffeb2ds6fP68xY8YoISFBhw4d0jfffKNvv/1WzZo1kyRNnDhRGzdu1JgxY7R9+3YdOHBAn3zyicaMGePsb8iQIXrggQe0fPlyJScnKyEhQYsXLy6WPoHStGXLFrVr107t2rWTdOkj6nbt2mnKlCmSLt2jbPDgwZowYYKaNGmiuLg4ffvtt6pdu3aJ7M/X11f79u1Tnz591LhxY9155506ffq0vv76a7Vo0aJQ++LMEgCP9dhjj2nIkCFq3ry5zp8/r+Tk5GLb9ty5c/X8889rwoQJOnr0qKpVq6bOnTvrjjvucHsbvr6+On36tAYPHqzU1FRVq1ZNvXv31vTp0yVJrVu31vr16/XUU0/p5ptvljFGDRo0cH4jT5LefvttPfnkk/rTn/6k06dPq3bt2nryySeLrU+gtHTr1k2XrrXOX7ly5TR9+nTn+6Ok9xcYGKiPP/64WPblMLY9AQCcHA6Hli1bpri4uFLd77Rp07R8+XJt3769VPcL4BLCEgC4yeFwKDAwUFWrVtXPP/9c4vs7fPiwmjdvrosXL6p58+aEJaCM8DEcALjp8p2G//MbdCUlPDzcGZACAgJKZZ8A8uLMEgAAgAXfhgMAALAgLAEAAFgQlgAAACwISwAAABaEJQAAAAvCEgAAgAVhCQAAwIKwBAAAYEFYAgAAsPh/hLBQwd83EboAAAAASUVORK5CYII="
     },
     "metadata": {},
     "output_type": "display_data",
     "jetTransient": {
      "display_id": null
     }
    }
   ],
   "execution_count": 24
  },
  {
   "cell_type": "markdown",
   "id": "20f259c5",
   "metadata": {},
   "source": [
    "For field data, we can further index by `fields` specified in the monitor, as follows."
   ]
  },
  {
   "cell_type": "code",
   "id": "9bad3d76",
   "metadata": {
    "ExecuteTime": {
     "end_time": "2025-10-29T14:07:40.482038Z",
     "start_time": "2025-10-29T14:07:40.403982Z"
    }
   },
   "source": [
    "Ey = sim_data[\"fields_at_150THz\"].Ey\n",
    "\n",
    "Ey.real.plot(x=\"x\", y=\"y\", robust=True)\n",
    "plt.title(\"real{Ey(x, y)}\")\n",
    "plt.show()"
   ],
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<Figure size 640x480 with 2 Axes>"
      ],
      "image/png": "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cyG3sTFidEREZO6UBQW4MXU6cnJyNJqno63S36TAN+bBso5+v0l/FRcgZdsHRou1tjCLnqLyaLKfQWFhodoeDbm5ucYOi4iISDtClBz6tkF6M4s5RX939epVLF++HO+8806l5eLi4tT2a/Dw8KimCImIiDRj6o/5qE0kTYpiYmIgk8kqPS5fvqxW59atW+jVqxf69++PESNGVNr+tGnTkJOTozoyMjKM+XGIiIjIjEk6fKbpPgmlMjMz0b17d3Tu3BmrV6+usn1ra+sKN64iIiIyCSb87LPaRtKkSNN9EoCSHqLu3bsjMDAQ69atg1xuliN/REREamTKkkPfNkh/ZjHR+tatW+jWrRu8vLywcOFCtX0MKtpRk4iIiEgbZpEUxcfH4+rVq7h69SqaNGmi9p6Z7ihARERUgsNnJsMsxqAiIiIghCj3ICIiMmdcfWY6zKKniIiIqMbiPkUmwyx6ioiIiIiMjT1FREREEjLE8BeHzwyDSREREZGUONHaZHD4jIiIiAjsKSIiIpIUh89MB5MiIiIiKXH1mcng8BkRERER2FNEREQkKQ6fmQ4mRURERFLi6jOTweEzIiIiIrCniIiISFIcPjMdTIqIiIikpBQlh75tkN6YFBEREUmJc4pMBucUEREREYE9RURERJKSwQBzigwSCTEpIiIikhJ3tDYZHD4jIiIiAnuKiIiIJMUl+aaDSREREZGUuPrMZHD4jIiIiAjsKSIiIpKUTAjI9JworW99KsGkiIiISErK/x76tkF64/AZEREREdhTREREJCkOn5kOJkVERERS4uozk8GkiIiISErc0dpkcE4REREREdhTREREJCnuaG06mBQRERFJicNnJsNshs9effVVeHp6wsbGBo0aNcLgwYORmZkpdVhERERUQ5hNUtS9e3ds27YNV65cwc6dO3Ht2jW8/vrrUodFRESkF5nSMAfpz2yGzyZOnKj628vLCzExMQgPD0dxcTHq1KkjYWRERER64PCZyTCbpOhp9+/fx6ZNm9C5c+dKE6LCwkIUFhaqXufm5lZHeERERGSGzGb4DACmTp2KevXqwdnZGenp6fj2228rLR8XFwcHBwfV4eHhUU2REhERaUgY6CC9SZoUxcTEQCaTVXpcvnxZVX7KlClITU3Fjz/+CAsLCwwZMgSiki7DadOmIScnR3VkZGRUx8ciIiLSWOlj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rU+K1q1bJwCUe5RKS0sTAMShQ4dU5548eSLGjBkjGjRoIOrWrStee+01tUSqugwdOrTc2J+OFYBYt26dEEKIx48fi549ewoXFxdRp04d4eXlJUaMGKH6kTHl2IUoWZY/Y8YM4ebmJqytrUWPHj3ElStXqj12IYT4888/xcCBA4WdnZ2wt7cXw4YNU0vo/v69SU9PF127dhVOTk7C2tpaNGvWTEyZMkXk5OQYPdbly5cLT09PYWVlJTp16iROnDihei8kJEQMHTpUrfy2bdtEixYthJWVlXj22WfFf/7zH6PHWBFtYp8wYYKqrJubm3j55ZfFmTNnJIj6f8vU/36Uxjt06FAREhJSpo6/v7+wsrISvr6+at/96qRt7B999JFo2rSpsLGxEU5OTqJbt27i4MGDksRe0b/nT99LU//Ok3RkQghhzJ4oIiIiInNQY1efEREREWmDSRERERERmBQRERERAWBSRERERASASRERERERACZFRERERACYFBEREREBYFJEVKNERESoHolRkcTERMhkMjx8+NCosXTr1k31EN3Sx5kYk7e3t+p6xv5sRFQzcfNGohokJycHQgjVg4q7desGf39/LFmyRFWmqKgI9+/fh5ubG2QymdFi6datG1q0aIE5c+agYcOGsLQ07qMW7969i6NHj6Jfv3548OCB2sOaiYg0UWMfCEtUGzk4OFRZxsrKqtqe/l23bt1qu5aLiwucnJyq5VpEVDNx+IxIB3fv3oW7uzvmz5+vOnf8+HFYWVkhISGh3DrXr1+HTCbDli1b0LlzZ9jY2KBt27Y4fPiwWrnDhw+jU6dOsLa2RqNGjRATE4O//vpL9f6OHTvQrl072NrawtnZGaGhocjPzwegPnwWERGBw4cPY+nSpaphpevXr5c7fLZz5048++yzsLa2hre3Nz799FO1mLy9vTF//nwMHz4c9evXh6enJ1avXq31fVu/fn2ZHpw9e/ao9VjNmjUL/v7+WLt2LTw9PWFnZ4cxY8ZAoVDg448/hru7O1xdXTFv3jytr09EVBkmRUQ6cHFxwdq1azFr1iycPn0ajx49wuDBgzF27Fj06NGj0rpTpkzBpEmTkJqaiuDgYLzyyiv4888/AQC3bt3Cyy+/jOeeew6//PILVq5ciTVr1mDu3LkAgNu3b2PgwIEYPnw4Ll26hMTERPTt2xfljYIvXboUwcHBGDFiBG7fvo3bt2/Dw8OjTLmUlBS88cYbePPNN3H+/HnMmjULM2bMwPr169XKffrpp+jYsSNSU1MxZswYjB49GleuXNHxDlbu2rVr2L9/Pw4cOIBvvvkGa9asQe/evXHz5k0cPnwYH330EaZPn47k5GSjXJ+Iaikpn0ZLZO7GjBkjWrRoId566y3Rrl07UVBQUGHZtLQ0AUAsWLBAda64uFg0adJEfPTRR0IIId5//33RsmVLoVQqVWVWrFgh7OzshEKhECkpKQKAuH79ernXGDp0qOjTp4/qdUhIiBg/frxamdInoD948EAIIcRbb70l/vGPf6iVmTJlimjTpo3qtZeXl3j77bdVr5VKpXB1dRUrV66s8POWd+1169YJBwcHtXO7d+8WT/9TFBsbK+rWrStyc3NV58LCwoS3t7dQKBSqcy1bthRxcXGVfjYiIm2wp4hIDwsXLsRff/2F7du3Y9OmTbC2tq6yTnBwsOpvS0tLdOzYEZcuXQIAXLp0CcHBwWrDSV26dEFeXh5u3rwJPz8/9OjRA+3atUP//v3x5Zdf4sGDB3p9hkuXLqFLly5q57p06YLff/8dCoVCda59+/aqv2UyGdzd3XHnzh29rl0Rb29v1K9fX/Xazc0Nbdq0gVwuVztnrOsTUe3EpIhID9euXUNmZiaUSiWuX79u9OtZWFggPj4e+/fvR5s2bbB8+XK0bNkSaWlpRr92nTp11F7LZDIolUqt2pDL5WWG+oqLizW6liGuT0RUGSZFRDoqKirC22+/jQEDBuDDDz/Ev/71L416Lk6cOKH6+6+//kJKSgpat24NAGjdujWSkpLUEodjx46hfv36aNKkCYCSZKBLly6YPXs2UlNTYWVlhd27d5d7LSsrK7XenvK0bt0ax44dUzt37NgxtGjRAhYWFlV+Hm24uLjg0aNHqonhAKplDyMiIk0wKSLS0QcffICcnBwsW7YMU6dORYsWLTB8+PAq661YsQK7d+/G5cuXERUVhQcPHqjqjRkzBhkZGRg3bhwuX76Mb7/9FrGxsYiOjoZcLkdycjLmz5+P06dPIz09Hbt27cLdu3dVSdXfeXt7Izk5GdevX8e9e/fK7VmZNGkSEhIS8OGHH+K3337Dhg0b8Nlnn2Hy5Mn63aByBAUFoW7dunj//fdx7do1bN68ucyEbiIiqTApItJBYmIilixZgq+//hr29vaQy+X4+uuvcfToUaxcubLSugsWLMCCBQvg5+eHn3/+GXv37kXDhg0BAM888wz27duHkydPws/PD6NGjUJkZCSmT58OALC3t8eRI0fw8ssvo0WLFpg+fTo+/fRTvPTSS+Vea/LkybCwsECbNm3g4uKC9PT0MmU6dOiAbdu2YcuWLWjbti1mzpyJOXPmICIiQr+bVA4nJyds3LgR+/btQ7t27fDNN99g1qxZBr8OEZEuuKM1UTW5fv06fHx8kJqaCn9/f6nDMbrydtM2tsTERHTv3p07WhORTthTRERG8/nnn8POzg7nz583+rWeffbZCnvMiIg0wcd8EJFRbNq0CU+ePAEAeHp6Gv16+/btU61ks7e3N/r1iKjm4fAZERERETh8RkRERASASRERERERACZFRERERACYFBEREREBYFJEREREBIBJEREREREAJkVEREREAJgUEREREQFgUkREREQEAPh/Zg0Gx9DsDtkAAAAASUVORK5CYII="
     },
     "metadata": {},
     "output_type": "display_data",
     "jetTransient": {
      "display_id": null
     }
    }
   ],
   "execution_count": 25
  },
  {
   "cell_type": "markdown",
   "id": "54c1847c",
   "metadata": {},
   "source": [
    "Finally, [SimulationData](https://docs.flexcompute.com/projects/tidy3d/en/latest/api/_autosummary/tidy3d.SimulationData.html) provides a method for potting field data with structure overlay, similar to `sim.viz_fields2D()`."
   ]
  },
  {
   "cell_type": "code",
   "id": "72490bd2",
   "metadata": {
    "ExecuteTime": {
     "end_time": "2025-10-29T14:07:40.574325Z",
     "start_time": "2025-10-29T14:07:40.485563Z"
    }
   },
   "source": [
    "sim_data.plot_field(\"fields_at_150THz\", \"Ey\", val=\"real\")\n",
    "plt.show()"
   ],
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<Figure size 640x480 with 2 Axes>"
      ],
      "image/png": "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"
     },
     "metadata": {},
     "output_type": "display_data",
     "jetTransient": {
      "display_id": null
     }
    }
   ],
   "execution_count": 26
  },
  {
   "cell_type": "markdown",
   "id": "98440f63",
   "metadata": {},
   "source": [
    "## Plugins\n",
    "\n",
    "Here we will discuss the plugins that support and extend functionalities of Tidy3D, including:\n",
    "\n",
    "- [Dispersion fitting tool](../notebooks/Fitting.html).\n",
    "\n",
    "- [Mode solver](../notebooks/ModeSolver.html).\n",
    "\n",
    "- [Near field to far field transformations](../notebooks/FieldProjections.html).\n",
    "\n",
    "These plugins are designed to import and make use of Tidy3D components described above, but the Tidy3D components have no dependence on the plugins by design.  In this sense, they can be considered \"external\" packages that are useful for defining simulation components.\n",
    "\n",
    "The components from these plugins can be imported as \n",
    "```\n",
    "from tidy3d.plugins.{plugin_name} import {component}\n",
    "```\n",
    "for example\n",
    "```\n",
    "from tidy3d.plugins.mode import ModeSolver\n",
    "```\n",
    "\n",
    "We won't go into the details in this notebook as each of the plugins has its own example tutorial notebook, but here is a summary:\n",
    "\n",
    "### Dispersion Fitting\n",
    "\n",
    "We provide a [tool for fitting optical data to create dispersive mediums](https://docs.flexcompute.com/projects/tidy3d/en/latest/api/_autosummary/tidy3d.plugins.dispersion.DispersionFitter.html).\n",
    "\n",
    "Given a file or arrays containing wavelength, n, and (optionally) k data, this tool will fit the data to a pole-residue model with some constraints and parameters.\n",
    "\n",
    "After fitting, the user can visualize and inspect the results.  \n",
    "\n",
    "This process can be repeated until the user is satisfied, at which point the tool can return a [dispersive medium](https://docs.flexcompute.com/projects/tidy3d/en/latest/api/_autosummary/tidy3d.PoleResidue.html) for use in the Simulation.\n",
    "\n",
    "For more details, see the corresponding [tutorial](../notebooks/Fitting.html).\n",
    "\n",
    "### Mode Solver\n",
    "\n",
    "The `mode` plugin provides a [mode solver](https://docs.flexcompute.com/projects/tidy3d/en/latest/api/_autosummary/tidy3d.plugins.mode.ModeSolver.html), which is mainly useful for coming up with [ModeSpec](https://docs.flexcompute.com/projects/tidy3d/en/latest/api/_autosummary/tidy3d.ModeSpec.html) objects for a given source or monitor.\n",
    "\n",
    "The tool takes a reference simulation containing some waveguide or other structure definitions to feed to the core solver.  It also requires a [Box](https://docs.flexcompute.com/projects/tidy3d/en/latest/api/_autosummary/tidy3d.Box.html) specifying the plane on which to solve the modes for.\n",
    "\n",
    "Then, the user can iteratively send different [ModeSpec](https://docs.flexcompute.com/projects/tidy3d/en/latest/api/_autosummary/tidy3d.ModeSpec.html) objects, solve for the results, visualize, and repeat the process until satisfied.\n",
    "\n",
    "The resulting [ModeSpec](https://docs.flexcompute.com/projects/tidy3d/en/latest/api/_autosummary/tidy3d.ModeSpec.html) can be saved directly, or used in conjunction with the mode solver settings to return a [ModeSource](https://docs.flexcompute.com/projects/tidy3d/en/latest/api/_autosummary/tidy3d.ModeSource.html) or [ModeMonitor](https://docs.flexcompute.com/projects/tidy3d/en/latest/api/_autosummary/tidy3d.ModeMonitor.html).\n",
    "\n",
    "For more details, see the corresponding [tutorial](../notebooks/ModeSolver.html).\n",
    "\n",
    "\n",
    "### Scattering Matrix\n",
    "\n",
    "The `smatrix` plugin provides a wrapper for computing S-matrix components using Tidy3D simulations from the [Component Modeler](https://docs.flexcompute.com/projects/tidy3d/en/latest/api/_autosummary/tidy3d.plugins.smatrix.ComponentModeler.html) plugin.\n",
    "\n",
    "This tool allows users to connect \"ports\" to their simulation and post-processes the results into a datastructure that can be queried for S-matrix data.\n",
    "\n",
    "For more details, see the corresponding [tutorial](../notebooks/SMatrix.html).\n",
    "\n",
    "### Simple Inverse Design \n",
    "\n",
    "The goal of invdes is to provide a simpler interface for setting up most practical inverse design problems. It wraps tidy3d's native automatic differentiation support to perform the gradient calculations, but allows the user to focus on the important aspects of their design without getting into the details of autograd.\n",
    "\n",
    "For more details, see the corresponding [tutorial](../notebooks/Autograd0Quickstart.html).\n",
    "\n",
    "### Adjoint\n",
    "\n",
    "The native autograd integration allows users to write functions involving a Tidy3D `Simulation` run and take efficient gradients of those functions. Regular `tidy3d` components and `web.run()` are differentiable without any change of syntax.\n",
    "\n",
    "For more details, see the corresponding [tutorial](../notebooks/Autograd1Intro.html).\n",
    "\n",
    "\n",
    "### Resonance Finder\n",
    "\n",
    "The `resonance` plugin provides an interface for analyzing time series data using the technique of \"harmonic inversion\" and using that data to find resonances in the simulation.\n",
    "\n",
    "For more details, see the corresponding [tutorial](../notebooks/Bandstructure.html).\n",
    "\n",
    "\n",
    "### PolySlab\n",
    "\n",
    "The `polyslab` plugin extends the normal `td.PolySlab` functionality to provide more features needed for self-intersecting and complex geometries.\n",
    "\n",
    "For more details, see the corresponding [tutorial](../notebooks/Self_intersecting_polyslab.html).\n",
    "\n",
    "## Conclusion\n",
    "\n",
    "We hope this gives a useful overview of the main changes in the revamped version of Tidy3D.\n",
    "\n",
    "We highly recommend you check out the various tutorials in our [examples page](https://www.flexcompute.com/tidy3d/examples/). 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.  \n",
    "\n",
    "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.\n"
   ]
  }
 ],
 "metadata": {
  "description": "This notebook demonstrates the basic working principles of the Tidy3D python front end interface and gives a walkthrough of various features.",
  "feature_image": "",
  "kernelspec": {
   "display_name": "Python 3 (ipykernel)",
   "language": "python",
   "name": "python3"
  },
  "keywords": "FDTD, Tidy3D, tutorial, walkthrough",
  "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.12"
  },
  "title": "Guide to the Frontend Interface for Tidy3D | Flexcompute",
  "widgets": {
   "application/vnd.jupyter.widget-state+json": {
    "state": {
     "13d263b1784b491898ec28f1d5e22af9": {
      "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
      }
     },
     "1c279e47d4c24ef89bfc7697bddd05dc": {
      "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_8a6996e9da234381a7663a5d1cda1839",
       "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\">🚶 </span> <span style=\"color: #008000; text-decoration-color: #008000; font-weight: bold\">Starting 'web_demo'...</span>\n</pre>\n",
          "text/plain": "\u001B[32m🚶 \u001B[0m \u001B[1;32mStarting 'web_demo'...\u001B[0m\n"
         },
         "metadata": {},
         "output_type": "display_data"
        }
       ],
       "tabbable": null,
       "tooltip": null
      }
     },
     "262e04e46b2145b1b618832d2261f84d": {
      "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
      }
     },
     "30e030240a694533b8eb643ebbe7302b": {
      "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
      }
     },
     "3d9dac4c671248ce9ebe1bf1bd0e6925": {
      "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_13d263b1784b491898ec28f1d5e22af9",
       "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\">solver progress (field decay = 0.00e+00) <span style=\"color: #729c1f; text-decoration-color: #729c1f\">━━━━━━━━━━━━━━━━━━━━━━━━━━</span> <span style=\"color: #800080; text-decoration-color: #800080\">100%</span> <span style=\"color: #008080; text-decoration-color: #008080\">0:00:00</span>\n</pre>\n",
          "text/plain": "solver progress (field decay = 0.00e+00) \u001B[38;2;114;156;31m━━━━━━━━━━━━━━━━━━━━━━━━━━\u001B[0m \u001B[35m100%\u001B[0m \u001B[36m0:00:00\u001B[0m\n"
         },
         "metadata": {},
         "output_type": "display_data"
        }
       ],
       "tabbable": null,
       "tooltip": null
      }
     },
     "7542b2f86e224f7e91831dfb13afd905": {
      "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_ab89a86947224108ba01239d6160fdd1",
       "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\">1.2/1.2 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[32m1.2/1.2 kB\u001B[0m • \u001B[31m?\u001B[0m • \u001B[36m0:00:00\u001B[0m\n"
         },
         "metadata": {},
         "output_type": "display_data"
        }
       ],
       "tabbable": null,
       "tooltip": null
      }
     },
     "8a6996e9da234381a7663a5d1cda1839": {
      "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
      }
     },
     "ab89a86947224108ba01239d6160fdd1": {
      "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
      }
     },
     "b8ec140d7b99489e9a4df6a6a12a64f2": {
      "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_30e030240a694533b8eb643ebbe7302b",
       "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\">🏃 </span> <span style=\"color: #008000; text-decoration-color: #008000; font-weight: bold\">Finishing 'web_demo'...</span>\n</pre>\n",
          "text/plain": "\u001B[32m🏃 \u001B[0m \u001B[1;32mFinishing 'web_demo'...\u001B[0m\n"
         },
         "metadata": {},
         "output_type": "display_data"
        }
       ],
       "tabbable": null,
       "tooltip": null
      }
     },
     "e3605749c72b43e294181fb7801b39d4": {
      "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_262e04e46b2145b1b618832d2261f84d",
       "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\">monitor_data.hdf5</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\">54.4/54.4 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;32m↓\u001B[0m \u001B[1;34mmonitor_data.hdf5\u001B[0m \u001B[38;2;114;156;31m━━━━━━━━━━━━━━━━━━━━━━━━\u001B[0m \u001B[35m100.0%\u001B[0m • \u001B[32m54.4/54.4 kB\u001B[0m • \u001B[31m?\u001B[0m • \u001B[36m0:00:00\u001B[0m\n"
         },
         "metadata": {},
         "output_type": "display_data"
        }
       ],
       "tabbable": null,
       "tooltip": null
      }
     }
    },
    "version_major": 2,
    "version_minor": 0
   }
  }
 },
 "nbformat": 4,
 "nbformat_minor": 5
}
